Q1: 张凡计组下 p56 , delay branch的观念请教 , 以下分别就三个安插方式
提出讨论与问题。
例一 : from before
add $s1, $s2, $s3
if $s2=0 then
delay slot
书上说法:add指令因为不和branch指令发生资料相依 , 所以拉到delay slot也不影响程式
Q1-1: 请问delay branch中如果预测失败会flush掉IF stage中的指令吗?
书上说法成立应该是要建立在下述前提吧?
不管分支成立与否,都不flush掉IF stage中的指令
这样的话不就和前面硬件的解法使用不同的data path ?