You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
广州周立功单片机发展有限公司 Tel (020)38730976 38730916 Fax 38730925 http //www.zlgmcu.com<br />
未定义指令陷阱 软件可使用这一机制通过仿真未定义的协处理器指令来扩展 ARM 指令集<br />
注 <strong>ARM7TDMI</strong>-S 处理器完全遵循 ARM 结构 v4T 可以捕获所有分类未被定义的指令位格式<br />
在防止失败的指令后<br />
MOVS PC,R14_und<br />
捕获处理器执行下面的指令<br />
这个动作恢复了 PC 和 CPSR 并返回到未定义指令之后的指令<br />
关于未定义指令更详细的信息请参考 ARM 体系结构参考手册<br />
2.9.9 异常向量<br />
异常向量<br />
表 2-4 所示位异常向量地址<br />
表 2-4 异常向量<br />
在表中 I 和 F 表示先前的值<br />
地址 异常 进入时的模式 进入时 I 的状态 进入时 F 的状态<br />
0x00000000 复位 超级用户 禁止 禁止<br />
0x00000004 未定义指令 未定义 I F<br />
0x00000008 软件中断 超级用户 禁止 F<br />
0x0000000C 中止 预取指 中止 I F<br />
0x00000010 中止 数据 中止 I F<br />
0x00000014 保留 保留<br />
0x00000018 IRQ IRQ 禁止 F<br />
0x0000001C FIQ FIQ 禁止 禁止<br />
2.9.10 异常优先级<br />
异常优先级<br />
当多个异常同时发生时 一个固定的优先级系统决定它们被处理的顺序<br />
1. 复位 最高优先级<br />
2. 数据中止<br />
3. FIQ<br />
4. IRQ<br />
5. 预取指中止<br />
6. 未定义指令<br />
7. SWI 最低优先级<br />
有些异常不能一起发生<br />
未定义的指令和 SWI 异常互斥 它们分别对应于当前指令的一个特定 非重叠 译码<br />
当 FIQ 使能 并且在发生 FIQ 的同时产生了一个数据中止 <strong>ARM7TDMI</strong>-S 内核进入数据中止处<br />
理程序 然后立即转到 FIQ 向量 从 FIQ 的正常返回使数据中止处理程序恢复执行 数据中止<br />
的优先级必须高于 FIQ 以确保数据转移错误不会被漏过<br />
最坏情况下 FIQ 的延迟时间<br />
必须将异常入口的时间增加到系统中<br />
2.10 中断延迟<br />
中断延迟<br />
中断延迟被描述为<br />
最大中断延迟<br />
最小中断延迟<br />
2.10.1 最大中断延迟<br />
最大中断延迟<br />
最大中断延迟<br />
当 FIQ 使能时 最坏情况下 FIQ 的延迟时间包含<br />
- 17 -