为什么流水线无法以其最大理论速度运行?

时间:2018-12-31 12:43:59

标签: pipeline cpu-architecture

首先,最大理论速度/提速是多少?

谁能解释为什么流水线无法以其最大理论速度运行?

1 个答案:

答案 0 :(得分:2)

最大理论提速等于管道深度的增加。在标量(一个指令范围的执行)设计中,每个周期的理想指令是一个。理想情况下,时钟频率可以增加等于流水线深度增加的因数。

由于锁存开销,时钟偏斜以及工作/等待时间分配不平衡,实际频率增加将小于此理想值。 (虽然理论上可以将锁存器放置在任何点,但是锁存的状态量,位置和其他因素会使某些点对阶段划分更为友好。

制造差异还意味着设计中要花费相同时间的工作不会在管道中的所有阶段都这样做。设计人员可以提供更多的余量,以便在所有阶段中,更多的芯片满足最小的时序要求。处理这种变化的另一种技术是接受并非所有芯片都将满足目标频率的要求(无论是专门使用“黄金样本”还是使用较低频率的芯片都是市场决策)。

正如人们所期望的那样,在浅管线中,一个阶段中的变化会散布在更多的逻辑上,因此对频率的影响较小。

在多个信号波(对应于流水线级)可以同时通过逻辑块的情况下,波形流水线提供了一种避免锁存开销的有限方法。但是,除了其他设计问题之外,这对于制造条件和运行时条件(例如温度和电压)的变化更敏感(可能希望有针对性地针对不同的功率/性能行为进行变化)。

即使有人确实拥有令人难以置信的硬件来提供完美的频率增加,但危害(如Peter Cordes的评论中所述)也会阻止对可用执行资源的完美利用。