关于MDK仿真Fault Report
根据官方给出的进行翻译的,有兴趣的可以点链接看看
故障报告对话框
故障报告对话框显示故障的类型,用于故障的处理程序,相应的故障状态寄存器以及指示故障已发生的寄存器位。
1. 内存管理错误
MM_FAULT_ADDR包含导致内存故障的地址。
MM_FAULT_STAT包含以下内存管理故障状态寄存器设置:
当处理器尝试从不允许执行的位置提取指令时,将设置IACCVIOL。
当处理器尝试在不允许该操作的位置加载或存储时,将设置DACCVIOL。
MMARVALID当MM_FAULT_ADDR持有有效的故障地址设置。
当为异常返回而取消堆栈导致一个或多个访问冲突时,将设置MUNSTKERR。
堆叠例外条目导致一个或多个访问冲突时,将设置MSTKERR。
2. 总线故障
BUS_FAULT_ADDR包含导致总线故障的总线地址。
BUS_FAULT_STAT包含以下总线故障状态寄存器设置:
当处理器在预取指令时检测到指令总线错误并尝试发出有故障的指令时,将设置IBUSERR。
当发生数据总线错误时,将设置PRECISERR,并且为异常返回而堆叠的PC值指向引起故障的指令。
当发生数据总线错误时,将设置IMPRECISERR,但是堆栈帧中的返回地址与导致错误的指令无关。
当为异常返回而取消堆栈导致一个或多个BusFault时