arm7芯片?请问ARM7 和 ARMv7这两个概念有什么区别?谢谢~~( 三 )


中断处理过程,ARM7进入及退出快中断模式和中断模式的过程(中断响应过程)如下:
① 将下一条指令的地址复制到LR(R14)中(在ARM状态下) 。
② 将CPSR复制到适当的SPSR(各种模式处CPSR是共用一个的 , 而SPSR在不同异常模式下是不同的) 。
③ 根据异常将CPSR模式强制设为快中断模式或中断模式 。
④ 强制PC从相关的异常向量处取指 。(到此完成进入中断服务程序的动作)
⑤ 执行异常服务程序 。
⑥ 将LR中的值减去偏移量后移入PC 。ARM状态快中断模式和中断模式下这个偏移量为4 , 因为LR保存的是由于FIQ或IRQ占先面没有被执行的指令的地址 。
⑦ 将SPSR的值复制回CPSR中 。
⑧ 清零在入口置位的中断禁止标志 。
一旦产生IRQ中断 , 微控制器会切换到IRQ模式 , 并且跳转到向量表0x0000018地址处执行程序 。而一旦产生FIQ中断 , 微控制器会切换到FIQ模式 , 并且跳转到向量表0x000001C地址处执行程序 。所示 , 在0x00000080处和0x0000001C处必须各有一条跳转指令 , 分别跳转的IRQ和FIQ中断处理的代码处 。在0x00000000处的一般向量表称为异常向量表 。
ARM7的中断向量表的前8个中断向量中 , 最后两个是IRQ和FIQ 。可以从这两个中断向量跳转到相应的中断服务函数中去 。在ARM7中 , IRQ中断用的比较多 。当产生一个IRQ中断之后 , 首先要保存当前工作状态的环境 , 然后将中断服务函数地址赋给PC , 跳转到中断服务函数 。执行完中断服务函数之后 , 再恢复中断前的工作状态环境 , 返回正常的工作模式 。

关于arm7和arm7芯片的介绍到此就结束了 , 不知道你从中找到你需要的信息了吗?如果你还想了解更多这方面的信息 , 记得收藏关注本站 。
查看更多关于arm7的详细内容...
【arm7芯片?请问ARM7 和 ARMv7这两个概念有什么区别?谢谢~~】Tags:arm7arm7芯片


推荐阅读