流水计算机中,下列语句发生的数据相关类型是( )。 ADD R1,R2,R3;(R2)+(R3)→R1 ADD R4,R1,R5;(R1)+(R5)→R4

admin2013-07-12  31

问题 流水计算机中,下列语句发生的数据相关类型是(    )。
ADD  R1,R2,R3;(R2)+(R3)→R1
ADD  R4,R1,R5;(R1)+(R5)→R4

选项 A、写后读   
B、读后写   
C、写后写   
D、读后读

答案A

解析 [归纳总结]流水线中的相关是指相邻或相近的两条指令因存在某种关联,后一条指令不能按照原指定的时钟周期运行,使流水线断流。指令流水线的相关性包括结构相关、数据相关、控制相关。结构相关也称资源相关,是指由于多条指令在同一时刻争用同一资源而形成的冲突。数据相关是指后续指令要使用前面指令的操作结果,而这一结果尚未产生或者未送到指定的位置,从而造成后续指令无法运行的局面。控制相关又称为指令相关,主要是由转移指令引起的,在遇到条件转移指令时,存在着是顺序执行还是转移执行两种可能,需要依据条件的判断结果来选择其一。
    数据相关又可分为RWW(写后读)、WAR(读后写)和WAW(写后写)3种类型。例如有i和j两条指令,i指令在前,j指令在后,则3种不同类型的数据相关的含义为:
    ?RAW:指令j试图在指令i写入寄存器前就读出该寄存器内容,这样指令j就会错误地读出该寄存器旧的内容。
    ?WAR:指令j试图在指令i读出该寄存器前就写入该寄存器,这样指令i就会错误地读出该寄存器的新内容。
    ?WAW:指令j试图在指令i写入寄存器前就写入该寄存器,这样两次写的先后次序被颠倒,就会错误地使由指令i写入的值成为该寄存器的内容。
写后读相关(RAW)、写后写相关(WAW)、读后写相关(WAR)。在这两条指令中,都对R1进行操作,其中前面对R1写操作,后面对R1读操作,因此发生写后读相关。
转载请注明原文地址:https://kaotiyun.com/show/3uxi777K
0

最新回复(0)