不同CPU中断技术对比

不同CPU中断技术对比

ID:39352515

大小:377.00 KB

页数:7页

时间:2019-07-01

不同CPU中断技术对比_第1页
不同CPU中断技术对比_第2页
不同CPU中断技术对比_第3页
不同CPU中断技术对比_第4页
不同CPU中断技术对比_第5页
资源描述:

《不同CPU中断技术对比》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、不同CPU中断技术对比摘要:本文大体论述了80x86,80c51,和ARM在中断源,中断申请方式、中断优先级管理方式、中断的处理过程、中断向量等方面比较。关键词:CPU,80x86,80c51,,ARM,中断申请方式,中断优先级管理方式,中断的处理过程,中断向量。正文:一、X86CPU,80C51,ARM中断源:X86CPU支持256个中断向量,中断号00H--0FFH。0~19是系统预定义的异常和NMI,20~31被Intel保留,如表1。所以,外部中断从32开始。CPU处理的流程都一样,在执行完当前指令后,根据中断源提供

2、的中断向量,在IDT中找到并调用相应的服务例程。X86CPU中断分为内部中断和外部中断。内部中断分为:软中断,内部中断和异常,异常分为3种:Fault:可以被更正的错误,异常处理程序的返回地址是产生fault的指令。Trap:执行trap指令(例如INT3)后被报告的异常,异常处理程序的返回地址是产生trap指令的后一条指令。Abort:严重错误,无法继续执行。外部中断分为:不可屏蔽硬件中断和可屏蔽硬件中断。不可屏蔽硬件中断(02H):由NMI端引入的中断请求,中断请求不可被屏蔽;可屏蔽硬件中断请求:由INTR端引入,中断请

3、求可由IF=0进行屏蔽,使中断请求不进入。表180C51的中断系统包括中断源、中断允许寄存器IE、中断优先级寄存器IP、中断矢量等。在80C51中,只有两级中断优先级。图1是80C51的中断系统结构示意图。80C51有5个中断源分别为:两个外部中断源INT0、INT1和三个内部中断源T0、T1定时/计数谥出中断源和串行口发送或接收中断源。外部中断是由外部信号引起的,它们的中断请求信号分别从引脚INT0和INT1上引入图1ARM7TDMI具有常规中断(IRQ)、快中断(FIQ)和软件中断(SoftWareInterrupt)三

4、种中方式。常规中断和快中断都是硬件中断。快中断是为支持数据传输或快速数据通道而设计的,为快速处理快中断。①快中断被设为最高中断优先级;②在快中断模式增设了7个私有工作寄存器,从而避免了由于主工作寄存器数据的保存和恢复而带来了额外开销;③快中断处理程序处于异常向量表的最后位置,因此可紧接异常向量表书写快中断处理程序,而不必进行程序跳转操作,避免了刷新指令流水线和高速缓存。软件中断是一种由用户设置的同步中断,由程序指令产生,不像硬件中断那样由外部事件触发。软件中断允许运行在用户模式的程序进入监督模式,并运行监督态下的函数。在AR

5、M7TDMI的硬件调试系统中,应用程序可利用软件中断来申请半自主式操作,利用软件中断机制,可以直观和高效地仿真调试应用程序。另外,软件中断也可用于一般性的程序控制。中断特性如表2向量地址中断类型工作模式优先级返回地址0x8软件中断SWI模式6pc-40x18常规则中断IRQ模式4pc-80x1C快中断FIQ模式3pc-8表2二、X86CPU,80C51,ARM中断处理过程:中断申请、中断响应、中断处理、中断返回。80x86中断请求:当外设需要中断服务时,由硬件产生一个中断请求信号INTR发送给CPU;CPU在当前指令结束时检

6、测INTR引脚,判断是否有中断请求。中断响应:当检测到有中断请求且IF=1时,总线周期信号M/IO,D/C,W/R为000,通过总线控制逻辑发中断响应信号。INTA给中断请求设备表示应答:中断请求设备将中断号送上数据总线;系统自动进入中断响应周期,由硬件完成关中断、保存断点、取中断服务的入口地址(N*4)等一系列操作,而后转向中断服务程序执行中断处理。中断处理:执行中断服务程序中规定的操作。中断返回:将压栈的断点从堆栈中弹出,开中断,CPU转向被中断的主程序继续执行80C51外部中断请求有两种信号触发方式。可通过设置有关控制

7、位进行定义。当设定为电平有效方式时,若INT0或INT1引脚上采样到有效的低电平,则向CPU提出中断请求;当设定为跳变有效方式时,若INT0或INT1引脚上采样到有效负跳变,则向CPU提出中断请求。中断采样:针对外部中断请求信号进行的,而内部中断请求都发生在芯片内部,可以直接置位TCON或SCON中的中断请求标志。在每个机器周期的S5P2期间,各中断标志采样相应的中断源,并置入相应标志。中断查询:若查询到某中断标志为1,则按优先级的高低进行处理,即响应中断。80C51的中断请求都汇集在TCON和SCON中。而CPU则在下一机

8、器周期的S6期间按优先级的顺序查询各中断标志。先查询高级中断,再查询低级中断。同级中断按内部中断优先级序列查询。如果查询到有中断标志位为“1”,则表明有中断请求发生,接着从相邻的下一个机器周期的S1状态开始进行中断响应。中断响应:硬件自动生成长调用指令为LCALLaddr16,而addr1

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。