民國103年 第3梯次 數位電子甲級 學科
第79題
利用平行處理方法處理下列兩列指令,則會產生何種H a z a r d ?R 3 ←R 1 +R 2 ,R 5 ←R 3 +R 4
題目
利用平行處理方法處理下列兩列指令,則會產生何種H a z a r d ?R 3 ←R 1 +R 2 ,R 5 ←R 3 +R 4
- (1) a d d r e s s
- (2) c o n t r o l
- (3) I / O
- (4) d a t a
官方答案
(4) d a t a
解析
前一道指令 R3←R1+R2 才寫入 R3,下一道 R5←R3+R4 立即要讀取 R3,若平行處理(管線化)讓後者先讀到舊值,就會得到錯誤結果。此種因資料相依(寫後讀,RAW)造成的衝突稱為資料冒險(data hazard),一般以資料前送(forwarding)或插入延遲週期(stall)解決。位址冒險發生於記憶體位址計算的相依,控制冒險則來自分支指令造成的流向不確定,I/O 冒險並非管線冒險的標準分類。
AI 參考解析(推得答案已與官方答案比對一致),非官方公告內容,僅供備考參考。