分支转移预测是在过去多数大型计算机和高速微处理器结构中可找到的概念。它允许处理器在分支转移的情况下译码指令以保持指令全流水。在Pentium
Pro处理器中,指令取指/译码单元使用了一种高度优化的分支转移预测算法用来预测指令流通过多层分支转移、过程调用和返回的执行方向。
动态数据流分析技术包括对通过处理器的数据流的实时分析来确定数据和寄存器的相关性进而确定无序指令执行出现的机会。Pentium Pro的分发/执行单元能同时监控很多指令,按一定次序执行这些指令优化处理器多执行单元的使用。这种无序执行使得即使发生Cache不命中或者发生指令之间数据相关的情况时,执行单元仍然能够继续工作。
推测执行技术的实质上就是微处理器在取指阶段,先在局部范围内预先执行并判断所取指令的下一条指令最有可能的位置,因此也把推测执行叫做处理器先于程序计数器的执行指令能力。在取指部件内部就具有对部分指令的执行功能,可以用于对指令的分支预测。这样,可以基本保证指令预取部件按照指令执行顺序取到指令,而不是按照程序的指令序列在存储器中存放顺序取到指令。 |