作者a613204 (胖胖)
看板Grad-ProbAsk
標題[理工] [計組] full forwarding
時間Sun Sep 25 13:11:58 2011
剛剛在想一題 branch 指令的data forwarding問題
假設是在ID階段決定分支是否發生
假設指令執行順序如下:
add $3,$2,$1
beq $2,$3,addr
那beq有
2個stall的原因
如果是一般forwarding的情況 , 因為沒有支援從EX階段forwarding給ID階段的path
所以有
2個stall
如果題目有說full forwarding , 表示有支援從EX階段forwarding給ID階段的path
所以只有
1個stall
請問我的想法有錯嗎??
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 123.0.42.10
推 christianSK:看起來沒錯, 如果沒有full forwarding 09/26 21:16
→ christianSK:則要到wb-stage beq才拿的到reg的值 09/26 21:16
→ christianSK:如果是有full forwarding 09/26 21:17
→ christianSK:雖然add 到exe-stage的時候 beq也在ID-stage 09/26 21:17
→ christianSK:但是因為要等add exe完成才拿的到所以要一個stall 09/26 21:17