Cortex-A8异常(Exception)
异常事件:
复位、未定义指令、软件中断、预存指令止、数据中止、未定义指令、外部中断请求 IRQ、快速中断请求 FIQ等。
概念:
(1)异常服务子程序。
(2)异常服务子程序入口地址。
(3)异常/中断向量。
(4)向量表。
ARM异常向量表
入口地址 |
异常 |
进入模式 |
进入异常条件 |
0x00000000 |
复位 reset |
管理模式 |
复位电平有效时 |
0x00000004 |
未定义指令 undefined_instruction |
未定义模式 |
遇到不能处理的指令 |
0x00000008 |
软件中断 software_interrupt |
管理模式 |
执行SWI指令 |
0x0000000c |
预存指令中止 prefetch_abort |
中止模式 |
处理器预取指令的地址不存在,或该地址不允许当前指令访问 |
0x00000010 |
数据操作中止 data_abort |
中止模式 |
处理器数据访问指令的地址不存在,或该地址不允许当前指令访问 |
0x00000014 |
未使用 not_used |
未使用 |
未使用 |
0x00000018 |
外部中断请求 IRQ |
IRQ |
外部中断请求有效,且CPSR中的I位为0 |
0x0000001c |
快速中断请求 FIQ |
FIQ |
快速中断请求引脚有效,且CPSR中的F位为0 |