推 foogty: 指令1跟指令3的hazard會被指令2跟指令3的hazard蓋掉吧12/02 21:56
→ foogty: 指令2計算的結果才是應該forwarding給指令3的12/02 21:58
→ foogty: ,藍字部分應該就是在說明這種情況12/02 22:01
那B的0是怎麼來的呢
該死這段要重點複習了
※ 編輯: joywilliamjo (42.77.72.207 臺灣), 12/02/2021 22:04:26
推 foogty: B的話我不太確定,印象中好像是選指令的rd的來源,lw是I 12/02 22:09
→ foogty: type應該是選rt的那個,有錯的話再麻煩其他大大指正12/02 22:09
→ ddesc: 那個MUX的進線rt rd 用來出rd的 才可以在後面幾個回合比對12/02 22:10
→ ddesc: 做forwarding, 會是0是因為在Ex stage 的指令是lw 他要出r12/02 22:10
→ ddesc: t ,因為i type指令是 op rs rt 目的是放在rt 應該這樣ㄅ12/02 22:10
我查書rt是放在進B的兩條的上面,所以預設是(上,下)=(0,1)嗎?那後面A的mux,在wb
stage的指令是add,沒經過data memory,應該要走下面那條,不就變A應該是1了,QQ
※ 編輯: joywilliamjo (42.77.72.207 臺灣), 12/02/2021 22:15:10
→ ddesc: 整個MUX只有 A那個預設是上1下012/02 22:23
→ ddesc: 其他都是上0下1我是聽補習班老師教的 我沒看白算盤 有錯請12/02 22:26
→ ddesc: 其他大大糾正12/02 22:26
→ ddesc: 如果他有標示01就需要照圖判斷了12/02 22:26
我依稀記得張凡有說過最後一個是特例會改,但忘記在哪了
如果全部預設都是上0下1,只有A的預設是反的,那一切都合理了,謝謝
※ 編輯: joywilliamjo (42.77.72.207 臺灣), 12/02/2021 22:30:48