【技術實現(xiàn)步驟摘要】
相關申請的交叉引用這里通過參考并入2015年2月26日提交的日本專利申請第2015-036296號的全部公開內容,包括說明書、附圖和摘要。
本專利技術涉及處理器和指令碼生成設備,其中指令碼生成設備根據(jù)以高級語言描述的程序生成可由處理器執(zhí)行的指令碼。具體地,本專利技術可以通過諸如微計算機的處理器(其具有指令高速緩存和預取功能)以及通過使用該處理器的系統(tǒng)適當?shù)厥褂谩?br>技術介紹
在包括指令高速緩存的處理器中,廣泛地采用預取功能,以防止處理能力由于將在高速緩存未命中之后執(zhí)行的高速緩存填充引起的劣化。預取功能預測處理器將在未來執(zhí)行的指令,并且在高速緩存未命中發(fā)生之前預先將指令讀取到預取緩沖器(諸如指令高速緩存)中。提出了各種預取功能,從簡單的預取功能(在與當前正在執(zhí)行的指令的地址連續(xù)的地址處讀取指令)到高性能預取功能(伴隨分支預測)。專利文獻1公開了一種處理器,其包括FIFO(先入先出)類型的預取緩沖器,并且基于由指令解碼器計算的指令的字數(shù)針對指令的每個單元執(zhí)行預取。其特征在于,可以通過降低當通過預取功能將指令讀取到預取緩沖器中時發(fā)生的總線仲裁的頻率來增加整個系統(tǒng)總線效率。(專利文獻1)日本未審查專利申請公開第Hei 2(1990)-242337號
技術實現(xiàn)思路
本專利技術的專利技術人針對專利文獻1的調研提出了以下新的問題。當代替FIFO類型的預取緩沖器而對指令高速緩存執(zhí)行指令預取時,占用總線的時段變得更長,因為一次讀取大量的指令。FIFO類型的預取緩沖器以字為單位來執(zhí)行指令預取,其中一個字具有一個或兩個字節(jié)。相反,指令高速緩存中的作為高速緩存填充的單位的高速緩存線(通 ...
【技術保護點】
一種處理器,包括:指令預取緩沖器,操作為從存儲器預取具有連續(xù)地址的指令組;處理執(zhí)行單元,操作為從所述指令預取緩沖器中讀取指令并執(zhí)行所述指令;以及指令獲取地址發(fā)生器,其中,所述指令獲取地址發(fā)生器包括:表,操作為存儲指令的指令預取量,以使所述指令預取緩沖器與所述處理執(zhí)行單元中出現(xiàn)的分支的分支目的地地址相關聯(lián)地執(zhí)行預取,并且其中,當所述處理執(zhí)行單元中出現(xiàn)分支時,所述指令獲取地址發(fā)生器參考所述表來計算與所出現(xiàn)的分支的所述分支目的地地址相對應的指令預取量,并使所述指令預取緩沖器預取所計算的所述指令預取量的指令,包括所關注的分支目的地地址的指令。
【技術特征摘要】
2015.02.26 JP 2015-0362961.一種處理器,包括:指令預取緩沖器,操作為從存儲器預取具有連續(xù)地址的指令組;處理執(zhí)行單元,操作為從所述指令預取緩沖器中讀取指令并執(zhí)行所述指令;以及指令獲取地址發(fā)生器,其中,所述指令獲取地址發(fā)生器包括:表,操作為存儲指令的指令預取量,以使所述指令預取緩沖器與所述處理執(zhí)行單元中出現(xiàn)的分支的分支目的地地址相關聯(lián)地執(zhí)行預取,并且其中,當所述處理執(zhí)行單元中出現(xiàn)分支時,所述指令獲取地址發(fā)生器參考所述表來計算與所出現(xiàn)的分支的所述分支目的地地址相對應的指令預取量,并使所述指令預取緩沖器預取所計算的所述指令預取量的指令,包括所關注的分支目的地地址的指令。2.根據(jù)權利要求1所述的處理器,其中,當在所述處理執(zhí)行單元中出現(xiàn)分支時,所述指令獲取地址發(fā)生器基于在所出現(xiàn)的分支的所述分支目的地地址與緊接在所關注的分支之后出現(xiàn)的分支的地址之間的差異來重寫所述表的與所關注的分支目的地地址相對應的所述指令預取量。3.根據(jù)權利要求1所述的處理器,其中,當所述處理執(zhí)行單元執(zhí)行指定指令時,所述分支目的地地址和對應的所述指令預取量被寫入所述表中。4.根據(jù)權利要求3所述的處理器,其中,所述表被定義為靜態(tài)表,其中,所述指令獲取地址發(fā)生器還包括:動態(tài)表,操作為存儲指令的指令預取量,以使所述指令預取緩沖器與所述處理執(zhí)行單元中出現(xiàn)的分支的分支目的地地址相關聯(lián)地執(zhí)行預取,其中,當所述處理執(zhí)行單元中出現(xiàn)分支時,所述指令獲取地址發(fā)生器基于在所出現(xiàn)分支的分支目的地地址與緊接在所述關注分支之后出現(xiàn)的分支的地址之間的差異來重寫所述動態(tài)表的與所關注的分支目的地地址相對應的所述指令預取量,并且其中,當所述處理執(zhí)行單元中出現(xiàn)分支時,所述指令獲取地址發(fā)生器參照所述靜態(tài)表和所述動態(tài)表中的至少一個來計算與所出現(xiàn)分支的所述分支目的地地址相對應的所述指令預取量,并且使所述指令預取緩沖器預取所計算的指令預取量的指令,包括所關注的分支目的地地址的指令。5.根據(jù)權利要求2所述的處理器,其中,所述指令獲取地址發(fā)生器還包括:分支預測單元,并且其中,當所述處理執(zhí)行單元中出現(xiàn)分支且所述分支預測單元的分支預測成功時,所述指令獲取地址發(fā)生器停止向所述表重寫與所關注的分支目的地地址相對應的所述指令預取量。6.一種處理器,包括:指令高速緩存;處理執(zhí)行單元;以及指令獲取地址發(fā)生器,其中,所述指令高速緩存保持多條線,每條線包括預定數(shù)量的指令碼,并且針對從所述指令獲取地址發(fā)生器提供的每個指令預取請求地址從存儲器中預取一條線的指令碼,其中,所述處理執(zhí)行單元從所述指令高速緩存讀取并執(zhí)行包括預定數(shù)量的指令碼的指令,其中,所述指令獲取地址發(fā)生器包括:指令預取計數(shù)表,操作為存儲指令預取計數(shù),以使所述指令高速緩存與所述處理執(zhí)行單元中出現(xiàn)的分支的分支目的地地址相關聯(lián)地執(zhí)行預取,并且其中,當所述處理執(zhí)行單元中出現(xiàn)分支時,所述指令獲取地址發(fā)
\t生器參照所述指令預取計數(shù)表來計算與包括所出現(xiàn)分支的所述分支目的地地址的指令預取請求地址相對應的指令預取計數(shù),并且順序地向所述指令高速緩存提供從所關注的指令預取請求地址開始繼續(xù)并且數(shù)量上對應于所計算的指令預取計數(shù)的所述指令預取請求地址。7.根據(jù)權利要求6所述的處理器,其中,當所述處理執(zhí)行單元中出現(xiàn)分支時,所述指令獲取地址發(fā)生器基于在所出現(xiàn)分支的所述分支目的地地址與緊接在所關注分支之后出現(xiàn)的分支的地址之間的差異來重寫所述指令預取計數(shù)表的與所關注的分支目的地地址相對應的所述指令預取計數(shù)。8.根據(jù)權利要求7所述的處理器,其中,所述處理執(zhí)行單元包括:分支請求單元,操作為當出現(xiàn)分支時向所述指令獲取地址發(fā)生器提供所出現(xiàn)分支的分支源地址和分支目的地地址,其中,所述指令獲取地址發(fā)生器保持所提供的分支目的地地址,并且基于通過從緊接在所關注分支之后出現(xiàn)分支時提供的分支源地址中減去當前保持的分支目的地地址得到的差異來重寫保持在所述指令預取計數(shù)表中且對應于所述分支目的地地址的指令預取計數(shù)。9.根據(jù)權利要求7所述的處理器,其中,所述處理執(zhí)行單元包括:分支請求單元,其中,當所述處理執(zhí)行單元中出現(xiàn)分支時,所述分支請求單元向所述指令獲取地址發(fā)生器提供所出現(xiàn)分支的所述分支源地址,其中,所述分支請求單元包括:計數(shù)器,操作為在所述處理執(zhí)行單元中出現(xiàn)分支時開始計數(shù),并且操作為對由所述處理執(zhí)行單元執(zhí)行的指令的地址超過與所述指令高速緩存的一條線相對應的地址邊界的次數(shù)進行計數(shù),其中,所述分支請求單元向所述指令獲取地址發(fā)生器提供緊接在所關注分支之后出現(xiàn)分支時的時間處的計數(shù)值作為分支間距離,并且其中,所述指令獲取地址發(fā)生器保持所提供的分支目的地地址,
\t并且基于當緊接在所...
【專利技術屬性】
技術研發(fā)人員:山下源,龜井達也,
申請(專利權)人:瑞薩電子株式會社,
類型:發(fā)明
國別省市:日本;JP
還沒有人留言評論。發(fā)表了對其他瀏覽者有用的留言會獲得科技券。