中断响应的处理过程

中断响应的处理过程,第1张

中断工作是一个软硬件协调工作的过程,整个工作过程可分为四个子过程来理解:

1、中断请求

中断请求泛指中断源为了请求CPU暂停正在执行的某个程序,而转去执行中断源请求执行的某个程序,所发出的中断请求信号。也可以特指加到CPU的INTR和NMI引脚的请求信号。

读者需要注意的是:内部中断源的请求总是在CPU内部建立相应请求标志,用户可以不去理睬它。外部的非可屏蔽中断请求可以通过NMI引脚加入CPU,也比较简单。需要特别处理的主要是可屏蔽中断源的请求,这是因为外部可屏蔽中断源常常有许多个,它们只能通过CPU的INTR一个引脚输入,这就出现了以下问题:

(1)如何保证不同外部中断源采用不同的中断请求信号(电平不同或边缘不同)均能与INTR端的电平要求匹配。

(2)当多个中断源同时提出中断请求时,如何保证让优先级最高的请求,优先获得服务。

(3)如何保证当某一中断请求被响应后能及时地除掉INTR端的相应请求信号(不管中断源的请求信号是否解除)。

(4)如何解决在中断中又响应中断。

为了解决以上四个问题,必须将中断源的中断请求信号经过一个中断控制器处理,由中断控制器再去控制INTR引脚。本章第三节将要介绍的8259就是完成这一功能的专用中断控制器芯片。

2、中断承认

3、中断响应

4、断点恢复与返回

这是在中断服务程序结束前完成的 *** 作。首先用程序指令从栈中d出前面保护起来的寄存器内容, 执行RET指令时,硬件将自动断点保护阶段保护的内容d至CS、IP和FLAG。

1(CPU在指令执行每条指令最后一个T状态时,采样INTR信号)

若INTR=1,中断允许标志IF又为1。

(则CPU在结束当前指令周期后,相应中断请求,转去执行中断处理程序。)

2中断向量表:

位置:8088系统内存中最低端1K字节

内容:按中断类型号从小到大的顺序存储对应的中断向量,总共存储256个

(中断向量:中断服务程序入口地址的偏移量与段基值,一个中断向量占4字节)

3中断响应周期由两个连续的响应周期组成,在每个响应周期的T2至T4状态开始,从INTA'向外设接口发负脉冲。

在第一个响应周期,使AD7~AD0浮空。

在第二个响应周期,外设接口收到INTA'后,立即往数据总线AD7~AD0上送出一个中断类型码,CPU读入后,根据中断向量表找到该设备的处理程序的入口地址,转入中断处理。

对非屏蔽中断NMI而言,其请求信号为一上升沿触发信号,并要求维持两个时钟周期的高电平。与INTR大致类似,不同点:

1)NMI中断请求,CPU不需看IF是否为1,均要求响应(非屏蔽,不能由软件加以屏蔽)

2)CPU响应NMI时,不需从外设读中断向量,而是按规定对应中断向量表中的中断类型2,即直接从0000:0008H开始的4各单元中读取NMI中断服务程序的入口地址

中断由异步的外部事件引起。外部事件及中断响应与正在执行的指令不存在关系。80386有两根引脚INTR和NMI接受外部中断请求信号,INTR接受可屏蔽中断请求。在80386中,标志寄存器EFLAGS中的IF标志决定是否屏蔽可屏蔽中断请求。 处理器必须接受和处理来自NMI的中断请求。在80386系统中,处理器在响应NMI的中断向量号固定为2。为了避免不可屏蔽中断的嵌套,当接受到一个NMI中断请求时,处理器自动屏蔽所有的NMI的中断请求,直到执行中断指令IRET后才重新开放NMI中断请求,所以,NMI处理程序应以IRET指令结束

1(CPU在指令执行每条指令最后一个T状态时,采样INTR信号)

若INTR=1,中断允许标志IF又为1。

(则CPU在结束当前指令周期后,相应中断请求,转去执行中断处理程序。)

2中断向量表:

位置:8088系统内存中最低端1K字节

内容:按中断类型号从小到大的顺序存储对应的中断向量,总共存储256个

(中断向量:中断服务程序入口地址的偏移量与段基值,一个中断向量占4字节)

3中断响应周期由两个连续的响应周期组成,在每个响应周期的T2至T4状态开始,从INTA'向外设接口发负脉冲。

在第一个响应周期,使AD7~AD0浮空。

在第二个响应周期,外设接口收到INTA'后,立即往数据总线AD7~AD0上送出一个中断类型码,CPU读入后,根据中断向量表找到该设备的处理程序的入口地址,转入中断处理。

对非屏蔽中断NMI而言,其请求信号为一上升沿触发信号,并要求维持两个时钟周期的高电平。与INTR大致类似,不同点:

1)NMI中断请求,CPU不需看IF是否为1,均要求响应(非屏蔽,不能由软件加以屏蔽)

2)CPU响应NMI时,不需从外设读中断向量,而是按规定对应中断向量表中的中断类型2,即直接从0000:0008H开始的4各单元中读取NMI中断服务程序的入口地址

以上就是关于中断响应的处理过程全部的内容,包括:中断响应的处理过程、微机原理、可屏蔽中断与非屏蔽中断的区别各有什么作用等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/9792365.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-02
下一篇 2023-05-02

发表评论

登录后才能评论

评论列表(0条)

保存