影子寄存器 - 手臂

时间:2012-12-09 04:55:39

标签: assembly arm microcontroller microprocessors

影子寄存器用于减少中断延迟。

Arm有15个寄存器,那么这些影子寄存器存储在哪里?

术语"影子寄存器"与银行和非银行登记有关?

2 个答案:

答案 0 :(得分:1)

ARM技术文档没有具体提到 shadow ,因此很难将其与ARM联系起来。

但是从comparision of ARM to MIPS architecture的角度来看:

  
    

MIPS架构支持多个“影子”寄存器库的实现。这允许更有效的上下文切换操作,但是在基于MIPS的设备上不普遍或一致地实现该特征的事实使得其使用受限。因此,很少有编译器或操作系统使用它。

  

在这种情况下,“影子寄存器”更有点自由 - 它们可用于许多事情,而分组寄存器则用于明确分开的执行模式。

答案 1 :(得分:1)

arm有超过15个寄存器,你可以访问的寄存器组中有15个是模式相关的。在infocenter.arm.com上找到的arm架构参考手册(只需获取涵盖传统臂拱的ARMv5),可以显示寄存器列表以及访问它们所需的模式。

ARM不使用术语影子寄存器,但是fiq模式与您要求的类似,因为您不必保留中断任务中的许多或任何寄存器。 ARM进一步拥有多个堆栈等,具体取决于模式。