【问题标题】:Which one is right one in pipelining?流水线中哪一个是正确的?
【发布时间】:2026-02-22 20:35:01
【问题描述】:

我正在研究 CPU 流水线,但遇到了麻烦。
我想知道下图中哪一个是正确的流水线
在我看来,第一个甘特图有点“结构性风险”,因为“IF”阶段部分重叠。我认为不允许将一个阶段用于两个指令。所以我认为第二个是对的....
我说的对吗?

【问题讨论】:

    标签: cpu pipeline gantt-chart


    【解决方案1】:

    你是对的。

    第一个图表在第二个周期中获取了两条指令。除非另有说明,否则不能这样做。

    在某些情况下这是允许的:

    • 指令取指分为IF1IF2两个阶段,每个阶段需要1个周期。 IF1IF2 可以重叠。
    • 数据路径和指令缓存支持 2 个同时操作。

    【讨论】: