[理工] 104中山計組

作者: AAQ8 (不要就是要)   2019-01-15 21:47:30
https://i.imgur.com/ORxW7M5.jpg
想請問這題的第二題
我的想法是
1000個指令會有500組的lw+add
在沒有forwarding的情況下
每組中間會插兩個nop
變成下面那樣
lw
nop
nop
add
那這樣的話算式是
((5-1)+1000+500*2)/1000
不過我不懂為什麼和答案不一樣
不知道哪裡想錯了
作者: wei12f8158 (WEI)   2019-01-15 22:01:00
因為第一題有說lw跟add還有add跟lw之間都有data hazard所以會是lw 2*nop add 2*nop lw 2*nop add ... 這樣
作者: o5739201 (車貸學貸付二貸)   2019-01-15 22:26:00
lw跟add之間有500格但add跟lw之間只有499格因為add是最後一個指令 所以最後不用插所有是(500+499)*2
作者: kaidi620 (萬能屎哥)   2019-01-16 08:24:00
抱歉 請問一下 1000個指令 然後一組有四個 不是1000/4=250組嗎 抱歉小弟很弱500組是怎麼來的 請問一下QQ
作者: springleaf1 (懶貓)   2019-01-16 08:33:00
1小題有說是lw, add, lw, add, ...交互穿插然後2小題是照1小題的條件去算,只是少了Forwarding所以是1000÷2 而非1000÷4
作者: rockieloser (友善大隊長)   2019-01-16 12:11:00
是lw都要多停一個吧? 500*(lw stall add)
作者: o5739201 (車貸學貸付二貸)   2019-01-16 15:08:00
是lw add這樣算一組喔共500組1000指令Lw跟add 有load use 插2個而add 跟下一組的 lw 有hazard插2個第1000個指令不用插所以499個

Links booklink

Contact Us: admin [ a t ] ucptt.com