[理工] 計組 管線的追蹤

作者: painechaos (老趙)   2017-12-22 20:50:03
下午時問的沒有很詳細,剛才又想到一點問題所以再發文請教
http://i.imgur.com/sIgF6Dh.jpg
上圖是沒有前饋單元時的管線,我知道如果是記憶體指令,ALUSrc會轉為1讓資料進去ALU計算出記憶體位址
但以下是課本中,附加前饋單元的管線圖
http://i.imgur.com/eaX2Q7k.jpg
我的疑問是,原本的mux ALUSrc被前饋單元的mux所取代,那如果碰到記憶體指令,該如何計算記憶體位址呢?
另外,如果是sw指令,圖中沒有原本Read data2 port 輸出到Data memory中,這樣怎麼將data存到DM中?
最後想再問,假設有以下具有data hazard
sub $t3,$t2,$t1
sw $t3,2($t4)
這樣是如何將$t3中的值傳到sw中的$t3呢?
因為比較常遇到的是
sub $t3,$t2,$t1
lw $t4,4($t3)
這種形式,這樣只要前饋到id/exe就好,但是前一種就不知道怎麼解決了
不好意思問的有點多,對考試好像也沒有太多幫助,但是蠻想再更了解一點
作者: sarsman (DeNT15T♠)   2017-12-23 00:04:00
最後的問題之前我也有問過張凡,就是MEM/WB送回MEM但詳細的電路就不清楚了@@
作者: TMDTMD2487 (ㄚ冰)   2017-12-23 00:09:00
我記得張凡有說過關於最後你問的,是有這個前饋必要的可是課本沒有細講,只介紹了兩個前饋處理單元而已再來你的第一個問題,不要拘泥太多把不重要的線路省略方便討論而已
作者: painechaos (老趙)   2017-12-23 01:17:00
好的 謝謝樓上兩位大大!
作者: awesomeXD   2017-12-23 02:05:00
sw應該是在ID讀$t3的吧,不能暫停1個clock再拉回去救嗎噢...突然懂了,原來有可以不用暫停的方法啊!

Links booklink

Contact Us: admin [ a t ] ucptt.com