在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
芯片精品文章合集(500篇!) 创芯人才网--重磅上线啦!
查看: 1463|回复: 0

[资料] ARM的异常中断

[复制链接]
发表于 2015-12-3 15:24:11 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

x

计算机通常用异常来处理在执行程序时发生的意外事件,如中断、存储器故障等,它需要停止程序的执行流程。在正常的程序执行过程中,每执行一条ARM指令,程序计数器PC的值加4;每执行一条Thumb指令,程序计数器的PC值加2,整个过程按顺序执行。在程序执行过程中通常通过控制跳转类指令,程序可跳转到特定的地址标号处执行,或者跳转到特定的子程序处执行。而当异常中断发生时,系统执行完当前指令后,将跳转到相应的异常中断处理程序处执行异常处理,异常中断处理完成后,程序返回。

异常中断事件改变了程序正常执行的顺序,是程序执行的非正常状态。在进入异常中断处理程序时,要保存被中断的程序的执行现场。在从异常中断处理程序退出时,要恢复被中断的程序的执行现场。每种异常中断都具有各自的备份寄存器组。对异常中断的了解是处理器应用必须掌握的基本知识。

ARM体系结构中,异常中断用来处理软件中断、未定义指令陷阱及系统复位功能和外部事件,这些“不正常”事件都被规划“异常”,因为在处理器的控制机制中,它们都使用同样的流程进行异常处理。

ARM异常按引起异常事件的不同可分为3类:

(1)
指令异常引起的直接异常

软件中断、未定义指令和预取指中止(因为取指过程中的存储器故障导致的无效指令)属于这一类。

(2)
指令执行引起的间接异常

数据中止(在读取和存储数据时的存储器故障)属于这一类。

(3)
外部产生的与指令流无关的异常

复位、IRQFIQ属于这一类。

下表给出了ARM体系结构支持的异常中断的类型、异常中断下的工作模式、异常中断处理程序入口向量地址和每种异常中断的含义,每种模式下可访问的存储器可参考图1

ARM体系中的异常中断

ARM体系中的异常中断

ARM操作模式和寄存器使用.png

图1



凌阳教育,专注嵌入式人才培养13年,为大量企业输送优秀的嵌入式工程师。每个凌阳学子都在企业实现着自己的价值。想了解凌阳教育或者免费嵌入式学习资料下载,请点击www.sunplusedu.com访问凌阳教育官网。

您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /2 下一条


小黑屋| 手机版| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-11-22 01:35 , Processed in 0.016362 second(s), 9 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表