CPU怎麼同時跑好幾道指令?|單週期 vs FSM vs Pipeline,Data Hazard 和分支預測一次全懂【計算機架構 EP2】
Enzo 獨自升級
0:00 / 0:00
CPU怎麼同時跑好幾道指令?|單週期 vs FSM vs Pipeline,Data Hazard 和分支預測一次全懂【計算機架構 EP2】
4 130 просмотров · 4 мес. назад
Enzo 獨自升級
9,2 тыс. подписчиков
4 130 просмотров · 4 мес. назад
CPU 怎麼做到每個時脈週期都有指令完成?答案是流水線——但流水線帶來了三個新問題,幾乎讓整個設計崩潰。今天這集從最簡單的單週期處理器出發,帶你看懂為什麼它會被 FSM 取代、FSM 又為什麼必須進化成流水線,以及流水線三大 Hazard——Structural、Data、Control——各自怎麼解。分支預測、Forwarding 旁路轉發、Load-Use Stall、編譯器指令排程,全部在這集說清楚。
🔍 本集重點
✅ CPU 執行一道指令的五個步驟
✅ Fetch → Decode → Execute → Memory → Write Back 完整說明
✅ 第一種:單週期處理器——CPI = 1,但為什麼效能被拖死?
✅ 第二種:FSM 處理器——每個步驟用短週期,靈活但還是串行
✅ 第三種:流水線處理器——洗衣機比喻,多道指令同時並行
✅ Hazard 是什麼?為什麼流水線必然帶來衝突?
✅ Structural Hazard:I-Cache 和 D-Cache 為什麼要分開?
✅ Data Hazard:Forwarding 旁路轉發怎麼運作?
✅ Load-Use Hazard:Forwarding 救不了的那一種
✅ Control Hazard:跳躍指令讓 CPU 不知道下一步去哪
✅ 分支預測:猜對免費、猜錯 Flush,準確率怎麼做到 95%?
🗺️ 三種處理器演進脈絡
單週期 → 因為硬體大量閒置
FSM 處理器 → 每步用短週期,不同指令用不同步數
流水線 → 多道指令同時在不同階段並行
三大 Hazard 解法:
🔹 Structural → I-Cache / D-Cache 分離
🔹 Data → Forwarding 旁路轉發 + Load-Use Stall + 編譯器排程
🔹 Control → 分支預測(歷史記錄 + 95% 準確率)
📚 系列導覽
▸ EP1:從指令集看懂 ARM 為何打敗 Intel 行動市場|ISA 指令集架構完整解析|RISC vs CISC、ARM vs x86 vs RISC-V
• 從指令集看懂 ARM 為何打敗 Intel 行動市場|ISA 指令集架構完整解析|R...
▸ EP2:CPU怎麼同時跑好幾道指令?|單週期 vs FSM vs Pipeline,Data Hazard 和分支預測一次全懂
#流水線 #cpu #計算機架構 #分支預測 #pipeline #hazard #forwarding #單週期處理器 #FSM #DataHazard #risc #arm #深度學習 #電腦科學 #硬體知識 #半導體 #科技解說 #系統架構 #cache #處理器設計
===============================================================================
🕵 關於我/About me:
嗨我是Enzo!我2022年剛從波士頓大學畢業,現在在美國當工程師。希望你喜歡這支影片~記得訂閱按讚開啟小鈴鐺🔔 我的頻道會分享我自己的生活經驗,職涯規劃,最新科技,和有時候的vlog!有任何建議都可以在下面留言喔!我都會看~
📧 商業/Business inquiries: cchenyu.pro@gmail.com
👋 社媒:
IG - @tenzooutoften