arm中异常中断处理概述

arm中异常中断处理概述

ID:11678575

大小:122.50 KB

页数:6页

时间:2018-07-13

arm中异常中断处理概述_第1页
arm中异常中断处理概述_第2页
arm中异常中断处理概述_第3页
arm中异常中断处理概述_第4页
arm中异常中断处理概述_第5页
资源描述:

《arm中异常中断处理概述》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、异常中断处理概述1.ARM中异常中断处理概述1)在正常程序执行过程中,每执行一条ARM指令,程序计数器寄存器PC的值加4个字节;每执行一条Thumb指令,程序计数器寄存器PC的值加两个字节.整个过程是顺序执行.2)通过跳转指令,程序可以跳转到特定的地址标号处执行,或者跳转到特定的子程序处执行;B指令用于执行跳转操作;BL指令在执行跳转操作的同时,保存子程序的返回地址;BX指令在执行跳转操作的同时,根据目标地址的最低位可以将程序状态切换到Thumb状态;BLX指令执行3个操作:跳转到目标地址处执行,保存子程序的返回地址(R15保存在R1

2、4中),根据目标地址的最低位可以将程序状态切换到Thumb状态.3)当异常中断发生时,系统执行完当前指令后,将跳转到相应的异常中断处理程序处执行.在当异常中断处理程序执行完成后,程序返回到发生中断的指令的下一条指令处执行.4)在进入异常中断处理程序时,要保存被中断的程序的执行现场,在从异常中断处理程序退出时,要恢复被中断的程序的执行现场.本章讨论ARM体系中的异常中断机制.2.ARM体系中异常中断种类.ARM体系中的异常中断如下表所示:ARM体系中的异常中断异常中断名称含义复位(RESET)当处理器的复位引脚有效时,系统产生复位异常中

3、断,程序跳转到复位异常中断处理程序处执行.复位异常中断通常用在下面两种情况:系统加电时系统复位时跳转到复位中断向量处执行,称为软复位数据访问中止(DataAbort)如果数据访问指令的目标地址不存在,或者该地址不允许当前指令访问,处理器产生数据访问中止异常中断快速中断请求(FIQ)当处理器的外部快速中断请求引脚有效,而且CPSR寄存器的F控制位被清除时,处理器产生外部中断请求(FIQ)异常中断外部中断请求(IRQ)当处理器的外部中断请求引脚有效,而且CPSR寄存器的I控制位被清除时,处理器产生外部中断请求(IRQ)异常中断.系统中各外

4、设通常通过该异常中断请求处理器服务预取指令中止(PrefechAbort)如果处理器预取的指令的地址不存在,或者该地址不允许当前指令访问,当该被预取的指令执行时,处理器产生指令预取中止异常中断软件中断(softwareinterruptSWI)这是一个有用化定义的中断指令.可用于用户模式下的程序调用特权操作指令.在实时了操作系统(RTOS)中可以通过该机制实现系统功能调用未定义的指令(undefinedinstruction)当ARM处理器或者是系统中的协处理器认为当前指令未定义时,产生未定义的指令异常中断.可以通过该异常中断机制仿真

5、浮点向量运算1.异常中断向量表及异常中断优先级中断向量表中指定了各异常中断及其处理程序的对应关系.它通常存放在存储地址的低端.在ARM体系中,异常中断向量表的大小为32字节.其中,每个异常中断占据4个字节大小,保留了4个字节空间.每个异常中断对应的中断向量表的4个字节的空间中存放了一个跳转指令或者一个向PC寄存器中赋值的数据访问指令.通过这两种指令,程序将跳转到相应的异常中断处理程序处执行.当几个异常中断同时发生时,就必须按照一定的次序来处理这些异常中断.在ARM中通过给各异常中断富裕一定的优先级来实现这种处理次序.当然有些异常中断是

6、不坑能同时发生的,如指令预取中止异常中断和软件中断(SWI)异常中断是有同一条指令的执行触发的,他们是不可能同时发生的.处理器执行某个特定的异常中断的过程中,称为处理器处于特定的中断模式.各异常中断的中断向量地址以及中断的处理优先级如表2所示.各异常中断的中短向量地址以及中断的处理优先级中断向量地址异常中断类型异常中断模式优先级(6最低)0x0复位特权模式(SVC)10x4未定义的指令未定义指令中止模式(Undef)60x8软件中断(SWI)特权模式(SVC)60x0c指令预取中止中止模式50x10数据访问中止中止模式20x14保留未

7、使用未使用0x18外部中断请求(IRQ)外部中断(IRQ)模式40x1c快速中断请求(FIQ)快速中断(FIQ)模式32.异常中断使用的寄存器各异常中断对应着一定的处理器模式.应用程序通常运行在用户模式下.ARM中的处理器模式如表3所示.ARM中的处理器模式处理器模式描述用户模式正常程序执行的模式快速中断模式用于高速数据传输和通道处理外部中断模式用于通常的中断处理特权模式供操作系统使用的一种保护模式中止模式用于虚拟存储及存储保护未定义指令模式用于支持通过软件仿真硬件的协处理器系统模式用于运行特权级的操作系统任务各种不同的处理器模式可能

8、有对应于该处理器模式的物理寄存器组,如表4所示,其中,R13_svc表示特权模式下的R13寄存器,R13_abt表示中止模式下的R13寄存器,其余的各寄存器名称含义类推.表4各处理器模式的物理寄存器组用户模式系统模式特权

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。