輕松讀懂移動處理器 CPU微架構(gòu)全解析
分享
既然流水線設(shè)計可以實現(xiàn)不間斷取指、解碼、執(zhí)行、寫回,那為何不干脆同時做幾條流水線一起取指、解碼、執(zhí)行、寫回呢?這就引出了超標(biāo)量設(shè)計。
上圖就是一個三路超標(biāo)量四工位流水線的指令/周期執(zhí)行示意圖,可以看到 CPI 從 1 變成 0.33,即每周期執(zhí)行 3.33 條指令,這樣的改進(jìn)幅度是令人著迷的,因此在初期的時候超標(biāo)量甚至被人們贊美為標(biāo)量程序的向量式處理。
不過在現(xiàn)實中不可能都這樣,因為現(xiàn)在的處理器執(zhí)行不同指令時候的“執(zhí)行”段工位并不完全一樣,例如整數(shù)可能短一些,浮點(diǎn)或者向量和 Load/Store 指令需要長一些,加上一些別的因素,實際大部分程序的實際 CPI 都是 1.x 甚至更高啊。
例如:
a = b * c
d = a + 1
這里的第二條指令需要使用到第一條指令的計算結(jié)果,因此必須等待第一條指令完成后才能跑第二條指令,更重要的是,在不少處理器上乘法指令并非一個周期而是需要多個周期才能完成。在遇到這樣的情況時,就不能實現(xiàn)多指令發(fā)射而且會出現(xiàn)流水線停頓。
2人已贊
第1頁:什么是應(yīng)用處理器?第2頁:長話短說“微架構(gòu)”——流水線第3頁:長話短說“微架構(gòu)”——超標(biāo)量第4頁:長話短說“微架構(gòu)”——分支(轉(zhuǎn)移)預(yù)測第5頁:長話短說“微架構(gòu)”——動態(tài)調(diào)度第6頁:長話短說“微架構(gòu)”——線程級并行化第7頁:長話短說“微架構(gòu)”——數(shù)據(jù)級并行(SIMD)第8頁:長話短說“微架構(gòu)”——存儲系統(tǒng)分層結(jié)構(gòu)第9頁:ARM 指令集架構(gòu)的由來第10頁:ARM Cortex-A9 內(nèi)核微架構(gòu)特點(diǎn)第11頁:ARM Cortex-A15 內(nèi)核微架構(gòu)特點(diǎn)第12頁:高通 Krait 內(nèi)核微架構(gòu)特點(diǎn)第13頁:蘋果 Swift 內(nèi)核微架構(gòu)特點(diǎn)第14頁:英特爾 Bonnell/Saltwell 內(nèi)核微架構(gòu)特點(diǎn)第15頁:ARM Cortex-A5/Cortex-A7 微架構(gòu)的特點(diǎn)第16頁:移動圖形處理器形勢簡話第17頁:PowerVR SGX 54x MP4 GPU 微架構(gòu)第18頁:全文總結(jié)
關(guān)注我們
