第08章中断技术及8259A的使用.ppt

上传人:王** 文档编号:536414 上传时间:2023-11-15 格式:PPT 页数:44 大小:698.50KB
下载 相关 举报
第08章中断技术及8259A的使用.ppt_第1页
第1页 / 共44页
第08章中断技术及8259A的使用.ppt_第2页
第2页 / 共44页
第08章中断技术及8259A的使用.ppt_第3页
第3页 / 共44页
第08章中断技术及8259A的使用.ppt_第4页
第4页 / 共44页
第08章中断技术及8259A的使用.ppt_第5页
第5页 / 共44页
第08章中断技术及8259A的使用.ppt_第6页
第6页 / 共44页
第08章中断技术及8259A的使用.ppt_第7页
第7页 / 共44页
第08章中断技术及8259A的使用.ppt_第8页
第8页 / 共44页
第08章中断技术及8259A的使用.ppt_第9页
第9页 / 共44页
第08章中断技术及8259A的使用.ppt_第10页
第10页 / 共44页
亲,该文档总共44页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《第08章中断技术及8259A的使用.ppt》由会员分享,可在线阅读,更多相关《第08章中断技术及8259A的使用.ppt(44页珍藏版)》请在优知文库上搜索。

1、中断技术中断技术教学要求理解理解:1)中断、中断源、中断向量、中断过程;)中断、中断源、中断向量、中断过程;2)8086中断系统结构、中断类型码、中断过程;中断系统结构、中断类型码、中断过程;外部中断的响应条件外部中断的响应条件掌握掌握:1)8086中断方式及中断入口地址形成方式;中断方式及中断入口地址形成方式;2)8086中断处理过程;中断处理过程;4)中断向量的设置过程;)中断向量的设置过程;3)中断的使用中断的使用8.1 中断的概述中断的概述 中断是微机原理中的一种非常重要的中断是微机原理中的一种非常重要的技术,也是技术,也是CPU和外部设备进行数据交换和外部设备进行数据交换的一种很有效

2、的方法的一种很有效的方法 中断的概念中断的概念 所谓中断(所谓中断(Interrupt),是指计算机在运),是指计算机在运行过程中,当有某些紧急事件或外设请求行过程中,当有某些紧急事件或外设请求发生时,迫使发生时,迫使CPU暂时中断现行程序的运暂时中断现行程序的运行而去处理紧急情况或外设请求,即去执行而去处理紧急情况或外设请求,即去执行其对应的行其对应的中断服务程序中断服务程序;等到事件处理;等到事件处理完毕,又返回原程序的中断点处,继续执完毕,又返回原程序的中断点处,继续执行被中断的程序。这个行被中断的程序。这个过程和机制过程和机制称为中称为中断。断。中断有什么用途呢中断有什么用途呢中断有什

3、么用途呢中断有什么用途呢 CPU与与I/O设备并行工作设备并行工作实现实时处理实现实时处理多道程序或多重任务的运行多道程序或多重任务的运行故障处理故障处理中断源及其来源分类中断源及其来源分类 引起中断的原因,或能发出中断申请的来源,引起中断的原因,或能发出中断申请的来源,称为中断源。称为中断源。通常中断源有以下几种:通常中断源有以下几种:一般的输入、输出设备。如键盘、纸带读入机、一般的输入、输出设备。如键盘、纸带读入机、行打印机等。行打印机等。数据通道中断源。如磁盘、磁带等。数据通道中断源。如磁盘、磁带等。实时时钟实时时钟 故障源故障源 为调试程序而设置的中断源为调试程序而设置的中断源中断的分

