我最近在做题目的时候有个疑问
Branch在ID判断时
要和前面的R-type空一格 lw空两格
但是详细来看的话空的那个stall应该放在哪?
我举一个例子:
add后接bne 接下来bne predict 错误
我的想法是branch的stall接在它的IF之后
![]()
如此一来bne的ID有在add的EX后 拿到正确的值
之后的add(correct)的IF也接在bne的ID后 也很合理
但是有些题目好像把stall放在branch的ID后
![]()
这样add的EX的结果没办法给bne做判断啊?
难道bne在stall还可以拿add的结果做运算?
但是这样就没有stall吧(暂停)
后面的add(correct)这样接也蛮诡异
请问各位哪种才是对的?
如果是下面那种该怎么解释?