③流水的中断处理中断和转移一样,也会引起流水线断流。好在中断出现的概率要比条件转移出现的概率低得多,因此只要处理好断点现场保护及中断后的恢复,尽量缩短断流时间即可。
2.RISC中的流水技术
RISC中采用的流水技术有3种:超流水线、超标量以及超长指令字。
(1)超流水线技术超流水线(superpipelime)技术是RISC采用的一种并行处理技术。它通过细化流水、增加级数和提高主频,使得在每个机器周期内能完成一个甚至两个浮点操作。它的实质是以时间换取空间。超流水机器的特征是在所有的功能单元都采用流水,并有更高的时钟频率和更深的流水深度。由于它只限于指令级的并行,所以超流水机器的CPI值稍高,CPI的含义是每个指令需要的机器周期数(clock cycles per instruction)。不过,它在时钟频率高方面的优点大于其在CPI方面的缺点。
(2)超标量技术超标量(superscalar)技术是RISC采用的又一种并行处理技术。它通过内装多条流水线来同时执行多个处理,其时钟频率虽然与一般流水接近,但它却有更小的CPI。它的实质是以空间换取时间。许多研究人员都曾建议过“多指令分发”(multiple instruction issue)技术,Agerwala和Cocke把这种方法作为RISC思想的扩充,并创造了Supersalar一词。超标量结构正变得越来越复杂。除了指令数目增加外,在执行程序时还要靠硬件来对指令的处理顺序进行动态控制。硬件的复杂性还将随着时钟频率的提高而增加。
来源:www.examda.com (3)超长指令字技术超长指令字(very long instruction word)简称为VILW技术,它由LIW发展而来。VLIW和超标量都是80年代出现的概念,其共同点都是要同时执行多条指令,其不同在于超标量依靠硬件来实现并行处理的调度,VILW则充分发挥软件的作用,而使硬件简化,性能提高。例如,超标量同时分发4条指令已经困难,但是VLIW同时分发8条指令的产品已经指日可待。因此,VLIW有更小的CPI值,但也要有足够高的时钟频率。为使每个功能单元都保持在忙状态,在直线代码序列(straightline code sequence)中必须使经过调度的指令有足够的工作。这是使用跟踪调度(trace scheduling)技术,通过解开循环(unˉrolling loops)和跨过基本块调度代码(scheduling code across basic blocks)来完成的。总之,利用VLIW可以提高指令处理的并行程度,减小CPI,简化控制硬件而可以设置更多的运算器和扩大Cache容量,同时还能提高与内存间数据传输的速率,以便采用更高的时钟频率,使得在超标量潜力已尽的情况下把微处理器的性能再提高2至5倍以上。