ARM中断处理类型
中断与堆栈设置和ARM体系结构紧密相关,ARM是一种支持多任务操作的系统内核,内部结构完全适应多任务应用。ARM内核支持7种中断,不同的中断处于不同的处理模式(如表1所示),具有不同的优先级,而且每个中断都有固定的中断入口地址。当一个中断发生时,相应的R14(LR)存储中断返回地址,SPSR存储状态寄存器CPSR的值。
由于ARM内核支持流水线工作,LR寄存器存储的地址可能是发生中断处后面指令的地址,所以不同的中断处理完成后,必须将LR寄存器值经过处理后再写入R15(PC)寄存器。
表1 ARM的7种中断
ARM体系结构所支持的异常及具体含义如表2所示。
表2 ARM所支持的异常及其具体含义
续表
评论