- 1、本文档共6页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
异常中断处理概述
ARM中异常中断处理概述
在正常程序执行过程中,每执行一条ARM指令,程序计数器寄存器 PC的值加4个字 节;每执行一条Thumb指令,程序计数器寄存器 PC的值加两个字节?整个过程是顺序 执行?
通过跳转指令,程序可以跳转到特定的地址标号处执行 ,或者跳转到特定的子程序处
执行;
B指令用于执行跳转操作;
BL指令在执行跳转操作的同时,保存子程序的返回地址;
BX指令在执行跳转操作的同时 ,根据目标地址的最低位可以将程序状态切换到
Thumb状态;
BLX指令执行3个操作:跳转到目标地址处执行,保存子程序的返回地址(R15保存在 R14中),根据目标地址的最低位可以将程序状态切换到 Thumb状态?
当异常中断发生时,系统执行完当前指令后,将跳转到相应的异常中断处理程序处执
行?在当异常中断处理程序执行完成后 ,程序返回到发生中断的指令的下一条指令处
执行?
在进入异常中断处理程序时 ,要保存被中断的程序的执行现场 ,在从异常中断处理程
序退出时,要恢复被中断的程序的执行现场 ?本章讨论ARM体系中的异常中断机制?
ARM体系中异常中断种类?
ARM体系中的异常中断如下表所示 :
ARM体系中的异常中断
异常中断名称
含义
复位(RESET)
当处理器的复位引脚有效时,系统产生复位异常 中断,程序跳转到复位异常中断处理程序处执行 ?
复位异常中断通常用在下面两种情况 :
系统加电时
系统复位时 跳转到复位中断向量处执行,称为软复位
数据访问中止(Data Abort)
如果数据访问指令的目标地址不存在 ,或者该地
址不允许当前指令访问 ,处理器产生数据访问中 止异常中断
快速中断请求(FIQ)
当处理器的外部快速中断请求引脚有效 ,而且
CPSR寄存器的F控制位被清除时,处理器产生外 部中断请求(FIQ)异常中断
外部中断请求(IRQ)
当处理器的外部中断请求引脚有效,而且CPSR寄 存器的1控制位被清除时,处理器产生外部中断请 求(IRQ)异常中断?系统中各外设通常通过该异常 中断请求处理器服务
预取指令中止(Prefech Abort)
如果处理器预取的指令的地址不存在 ,或者该地
址不允许当前指令访问,当该被预取的指令执行 时,处理器产生指令预取中止异常中断
软件中断(software interrupt SWI)
这是一个有用化定义的中断指令 ?可用于用户模
式下的程序调用特权操作指令 ?在实时了操作系
统(RTOS)中可以通过该机制实现系统功能调用
未疋义的指令(un defi ned in struct ion)
当ARM处理器或者是系统中的协处理器认为当 前指令未定义时,产生未定义的指令异常中断 ?
可以通过该异常中断机制仿真浮点向量运算
3.异常中断向量表及异常中断优先级
中断向量表中指定了各异常中断及其处理程序的对应关系 ?它通常存放在存储地址
的低端?在ARM体系中,异常中断向量表的大小为 32字节?其中,每个异常中断占据 4个字节
大小,保留了 4个字节空间.
每个异常中断对应的中断向量表的 4个字节的空间中存放了一个跳转指令或者一个 向PC寄存器中赋值的数据访问指令 ?通过这两种指令,程序将跳转到相应的异常中断处理程 序处执行?
当几个异常中断同时发生时 ,就必须按照一定的次序来处理这些异常中断 ?在ARM
中通过给各异常中断富裕一定的优先级来实现这种处理次序 ?当然有些异常中断是不坑能同
时发生的,如指令预取中止异常中断和软件中断 (SWI)异常中断是有同一条指令的执行触发
的,他们是不可能同时发生的 ?处理器执行某个特定的异常中断的过程中 ,称为处理器处于特
定的中断模式?各异常中断的中断向量地址以及中断的处理优先级如表 2所示.
各异常中断的中短向量地址以及中断的处理优先级
中断向量地址
异常中断类型
异常中断模式
优先级(6最低)
0x0
复位
特权模式(SVC)
1
0x4
未定义的指令
未定义指令中止模式(Un def)
6
0x8
软件中断(SWI)
特权模式(SVC)
6
0x0c
r指令预取中止
中止模式
5
0x10
数据访问中止
中止模式
2
0x14
保留
未使用
未使用
0x18
:外部中断请求(IRQ)
夕卜部中断(IRQ)模式
4
0x1c
快速中断请求(FIQ)
快速中断(FIQ)模式
3
4.异常中断使用的寄存器
各异常中断对应着一定的处理器模式 ?应用程序通常运行在用户模式下 ?ARM中的处
理器模式如表3所示?
ARM中的处理器模式
处理器模式
描述
用户模式
正常程序执行的模式
快速中断模式
用于咼速数据传输和通道处理
外部中断模式
用于通常的中断处理
特权模式
供操作系统使用的一种保护模式
中止模式
用于虚拟存储及存储保护
未定义指令模式
用
您可能关注的文档
- 建设工程设计审查报审书.docx
- 建设工程项目部安全生产责任制..docx
- 建设法规概率名词解释以及简答题.docx
- 建设法治交通实施方案.docx
- 建设物上景观照明施工的方案(11.8.14).docx
- 建设科技成果验收申请表doc.docx
- 建设科技成果验收证书(验收用)doc.docx
- 建设项目、单项、单位、分部、分项工程定义(整理).docx
- 建设项目地质勘探合同.docx
- 建设项目开工安全生产条件申报审查表.docx
- 2023-2024学年广东省深圳市龙岗区高二(上)期末物理试卷(含答案).pdf
- 2023-2024学年贵州省贵阳市普通中学高一(下)期末物理试卷(含答案).pdf
- 21.《大自然的声音》课件(共45张PPT).pptx
- 2023年江西省吉安市吉安县小升初数学试卷(含答案).pdf
- 2024-2025学年广东省清远市九校联考高一(上)期中物理试卷(含答案).pdf
- 广东省珠海市六校联考2024-2025学年高二上学期11月期中考试语文试题.pdf
- 2024-2025学年语文六年级上册第4单元-单元素养测试(含答案).pdf
- 2024-2025学年重庆八中高三(上)月考物理试卷(10月份)(含答案).pdf
- 安徽省安庆市潜山市北片学校联考2024-2025学年七年级上学期期中生物学试题(含答案).pdf
- 贵州省部分校2024-2025学年九年级上学期期中联考数学试题(含答案).pdf
文档评论(0)