S3C2440A的中断控制器
来源:互联网 发布:家庭网络布线弱电箱 编辑:程序博客网 时间:2024/04/28 04:18
今天下午看了三星S3C2440A的中断控制器部分, 下面是其DataSheet上有关这一部分的主要内容.
S3C2440A的中断控制器共可以接收60个中断源的中断请求. 当收到内部或外部的中断请求后, 经过仲裁程序, 中断控制器会向ARM920T内核请求快速中断(FIQ)或中断(IRQ).
1.Program status Register(PSR)(程序状态寄存器): 若PSR的F-bit被置1, 则CPU不接收来自中断控制器的快速中断请求(FIQ). 同样,如果PSR的I-bit被置1,则CPU不接收来自中断控制器的中断请求(IRQ).
2.Interrup Mode Register(中断模式寄存器): 对应位置1表示FIQ模式(fast interrupt)否则为IRQ模式(normal interrupt). 另外, 仅能有一个中断源能被设置成FIQ模式.
3.Interrupt Pending Register(不知道该如何翻译,挂起寄存器?): S3C2440A有两个挂起寄存器,分别是sourse pending register(SRCPND)和interrupt pending register(INTPND). 当中断源请求中断服务的时候, SRCPND的相应位被置为1, 与此同时, 经过仲裁程序, INTPND中仅有一位会自动被置为1. 如果该中断被屏蔽, SRCPND依旧会被置1, 而INTPND不变. 当INTPND中的一位被置1后, 只要I-flag或F-flag被清0, 中断服务程序就会开始. 中断服务程序还必须把SRCPND和INTPND的相应位清0.
4.Interrupt Mask Register(INTMSK)(中断屏蔽寄存器): 该寄存器相应位置1表示中断禁用, 置0为中断使能. 当中断产生时, 即使相应的屏蔽位被置为1, SRCPND也会被置位.
5. Sourse Pending Register(SRCPND): 32位的寄存器, 每一位对应一个中断源. 当中断源产生中断请求时, 该寄存器对应位置1, 它也表明中断源在等待中断服务. 需要注意的是, 不管INTMASK寄存器如何设置, SRCPND都会被自动置位. 在中断服务程序(ISR)中, SRCPND的对应位必须要清零, 以便接收下次的中断请求.
6.Interrupt Offset Register(INTOFFSET): 保存INTPND中是哪个IRQ的中断请求.
7.Sub Source Pending Register(SUBSRCPND): 略.
8.Interrupt Sub Mask Register(INTSUBMSK): 略.
- S3C2440A的中断控制器
- 三星的S3C2440A 存储器控制器
- S3C2440A中断小记
- S3C2440A外部中断BUG
- S3C2440A的定时器3中断不产生的问题
- S3C2440的中断控制器
- S3C2440的中断控制器
- ARM9的中断控制器
- C6678的中断控制器
- C6678的中断控制器
- JZ2440的中断控制器
- s3c2440的中断控制器以及中断编程
- linux中断子系统 - 中断控制器的注册
- S5PV210的向量中断控制器
- 【ARM学习笔记】三、S3C2440A的存储控制器及启动过程
- 中断控制器
- 《micro2440开发》第二章:S3C2440A中断系统
- S3C2440A的DMA
- puzzle 18: String Cheese String的构造
- 2007中国软件技术英雄会投票截止公告
- 流氓修炼之谜 揭开流氓软件的技术原理
- fsdfa
- 内联的使用
- S3C2440A的中断控制器
- 区别电脑语言bit与byte(转)
- Vim编辑器 颜色显示
- C#操作Excel(导入导出)
- 手机
- linux下apache的安装
- 马云对雅虎员工的精彩演讲:爱迪生欺骗了世界
- SCW安全配置向导
- Visual C#的Excel编程