ARM7系列使用3级流水线,其处理器指令流速度大大增加。
ARM7系列允许多个指令操作同是进行,而不是顺序执行。
ARM7在对指令进行操作时,有三个步骤,取指、解码、执行。而指令执行时,PC总是指向正被取指的指令,而非正在执行的指令。
最佳流水线图示:

这是一个理想的实例,所有的指令都在寄存器中执行,且处理器完全不必离开芯片本身。每个周期,都有一条指令被执行,流水线的容量得到了充分的发挥。 指令周期数 (CPI) = 1。
除了最佳流水线,还有LDR流水线、中断流水线等。
ARM7的三级流水线还是比较慢,现在已经有了五级流水线,十三级流水线。
影响流水线水流的的因素:在典型的程序处理过程中,经常会遇到这样的情形,即一条指令的结果被用作下一条指令的操作数。和跳转指令,它在生效时,前面的指令已经取指发生。因此,已经被预取进入流水线的指令不得不被丢弃。在回到跳转指令,执行下面指令,又必须在进行一次取指、解码、执行。所以必须避免,且在指令非常复杂,每一条指令的行为都与下一条指令不同,那么就很难用流水线实现。
本文介绍了ARM7系列处理器采用的三级流水线技术,该技术通过取指、解码、执行三个步骤提高指令执行效率,使得处理器能在每个周期执行一条指令。然而,流水线的效率可能受到分支指令和指令间依赖的影响,导致流水线中断和额外的延迟。尽管如此,ARM7的三级流水线在当时已属较慢,现代处理器已发展到五级甚至更多级流水线。
1782

被折叠的 条评论
为什么被折叠?



