作者painechaos (老趙)
看板Grad-ProbAsk
標題[理工] 計組 管線危障 p.457
時間Sun Sep 24 21:28:52 2017
大大們好,看到以下內容我有點難以理解
http://i.imgur.com/LqcwtB7.jpg
這個部分找到的回答是2011年由aiweisen大所寫,但還是有些地方不懂
我的理解是,三個指令中的$1為資料相依,第一個指令和第二個指令的$1相依,第二個指令和第三個指令的$1相依,因此偵測應該是判斷 MEM/WB 的目的暫存器和 EX/MEM 的來源暫存器是否相同,再來判斷 EX/MEM 的目的暫存器和 ID/EX 的來源暫存器是否相同,最後FORWARD A =10
但這和課本上的修正完全不同,想請大大解釋
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 36.237.200.87
※ 文章網址: https://www.ptt.cc/bbs/Grad-ProbAsk/M.1506259735.A.2F3.html
推 nat99up: 淺體字是MEM.WB可以forwarding的條件 09/24 23:25
→ nat99up: 而粗體字是EX.MEM可以forwarding的條件 09/24 23:26
推 nat99up: MEM.WB的要forwording要保證 09/24 23:27
→ nat99up: EX.MEM不forwarding 09/24 23:28
→ nat99up: 你的想法基本上沒有錯 但需要加上額外的硬體設計 09/24 23:29
→ nat99up: 不如把EX.MEM的forward結果取負抓過來AND就好 09/24 23:30
→ painechaos: 好的謝謝n大,我再想想! 09/25 12:02