輕松讀懂移動處理器 CPU微架構全解析
分享
為了充分利用由于分支以及長時延指令導致的流水線“氣泡(停擺)”而浪費的資源,人們引入了亂序執(zhí)行(OoOE)技術。當出現(xiàn)需要等待某條指令的時候,程序中的指令會被“重排序(Re-Ordered)”,使得其他指令可以被執(zhí)行。
對于像 x86 這樣的 ISA 來說,32 位模式下的寄存器只有 8 個(ARMv7 是 16 個),如果程序里的變量較多,就會導致多個變量使用同一個寄存器的情況發(fā)生,這里有可能出現(xiàn)先讀后寫的偽相關現(xiàn)象。
微架構里解決寄存器先讀后寫(WAR)偽相關的辦法就是寄存器重命名。在微架構的寄存器堆里塞進比 ISA 寄存器更多的物理寄存器,透過索引式寄存器堆或者保留站方式,將 ISA 寄存器映射到物理寄存器,從而實現(xiàn)亂序執(zhí)行。
ARM Cortex-A8、Intel Pentium、Intel Atom(Bonnell 內核)、IBM Cell PPU 都屬于順序執(zhí)行,它們選擇順序執(zhí)行的原因主要是為了省電,因為 OoOE 需要大量的晶體管來實現(xiàn)。隨著制程的改進,OoOE 的開銷會逐漸淡化變得在某些場合里可行,因此像 ARM 從 Cortex-A9、Intel 從 Pentium Pro/Atom(Silvermont 內核)都開始采用 OoOE。
2人已贊
第1頁:什么是應用處理器?第2頁:長話短說“微架構”——流水線第3頁:長話短說“微架構”——超標量第4頁:長話短說“微架構”——分支(轉移)預測第5頁:長話短說“微架構”——動態(tài)調度第6頁:長話短說“微架構”——線程級并行化第7頁:長話短說“微架構”——數(shù)據(jù)級并行(SIMD)第8頁:長話短說“微架構”——存儲系統(tǒng)分層結構第9頁:ARM 指令集架構的由來第10頁:ARM Cortex-A9 內核微架構特點第11頁:ARM Cortex-A15 內核微架構特點第12頁:高通 Krait 內核微架構特點第13頁:蘋果 Swift 內核微架構特點第14頁:英特爾 Bonnell/Saltwell 內核微架構特點第15頁:ARM Cortex-A5/Cortex-A7 微架構的特點第16頁:移動圖形處理器形勢簡話第17頁:PowerVR SGX 54x MP4 GPU 微架構第18頁:全文總結
關注我們
