推 skyHuan: 22你要看信號從哪裡來就是從哪裡forwarding,指到哪裡mux 10/28 18:21
→ skyHuan: 如果要用就要設多少。例如A從MEM/WB來,所以如果是load u 10/28 18:21
→ skyHuan: se就要從A forwarding,是rs要用就要設01,rt要用就要設1 10/28 18:21
→ skyHuan: 0 10/28 18:21
推 skyHuan: 18你看題目Figure 1的例子,如果1,2有hazard,2,3也有haz 10/28 18:26
→ skyHuan: ard,那1,3就應該沒有hazard,因為3是RA2W不是RA1W,但 10/28 18:26
→ skyHuan: 原本的detection(就是沒有not那段)沒有判斷到這種情況, 10/28 18:26
→ skyHuan: 也就是會把1,3視為hazard而forwarding導致ALU前面的mux 10/28 18:26
→ skyHuan: 選錯,所以not那段就是在判斷這種情況 10/28 18:26
推 SIGNAL2017: 請問22題那張圖是不是有點問題? A那條線應該是要接在 10/29 06:29
→ SIGNAL2017: 兩個MUX01的地方,B那條線應該是要接在兩個MUX10的地 10/29 06:29
→ SIGNAL2017: 方吧? 10/29 06:29
→ SIGNAL2017: 但是題目好像有點交叉的樣子,例如他把A那條線接在一 10/29 06:31
→ SIGNAL2017: 個MUX01的地方,一個接在MUX10的地方 10/29 06:31
推 SIGNAL2017: 雖然好像不影響作答就是了 10/29 06:35
推 skyHuan: 題目故意要騙人的,沒有一定要接到哪裡,mux的作用就是在 10/29 10:47
→ skyHuan: 很多input選一個output,設定好control unit在正確的情況 10/29 10:47
→ skyHuan: 下輸出正確結果就可以了 10/29 10:47
推 SIGNAL2017: 原來如此 10/29 15:43
→ qazws3483: 我這樣的理解是正確的嗎 10/29 19:19
→ qazws3483: 項 是因為load use 中間一定會有一個stall 答案才是d 10/29 19:25
→ qazws3483: 嗎 10/29 19:25
推 skyHuan: mux的理解正確 10/30 00:58
→ skyHuan: load use要靠forwarding中間一定要stall,因為lw在MEM st 10/30 00:58
→ skyHuan: age才讀到資料,R type在EX stage就要用了,中間空一格才 10/30 00:58
→ skyHuan: 來得及forward 10/30 00:58
→ skyHuan: 這題de選項要選d不是上述原因,是因為這個是load use haz 10/30 00:58
→ skyHuan: ard,要從MEM/WB forwarding到EX stage,連結的線是A線 10/30 00:59
→ skyHuan: 所以A被切才會有影響 10/30 00:59
推 eggy1018: 補充樓上的因為data在MEM/WB的暫存器才有,所以在WB階段 10/30 01:15
→ eggy1018: 才能forward才有辦法救,所以看線最後面的線連到誰,誰 10/30 01:15
→ eggy1018: 被剪掉才有影響 10/30 01:15
→ qazws3483: 感謝兩位 10/30 16:04