【发布时间】:2020-06-20 02:38:45
【问题描述】:
我们知道 ROB 存在于具有乱序管道的 CPU 中,用于重新排序以乱序方式执行的 u 指令。谁能告诉我具有有序管道的 CPU 中是否存在 ROB?如果是,这个结构的职责是什么?
【问题讨论】:
-
我投票结束这个问题,因为它是关于 CPU 设计而不是计算机编程的问题。
标签: x86 arm cpu pipeline cpu-architecture
我们知道 ROB 存在于具有乱序管道的 CPU 中,用于重新排序以乱序方式执行的 u 指令。谁能告诉我具有有序管道的 CPU 中是否存在 ROB?如果是,这个结构的职责是什么?
【问题讨论】:
标签: x86 arm cpu pipeline cpu-architecture
不,按顺序执行管道可以让指令在按顺序启动后完成乱序执行(尤其是通常允许加载这样做,让静态指令调度有助于隐藏加载延迟)。没有 ROB,所有这一切都是可能的。我认为,仅记分板寄存器写入就足以实现这一点,甚至可以让 ALU 指令和加载乱序完成。
AFAIK,只有 ROB 是必要的/值得的/对于一个可以 开始 乱序执行指令的 CPU 有任何意义。因此名称 ROB = ReOrder Buffer。
(并且微架构通常也会跟踪 RS / 调度程序中尚未执行的指令。ROB 跟踪从发布到退休;RS 跟踪从发布到执行。这是使用术语,其中“发布”表示从前端变成乱序的后端。有人称之为“调度”。)
【讨论】: