ARM的异常和中断
来源:互联网 发布:淘宝食品网 编辑:程序博客网 时间:2024/05/01 15:37
异常和中断处理,负责处理错误,中断和其他由外部系统触发的事件。
ARM有7种异常,数据中止、快速中断请求、中断请求、预取址中止、软件中断、复位及未定义指令。
2种类型的中断,第一类是由外设引起的,即IRQ和FIQ。第二类是一条引发中断的特殊指令SWI。两种中断都会挂起正常的程序执行。
异常是需要中止指令正常执行的任何情形,包括ARM内核产生复位,取指或存储器访问失败,遇到未定义指令,执行了软件中断指令,或者出现了个外部中断等。异常处理就是处理这些异常情况的方法。大多数异常都对应一个软件的异常处理程序,一个在异常发生时执行的软件程序。
每种异常都导致内核进入一种特定的模式。每个处理器模式都有一组各自的分组寄存器,处理器模式决定了哪些寄存器是活动的以及对cpsr的完全读/写访问。同时,通过编程改变cpsr,可以进入任何ARM处理器模式。用户和系统模式,不通过异常进入,只能修改cpsr。
异常和其模式
异常 模式 目的
快速中断请求 FIQ 快速中断请求处理
中断请求 IRQ 中断请求处理
SWI和复位 SVC 操作系统的受保护模式
预取指中止和数据中止 abort 虚存或存储器保护处理
未定义指令 undefined 软件模拟硬件协处理器
中断是由ARM外设引起的一种特殊的异常。IRQ异常用于通常的操作系统事物处理。FIQ异常一般是为单独的中断源保留的。IRQ 可以被 FIQ 所中断,但 IRQ 不能中断 FIQ。为了使 FIQ 更快,所以这种模式有更多的影子寄存器。FIQ 不能调用 SWI(软件中断)。FIQ 还必须禁用中断。
每个外围设备都有一条中断线连接到向量中断控制器。外设功能的中断源,一般有WDT、定时器、UART、I2C、SPI、RTC、A/D等等。可以通过寄存器设置这些中断的优先级。
- ARM的异常和中断
- ARM异常和中断
- ARM中断和异常
- ARM 的异常中断
- arm的异常、中断和arm工作模式的联系
- ARM中的异常和中断
- ARM中的异常和中断
- arm linux 中断和异常
- ARM的异常中断机制
- ARM的异常中断机制
- ARM的异常与中断
- ARM的异常中断机制 .
- ARM的异常中断机制
- ARM:ARM中断异常的处理流程
- 浅析arm的异常、中断和arm工作模式的联系
- ARM中断异常处理的返回
- Arm异常中断返回时的处理
- ARM中断异常处理的返回
- Document root element "beans", must match DOCTYPE root "null".
- 生活常识(转)
- java 日期时间操作
- 异常机制
- 马云给正在奋斗的人的经典语句
- ARM的异常和中断
- POJ 1001 Exponentiation
- 网上SQL问题连载3
- Lucene2.9 范围查询Range Query
- STL 容器类(表list)
- 生活常识(转)
- 本人菜鸟一个
- 下面是一个时钟显示的JavaScript文档。在文档中用了非常多的函数
- Linux面试题与答案