我正在经历一个计算机架构MOOC。有一个问题我无法解决。提供了解决方案,但我无法理解解决方案。有人可以帮我吗。这是问题及其解决方案:
考虑一个非流水线处理器。假设它具有1 ns的时钟周期 并且它使用4个周期进行ALU操作,使用5个周期进行分支 和4个周期的内存操作。假设相对 这些操作的频率分别为50%,35%和15%。
假设由于时钟偏差和设置,流水线处理器 为时钟增加0.15 ns的开销。忽略任何延迟影响, 我们将从中获得多少加速的指令执行率 管道?
解决方案
非流水线处理器上的平均指令执行时间是 clockcycle * Avg:CP I = 1ns *((0.5 * 4)+(0.35 * 5)+(0.15 * 4))= 4.35ns平均值流水线处理器上的指令执行时间= 1ns + 0.15ns = 1.15ns因此加速= 4.35 / 1.15 = 3.78
我的问题:
在管道处理器的平均指令执行时间内,0.15来自何处?任何人都可以解释。
非常感谢任何帮助。
答案 0 :(得分:0)
问题是这些0.15ns是由于时钟偏差和流水线设置造成的。 忘记管道设置,想象所有0.15ns来自clock skew。
答案 1 :(得分:0)
我认为该解决方案意味着CPI(每个指令的周期)为一(1)(无开销),即1 ns时钟周期,我假设它是CPU运行时钟(1 GHz)。
但是,我看不到CPI被明确标识为一(1)的任何地方。
我在这里误解了吗?