PTT
Submit
Submit
选择语言
正體中文
简体中文
PTT
Grad-ProbAsk
[理工] 计组 Data Hazard
楼主:
oldelette
(oldelette)
2018-11-14 11:04:08
请问这题的hazard
为什么(D&O) (O&B)要使用Hazard detection unit
不是load 指令才会使用吗
还有解答最下面那行
它说不能Forward 任何资料到ID stage
是它少拉了哪条线? 看不太出来
https://imgur.com/eiEIJ3l
https://imgur.com/PIsR1Oo
感谢大家了
作者:
TEPLUN
(mihanami)
2018-11-14 12:37:00
R tpye接beq也要hazard detection unit侦测做stall 因为beq在第二阶段决定要不要跳 等前面ori算出来 beq也用错的暂存器比较出结果了 但是那个结果没办法forward到Id阶段给beq 也就是说即使stall了 下一cycle ori跑到mem beq在Id仍然无法取得ori运算的结果(如果有forwarding 他要画一条从Ex/Mem到ID阶段那个给beq用的比较器的datapath)D&O为什么要 等高手解答...
作者:
seika555
(kakkoii)
2018-11-14 14:58:00
https://i.imgur.com/FlErc7i.png
我版本的解答长这样耶 是因为mem前写后读吗
作者:
y2j60537
(skkkkuu)
2018-11-14 15:28:00
PIPELINE侦测到LO和OB两个HARZARD并STALL后,应该就侦测不到LB的吧,指令间隔已经大于2了,正确解答应该是哪个?
作者:
skyHuan
(Huan)
2018-11-14 16:23:00
如果侦测hazard的是硬件不是compiler插nop,在ID解码后才会stall,这时候之后的指令已经进来了hazard detection还是会判断有hazard但stall是把control的9个bit清成0,指令的32个bit还是在,而forward unit是看指令的32个bit判断要不要forwarding的,应该还是会forwarding只是control都是0所以forwarding不影响(?不太确定是不是这样因为解答也没写有forwarding ><
作者:
y2j60537
(skkkkuu)
2018-11-14 17:52:00
https://i.imgur.com/6orDdk8.jpg
我的理解是beq在ID时lw已经在WB了所以侦测不到,我还是不理解lw跟beq会被侦测到的原因,请大神帮忙纠正
楼主:
oldelette
(oldelette)
2018-11-14 19:15:00
所以说答案错吗 没有DO跟LB 图的解答来自张凡题库书
作者:
seika555
(kakkoii)
2018-11-14 20:58:00
借问一下 他remark所说的那句话是因为他已经是改良版的branch因此需在ID阶段算出branch target addr. 所以hazard-detect-unit才直接做nop而不是用forwarding来解决吗
作者: nannnnn (nannnnn)
2018-11-15 19:00:00
会不会是因为原本有hazard只是刚好被另外一组load use解决掉了才这样写
继续阅读
[理工] 资结disjoint set时间复杂度
love52697
[理工] OS题库
AAQ8
[理工] pipeline cpi计算问题
w199381
[理工] 线代 下册 P7-117 范例5
flirmnave
OS 99中央资工
paralyzation
[理工] OS 5-27
jojoboy0115
[理工] 资料结构跟算法问题
st945712
[理工] 106 交大 计系
wei12f8158
[理工] 计组 张凡 上册 p388
lookmytail
计组 张凡(上)p.512 pipeline
paralyzation
Links
booklink
Contact Us: admin [ a t ] ucptt.com