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