ARM的工作模式和状态

  • 格式:docx
  • 大小:10.09 KB
  • 文档页数:2

下载文档原格式

  / 1
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

ARM的工作模式和状态

ARM 的两种工作状态: ARM 状态:32 位的字对齐,运行ARM 指令Thumb 状态:16 位的半字对齐的Thumb 指令注:CPU 在两种状态中切换时并

不影响CPU 的工作模式和相应的寄存器中的内容。ARM 的7 种工作模式 3

种正常运行态:用户模式(User):大部分任务(比如用户应用程序)执

行在这种模式。系统模式(System):运行操作系统的特权任务。

管理模式(Supervisor):当复位或者软中断指令执行时将会进入这种模式。

2 种中断模式快速中断模式(FIQ--First Interrupt Request):当一个高优先级中断(FIQ)产生时会进入这种模式。外部中断模式(IRQ--Interrupt Request):当一个低优先级(Normal)中断产生时进入这种模式。注:FIQ

和IRQ 的区别---FIQ 模式必须尽快处理,处理结束后离开这个模式;IRQ 模式

可以被FIQ 模式中断,但IRQ 不能中断FIQ 模式;为使FIQ 模式响应更快,

FIQ 模式具有更多的影子(Shadow)寄存器(硬件自动完成相应寄存器的数据

备份)。ARM 的FIQ 模式提供了更多的banked 寄存器,r8 到r14 还有SPSR,

而IRQ 模式就没有那么多,R8,R9,R10,R11,R12 对应的banked 的寄存器就没有,这就意味着在ARM 的IRQ 模式下,中断处理程序自己要保存R8 到R12 这几

个寄存器,然后退出中断处理时程序要恢复这几个寄存器,而FIQ 模式由于这

几个寄存器都有banked 寄存器,模式切换时CPU 自动保存这些值到banked 寄

存器,退出FIQ 模式时自动恢复,所以这个过程FIQ 比IRQ 快。 2 种异常模

式数据访问终止模式(Abort):当数据或指令预取终止时进入这种模式。

未定义指令终止模式(Undef):当执行未定义指令时进入这种模式。对

于Cortex A 系列的ARM 处理器来说,还有一种特有的Minitor 模式: 1 种特

有模式:Monitor 模式:是为了安全而扩展出的用于执行安全监控代码的