《桂林电子科技大学 微机原理课件d7.1》由会员分享,可在线阅读,更多相关《桂林电子科技大学 微机原理课件d7.1(18页珍藏版)》请在金锄头文库上搜索。
1、7.1 概述,解决高速的CPU与慢速的外设之间的矛盾 提高CPU的工作效率及实时性能,第七章 中断系统,7.1.1 中断的基本概念,1. 中断和中断源,中断是指CPU执行程序过程中,由于某种事件发生,迫使CPU暂时中止正在执行的程序(主程序),转去执行该事件的处理程序(中断服务程序),待处理完毕后,又返回到原程序的断点处,继续往下执行的过程,主程序,(断点),中断服务程序,中断请求,断点响应中断时的下一条指令的地址,中断源引起中断的原因或发出中断请求的来源,2.为什么引入中断 (1) CPU与外设并行工作,提高CPU的利用率和 I/O的速度; (2) 实现实时处理; (3) 实现故障处理。,3
2、. 中断系统的功能,实现中断及返回,实现优先权排队,高级中断源能中断低级的中断处理 (中断嵌套),7.1.2 中断处理过程,1. 中断请求,2. 中断判优,3. 中断响应,4. 中断处理,5. 中断返回,CPU接收到中断申请后,从中止现行程序到转向中断服务程序入口的过程 。 CPU响应中断条件: 中断是开放的 CPU在现行指令结束后响应中断 中断响应操作(CPU自动执行) : 关中断 保护断点和标志 转中断服务程序,识别哪些中断源有中断请求,比较它们的优先权,先响应优先级别最高的中断申请 。 软件判优 硬件判优 专用可编程中断控制器,中断源向CPU发出请求中断的 要求。 外设发出中断请求的条件
3、: 外设已准备好; 系统允许外设发中断请求。,7.1.2 中断处理过程,1. 中断请求,2. 中断判优,3. 中断响应,4. 中断处理,5. 中断返回,执行IRET指令,恢复断点和标志,执行中断服务程序 。 通常可根据需要完成以下工作 : (1)保护现场 (2)开中断 ;允许中断嵌套 (3)中断服务 (4)关中断 (5)恢复现场,1,1,1,END,7.1.2 中断处理过程,1. 中断请求,2. 中断判优,3. 中断响应,4. 中断处理,5. 中断返回,end,关中断的基本操作:,(1)CPU在响应中断后,发出中断响应信号INTA, (2)同时,内部自动地关中断,以禁止接受其他的中断请求。,保
4、护断点的基本操作:,CPU响应中断时主程序当前的CS和IP中的内容就是中断服务之后CPU返回并继续执行的指令地址,称为断点。 为保证CPU能正确地返回断点,在CPU转到中断服务程序之前将 断点 和 标志寄存器 的内容压入堆栈保护起来。,转中断服务程序入口的基本操作:,将中断服务程序入口地址(即中断向量)送CS和IP,计算机脱离主程序,转入中断服务程序。,保护现场的基本操作:,保护现场是指把中断服务程序中将要用到的有关寄存器的内容压入堆栈保存起来,以便在中断返回后恢复主程序在断点处的状态,防止影响主程序的运行。,开中断的基本操作:,原因:CPU响应中断,保护状态标志后会自动关闭中断。 中断嵌套的
5、两种模式: (1)不允许中断嵌套。若在整个中断服务程序中不会再被INTR所中断,即不允许中断嵌套,则在保护现场后不开中断,相应地不需要进行关中断,其流程图如图74所示; (2)允许中断嵌套。若进入中断服务程序后允许中断嵌套,则需要用指令开中断,使之能响应较高级的中断请求,其流程图如图75所示。,(1)恢复断点地址。中断服务程序结束时将堆栈中保存的断点地址、标志寄存器的原内容弹回CS、IP和标志寄存器,使CPU从断点处继续往下执行。 (2)标志寄存器内容的恢复。表示在返回断点后将自动开中断。,IRET的基本操作:,中断过程,正常程序,(断点),中断响应,中断返回,中断服务,中断请求,断点响应中断时的下一条指令的地址,断点位置是随机的,而且中断请求的发生一般通过硬件或专用的软中断指令实现,