看板 Grad-ProbAsk 關於我們 聯絡資訊
大家好 想問一個基本的觀念 下面有兩道指令 1. add $t1,$t0,$t2 2. beq $t1,$t3,Label MIPS 5 stage pipeline branch在ID stage判斷是否要分支 請問一下會stall 在哪個cycle? 假設從c1開始 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 39.13.213.149 ※ 文章網址: https://www.ptt.cc/bbs/Grad-ProbAsk/M.1449547437.A.B2E.html
dslin: 我覺得stall在c3,這時add在Mem stage可以fowarding 給beq 12/08 15:34
dslin: 在ID stage~~ 12/08 15:34
jerry031181: 我也認為是c3,ID 但我問張凡他說是在c4 覺得很疑惑 12/08 16:54
jerry031181: 覺得他給的公式怪怪的 12/08 16:56
odanaga: 就c3才會detect hazzard吧 (課本說的 12/08 20:12
odanaga: id branch 應該是c4 c5插nop add到wb才會跳對 12/08 20:13
odanaga: 不過我看課本上看可以forwarding到ID 可能datapath沒畫八 12/09 00:17
jerry031181: 課本有兩個沒畫 總覺得這個 stall的地方很怪 12/09 08:15
sdwe7854: 個人想法 就是暫停c4那個clock(管線) 沒暫停的話是ex 12/09 17:48
sdwe7854: 這樣Id就可以從c3跑到c4 p459可以再看看 12/09 17:48
jerry031181: 懂了 謝謝 12/09 18:18
sdwe7854: Stall cycle 就是指bubble的地方 12/09 18:21
odanaga: 全省都是p459 12/09 20:31
jerry031181: 什麼p459 12/09 23:00
odanaga: 張凡上冊p459 12/09 23:16
goldflower: 推齊p459 12/10 23:57
jerry031181: 感謝大家 觀念釐清了 12/11 14:43
dslin: 感謝樓上各位大大詳細解說!有點懂了!^^ 12/11 18:37