[理工] [計組] 94 台大電機

作者: shi359 (歸人還是過客)   2016-08-16 13:29:55
先說這題以前有人討論過了
不過還是看不太懂 QQ
http://i.imgur.com/4zl7qJX.jpg
這題的 (d)
要改成 delayed branches
但如果照解答這樣改
http://i.imgur.com/y2d9eST.jpg
j 在 addi 之前
addi 不是就不會執行到嗎?
為什麼不是 add 和 addi 交換就好?
謝謝
作者: kyuudonut (善良老百姓)   2016-08-16 17:17:00
delayed branch 的硬體不會砍指令所以張凡有提到software based 跟 hardward based 的solution 不能一起用*hardware based
作者: shi359 (歸人還是過客)   2016-08-16 18:18:00
請問不會砍指令的意思是??
作者: kyuudonut (善良老百姓)   2016-08-16 19:34:00
j在ID stage解碼後 不會馬上把當時PC吃到的指令flush掉阿... 不太對 先忽視我上面那句話課本在pipline裡面 沒有加入jump指令只有探討branch解答這樣寫 應該是假定jump的行為跟branch一樣...有點胡言亂語0.0 為什麼他原題addi不是加常數@@
作者: shi359 (歸人還是過客)   2016-08-17 11:20:00
對耶 他的 addi 是錯的XD書上是寫 1 而非 $t1所以是把 addi 也當成 delay slot 囉? 那我大概理解了謝謝

Links booklink

Contact Us: admin [ a t ] ucptt.com