亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

用以改善在處理器中重新執(zhí)行加載的裝置與方法

文檔序號:9750524閱讀:315來源:國知局
用以改善在處理器中重新執(zhí)行加載的裝置與方法
【技術(shù)領(lǐng)域】
[000? ]本發(fā)明主要有關(guān)于一微電子領(lǐng)域的技術(shù),特別有關(guān)改善在一亂序(out-of-order)處理器中重新執(zhí)行加載的一節(jié)能機制。
【背景技術(shù)】
[0002]機體裝置技術(shù)在過去四十年迅速地發(fā)展。尤其在微處理器的發(fā)展,從4位、單一指令、10微米裝置開始,隨者半導(dǎo)體生產(chǎn)技術(shù)的進步,使得設(shè)計者能夠設(shè)計出在架構(gòu)和密度越來越復(fù)雜的裝置。在80和90年代所謂的管線微處理器(pipeline microprocessor)和超純量處理器(superscalar),發(fā)展成可在單一芯片上包含百萬顆晶體管。20年后的現(xiàn)今,64位、32-納米裝置已被量產(chǎn),其在單一芯片上具有十億顆晶體管,且包含多個微處理器核心(microprocessor core)來處理數(shù)據(jù)。
[0003]除了指令平行應(yīng)用在現(xiàn)今的多核心處理器(mult1-core processor),亂序執(zhí)行(out-of-order execut1n)機制也被廣泛的使用。根據(jù)亂序執(zhí)行規(guī)則,指令以隊列的方式儲存在保留站(reservat1n stat1n)以供執(zhí)行單元來執(zhí)行,且只有因為是舊指令(olderinstruct1n)的執(zhí)行,而在等候操作數(shù)(operand)的那些指令,才會被攔截到保留站,沒有在等候操作數(shù)的指令則會直接被派送去執(zhí)行。接下來,執(zhí)行的結(jié)果會被依適當(dāng)?shù)捻樞蛞躁犃械姆绞脚帕胁⒎呕鼐彺嫫?。傳統(tǒng)上在處理器階段(processor stage),會被稱為收回狀態(tài)(retire state)。因此,指令并未依照原先程序的順序來執(zhí)行。
[0004]因為除了在閑置的狀態(tài),執(zhí)行單元可用以當(dāng)舊的指令在等候其操作數(shù)時,執(zhí)行新的指令(younger instruct1n),因此亂序執(zhí)行改善了龐大流量的問題。如同此領(lǐng)域具有通常知識者所了解的,指令不會總是成功地執(zhí)行,因此當(dāng)給定的指令無法成功地執(zhí)行時,那個指令和其它新的指令就必須被重新執(zhí)行。因為目前的機制,處理器會停止目前的執(zhí)行,退回機器狀態(tài)(machine state)至無法成功執(zhí)行指令之前的時間點,且重新執(zhí)行未成功執(zhí)行的指令和在未成功執(zhí)行的指令被派送前已派送或未派送的所有新的指令,因此這樣的概念被稱為“重新執(zhí)行(replay)”。
[0005]然而,重新執(zhí)行是一例外情況(except1nal case),且重新執(zhí)行的性能影響通常是可忽略的。然而,緩存在保留站直到獲得其操作數(shù)的緩存指令的性能影響則很大,微處理器的設(shè)計者已發(fā)展了加速技術(shù),以允許當(dāng)在執(zhí)行前,有很高的可能性可取得指令的操作數(shù)時,特定的指令會先被派送。不僅特定的指令會被派送,運行的機制可適當(dāng)?shù)丶皶r提供這些指令所需的操作數(shù)。
[0006]在這應(yīng)用中提出了一種加速技術(shù),在此加速技術(shù)中,在其執(zhí)行會導(dǎo)致從高速緩存查詢操作數(shù)的加載指令被派送后,需要被假設(shè)有很高的機率存在在核心上的高速緩存的操作數(shù)的新的指令,會根據(jù)規(guī)定的數(shù)量的時鐘周期被派送。因此,當(dāng)加載指令被派送時,多個在等待操作數(shù)的新指令會被安置在各自的保留站中,直到所規(guī)定的數(shù)量的時鐘周期結(jié)束,然后新指令會被派送,以進行具有高確定性的執(zhí)行,也就是新指令將可取得其所需的操作數(shù)。
[0007]使用上述所提到的加速技術(shù)所產(chǎn)生的性能改善是顯著的,所以微處理器的設(shè)計者傳統(tǒng)上會全面地應(yīng)用此技術(shù)在所有加載指令(例如:來自輸入/輸出的加載、不可高速緩存的加載(uncacheable loads)、來自中斷緩存器(interrupt register)的加載、特定加載(special loads)等),盡管當(dāng)有許多加載指令時確實會花費比制訂周期還要長的時間來取得其操作數(shù),因此在預(yù)期可獲得操作數(shù)的情況下,需要重新執(zhí)行所有被派送的新指令。使用上述的加速技術(shù)所產(chǎn)生的性能改善大大補償了,不常發(fā)生的重新執(zhí)行所導(dǎo)致的性能損失。
[0008]但是隨著多核心處理器技術(shù)持續(xù)的進步,設(shè)計者發(fā)現(xiàn)了很少被存取的特定處理器資源,例如:層級2高速緩存(level 2(L2)cache)、中斷控制器(interrupt controller)、恪絲陣列(fuse array)等,比較適合配置在多核心處理器芯片上共有的區(qū)域,而不是復(fù)制(replicate)到每一核心中。因此,像是上面所提到的資源,會被處理器核心所共享。如同此領(lǐng)域具有通常知識者所了解的,從不在核心的資源(off-core resource)(例如:恪絲陣列)中加載操作數(shù)所花費的時間會比從在核心的資源(on-core resource)(例如:層級I高速緩存(Llcache))中加載還要長。此外,縱使根據(jù)上述加速技術(shù)需要重新執(zhí)行被派送的新指令所導(dǎo)致的性能損失并不大,但目前的發(fā)明人員發(fā)現(xiàn)到,其對電源使用的影響是值得注意的,對于龐大數(shù)量的指令在上述條件下被執(zhí)行時,指令幾乎都會被重新執(zhí)行。此外,這些指令的起始執(zhí)行(initial execut1n)本質(zhì)上其實是浪費電源的,因此,這樣的情況對于電池壽命(battery life)、熱輪廓(thermal profile)和可靠度(reliability)而言是不利的。
[0009]因此,能夠經(jīng)由改善重新執(zhí)行的所需次數(shù)以節(jié)省處理器操作時所花費的電源的設(shè)備和方法是需要的。
[0010]此外,在一亂序處理器中,為了節(jié)省處理器的電源,降低附載重新加載的機制是需要的。

