• 
    <ul id="o6k0g"></ul>
    <ul id="o6k0g"></ul>

    處理器和指令碼生成設備制造技術

    技術編號:13671982 閱讀:86 留言:0更新日期:2016-09-07 20:02
    本申請涉及處理器和指令碼生成設備。在包括指令預取緩沖器以從存儲器預取具有連續(xù)地址的指令組的處理器中,降低了發(fā)生總線比所需更多地被指令預取占用的情況的概率。處理器包括指令獲取地址發(fā)生器,其控制將被預取到指令預取緩沖器中的指令的地址和量。指令獲取地址發(fā)生器包括存儲指令的指令預取量的表,以使得指令預取緩沖器與處理執(zhí)行單元中出現(xiàn)的分支的分支目的地地址相關聯(lián)地執(zhí)行預取。當處理執(zhí)行單元中出現(xiàn)分支時,指令獲取地址發(fā)生器使得指令預取緩沖器預取與包括所出現(xiàn)分支的分支目的地地址的所關注的分支目的地地址相對應的指令預取量的指令。

    【技術實現(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é)。相反,指令高速緩存中的作為高速緩存填充的單位的高速緩存線(通常制成與條目大小一致)例如為128字節(jié)。如果包括指令高速緩存的處理器被配置為使得可以在每當執(zhí)行一個高速緩存線的指令和發(fā)生高速緩存未命中時執(zhí)行高速緩存填充,則由于等待高速緩存填充而導致的性能劣化是顯著的。因此,執(zhí)行推測性指令預取來預先讀取多條線是有效的。這里,通過固定值或寄存器設定值給出執(zhí)行指令預取的計數(shù),即為其執(zhí)行高速緩存填充的線的數(shù)量。在不伴隨分支預測的情況下,針對與當前正在執(zhí)行的指令的地址連續(xù)的地址的指令,執(zhí)行多條線的指令預取。此時,明顯地,如果采用固定的指令預取計數(shù),則存在其中發(fā)生對沒有實際執(zhí)行的指令的推測性指令預取的情況。例如,當假設在伴隨高速緩存未命中的一條線的高速緩存填充之后以固定方式執(zhí)行兩條線的指令預取時,即使在執(zhí)行包括在第一線中的指令且不執(zhí)行隨后指令的同時出現(xiàn)分支的情況下,也不抵消兩條線的隨后指令預取而是執(zhí)行這兩條線的隨后指令預取。為了執(zhí)行兩條線的隨后指令預取,將占用執(zhí)行高速緩存填充的總線并且將保持等待獲得用于獲取分支目的地地址的指令的總線權利。不僅在指令預取緩沖器配置有高速緩存存儲器的情況下可能發(fā)生這種問題,而且類似地在采用FIFO類型的預取緩沖器的情況下也可能發(fā)生這種問題。以下解釋這種問題的解決方案。根據(jù)本專利技術的說明書和附圖的描述,本專利技術的其他問題和新特征將變得清楚。根據(jù)本申請的一個實施例如下所述。即,處理器包括指令預取緩沖器以從存儲器預取具有連續(xù)地址的指令組,還包括指令獲取地址發(fā)生器以控制將被預取至指令預取緩沖器的指令的地址和指令預取量。指令獲取地址發(fā)生器包括表以存儲指
    令的指令預取量,以使得指令預取緩沖器與處理執(zhí)行單元中出現(xiàn)的分支的分支目的地地址相關聯(lián)地執(zhí)行預取。當處理執(zhí)行單元中出現(xiàn)分支時,指令獲取地址發(fā)生器使得指令預取緩沖器預取與包括所出現(xiàn)分支的分支目的地地址的所關注分支目的地地址相對應的指令預取量的指令。如下簡要解釋通過上述一個實施例得到的效果。可以抑制降低發(fā)生總線比所需更多地被指令預取占用的情況的可能性。附圖說明圖1是示出根據(jù)典型實施例的處理器的結構的實例的框圖;圖2是示出整個處理器的結構的實例的框圖;圖3是示出比較實例的處理器中的指令獲取地址發(fā)生器的結構的框圖;圖4是示出根據(jù)典型實施例的處理器的指令獲取地址發(fā)生器的結構的實例的框圖;圖5是示出具有全相聯(lián)存儲器的指令預取計數(shù)表的結構的實例的概念圖;圖6是示出具有集相聯(lián)存儲器的指令預取計數(shù)表的結構的實例的概念圖;圖7是示出根據(jù)實施例1的指令獲取地址發(fā)生器的結構的實例的框圖;圖8是示意性示出對指令預取計數(shù)表進行表寫入的過程的解釋圖;圖9是示意性示出從指令預取計數(shù)表中對指令獲取計數(shù)進行表讀取的過程的解釋圖;圖10是示意性示出比較實例的處理器的操作的實例的定時圖;圖11是示意性示出根據(jù)典型實施例的處理器的操作的實例的定時圖;圖12是示出根據(jù)實施例1的指令獲取地址發(fā)生器的結構(與分支預測組合)的另一實例的框圖;圖13是示出根據(jù)實施例2的處理器和安裝在其中的指令獲取地址發(fā)生器的結構的實例的框圖;圖14是示出根據(jù)實施例3的指令獲取地址發(fā)生器的結構的實例的框圖;圖15是示出根據(jù)實施例4的指令獲取地址發(fā)生器的結構的實例的框圖;圖16是示出根據(jù)實施例5的指令獲取地址發(fā)生器的結構的實例的框圖;圖17是示出根據(jù)實施例6的指令獲取地址發(fā)生器的結構的實例的框圖;圖18是示出在根據(jù)實施例6的指令獲取地址發(fā)生器中安裝的指令預取計數(shù)表的相聯(lián)存儲器的條目的結構的實例的解釋圖;圖19是示意性示出根據(jù)實施例7的指令碼生成設備的結構的實例的解釋圖;圖20是示意性示出由鏈接器生成的可執(zhí)行文件的實例的解釋圖;以及圖21是示意性示出由鏈接器生成的指令預取計數(shù)信息的實例的解釋圖。具體實施方式1.實施例的概述首先,解釋本申請中公開的典型實施例的概況。關于典型實施例的概況解釋中的圓括號中參考的附圖的標號僅示出了附加該標號的部件的概念中包括的內容。(1)〈指令預取量管理表〉本申請中公開的典型實施例是處理器(100),其包括:指令預取緩沖器(20),從存儲器(40)中預取具有連續(xù)地址的指令組;處理
    執(zhí)行單元(30),從指令預取緩沖器中讀取指令并執(zhí)行指令;以及指令獲取地址發(fā)生器(11)。結構如下。指令獲取地址發(fā)生器設置有表(1,2,3),該表存儲指令的指令預取量以使得指令預取緩沖器與處理執(zhí)行單元中出現(xiàn)的分支的分支目的地地址相關聯(lián)地執(zhí)行預取。當在處理執(zhí)行單元中出現(xiàn)分支時,指令獲取地址發(fā)生器參照該表來計算與所出現(xiàn)的分支的分支目的地地址相對應的指令預取量,并且使指令預取緩沖器預取所計算的指令預取量的指令,包括所關注的分支目的地地址的指令(4-7)。根據(jù)該結構,可以抑制降低發(fā)生總線(41)比所需更多地被指令預取占用的情況的可能性。(2)〈動態(tài)表〉在段落1中,當在處理執(zhí)行單元中出現(xiàn)分支時,指令獲取地址發(fā)生器基于在所出現(xiàn)的分支的分支目的地地址與緊接在所關注分支之后出現(xiàn)的分支的地址之間的差異來重寫與表(2)的所關注分支目的地地址相對應的指令預取量。根據(jù)該結構,基于實際發(fā)生的分支來學習指令預取量;因此,可以以更高的精度預測適當?shù)闹噶铑A取量。(3)〈靜態(tài)表〉在段落1中,當處理執(zhí)行單元執(zhí)行指定的指令時,在表(3)中寫入分支目的地地址和對應的指令預取量。根據(jù)該結構,關于沒有頻繁發(fā)生的例外情況的處理(諸如中斷),當難以期望如段落2中動態(tài)地計算指令預取量時,或者當難以期望保持動態(tài)計算的指令預取量直到它接下來被參考時(當其溢出時),可以確定地提供適合的指令預取量。通過程序的離線分析或者通過諸如操作系統(tǒng)的軟件,還可以適當?shù)赜嬎阒噶铑A取量。(4本文檔來自技高網
    ...

    【技術保護點】
    一種處理器,包括:指令預取緩沖器,操作為從存儲器預取具有連續(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

    網友詢問留言 已有0條評論
    • 還沒有人留言評論。發(fā)表了對其他瀏覽者有用的留言會獲得科技券。

    1
    主站蜘蛛池模板: 天码av无码一区二区三区四区| 午夜无码性爽快影院6080| av无码一区二区三区| 亚洲精品午夜无码电影网| 无码国产精品一区二区免费式直播 | 久久久久亚洲Av片无码v| 亚洲AV无码精品蜜桃| 精品人妻系列无码人妻免费视频| 色综合久久无码中文字幕| 特黄熟妇丰满人妻无码| 久久无码人妻一区二区三区 | 国产a级理论片无码老男人| 亚洲av无码专区在线观看下载 | 亚洲中文字幕在线无码一区二区 | 日韩精品人妻系列无码av东京 | 无码精品A∨在线观看十八禁| 人妻系列AV无码专区| 国产在线无码视频一区| 亚洲AV无码一区二区乱子仑 | 国产乱子伦精品无码专区| 亚洲a∨无码精品色午夜| 亚洲AV无码成人专区| 日韩欧精品无码视频无删节 | 无码精品A∨在线观看免费| 国精品无码一区二区三区左线| 亚洲av无码天堂一区二区三区| 无码毛片内射白浆视频| 精品久久亚洲中文无码| 人妻少妇伦在线无码专区视频| 无码人妻一区二区三区免费看| 亚洲色偷拍另类无码专区| 在线a亚洲v天堂网2019无码| 亚洲国产综合无码一区二区二三区 | 成人免费无码大片A毛片抽搐 | 亚洲国产综合无码一区| 亚洲无码高清在线观看| 中日精品无码一本二本三本| 人妻少妇AV无码一区二区| 国产午夜无码精品免费看动漫| 亚洲AV无码一区东京热| 亚洲看片无码在线视频|