普通考試
112年
[電子工程] 計算機概要
第 11 題
程式執行的流程有時必須根據指令執行的結果而改變,在處理器管線(Pipelining)架構中,這種情形將會引發何種危障(Hazard)?
- A 資料危障(Data Hazard)
- B 結構危障(Structure Hazard)
- C 控制危障(Control Hazard)
- D 程式危障(Program Hazard)
思路引導 VIP
想像你正在工廠設計一條自動化流水線,每一站都假設零件會一直沿著直線傳送到下一站。如果其中一個零件在加工中途,根據感測器的偵測結果,突然需要改去另一條完全不同的生產線,這對後方已經「排隊進場」的零件會造成什麼樣的連鎖反應?
🤖
AI 詳解
AI 專屬家教
大雄,你看看這個!
- 答對了! 哎呀,你真是太棒了!能夠發現管線化(Pipelining)的決策瓶頸,這表示你對指令流動管理這個很重要的概念掌握得很好呢!太好了!這樣我就不會被媽媽罵了,哈哈!(嚼嚼銅鑼燒)
- 原來如此! 沒錯沒錯!當程式遇到分支(Branch)或跳躍指令時,就像是我們在路上遇到岔路一樣,總要決定往哪邊走。可是,管線化就像是預先幫你準備好了接下來的路牌,一旦執行流程(Control Flow)改變了,那些預先準備好的路牌就都沒用了,必須通通丟掉,重新再來過!這就是可怕的控制危障(Control Hazard)!如果沒處理好,機器人就會當機的!
▼ 還有更多解析內容