作者Bassy (貝斯)
看板Grad-ProbAsk
標題[理工] 103交大資聯 計組
時間Thu Feb 18 23:16:57 2016
#12)
http://i.imgur.com/FRpxqaH.png
上一題在這
http://i.imgur.com/jC9auCm.png
#12題的解答是bcd
c的解法是 CPI= 1 + 0.4*0.25 + 0.4*2 = 1.9
﹋﹋﹋﹋
↑想問這怎麼來的
目前我的想法是 CPI=1+bez_stall
依現在版本bez在EX判斷,所以IF、ID要插入nop
nop nop bez ....
┌--------------┐
| IF | ID | EX | MEM | WB|
└--------------┘
=> bez_stall = 0.4*2
若是將beg拆成 sub r1,r3,r5
bez r1,1000 後
因為有data dependency(r1)
所以應該要等r1存回register後bez才可以動作
... bez
nop nop sub
┌--------------┐
| IF | ID | EX | MEM | WB|
└--------------┘
=> bez_stall = 0.4*2 + 0.4*0.25*2
或是,如果有forwarding則是不須加nop
... ... bez sub
┌--------------┐
| IF | ID | EX |
┐MEM |WB|
└-------
↑-
|----┘
 ̄ ̄
=> bez_stall = 0.4*2 + 0.4*0.25*0
這樣的話 原算式的0.4*0.25是怎麼來的啊@@
而且它題目也沒標明有沒有forwarding
寫的時候都不知道用哪種算法才對
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 123.194.154.147
※ 文章網址: https://www.ptt.cc/bbs/Grad-ProbAsk/M.1455808620.A.207.html
→ yaxauw: 張凡好像說把多出來的sub指令算進stall 所以是多了 02/18 23:27
→ yaxauw: 0.4*0.25*1 02/18 23:27
→ yaxauw: 但版友們討論結果 覺得不是1.9 要考慮多出來的指令 02/18 23:28
→ yaxauw: 怎麼會突然跑出交大考古題wwww 02/18 23:29
我現在才在寫啊XD
考慮多出來的指令是什麼意思?
※ 編輯: Bassy (123.194.154.147), 02/18/2016 23:53:28
→ f1256421: 交大改過答案 C是錯的 02/19 01:04
→ Bassy: 那d有變嗎? 02/19 02:40