我需要确定以下指令块中的依赖关系类型。不幸的是,我所使用的这本书目前还不清楚如何解决这个问题。这就是我想出的:
SW R16, -100(R6) --> RAW on R16
LW R4, 8(R16) --> WAR on R16
ADD R5, R4, R4 --> RAW on R4
我是否在正确的轨道上?第一条指令是否具有Read-After-Write依赖类型,即使它是管道中的第一条指令?
答案 0 :(得分:1)
SW R16, -100(R6) --> possible RAW on R6 and/or R16
LW R4, 8(R16) --> none: R16 was read in the previous instruction,
so it can be read safely here
ADD R5, R4, R4 --> RAW on R4
答案 1 :(得分:0)
答案还取决于这些是否按顺序执行并完成乱序(超标量)系统。