ARM9 异常类型与向量详解:优先级、指令预取中止和数据访问中止
1、ARM9 中优先级最高的异常类型是复位异常 (Reset Exception),它在系统上电或外部复位信号触发时发生。复位异常的向量地址是 0x00000000。
ARM9 中优先级最低的异常类型是无效指令异常 (Undefined Instruction Exception),它在处理器执行无效或未定义的指令时发生。无效指令异常的向量地址是 0x00000004。
2、指令预取中止和数据访问中止的异常入口和出口是通过异常向量表来定义的。
对于指令预取中止异常 (Prefetch Abort),它在处理器执行指令预取过程中发生异常时触发。异常入口地址是 0x0000000C,异常出口地址是 0x00000038。
对于数据访问中止异常 (Data Abort),它在处理器执行数据访问过程中发生异常时触发。异常入口地址是 0x00000010,异常出口地址是 0x0000003C。
在发生异常时,处理器会根据异常类型的不同,跳转到对应的异常入口地址。在处理异常的过程中,处理器会执行一系列的异常处理操作,包括保存寄存器状态、切换到特权模式、处理异常的原因等。当异常处理结束后,处理器会根据异常类型的不同,跳转到异常出口地址,继续执行正常的指令流程。
原文地址: https://www.cveoy.top/t/topic/bZED 著作权归作者所有。请勿转载和采集!