我是流水线的新手,我需要一些关于以下事实的帮助
流水线的速度由最慢阶段的速度决定
不仅如此,如果给我一个持续时间分别为 5 ns、10 ns、8 ns、7 ns、7 ns 的 5 级流水线,则据说每条指令将花费 10 ns 时间。我能得到一个明确的解释吗?
(已编辑)还让我的程序有 3 条指令 I1、I2、I3 并且我需要 1 个时钟周期持续时间 = 1ns,这样上述阶段分别需要 - 5、10、8、7、7 个时钟周期。现在根据理论,管道的快照将是 -
但这给了我一个总时间 - 没有 clk 周期 * clk 周期持续时间 = 62 * 1 = 62 ns 但根据理论总时间应该是 - (最慢阶段)* 没有。指令数 = 10 * 3 = 30 ns 虽然我知道为什么最慢的阶段很重要(每个流水线阶段需要等待,因此每 10 个 clk 周期后产生 1 条指令 - 但是当我使用 clk 周期计算它时结果不一致。为什么会出现这种不一致?我错过了什么?? (已编辑)