嵌入式系统原理与应用(报告)

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

天津电子信息职业技术学院

《嵌入式系统原理与应用》课程报告

论文名称:SEP3203的中断响应机制

课程代码:114232

姓名:甘琦

学号:48

专业:物联网应用技术

班级:物联S14-1

完成时间:2016 年10 月24 日

摘要 (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)

摘要

现代嵌人式操作系统中,中断处理技术是一项重要的技术。通过中断技术,使得处理器能够和外设并行地工作,提高了CPU的执行效率。首先分析了SEP3203的中断响应机制,然后介绍了中断向量表的软件实现,最后分析了异常发生的硬件操作以及处理返回。

关键字:ARM,SEP3203,中断,异常

1

一、概述

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 封装形式。

二、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异常处理向量表(特殊向量表)。

0x0c

0x08

0x0

0x00

两级中断向量表

四、ARM7 的异常响应机制

所谓异常就是正常的用户程序被暂时中止,处理器就进入异常模式,例如响应一个来自外设的中断,或者当前程序非法访问内存地址都会进入相应异常模式。

4.1异常分类

(1)复位异常

当CPU 刚上电时或按下reset 重启键之后进入该异常,该异常在管理模式下处理。

(2)一般/快速中断请求

CPU 和外部设备是分别独立的硬件执行单元,CPU 对全部设备进行管理和资源调度处理,CPU 要想知道外部设备的运行状态,要么CPU 定时的去查看外部设备特定寄存器,要么让外部设备在出现需要CPU 干涉处理时“打断”CPU,让它来处理外部设备的请求,毫无疑问第二种方式更合理,可以让CPU“专心”去工作,这里的“打断”操作就叫做中断请求,根据请求的紧急情况,中断请求分一般中断和快速中断,快速中断具有最高中断优先级和最小的中断延迟,通常用于处理高速数据传输及通道的中数据恢复处理,如DMA 等,绝大部分外设使用一般中断请求。

(3)预取指令中止异常

该异常发生在CPU 流水线取指阶段,如果目标指令地址是非法地址进入该异常,该异常在中

相关文档
最新文档