打印

求教:ARM的IRQ和FIQ中断问题

[复制链接]
2920|2
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
greenbug|  楼主 | 2007-12-7 10:03 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
请教下:很多资料上说arm7有FIQ和IRQ工作模式,拿IRQ举例吧,他们又有很多的各种各样的中断,比如定时器中断啊,串口中断什么的。我想知道的是这些中断和IRQ是什么关系。他们是在IRQ模式下进行的吗?我先说说我自己的理解:其实IRQ也和正常工作模式类似,只是有些寄存器无法读到而已,他和正常运行模式之间也是一种类似于中断的工作模式,当IRQ来临时,arm切换到IRQ模式,等中断处理完了,再切换回正常工作模式。而所谓的各种中断也只是为了紧急响应外部事件而写的一段代码,是运行在IRQ模式下的程序。不知道我的理解对不对,    请指教。

相关帖子

沙发
dld2| | 2007-12-7 10:13 | 只看该作者

Re:

首先,要把一个ARM处理器分成两部分:ARM核、外围逻辑。
ARM核只认IRQ和FIQ信号,信号有效时,使处理器进入IRQ或FIQ模式,并修改PC指向异常向量表的相应位置。
IRQ和FIQ信号是外围逻辑中的中断控制器产生的。各个厂家的实现方法可能都不太一样。
中断控制器,去识别具体的中断源,例如是串口中断还是外中断。然后通过某种硬件或软件的方式使程序跳转到具体中断的服务程序。

使用特权

评论回复
板凳
greenbug|  楼主 | 2007-12-7 12:12 | 只看该作者

RE:

楼上说的有道理。我刚才翻了下书,您说的是对的。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

33

主题

187

帖子

0

粉丝