作者ggLer (thu大學吃噴啦~機車)
看板Grad-ProbAsk
標題[問題] 97中央 計組
時間Tue Mar 17 08:31:46 2009
http://140.115.130.224:8080/~arhui/cexamn/exam/EC02_97_02.pdf
第一題的a小題該怎麼畫呢?
題目說beq可以在ID stage決定branch
add s1 s2 s3 F D X M W
sub s2 s3 s1 F D X M W
lw s1 s2(0) F D X M W
or s3 s2 s1 F D * X M W
beq s2 s3 loop F * D X M W
addi s1 s3 2 * * F D X M W
sw s1 s2(0) ...
subi s2 s1 2
or beq addi 這三條 該怎麼畫呢?
lw or load use 要 stall 1 個才能forwarding
or beq和beq 跟addi呢?
爬文好像沒畫到beq和下一指令的...
謝謝:)
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 58.99.94.18
1F:推 s987692:beq 那條需要stall兩個clocks 03/17 16:00
2F:→ ssccg:beq s2 s3 loop F * * D X M W 03/17 16:26
3F:→ ssccg:addi s1 s3 2 * * F //題目說branch taken 03/17 16:28
4F:→ ssccg:add s1 s2 s3 F D X M W 03/17 16:29
5F:→ ssccg:beq第一個stall跟or一樣是在等lw,第二次是等or的EX 03/17 16:30
6F:→ ssccg:上面addi那兩個*應該不用,還沒進pipeline 03/17 16:34
7F:→ ggLer:請問...beq的第二個stall不能用forward解決嗎? 03/17 17:47
8F:→ ssccg:從EX/MEM forward到ID,beq ID還是要在or EX的後一個cycle吧 03/17 17:50
9F:→ ggLer:X->X....@@... 03/17 17:50
10F:推 ssccg:beq在ID決定所以要X→D 03/17 17:53
11F:→ ggLer:ok.......謝謝:) 03/17 17:54