第四章_中断管理和复位

上传人:今*** 文档编号:107164323 上传时间:2019-10-18 格式:PPT 页数:36 大小:4.40MB
返回 下载 相关 举报
第四章_中断管理和复位_第1页
第1页 / 共36页
第四章_中断管理和复位_第2页
第2页 / 共36页
第四章_中断管理和复位_第3页
第3页 / 共36页
第四章_中断管理和复位_第4页
第4页 / 共36页
第四章_中断管理和复位_第5页
第5页 / 共36页
点击查看更多>>
资源描述

《第四章_中断管理和复位》由会员分享,可在线阅读,更多相关《第四章_中断管理和复位(36页珍藏版)》请在金锄头文库上搜索。

1、1,第四章 中断管理和复位,一、中断矢量 二、可屏蔽中断 三、非屏蔽中断 四、片内外设的中断扩展,第四章 中断管理和复位,第4章 中断管理和复位,中断申请:,由软件或硬件驱动的信号,可暂停目前执行的主程序,转而去执行一个中断服务子程序,第4章 中断管理和复位,中断分类(屏蔽方式): 可屏蔽中断:可用软件加以屏蔽或解除屏蔽。 非屏蔽中断:这些中断不能够被屏蔽。C28x将立即响应该种中断并转入相应的子程序去执行。所有用软件调用的中断都属于该类中断。,第4章 中断管理和复位,中断分类(触发方式): 软件触发:通过在软件中写指令,例如INTR、OR IFR或者TRAP指令。 硬件触发:来自于片内外设,

2、或者外围设备的中断信号,表示某个事件已经发生。,第4章 中断管理和复位,第4章 中断管理和复位,处理中断过程: 1接收中断请求:由软件中断(从程序代码中)或者硬件中断(从一个引脚或一个基于芯片的设备)提出请求去暂停当前主程序的执行。 2响应中断:C28x必须能够响应中断请求。如果中断是可屏蔽的,则必须满足一定的条件,按照一定的顺序去进行测试。而对于非屏蔽硬件中断和软件中断,C28x会立即作出响应。 3准备执行中断服务程序并保存寄存器值。 (1)完整地执行完当前指令,清除流水线中还没有到达第二阶段的所有指令。 (2)将寄存器ST0、T、AH、AL、PH、PL、AR0、ARl、DP、STl、DBG

3、STAT、PC和IER的内容保存到堆栈中,以便自动保存主程序的大部分内容。 (3)取回中断向量并把它放入程序寄存器PC中。 4执行中断服务子程序:C28x进入预先规定的向量地址,并且执行已写好的中断服务程序ISR。,第4章 中断管理和复位,第4章 中断管理和复位,处理中断过程:, C28x支持32个中断,包括复位中断。每一向量占用32位的空间,该地址是相应中断服务程序ISR的入口地址。每一个32位的向量被保存在一个连续地址中。,一、中断矢量,第4章 中断管理和复位,向量表可以映像到程序空间的底部或顶部,这取决于状态寄存器STl的向量映像位VMAP,如果VMAP位是0,向量就映像在以000000

4、h开始的地址上;如果其值是1,向量就映像到以3FFFC0h开始的地址上。 VMAP位可以由SETC VMAP指令进行置位,由CLR CVMAP指令进行复位。VMAP的复位值是1。,一、中断矢量,第4章 中断管理和复位,一、中断矢量,第4章 中断管理和复位,一、中断矢量,第4章 中断管理和复位, 14个通用中断INTlINTl4 为仿真而设计的中断DLOGINT(数据标志中断)和TOSINT(实 时操作系统中断) 中断寄存器: 中断标志寄存器IFRl6位寄存器IFR包含的标志位表明相应中断在等待CPU的确认。外部输入线INTlINTl4在CPU的每个时钟周期都被采样。如果识别出个中断信号,IFR

5、相应的位就被置位和锁存。DLOGINT或RTOSINT,CPU片内分析逻辑送来的信号使得相应标志位被设置和锁存。 中断使能寄存器IER包含的每一位为可屏蔽中断进行使能和关闭。 调试中断使能寄存器DBGIER包含的每一位为可屏蔽中断进行使能和关闭。表明了当CPU处于实时仿真模式时哪一个中断可以利用。,二、可屏蔽中断,第4章 中断管理和复位, 可屏蔽中断也利用状态寄存器STl的0位,即中断全局屏蔽位INTM,可用来进行全局使能中断和关闭中断。 当INTM0时,这些中断全局使能; 当INTM1时,这些中断全局关闭。,二、可屏蔽中断,第4章 中断管理和复位,中断标志寄存器(IFR),二、可屏蔽中断,第

6、4章 中断管理和复位,若要使能中断,需要把它的相应位置1; 若要关闭中断,应该清除它的相应位。,中断使能寄存器(IER),二、可屏蔽中断,中断使能寄存器IER,第4章 中断管理和复位,可屏蔽中断响应过程,二、可屏蔽中断,第4章 中断管理和复位,可屏蔽中断的标准操作,二、可屏蔽中断,1送往CPU的中断请求。 2设置相应的IFR标志位。 3当 1)IER中的相应位是1;2)STl中的INTM位是0,确认中断;一旦一个中断被 使能并且被CPU确认,则其他的中断就不能得到响应直到CPU开始执行中断服 务程序,即中断响应的步骤13。 4清除相应的IFR位。 5清空流水线。 6增加和临时存储PC。 7取回

7、中断向量。 8SP增1。 9执行自动上下文存储。 10清除相应的IER位。 11设置INTM和DBGM,清除LOOP、EALLOW和IDLESTAT。 12取回向量赋值给PC。 13执行中断服务程序。 14继续执行程序。,中断处理的标准过程,第4章 中断管理和复位,三、非屏蔽中断,C28x非屏蔽中断包括: 软中断INTR和TRAP指令 硬件中断NMI 非法指令陷阱 硬件复位中断RS,第4章 中断管理和复位, PIE:外设中断扩展模块(the Peripheral Interrupt Expansion block)把许多中断源多路复用成一个较小的中断输入集。 功能:PIE模块支持96个不同的中

8、断,这些中断分成12个组,每个组有8个中断,每个组都被反馈到CPU内核的12条中断线(1NTlINTl2)的一条上。这96个中断中的每一个都得到了各自向量的支持,这些向量被保存在专用RAM块中并可以进行修改。 在PIE块中可对每个中断分别使能或者使之无效。,四、片内外设的中断扩展,第4章 中断管理和复位,四、片内外设的中断扩展,第4章 中断管理和复位,四、片内外设的中断扩展,第4章 中断管理和复位,四、片内外设的中断扩展,第4章 中断管理和复位,2812三级中断系统,四、片内外设的中断扩展, 外设级:一个中断产生事件出现在某个外设中,和该事件相关的中断标志(IF)位会在这个特别外设的寄存器中被

9、置为1。如果相应的中断使能(IE)位已经置位,则外设向PIE控制器产生一个中断请求。如果该中断在外设级使能无效,则相应的IF位会一直保持直到用软件清除它为止。如果在以后使能该中断,且中断标志仍然置位,那么就会向PIE发出一个中断请求。外设寄存器中的中断标志必须手工清除。, PIE级:PIE块汇集了8个外设和外部引脚的中断进入1个CPU中断。这些中断被划分为12个组:PIE组1PIE组12,1个组中的中断被多路汇集进入1个CPU中断。例如,PIE组1被多路汇集进入CPU中断INTl,而PIE组12被多路汇集进入CPU中断INTl2。与CPU剩余的中断相连接的中断源不是多路复用的。对于非多路复用的

10、中断而言,PIE直接向CPU传送中断请求。对于多路复用的中断源,PIE块中的每个中断组都有一个相关标志位PIEIFRx.y和使能位PIEIERx.y。另外,每个中断组(1NT1INTl2)都有一个应答位PIEACKx。,第4章 中断管理和复位,2812三级中断系统, CPU级:一旦某个中断请求被送往CPU,CPU级中与INTx相关的中断标志(IFR)位就被置位。该标志位被锁存在IFR后,CPU不会马上就去执行相应的中断,而是等待CPU使能IER寄存器,或者使能DBGIER寄存器,并对全局中断屏蔽位INTM进行适当的使能。,四、片内外设的中断扩展,第4章 中断管理和复位,2812三级中断系统,四、片内外设的中断扩展,第4章 中断管理和复位,四、片内外设的中断扩展,第4章 中断管理和复位,四、片内外设的中断扩展,第4章 中断管理和复位,四、片内外设的中断扩展,第4章 中断管理和复位,四、片内外设的中断扩展,第4章 中断管理和复位,四、片内外设的中断扩展,第4章 中断管理和复位,四、片内外设的中断扩展,第4章 中断管理和复位,四、片内外设的中断扩展,第4章 中断管理和复位,四、片内外设的中断扩展,第4章 中断管理和复位,四、片内外设的中断扩展,第4章 中断管理和复位,四、片内外设的中断扩展,第4章 中断管理和复位,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号