国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      附加寄存器減少超高速緩存再充填期間的cpu空閑周期的制作方法

      文檔序號(hào):6415639閱讀:418來(lái)源:國(guó)知局
      專利名稱:附加寄存器減少超高速緩存再充填期間的cpu空閑周期的制作方法
      技術(shù)領(lǐng)域
      本發(fā)明涉及包括帶有高速緩存的CPU的電子電路。本發(fā)明還涉及供給諸如數(shù)據(jù)或指令等信息項(xiàng)給CPU的執(zhí)行單元的方法。
      CPU通常具有布置在執(zhí)行單元的數(shù)據(jù)與指令輸入端與連接在主存的端口之間的一個(gè)或多個(gè)高速緩沖存儲(chǔ)器。該高速緩存補(bǔ)償CPU中的處理與從主存取數(shù)據(jù)與指令之間的速度差。該高速緩存的成功操作取決于定域性原理程序?qū)Υ鎯?chǔ)器的引用在時(shí)間上及邏輯空間中有群集的趨勢(shì)。時(shí)間群集是指在特定的時(shí)段內(nèi)多次引用相同的地址的趨向而言。空間群集是指從邏輯上接連的存儲(chǔ)器地址取數(shù)據(jù)或指令的趨向而言。將主存中的數(shù)據(jù)與指令以邏輯上連接的地址的塊映射到高速緩存中。下面,在本文中用“信息項(xiàng)”來(lái)指數(shù)據(jù)或指令。
      當(dāng)CPU請(qǐng)求其高速緩存中不存在的信息項(xiàng)時(shí)出現(xiàn)讀不命中。這時(shí)高速緩存必須從主存或二級(jí)高速緩存中檢索適當(dāng)?shù)膲K并存儲(chǔ)它。在這一高速緩存的再充填期間,執(zhí)行單元是停的。正在使用各種技術(shù)來(lái)減少由于高速緩存的再充填而導(dǎo)致的執(zhí)行單元必須空閑的時(shí)鐘周期數(shù)。
      例如,歐洲專利申請(qǐng)0543487A1討論早期重新啟動(dòng)技術(shù)。只要所請(qǐng)求的項(xiàng)目從主存一到達(dá),便將其發(fā)送到執(zhí)行單元而不等待整個(gè)塊寫到高速緩存的完成。這一早重新啟動(dòng)的改進(jìn)是無(wú)順序取。無(wú)順序取使主存跳過(guò)位于相關(guān)塊中的所請(qǐng)求的項(xiàng)目前面的邏輯地址上的所有信息項(xiàng)。在檢索到時(shí)將請(qǐng)求的項(xiàng)目直接發(fā)送給執(zhí)行單元,同時(shí)循環(huán)檢索該塊的其余部分來(lái)取前面跳過(guò)的項(xiàng)目。
      歐洲專利申請(qǐng)0543487A1還討論了包含下述步驟的另一技術(shù)。如果CPU在數(shù)據(jù)高速緩存充填期間取數(shù)據(jù)而所取的請(qǐng)求數(shù)據(jù)為當(dāng)前正在填充的存儲(chǔ)器塊的一部分,如果該數(shù)據(jù)尚未寫入高速緩存則與將其寫入高速緩存的同時(shí)檢索出該數(shù)據(jù)及返回給執(zhí)行單元。如果該數(shù)據(jù)已寫入高速緩存,則在下一讀周期上檢索該數(shù)據(jù)及將其返回給執(zhí)行單元。
      再參見(jiàn)諸如“MIPS RISC體系結(jié)構(gòu)”,Crerry Kane與JoeHeinrich,Prentice Hall,1992,特別是第5章,頁(yè)5-5。在諸如R200與R3000等MIPS處理器的實(shí)現(xiàn)中,高速緩存不命中后出現(xiàn)的典型事件序列如下。在高速緩存不命中時(shí),處理器從存儲(chǔ)器讀取一個(gè)字并停,同時(shí)在高速緩存中再充填指定的塊。完成了再充填之后,從高速緩存中檢索缺失的信息項(xiàng)并將其提供給處理器的執(zhí)行單元以恢復(fù)處理。關(guān)于MIPS體系結(jié)構(gòu)的一般背景信息,見(jiàn)“結(jié)構(gòu)化計(jì)算機(jī)組織”,A.S.Taneubaum,Prentice Hall國(guó)際版,第三版,1990,特別是472-487頁(yè)。
      如果執(zhí)行單元對(duì)請(qǐng)求項(xiàng)目的處理快于高速緩存能完成再充填,則早重新啟動(dòng)的優(yōu)點(diǎn)是有限的。在這一情況中,處理完直接接收的項(xiàng)目之后執(zhí)行必須空閑直到再充填高速緩存為止。
      上面所討論的現(xiàn)有技術(shù)對(duì)比文件中的另一技術(shù)致力于當(dāng)正在再充填高速緩存時(shí)減少執(zhí)行單元的空閑周期數(shù)的問(wèn)題。這一現(xiàn)有技術(shù)對(duì)比文件并不致力于已經(jīng)或接近完成再充填時(shí)減少空閑周期數(shù)的問(wèn)題。本發(fā)明的目的為通過(guò)在基本上接近高速緩存再充填完成時(shí)減少空閑周期而提高處理器的性能。
      為了這一目的,本發(fā)明提供了包括CPU、用于接收信息項(xiàng)輸入端及輸入端與CPU的執(zhí)行單元之間的高速緩存的電子電路。執(zhí)行單元進(jìn)行操作處理該項(xiàng)目。電路還包括在輸入端與執(zhí)行單元之間的緩沖器及連接在緩沖器上的控制器??刂破骺刂凭彌_器中信息項(xiàng)的存儲(chǔ)及在高速緩存再充填基本上接近完成時(shí)將項(xiàng)目提供給執(zhí)行單元。
      發(fā)明人提出采用臨時(shí)緩沖器以便至少在完成再充填時(shí)正在從高速緩存中檢索項(xiàng)目的步驟期間防止CPU空閑。接近完成再充填時(shí),項(xiàng)目是從緩沖器而不是從高速緩存提供的。以這一方式,每一次高速緩存不命中至少節(jié)省一個(gè)時(shí)鐘周期,因?yàn)榫彌_器不是像高速緩存那樣地址控制的。
      本發(fā)明的電路能利用緩沖器結(jié)合能進(jìn)行上述早重新啟動(dòng)與無(wú)順序取的主存。早重新啟動(dòng)/無(wú)順序取能減少高速緩存再充填前的CPU空閑周期數(shù),而本發(fā)明中的緩沖寄存器則減少高速緩存已再充填或接近完成再充填后的CPU空閑周期數(shù)。
      下面參照附圖以示例方式進(jìn)一步詳細(xì)說(shuō)明本發(fā)明,附圖中

      圖1為本發(fā)明的電路的方框圖;以及圖2為示出高速緩存控制器的有限狀態(tài)機(jī)的一部分的圖。
      圖1為帶有按照本發(fā)明的電子電路100的主要部件的功能方框圖。電路100包括通過(guò)總線108互連的CPU102、總線控制器104及主存106。CPU102具有總線接口110、執(zhí)行單元112、指令高速緩存器114、數(shù)據(jù)高速緩存116、分別用于控制高速緩存114與116的指令高速緩存控制器118及數(shù)據(jù)高速緩存控制器120。CPU102還包括緩沖寄存器122。在本實(shí)例中,緩沖器122與數(shù)據(jù)高速緩存116是布置成并聯(lián)在控制器120與單元112之間的。緩沖器122與高速緩存116通過(guò)受控制器120控制的多路復(fù)用器124耦合在單元112的數(shù)據(jù)輸入端上。
      控制器120控制緩沖器122存儲(chǔ)數(shù)據(jù),使得能在讀不命中時(shí)基本上在或接近高速緩存110的再充填完成時(shí)將其提供給執(zhí)行單元112。以這一方式,至少節(jié)省了一個(gè)時(shí)鐘周期,在其中單元112不需要空閑。例如,當(dāng)在再充填之后高速緩存116正在為第一讀周期作準(zhǔn)備時(shí),緩沖器122提供一或多個(gè)數(shù)據(jù)項(xiàng)給單元112。從而高速緩存讀周期與通過(guò)緩沖寄存器122的供給在時(shí)間上重疊。
      緩沖器122至少存儲(chǔ)CPU 102請(qǐng)求并導(dǎo)致高速緩存讀不命中的數(shù)據(jù)。緩沖器122也可存儲(chǔ)與所請(qǐng)求的數(shù)據(jù)的地址邏輯上接連的地址上的其它數(shù)據(jù)薦。為了遵守高速緩存的上述定域性原理,高速緩存116也存儲(chǔ)請(qǐng)求的數(shù)據(jù)及邏輯上后面的數(shù)據(jù)。
      高速緩存114與單元112之間的指令路徑包含作為高速緩存116與單元112之間的數(shù)據(jù)路徑的類似緩沖器126與多路復(fù)用器128配置,并且它是以類似方式受高速緩存控制器118控制的。通常,處理期間的指令序列是事先已知的。在一些軟件應(yīng)用中可出現(xiàn)條件轉(zhuǎn)移操作,但在兩條轉(zhuǎn)移指令之間指令流是線性及已知的。如果緩沖器為FIFO且存儲(chǔ)兩或多條指令,在完成指令高速緩存再充填及開始高速緩存讀周期之前,或甚至在基本完成指令高速緩存再充填之前,向單元112供給順序指令可從緩沖器126開始。為此目的,控制器118必須跟蹤已從主存106映射到高速緩存114的地址塊的范圍。
      圖2為高速緩存控制器120中的有限狀態(tài)機(jī)200的一部分的圖。狀態(tài)機(jī)200說(shuō)明如下。
      在諸如MIPS 3000等流水線處理器中的停機(jī)周期為CPU在其中等待某一事件而不做有用工作的周期。關(guān)于MIPS 3000中的流水線的背景信息,見(jiàn)諸如“MIPS RISC體系結(jié)構(gòu)”,Gerry Kane與Joe Heinrich,PrenticeHall,1992,特別是第一章。本發(fā)明在高速緩存不命中時(shí)減少停機(jī)周期數(shù)。MIPS 3000中在高速緩存不命中時(shí)的事件序列如下。首先,在高速緩存中再充填指定的塊。然后在完成再充填時(shí),從高速緩存中讀取缺失的數(shù)據(jù)并將其供給執(zhí)行單元。在再充填階段與高速緩存讀階段兩者期間執(zhí)行單元是停機(jī)的。然而,在本發(fā)明中,在高速緩存讀階段中執(zhí)行單元112不停機(jī)。在再充填中讀取的數(shù)據(jù)臨時(shí)存儲(chǔ)在緩沖器122中并從緩沖器122而不是從高速緩存116供給執(zhí)行單元。以這一方式每單一高速緩存不命中至少節(jié)省一個(gè)時(shí)鐘周期。這是用包含下述轉(zhuǎn)移的狀態(tài)機(jī)200示出的。從“讀”到“再充填”的轉(zhuǎn)移202對(duì)應(yīng)于高速緩存不命中。從“讀”到“非高速緩存”的轉(zhuǎn)移204對(duì)應(yīng)于對(duì)主存(或二級(jí)高速緩存)106的不能高速緩存的訪問(wèn)。“再充填”與“等待”之間的轉(zhuǎn)移206對(duì)應(yīng)于再充填完成與執(zhí)行單元尚未就緒?!胺歉咚倬彺妗迸c“等待”之間的轉(zhuǎn)移對(duì)應(yīng)于從主存106取不能緩存的字,且執(zhí)行單元112尚未就緒接收它。“再充填”與“讀”之間的轉(zhuǎn)移210對(duì)應(yīng)于完成再充填且執(zhí)行單元112就緒。“非高速緩存”與“讀”之間的轉(zhuǎn)移212對(duì)應(yīng)于從主存取不能高速緩存的字且執(zhí)行單元就緒。“等待”與“讀”之間的轉(zhuǎn)移214對(duì)應(yīng)于執(zhí)行單元112就緒接收數(shù)據(jù)。在“再充填”與“非高速緩存”狀態(tài)期間,CPU102將請(qǐng)求的數(shù)據(jù)放置在緩沖器122中,并在轉(zhuǎn)移210、212與214期間將數(shù)據(jù)傳遞給執(zhí)行單元112。
      權(quán)利要求
      1.一種包含CPU的電子電路,具有-用于接收信息項(xiàng)的輸入端(110);-用于處理信息項(xiàng)的執(zhí)行單元(112);-在輸入端與執(zhí)行單元之間的高速緩存(114或116);-在輸入端與執(zhí)行單元之間及用于存儲(chǔ)該項(xiàng)的緩沖器(126或122);以及-連接在緩沖器上用于控制將項(xiàng)存儲(chǔ)在緩沖器中并在基本上接近完成高速緩存再充填時(shí)將該項(xiàng)供給執(zhí)行單元的緩沖器控制器。
      2.權(quán)利要求1的電路,其中該緩沖器控制器包括高速緩存控制器(118或120)。
      3.權(quán)利要求1的電路,其中該高速緩存包括數(shù)據(jù)高速緩存(116)。
      4.權(quán)利要求1的電路,其中該高速緩存包括指令高速緩存(114)。
      5.一種包含CPU的電子電路,具有-用于接收數(shù)據(jù)的數(shù)據(jù)輸入端(110);-用于接收指令的指令輸入端(110);-用于在指令的控制下處理數(shù)據(jù)的執(zhí)行單元(112);-在數(shù)據(jù)輸入端與執(zhí)行單元之間的數(shù)據(jù)高速緩存(116);-在數(shù)據(jù)輸入端與執(zhí)行單元之間用于存儲(chǔ)數(shù)據(jù)的數(shù)據(jù)緩沖器(122);-連接在數(shù)據(jù)緩沖器上用于控制將數(shù)據(jù)存儲(chǔ)在數(shù)據(jù)緩沖器中及在基本上接近完成數(shù)據(jù)高速緩存再充填時(shí)將數(shù)據(jù)供給執(zhí)行單元的數(shù)據(jù)緩沖器控制器(120);-指令輸入端與執(zhí)行單元之間的指令高速緩存(114);-指令輸入端與執(zhí)行單元之間用于存儲(chǔ)指令的指令緩沖器(126);以及連接在指令緩沖器上用于控制將指令存儲(chǔ)在指令緩沖器中并在基本上接近完成指令高速緩存再充填時(shí)將指令供給執(zhí)行單元的指令緩沖器控制器(118)。
      6.一種用具有用于處理信息項(xiàng)的執(zhí)行單元及高速緩存(114或116)的電子電路的信息處理方法,該方法包括將項(xiàng)存儲(chǔ)在緩沖器中及在基本上接近完成高速緩存再充填時(shí)將項(xiàng)供給執(zhí)行單元。
      全文摘要
      CPU具有用于在指令控制下在數(shù)據(jù)上操作的執(zhí)行單元。高速緩存與緩沖寄存器并聯(lián)耦合在執(zhí)行單元的輸入端上。在高速緩存已完成再充填進(jìn)程時(shí),緩沖寄存器將諸如數(shù)據(jù)或指令等信息項(xiàng)供給執(zhí)行單元。
      文檔編號(hào)G06F9/38GK1252143SQ98804158
      公開日2000年5月3日 申請(qǐng)日期1998年10月5日 優(yōu)先權(quán)日1997年12月22日
      發(fā)明者S·斯莫維奇, B·埃爾特曼 申請(qǐng)人:皇家菲利浦電子有限公司
      網(wǎng)友詢問(wèn)留言 已有0條留言
      • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
      1