射频和无线供应商和资源的家

一站式满足您的射频和无线需求

ARM寄存器集,处理器模型和流水线概念

本ARM教程涵盖了ARM寄存器集、处理器模型和流水线概念。有关其他ARM教程内容,请参阅以下页面。

ARM教程page1
ARM教程第二页
ARM教程第3页
ARM教程第4页
ARM教程第5页
ARM教程第6页

寄存器数:总共37个寄存器。20(存入银行)始终不可见。所有模式下最小17可见。16个通用,1个相关状态。

存储寄存器:每种模式都有一组额外的寄存器,称为存储寄存器。每当模式发生变化时,就交换存储寄存器。

R13 - sp;在当前处理器模式下保持堆栈头。

R14 - LR(在调用子例程时指向返回地址)

R15 - pc。程序计数器。包含处理器要获取的下一条指令的地址。

部门登记

用户系统 FIQ 硬中断请求优先级别 SVC Undef 中止
罗依 罗依 罗依 罗依 罗依 罗依
r1 r1 r1 r1 r1 r1
r2 r2 r2 r2 r2 r2
r3 r3 r3 r3 r3 r3
r4 r4 r4 r4 r4 r4
r5 r5 r5 r5 r5 r5
r6 r6 r6 r6 r6 r6
r7 r7 r7 r7 r7 r7
r8 r8_fiq r8 r8 r8 r8
r9机型 r9_fiq r9机型 r9机型 r9机型 r9机型
r10 r10_fiq r10 r10 r10 r10
r11 r11_fiq r11 r11 r11 r11
r12 r12_fiq r12 r12 r12 r12
r13 / SP r13_fiq r13_irq r13_svc r13_undef r13_abort
r14 / LR r14_fiq r14_irq r14_svc r14_undef r14_abort
r15 /电脑 r15 /电脑 r15 /电脑 r15 /电脑 r15 /电脑 r15 /电脑
SPSR - - - - -
- SPSR_fiq SPSR_irq SPSR_SVC SPSR_undef SPSR_abort
手臂CPSR

ARM处理器模式:

中止、FIQ、IRQ、监督、系统、用户、未定义是处理器模式。
Abort:内存读写失败。
FIQ、IRQ:与ARM中的中断有关。
Supervisor:重置后,通常是内核运行的模式。
系统模式:用户模式的特殊版本,允许完全访问CPSR。
未定义模式:当遇到未定义指令时进入。

模式可以是特权模式(所有减去用户模式)或非特权模式(用户模式)。
确定哪些寄存器是活动的,以及谁拥有对CPSR的访问权限。
特权模式允许对CPSR进行完全读写访问。
非特权模式只允许对CPSR模式字段进行读访问,但允许对条件标志进行读/写访问。

表2,ARM条件标志


国旗 国旗的名字 时设置
饱和 结果导致溢出和/或饱和
V 溢出 结果将导致有符号溢出
C 携带 结果导致无符号进位
Z 结果为零,常用于表示相等
N 结果的第31位是二进制1

ARM管道特性


管道的特点

正如我们所知,更多的阶段意味着更高的频率,更高的系统延迟。

管道与PC关系:
在ARM状态下,
PC =当前指令加8。
在拇指模式下,
PC =当前指令+4

其他特征:在遗留的ARM核心中,执行分支导致管道刷新。分支预测用于减少管线冲平的影响。

在执行阶段的指令被服务之前,中断不会被服务。在中断时刷新管道中的指令。


分享本页

翻译本页
Baidu