首页 > 试题广场 >

对于乱序执行的处理器,下列哪个流水线阶段是乱序执行的?

[单选题]
对于乱序执行的处理器,下列哪个流水线阶段是乱序执行的?
  • 取址/译码
  • 寄存器重命名
  • 指令执行
  • 指令退休
C

发表于 2020-06-09 15:46:58 回复(0)
乱序执行(out-of-order execution)是指CPU采用了允许将多条指令不按程序规定的顺序分开发送给各相应电路单元处理的技术。比方Core乱序执行引擎说程序某一段有7条指令,此时CPU将根据各单元电路的空闲状态和各指令能否提前执行的具体情况分析后,将能提前执行的指令立即发送给相应电路执行。   
来自百度百科。
发表于 2019-08-03 20:46:05 回复(1)
乱序执行是指在存储器中的数据排列顺序被破坏,从而影响程序的正确性。对于乱序执行的处理器,下列哪个流水线阶段是乱序执行的?

A.取址/译码:取址/译码阶段需要将内存地址翻译成物理地址,不会涉及到乱序问题。 B.寄存器重命名:寄存器重命名也不会涉及到乱序问题。 C.指令执行:指令执行过程中,需要根据操作数的地址调用相应的指令,可能会涉及到乱序问题。 D.指令退休:指令退休就是将当前指令暂时转移到队列中,等待有空闲指令时再执行。由于指令没有交换(不会涉及到乱序),因此指令退休不会涉及到乱序问题。

答案:C.指令执行
发表于 2023-05-08 17:02:21 回复(0)

乱序执行(Out-of-order execution,OoOE)是一种处理器的执行方式,其目的是提高指令级并行性(Instruction-Level Parallelism,ILP),以便在单个时钟周期内同时执行多条指令。它通过在执行阶段对指令进行重排序,将可以并行执行的指令尽可能地同时执行,从而达到提高处理器效率的目的。

乱序执行处理器通常具有一个名为“指令窗口”的结构,它允许多个指令同时进入执行阶段,并在可用资源和数据依赖关系满足的情况下最大程度地并行执行这些指令。在这个过程中,乱序执行处理器会根据指令之间的数据依赖关系来重排指令的执行顺序,以避免数据相关性问题导致的指令冒险,从而最大限度地发挥执行单元的利用率。

乱序执行处理器还经常使用预测技术,如分支预测和数据预取,在执行阶段之前预测分支和加载/存储操作的结果,以使它们在执行阶段被调度并尽可能快地完成。

总之,乱序执行是一种复杂的执行技术,它需要精密的硬件支持和复杂的算法,但是它可以大大提高处理器的效率和性能。

编辑于 2023-12-14 17:52:11 回复(0)
乱序执行有时候会造成程序bug...
发表于 2022-06-28 16:59:07 回复(0)