biubiu 去年08月提问
0
CPU寄存器个数问题

软件看到的寄存器个数远小于实际硬件寄存器个数,这样做的原因是什么?

被浏览 :  435
收起
( 0 ) 评论
Arm Cortex-A系列处理器及其相关系统设计
高性能SoC芯片设计系列课程之Arm篇 1466
团长 去年08月回复
0

这个主要是为了解决寄存器的依懒性,也就是前后的指令用到相同的寄存器,比如前一条指令的目的寄存器和下一条指令的源寄存器是同一个,那么下一条指令就需要等上条指令执行完了之后才执行,这个不利于处理器的性能提升,阻止了乱序执行的可能性。

通过物理上使用更多的寄存器,可以减少寄存器的互相依赖,也就是减少data hazard的发生,这样就可以实现比如乱序执行,或者超标量执行。

(2)评论
我的答案
提交答案