【發(fā)明內(nèi)容】

[0011]有鑒于上述現(xiàn)有技術(shù)的問題、缺點和限制,本發(fā)明提供了用以改善在一處理器重新執(zhí)行加載的裝置和方法。
[0012]根據(jù)本發(fā)明的一實施例提供了一種用以改善在一亂序處理器重新執(zhí)行加載的裝置。上述裝置包括了第一保留站以及第二保留站。所述第一保留站用以派送第一加載微指令,以及若所述第一加載微指令是指示從多個規(guī)定的資源的其中一個而非從核心上的高速緩存上擷取操作數(shù)的規(guī)定的加載微指令,用以在保留總線進行偵測和指示。所述第二保留站耦接至所述保留總線,且在所述第一加載微指令派送后的第一數(shù)量的時鐘周期之后,用以派送和所述第一加載微指令相依的一或多個新的微指令以進行執(zhí)行,以及若在所述保留總線上指示了,所述第一加載微指令是所述規(guī)定的加載微指令,所述第二保留站用以緩存所述一或多個新的微指令的派送,直到所述第一加載微指令取得所述操作數(shù)。所述多個規(guī)定的資源包括經(jīng)由存儲器總線耦接至所述亂序處理器的系統(tǒng)存儲器,其中所述規(guī)定的加載微指令用以決定所述系統(tǒng)存儲器的寫入結(jié)合的存儲器空間。
[0013]根據(jù)本發(fā)明的另一實施例提供一種用以改善重新執(zhí)行加載的裝置。所述裝置包括具有多個核心的多核心處理器。每一所述多個核心包括第一保留站,以及第二保留站。所述第一保留站用以派送第一加載微指令,以及若所述第一加載微指令是指示從多個規(guī)定的資源的其中一個而非從核心上的高速緩存上擷取一操作數(shù)的規(guī)定的加載微指令,用以在保留總線進行偵測和指示。所述第二保留站耦接至所述保留總線,且在所述第一加載微指令派送后的第一數(shù)量的時鐘周期之后,用以派送和所述第一加載微指令相依的一或多個新的微指令以進行執(zhí)行,以及若在所述保留總線上指示了,所述第一加載微指令是所述規(guī)定的加載微指令,所述第二保留站用以緩存所述一或多個新的微指令的派送,直到所述第一加載微指令取得所述操作數(shù)。所述多個規(guī)定的資源包括經(jīng)由存儲器總線耦接至所述亂序處理器的系統(tǒng)存儲器,其中所述規(guī)定的加載微指令用以決定所述系統(tǒng)存儲器的寫入結(jié)合的存儲器空間。
[0014]根據(jù)本發(fā)明的另一實施例提供了一種用以改善在亂序處理器重新執(zhí)行加載的方法。所述方法的步驟包括:耦接所述亂序處理器至多個規(guī)定的資源,所述多個規(guī)定的資源包括經(jīng)由存儲器總線耦接至所述亂序處理器的系統(tǒng)存儲器;經(jīng)由第一保留站派送第一加載微指令,以及若所述第一加載微指令是指示從多個規(guī)定的資源的其中一個而非從核心上的高速緩存上擷取操作數(shù)的規(guī)定的加載微指令,在保留總線進行偵測和指示,以及其中所述規(guī)定的加載微指令用以決定所述系統(tǒng)存儲器的寫入結(jié)合的存儲器空間;以及經(jīng)由耦接至所述保留總線的第二保留站,在所述第一加載微指令派送后的第一數(shù)量的時鐘周期之后,派送和所述第一加載微指令相依的一或多個新的微指令以進行執(zhí)行,以及若在所述保留總線上指示了,所述第一加載微指令是所述規(guī)定的加載微指令,緩存所述一或多個新的微指令的派送,直到所述第一加載微指令取得所述操作數(shù)。
[0015]關(guān)于本發(fā)明其它附加的特征與優(yōu)點,此領(lǐng)域的熟習(xí)技術(shù)人士,在不脫離本發(fā)明的精神和范圍內(nèi),當(dāng)可根據(jù)本案實施方法中所揭露的執(zhí)行聯(lián)系程序的使用者裝置、系統(tǒng)、以及方法,做些許的更動與潤飾而得到。關(guān)于產(chǎn)業(yè)利用性,本發(fā)明可應(yīng)用在一般目的或特別目的的運算裝置中使用的微處理器。
【附圖說明】
[0016]圖1為顯示目前使用配置在每一核心101外部的共享資源的多核心處理器的方塊圖 100;
[0017]圖2為顯示在圖1中每一當(dāng)前的核心101中例示性的核層(corestage)的方塊圖200;
[0018]圖3為顯示根據(jù)本發(fā)明的實施例所述的對于來自非核心資源的加載具有一節(jié)能機制的多核心處理器的區(qū)塊圖300;
[0019]圖4為顯示在圖3中每一核心301中例示性的核層(core stage)的方塊圖400;
[0020]圖5為根據(jù)本發(fā)明的實施例所述的圖4的非核心緩存組件461的區(qū)塊圖500;
[0021]圖6為根據(jù)本發(fā)明的實施例所述的圖4的每一保留站RSl-RSN的方塊圖600;
[0022]圖7為根據(jù)本發(fā)明的實施例所述的圖4的非核心未命中組件462的方塊圖700。
【具體實施方式】
[0023]以下描述本發(fā)明的示例性和說明性的實施例。為了清楚起見,在該說明書中沒有對實際實現(xiàn)的所有功能進行描述,對于本領(lǐng)域具有通常知識者而言將會理解的是,在對于任何該實際實現(xiàn)的開發(fā)中,可以進行許多實施方案特定的決定,以實現(xiàn)特定目標,諸如符合系統(tǒng)相關(guān)和業(yè)務(wù)相關(guān)的約束,其可以根據(jù)實現(xiàn)方案而不同。此外,應(yīng)該理解的是,該開發(fā)工作可能是復(fù)雜和耗時的,但是對于受益于本公開的本領(lǐng)域具有通常知識者而言其仍然是例行的任務(wù)。優(yōu)選實施例的各種修改對于本領(lǐng)域具有通常知識者而言將是顯而易見的,并且本文中所界定的一般原理可應(yīng)用于其它實施例。因此,本發(fā)明并不限于這里示出和描述的具體實施例,而是應(yīng)被賦予與這里所公開的原理和新穎特征相一致的最廣范圍。
[0024]本發(fā)明將參考附圖進行說明。在附圖中示意性地示出的各種結(jié)構(gòu)、系統(tǒng)、和設(shè)備僅僅是出于解釋的目的,以便使其不以本領(lǐng)域具有通常知識者所公知的細節(jié)來模糊了本發(fā)明。然而,包括附圖來描述和解釋本發(fā)明的說明性示例。應(yīng)該理解的是,在此所用的字匯和詞組應(yīng)該被理解和解釋為具有與現(xiàn)有技術(shù)的本領(lǐng)域具有通常知識者對于這些字匯和詞組的理解一致的含義。在此,
當(dāng)前第1頁1 2 3 4 5 6 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1