4、类中断的分类 就中断源及其性质讲,可分为就中断源及其性质讲,可分为内部中断内部中断和和外部中断外部中断 外部中断外部中断:一般是指:一般是指I/O设备或其它硬件电路所引起的设备或其它硬件电路所引起的中断。它的特点是通过硬件向中断。它的特点是通过硬件向CPU发出中断请求信号,发出中断请求信号,经常称外部中断为经常称外部中断为硬件中断硬件中断。外部中断又分为非屏蔽。外部中断又分为非屏蔽中断(中断(NMI)和可屏蔽中断()和可屏蔽中断(INTR)内部中断内部中断:主要指:主要指CPU内部的中断,是通过指令设置内部的中断,是通过指令设置的中断。所以内部中断也称为的中断。所以内部中断也称为软件中断软件中

5、断。使用软件中。使用软件中断,其功能类似于子程序调用。只是这些子程序大部断,其功能类似于子程序调用。只是这些子程序大部分是系统提供的,所以这类子程序的调用相当于高级分是系统提供的,所以这类子程序的调用相当于高级语言中的库函数的调用。语言中的库函数的调用。8.2 中断的一般过程中断的一般过程 中断请求中断请求中断响应中断响应中断服务中断服务中断返回中断返回中断请求中断请求 中断请求信号是由中断源向中断请求信号是由中断源向CPU发出的。发出的。中断源可以是中断源可以是外部事件外部事件,也可以是,也可以是CPU的的内部事件内部事件。外部事件的中断请求是外部设。外部事件的中断请求是外部设备向备向CPU

6、中断请求引脚发出的电平或边沿中断请求引脚发出的电平或边沿信号。内部事件的中断请求可以是信号。内部事件的中断请求可以是CPU执执行一条中断指令使行一条中断指令使CPU进入中断处理过程,进入中断处理过程,也可以是也可以是CPU执行程序的结果使执行程序的结果使CPU进入进入中断处理过程。中断处理过程。中断响应中断响应 若为非屏蔽中断申请,则若为非屏蔽中断申请,则CPU执行完正在执行的那一条指令后,做好执行完正在执行的那一条指令后,做好保护工作即可去响应;保护工作即可去响应;若为可屏蔽中断申请,若为可屏蔽中断申请,CPU只有得到允许才能去响应。这就是说只有得到允许才能去响应。这就是说CPU能否在接到中

7、断申请后立即响应要视情况而定。能否在接到中断申请后立即响应要视情况而定。对可屏蔽的中断申请,对可屏蔽的中断申请,CPU要响应,必须满足以下三个条件:要响应,必须满足以下三个条件:p 无总线请求;无总线请求;p CPU允许中断;允许中断;p CPU执行完现行指令。执行完现行指令。CPU响应中断要自动完成三项任务:响应中断要自动完成三项任务:u 关闭中断;关闭中断;u CS,IP以及以及PSW的内容推入堆栈(保护断点);的内容推入堆栈(保护断点);u 取得中断服务程序入口地址,进入中断服务。取得中断服务程序入口地址,进入中断服务。中断服务中断服务中断服务包括以下六个过程:中断服务包括以下六个过程:

8、保护现场保护现场 开中断开中断 中断服务程序中断服务程序 关中断关中断 恢复现场恢复现场 中断返回中断返回 大家考虑在终端返回时,是否需要开中断?大家考虑在终端返回时,是否需要开中断?中断返回中断返回 在中断服务程序最后安排一条中断返回指在中断服务程序最后安排一条中断返回指令,使断点送回程序计数器令,使断点送回程序计数器IP,继续执行,继续执行被中断的程序。被中断的程序。8.3 8086中断系统中断系统NMIINTR硬件中断硬件中断可可屏屏蔽蔽中中断断请请求求INT n 指令指令非屏蔽中断请求非屏蔽中断请求中中 断断 逻逻 辑辑INT3指令指令INTO指令指令单步单步中断中断除数为除数为0中中

9、 断断中中断断控控制制系系统统(8259A)8086的中断分类的中断分类软件中断软件中断中断向量及中断向量表中断向量及中断向量表 所谓中断向量,实际上就是中断处理子程序的入口地址,所谓中断向量,实际上就是中断处理子程序的入口地址,每个中断类型对应一个中断向量。每个中断类型对应一个中断向量。8086的中断系统是以位于内存的中断系统是以位于内存0段的段的03FFH区域的中断区域的中断向量表为基础的,中断向量表中最多可以容纳向量表为基础的,中断向量表中最多可以容纳256个中断个中断向量。向量。中断向量并不是任意存放的。一个中断向量占中断向量并不是任意存放的。一个中断向量占4个存储单个存储单元,其中,

10、前元,其中,前2个单元存放中断处理子程序入口地址的偏个单元存放中断处理子程序入口地址的偏移量(移量(IP),低位在前,高位在后,后),低位在前,高位在后,后2个单元存放中断个单元存放中断处理子程序入口地址的段地址(处理子程序入口地址的段地址(CS),同样也是低位在),同样也是低位在前、高位在后。按照中断类型的序号,对应的中断向量在前、高位在后。按照中断类型的序号,对应的中断向量在内存的内存的0段段0单元开始有规则地进行排列。单元开始有规则地进行排列。8086中断处理的优先级中断处理的优先级 8086CPU的中断优先权排列从高到低为:的中断优先权排列从高到低为:除法出错中断,溢出中断,除法出错中

11、断,溢出中断,INT n,断点中断断点中断 NMI INTR 单步中断单步中断8086中断类型号的获取方法中断类型号的获取方法 有两种方法获取类型号。有两种方法获取类型号。第一种是用指令直接获取。对于类型号第一种是用指令直接获取。对于类型号04的中的中断,由于断,由于8086CPU已规定了产生中断的原因,所已规定了产生中断的原因,所以可以直接获取类型号。而以可以直接获取类型号。而INT N类型的中断可类型的中断可以由指令直接得到中断类型号。以由指令直接得到中断类型号。第二种是由外部引入的第二种是由外部引入的INTR中断,当中断,当CPU响应中响应中断时必须由硬件提供中断类型号。在可屏蔽中断断时

12、必须由硬件提供中断类型号。在可屏蔽中断响应周期进行到第二个周期时,类型号放入数据响应周期进行到第二个周期时,类型号放入数据总线,总线,CPU从数据总线上获取类型号从数据总线上获取类型号 8086响应中断时的自动过程响应中断时的自动过程 -可屏蔽中断可屏蔽中断 首先将状态寄存器的内容压入堆栈中。首先将状态寄存器的内容压入堆栈中。置置TF=0,暂停单步中断,并置,暂停单步中断,并置IF=0,用以屏蔽,用以屏蔽以后的可屏蔽中断。以后的可屏蔽中断。断点地址断点地址CS:IP压入堆栈。压入堆栈。识别中断源,首先获取中断类型号。识别中断源,首先获取中断类型号。根据中断类型号,获取中断向量,得到中断服根据中

13、断类型号,获取中断向量,得到中断服务子程序的入口地址送入务子程序的入口地址送入CS:IP中断的使用及相应处理中断的使用及相应处理1在计算机系统中只有自己使用的中断在计算机系统中只有自己使用的中断2为以后程序使用的中断为以后程序使用的中断3系统中已经在使用的中断系统中已经在使用的中断 以上三种情况主程序的处理过程以上三种情况主程序的处理过程4 计算机系统已经使用的中断计算机系统已经使用的中断 主程序以及中断服务子程序要配合主程序以及中断服务子程序要配合PC机的中断安排PC机的中断安排(续)8.4 中断控制器中断控制器8259A Intel 8259A的功能的功能 8259A的结构及引脚的结构及引

14、脚 8259A的中断管理方式的中断管理方式 Intel 8259A的功能的功能 Intel 8259A是与是与8080/8085系列以及系列以及8088/8086系列兼容的可编程的中断控制器。它的主要功能系列兼容的可编程的中断控制器。它的主要功能为:为:具有具有8级优先权控制,通过级连可扩展至级优先权控制,通过级连可扩展至64级优级优先权控制。先权控制。每一级中断都可以屏蔽或允许。每一级中断都可以屏蔽或允许。在中断响应周期,在中断响应周期,8259A可提供相应的中断类型可提供相应的中断类型号,从而能迅速地转至中断服务程序。号,从而能迅速地转至中断服务程序。8259A有几种工作方式,可以通过编程

15、来进行选有几种工作方式,可以通过编程来进行选择。择。8259A内部结构图 中断请求寄存器(中断请求寄存器(IRR)该寄存器用来存放由外部输入的中断请求信号该寄存器用来存放由外部输入的中断请求信号IR7IR0,当某个输入端为高电平时,该寄存器的相应位置当某个输入端为高电平时,该寄存器的相应位置“1”。中断服务寄存器(中断服务寄存器(ISR)该寄存器记录正在处理中的中断请求,当任何一级中断被该寄存器记录正在处理中的中断请求,当任何一级中断被响应,响应,CPU正在执行它的中断服务程序时,正在执行它的中断服务程序时,ISR寄存器中寄存器中的相应位置的相应位置“1”,一直保持到该级中断处理过程结束为止。

16、,一直保持到该级中断处理过程结束为止。多重中断情况下,多重中断情况下,ISR寄存器中可有多位被同时置寄存器中可有多位被同时置“1”。优先权判别器(优先权判别器(PR)当输入端当输入端IR7IR0中有多个中断请求信号同时产生时,由中有多个中断请求信号同时产生时,由PR判定哪个中断请求具有最高优先权,并在脉冲期间把判定哪个中断请求具有最高优先权,并在脉冲期间把它置入中断服务寄存器它置入中断服务寄存器ISR的相应位。的相应位。8259A内部结构图的说明8259A内部结构图的说明(续)中断屏蔽寄存器(中断屏蔽寄存器(IMR)该寄存器中存放有关被屏蔽的中断线上的信息。当某位置该寄存器中存放有关被屏蔽的中断线上的信息。当某位置“1”时,表示禁止这一级中断请求进入系统,通过时,表示禁止这一级中断请求进入系统,通过IMR寄寄存器可实现对各级中断的有选择的屏蔽。存器可实现对各级中断的有选择的屏蔽。级联缓冲级联缓冲/比较器比较器 一片一片8259A只能接收只能接收8级中断,当超过级中断,当超过8级时,可用多级时,可用多片片8259A级联使用,构成主从关系。对于主级联使用,构成主从关系。对于主8259A,其

展开阅读全文
相关资源
猜你喜欢
相关搜索

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

copyright@ 2008-2023 yzwku网站版权所有

经营许可证编号:宁ICP备2022001189号-2

本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!