CPU與架構
CPU 管線化(pipeline)處理的主要目的,下列何者正確?
- A將指令處理分成多個階段,讓不同指令的階段重疊執行,藉此提高吞吐量
- B一定能縮短單一指令的執行時間(延遲)
- C減少指令數量,使程式變小
查看答案與解析
正確答案:A. 將指令處理分成多個階段,讓不同指令的階段重疊執行,藉此提高吞吐量
管線化像流水線作業一樣,讓指令擷取、解碼、執行、記憶體存取、寫回等階段重疊進行,每個時脈完成一道指令,藉此提高吞吐量。若為 5 級管線,理想上約可提升 5 倍。單一指令的處理時間(延遲)反而會略為增加。資料相依、分支、資源競爭會擾亂流程(危障,hazard),可用前饋(forwarding)與分支預測來因應。