优秀的编程知识分享平台

网站首页 > 技术文章 正文

一文读懂ARM体系结构的工作状态(arm的几种工作模式)

nanyue 2024-09-23 10:40:55 技术文章 4 ℃

ARM体系结构是一种基于精简指令集的微处理器架构,它支持多种工作状态和工作模式。工作状态是指处理器执行的指令的长度和对对齐方式,工作模式是指处理器可以访问的硬件资源和特权级别。

根据我的搜索结果,ARM体系结构有以下几种工作状态:

  • ARM状态:处理器执行32位的字对对齐的ARM指令;
  • Thumb状态:处理器执行16位的、半字对对齐的Thumb指令;
  • Thumb-2状态:处理器执行16位或32位的、半字或字对对齐的Thumb-2指令。

在程序运行过程中,可以在两种状态之间进行相应的转换。转换不影响处理器的工作模式和寄存器内容。

ARM体系结构有以下几种工作模式:

  • 用户模式:用户程序运行模式,不能直接切换到其他模式;
  • 系统模式:运行特权级别操作系统任务,与用户模式类似,但具有可以直接切换到其他模式等特权;
  • 一般中断模式:用于处理一般的中断请求,通常在硬件产生中断信号之后自动进入该模式;
  • 快速中断模式:用于高速数据传输及通道处理,主要用于快速中断(FIQ);
  • 管理模式:提供操作系统使用的一种保护模式,可以通过软中断(SWI)命令进入该模式;
  • 中止模式:用于支持虚拟内存或存存储器保护,在ARM7TDMI没有大用处;
  • 未定义指令终止(undefined)模式:支持通过软件件仿真硬件协处理器(如FPGA)的软件件仿真。

除了用户、系统、一般中断、快速中断、管理和未定义指令终止外,还有以下几种异常性质:

  • 中断异常性质:当硬件产生中断信号时进入该性质;
  • 中止异常性质:当用户程序访问非法地址或没有权限读取内存时进入该性质;
  • 未定义异常性质:当CPU在译码阶段不能识别某条指令时进入该性质。
最近发表
标签列表