計算機組成原理——指令流水線


計算機組成原理——指令流水線

1. 綜述

  為提高CPU利用率,加快執行速度,將指令分為若干個階段,可並行執行不同指令的不同階段,從而多個指令可以同時執行。在有效地控制了流水線阻塞的情況下,流水線可大大提高指令執行速度。博客園知識庫:CPU流水線的探秘之旅

  經典的五級流水線:取址、譯碼/讀寄存器、執行/計算有效地址、訪問內存(讀或寫)、結果寫回寄存器。鏈接:史上最經典的5級流水線

  流水線阻塞的情況有三種(baidu知道):

  1. 結構相關:指令重疊執行的過程中,硬件資源滿足不了指令重疊執行的要求,發生資源沖突,這時將產生結構相關。解決的辦法是增加硬件資源,如解決訪存沖突就采用指令Cache和數據Cache分離的哈弗結構。

  2. 數據相關:當一條指令需要前面某條指令的執行結果,而兩者正在並行執行的情況下,將產生數據相關。解決方式:數據重定向,或稱為旁路技術。

  3. 控制相關:有跳轉語句、分支指令,或其他改變IP值的指令,將產生控制相關。解決方法:分支預測技術,投機執行,延遲分支。

  

  若I1和I2數據相關,如I2需要I1的結果,則I2在其譯碼階段被阻塞,直到I1全部完成才恢復流動。

  

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM