资源描述
单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,流水线技术,DLX,流水线数据通路,(,IF,),(,ID,),(,EX,),(,M,EM,),(,WB,),IF,ID,EX,MEM,WB,性能指标,吞吐率(,TP,Thoughput,Rate,),加速比(,Speed Ratio,),效率(,Efficiency,),1,时间,空间,S,1,2,3,n,-1,n,S,2,S,3,S,4,1,2,3,n,-1,n,1,2,3,n,-1,n,1,2,3,n,-1,n,m,D,t,(,n,-1),D,t,n,D,t,(,m,-1),D,t,T,相关的概念,现代汉语词典,彼此关连,;,互相牵涉,流水线中的相关,指相邻或相近的两条指令因存在某种关联,后一条指令不能在原指定的时钟周期,开始,执行。,三种相关,资源相关(又称结构相关),当硬件资源满足不了同时重叠执行的指令的要求,而发生资源冲突时,就发生了资源相关。,资源相关举例,假设,:在一个微处理器中,浮点乘运算(,EX,)需要,5,个时钟周期,定点加运算(,EX,)需要,1,个时钟周期,浮点乘部件只有一个,Multf,f1,f2,f3,Addi,r1,r0,100,Multf,f4,f5,f6,数据相关,因一条指令需要用到前面指令的结果,而无法与产生结果的指令重叠执行时,就发生了数据相关。,目前只考虑寄存器数据相关,控制相关,当流水线遇到分支指令和其它会改变,PC,值的指令时就发生控制相关。,数据相关,ADD R1,,,R2,,,R3,SUB R4,,,R1,,,R5,AND R6,,,R1,,,R7,OR R8,,,R1,,,R9,XOR R10,,,R1,,,R11,流水线技术,DLX,流水线数据通路,(,IF,),(,ID,),(,EX,),(,M,EM,),(,WB,),通过定向技术减少数据相关带来的暂停,定向,(forwarding),,也称为旁路,(bypassing),工作过程,主要思路:将计算结果从其产生的地方直接送到真正需要它的地方,就可以避免暂停。,寄存器文件,EX/MEM,中的,ALU,运算结果总是回送到,ALU,的输入寄存器,从定向通路得到输入数据的,ALU,操作不必从源寄存器中读取操作数,四种不同的数据相关,两条指令,i,和,j,,都会访问同一寄存器,R,,假设,i,先进入流水线,则它们对,R,有四种不同的,访问,顺序,:,(1),写后读,(,RAW,),i,写,j,读,如果,j,在,i,完成写之前从,R,中读出数据,将得到错误的结果!,最常见的数据相关,严重制约了,CPU,的性能,是程序最重要的特征之一!,(2),写后写,(,WAW,),i,写,j,写,如果,j,在,i,之前完成写操作,,R,中将保存错误的结果!,DLX,流水线不会出现这种相关!,当流水线中有多个段可以写回,而且当流水线暂停某条指令的执行时,其后的指令可以继续前进时,可能引起这种类型的相关。,3.,数据相关的分类,(3),读后写,(,WAR,),i,读,j,写,如果,j,先将数据写入,R,,,i,将读出错误的结果!,DLX,流水线不会出现这种类型的相关!,当有些指令在流水段后半部分读源操作数,另一些指令在流水线前半部分写结果,可能引起这种类型的相关,。,(4),读后读,(,RAR,),i,读,j,读,不引起数据相关!,控制相关,1.,分支指令的实现,一旦分支转移成功,正确的地址要,在,Mem,段的末尾,才会被写入,PC,一旦,ID,段检测到分支指令,就暂停执行其后的指令,直到分支指令达到,Mem,段,确定新的,PC,为止,分支转移成功,将导致,DLX,流水线,暂,停,3,个周期,控制相关,2.,减少分支开销的途径,两个基本途径:同时采用,缺一不可!,在流水线中尽早判断分支转移是否成功,转移成功时,尽早计算出转移目标地址,经,改进,,,DLX,流水线可以将分支开销减少,1,拍,将,“,=0?,”,测试提前到,ID,段,在,ID,段增加一个加法器,计算分支目标地址,
展开阅读全文