预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共139页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

浙江工业大学计算机学院内容回顾3中断方式下,CPU无需完全服务于某个外设,效率高。 当出现某些异常或某外设有请求时,CPU暂停正在执行的程序,转去执行某一特定的程序,执行完后再返回原来的程序处继续执行。中断 指CPU正在执行某程序的过程中,由于出现了某些异常或外设提出了某种请求,CPU暂停当前程序,转去处理异常或外设请求的程序,执行完后再返回原来被终止的程序处继续执行。该过程称为中断。 主程序 未发生中断时,CPU正在执行的程序称为主程序。中断服务程序ISR 处理中断事件的程序,又称中断子程序。 不同的中断对应不同的ISR。 断点 中断时,主程序中被终止指令的下一条指令的地址。 CPU转去执行ISR时,断点被压入栈中进行保护;ISR执行完毕后,CPU通过出栈操作从栈顶获得中断断点,确保能返回到主程序处继续执行。中断源 引起中断的事件或设备。 内部中断:在CPU的内部产生。例:CPU执行程序时遇到的特殊情况,如:除法错。 外部中断:在CPU的外部产生。例:外设提出的中断,如电源故障。 中断类型号 微机系统中有多个中断源。为便于区分,为每个中断源分配一个编号,即中断类型号。中断接口 当中断源向CPU发中断请求时,需由一个电路来进行管理,如:接收中断请求、屏蔽/打开中断请求、中断优先级排队、中断嵌套和中断结束等。实现中断管理的逻辑电路称为中断接口。 本章使用8259A可编程中断控制器对系统的中断进行管理。中断识别 指CPU确定哪一个中断源发出中断请求的过程。 目的:最终形成该中断源所对应的中断服务程序的入口地址,实现程序的转移。 中断识别的2种方法: 查询法:采用软件或硬件查询技术来确定发出中断请求的中断源。 硬件法:由可编程中断控制器来提供中断类型号。中断向量和中断向量表 中断向量:指中断服务程序的入口地址。 每个ISR都有一个确定的入口地址。 入口地址=段基址CS:偏移地址IP,共4个字节。 中断向量表:将系统中所有的中断向量集中起来,按中断类型号从小到大的顺序存放在内存某区域。该存储区域称为中断向量表。 PC机中共有256个中断(0~255),每个中断向量占4个字节,共占1KB的存储区域。 用0000~03FFH的内存单元存储中断向量表。11从中断源请求中断到完成ISR后返回主程序的过程,称为中断过程。包含4个阶段。 中断源请求中断 外设发出中断请求时,中断接口电路需设置中断请求触发器,保持外设的中断请求信号,直到CPU响应该中断后才清除它。 中断接口电路应设置中断屏蔽寄存器,CPU可通过对其进行设置,使得某些中断源的中断请求不能提交到CPU。中断判优 由于同一时刻可能会有多个中断源同时请求中断服务,因此接口电路需对这些中断源进行优先级判别和优先级排队。这个过程称为中断判优。 CPU按照优先级的高低顺序来响应中断。中断响应 收到中断请求后,若CPU满足响应条件,则进入中断响应周期。 CPU响应中断的条件: CPU当前指令执行结束。 没有更高级的中断请求在执行。 CPU处于开中断状态(IF=1)。可用指令改变IF的状态:STI开中断;CLI关中断。15中断服务 CPU转入ISR后,需做以下几件事情: 保护现场:ISR将要用到的寄存器压栈,以免其数据破坏。 开中断:以便在执行ISR时,能响应更高级的中断请求。 中断处理:处理中断请求所要求的操作。 关中断:保证在恢复现场时不被新的中断打断。 恢复现场:在ISR结束前,执行出栈操作,恢复各寄存器的内容,以便主程序正确执行。 开中断:保证返回主程序后仍能响应中断。 中断返回:ISR的最后一条指令为IRET,它将IP、CS和FLAGS的内容依次弹出,以便恢复到主程序的断点处。中断管理包括中断源识别、优先级排队和中断嵌套。 中断源识别 PC机内有多个中断源,CPU收到中断请求后,需识别是哪一个中断源发出了中断请求信号,以便执行相应的中断服务程序。 中断源识别的两种方法: 软件查询:CPU逐个查询各中断源的状态,从而确定是哪个设备发出了中断请求。 硬件处理:中断接口电路将要响应的中断类型号送给CPU。2.中断的优先级排队 当有多个中断源同时请求中断时,由于CPU在同一时刻只能响应并处理一个中断请求,因此,需根据中断的性质及轻重缓急对中断源进行优先级排队。 CPU先响应优先级高的中断请求。高优先级的中断请求可中断低优先级的中断服务。 优先级排队的方法: 软件查询法 硬件菊花链排队法 可编程中断控制器排队法软件查询法软件查询法的实现: 屏蔽法移位法软件查询法的优缺点: 优点:实现简单,节省硬件。 缺点: 中断源较多时,查询程序较长,由查询转入相应的中断服务程序入口需要的时间较长。 查询的先后顺序决定了中断的优先级顺序:先被查询的中断,优先级最高。硬件菊花链法 在每个外设的接口上接一个逻辑电路,这