Pentium 3 的動態(tài)執(zhí)行技術(shù)
P3的動態(tài)執(zhí)行技術(shù)是為了提高處理器的并行處理能力所采用的一系列技術(shù)的總稱。它包括亂序執(zhí)行、分支預(yù)測和推測執(zhí)行。
◆亂序執(zhí)行技術(shù)
允許處理器將多條指令不按程序規(guī)定的順序,而是按系統(tǒng)的實際情況,分開發(fā)送給各個相應(yīng)的單元進行處理的方法。也就是說處理指令的順序可以打亂,在處理完成以后,再由相應(yīng)的順序退出單元進行處理,執(zhí)行的結(jié)果還是要按原程序的指令順序進行排列后返回程序。
簡單的說就是亂序執(zhí)行,順序結(jié)果。
這種方式使處理器的各個單元的閑置時間降低,提高了的執(zhí)行的效率。
◆分支預(yù)測和推測執(zhí)行技術(shù)
分鐘預(yù)測和推測執(zhí)行是cpu動態(tài)執(zhí)行技術(shù)的核心。分支預(yù)測是在指令出來之前預(yù)測指令是否產(chǎn)生分支轉(zhuǎn)移;推測執(zhí)行是建立在分支預(yù)測的基礎(chǔ)上的,在分支預(yù)測后進行推測執(zhí)行。
如果cpu能夠在指令結(jié)果出來之前,能夠預(yù)測到指令是否產(chǎn)生分支轉(zhuǎn)移,那么就可以提前執(zhí)行相應(yīng)的指令,也就避免了流水線的空閑時間。但是如果預(yù)測是錯誤的,那么就必須將裝入流水線的指令和結(jié)果全部清零,再裝入正確的指令執(zhí)行,這反而降低了執(zhí)行效率。
轉(zhuǎn)移目標緩沖存儲器BTB(Branch Target Buffer):作用是保存最近使用過的轉(zhuǎn)移指令相關(guān)的歷史記錄。當發(fā)生條件轉(zhuǎn)移時,根據(jù)保存在BTB中的歷史休息,來預(yù)測指令的分支情況并執(zhí)行下一步操作。
通過技術(shù)的進步,現(xiàn)在分支預(yù)測的正確率高達90%以上,極大滴提高了cpu的運行效率。
無論怎么樣,還是會出現(xiàn)預(yù)測錯誤,那么就會在最短的時間內(nèi)刷新流水線,取正確的指令執(zhí)行。會產(chǎn)生3-4個時鐘周期的時間延遲。
時鐘周期既一個流水線過程。
posted on 2007-05-05 16:56
藍迪 閱讀(495)
評論(2) 編輯 收藏 引用