嵌入式系统原理与应用(报告)
- 格式:docx
- 大小:126.61 KB
- 文档页数:15
天津电子信息职业技术学院
《嵌入式系统原理与应用》课程报告
论文名称:SEP3203的中断响应机制
课程代码: 114232
姓名:甘琦
学号: 48
专业:物联网应用技术
班级:物联S14-1
完成时间: 2016 年 10 月 24 日
2
摘要 ............................................................................................................ 1
一、概述 .................................................................................................... 2
二、SEP3203的中断响应机制 ................................................................. 3
2.1中断延时 ....................................................................................... 3
2.2 中断过程 ...................................................................................... 3
三、ARM核下的多中断源处理方案 ......................................................... 3
四、ARM7 的异常响应机制 ...................................................................... 4
4.1异常分类 ....................................................................................... 4
4.2异常发生的硬件操作 ................................................................... 5
4.3异常返回地址 ............................................................................... 6
4.4异常向量表 ................................................................................... 8
4.5异常处理的返回 ......................................................................... 11
五、结语 .................................................................................................. 12
参考文献 .................................................................................................. 13 1
摘要
现代嵌人式操作系统中,中断处理技术是一项重要的技术。通过中断技术,使得处理器能够和外设并行地工作,提高了CPU的执行效率。首先分析了SEP3203的中断响应机制,然后介绍了中断向量表的软件实现,最后分析了异常发生的硬件操作以及处理返回。
关键字:ARM,SEP3203,中断,异常
2 一、概述
ARM(Advanced RISC Machines),既可以认为是一个公司的名字,也可以认为是对一类微处理器的通称,还可以认为是一种技术的名字。1991年ARM公司成立于英国剑桥,主要出售芯片设计技术的授权,作为知识产权供应商,本身不直接从事芯片生产,靠转让设计许可由合作公司生产各具特色的芯片,世界各大半导体生产商从ARM公司购买其设计的ARM微处理器核,根据各自不同的应用领域,加入适当的外围电路,从而形成自己的ARM微处理器芯片进入市场。目前,采用ARM技术知识产权(IP)核的微处理器,即我们通常所说的ARM微处理器,已遍及工业控制、消费类电子产品、通信系统、网络系统、无线系统等各类产品市场,基于ARM技术的微处理器应用约占据了32位RISC微处理器75%以上的市场份额,ARM技术正在逐步渗入到我们生活的各个方面。
SEP3203 处理器内嵌由英国ARM 公司提供的ARM7TDMI 处理器内核,全芯片可稳定运行在75MHz。集成了支持黑白,灰度,彩色的LCD 控制器;多媒体加速模块,用于提供多媒体处理定点矢量乘加的计算能力;支持低成本的NAND Flash 控制器并可从其直接启动;支持多种外存类型:SRAM,NOR Flash,SDRAM;支持实时时钟(RTC);支持四通道的定时器和两通道的PWM;支持用于连接触摸屏通讯的SPI 协议;支持两个UART 控制器,其中一个支持红外传输;支持USB1.1 Device 控制器用于PC 与移动终端之间的高速信息传输;支持MMC
卡控制器,用户可以扩展系统的存储能力和外设功能;支持兼容AC97 协议的控制器,用于音频文件的播放和录制。SEP3203 处理器内嵌20KByte 零等待的静态存储器(SRAM),用于多媒体处理时的核心代码与数据的存放,用户也可以将操作系统的核心代码或LCD 帧缓存存放在该处理器中,用于提供更高的性能和更低的能量消耗; 6 通道DMA 控制器,为用户提高了高速的数据传输通道。为了支持低成本的系统方案,SEP3203支持外部32 位/16 位数据总线,结合ARM 提供的Thumb 指令集,将大大降低系统成本和功耗,考虑到Nand Flash
的成本优势,SEP3203 处理器提供专用的Nand Flash 控制器,并支持系统直接从Nand Flash
启动。SEP3203 处理器采用LQFP176 封装形式。
3 二、SEP3203的中断响应机制
2.1中断延时
从外部请求信号发出到取出对应的中断服务程序(ISR)的第一条指令,这期间的间隔时间。
2.2中断过程
ARM 体系中通常在存储地址的低端固化了一个32 字节的硬件中断向量表,用来指定各异常中断及其处理程序的对应关系。当一个异常出现以后,ARM 微处理器会执行以下几步操作:
1)保存处理器当前状态、中断屏蔽位以及各条件标志位;
2)设置当前程序状态寄存器CPSR中相应的位;
3)将寄存器lr_mode设置成返回地址;
4)将程序计数器(PC)值设置成该异常中断的中断向量地址,从而跳转到相应的异常中断处理程序处执行。在接收到中断请求以后,ARM 处理器内核会自动执行以上四步,程序计数器PC总是跳转到相应的固定地址。
三、ARM核下的多中断源处理方案
ARM核只有一个常规中断引脚nIRQ,而在现代嵌入式系统中,中断源可能多达几十个.为此,在系统设计时,采用了二级中断的方式来实现中断控制。即由一个中断控制器来处理来自不同中断源的中断信号,经过判断后将中断信号送给ARM内核的中断引脚。SEP3203内集成的中断控制器支持32个普通中断源,并给这32个普通中断源分配了固定的优先级。每个中断源相应的可以配置为硬件中断或软件强制中断。当硬件中断或软件强制中断产生的时候,都可以产生mQ中断信号。基于硬件的架构,软件系统在实现中断向量的初始化时要构建2级向量表,如图所示。第一级为ARM核的异常向量表(普通向量表),第二级由具体CPU中断控制器控制的异常向量表——通常第二级向量表是IRQ异常处理向量表(特殊向量表)。 4 0x1c
0x18
0x14
0x10
0x0c
0x08
0x0
0x00
两级中断向量表
四、ARM7 的异常响应机制
所谓异常就是正常的用户程序被暂时中止,处理器就进入异常模式,例如响应一个来自外设的中断,或者当前程序非法访问内存地址都会进入相应异常模式。
4.1异常分类
(1)复位异常
当CPU 刚上电时或按下reset 重启键之后进入该异常,该异常在管理模式下处理。
(2)一般/快速中断请求
CPU 和外部设备是分别独立的硬件执行单元,CPU 对全部设备进行管理和资源调度处理,CPU
要想知道外部设备的运行状态,要么CPU 定时的去查看外部设备特定寄存器,要么让外部设备在出现需要CPU 干涉处理时“打断”CPU,让它来处理外部设备的请求,毫无疑问第二种方式更合理,可以让CPU“专心”去工作,这里的“打断”操作就叫做中断请求,根据请求的紧急情况,中断请求分一般中断和快速中断,快速中断具有最高中断优先级和最小的中断延迟,通常用于处理高速数据传输及通道的中数据恢复处理,如DMA 等,绝大部分外设使用一般中断请求。
(3)预取指令中止异常
该异常发生在CPU 流水线取指阶段,如果目标指令地址是非法地址进入该异常,该异常在中
B
Irqdesc()
Irqdesc{}
Irq[3].action
Irq[2].action
Irq[1].action