微机原理与接口技术第5章 输入输出接口与中断技术_第1页
微机原理与接口技术第5章 输入输出接口与中断技术_第2页
微机原理与接口技术第5章 输入输出接口与中断技术_第3页
微机原理与接口技术第5章 输入输出接口与中断技术_第4页
微机原理与接口技术第5章 输入输出接口与中断技术_第5页
已阅读5页,还剩87页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、主讲:李忍东主讲:李忍东 西安培华学院西安培华学院 第五章第五章 i/o接口与中断技术接口与中断技术 i/o i/o 接口接口 中断技术中断技术 中断控制器中断控制器8259a8259a 习题与思考习题与思考 输入输出(输入输出(i/oi/o)是指微型计算机与外界的是指微型计算机与外界的 信息交换,即通信(信息交换,即通信(communication)communication)。 微型计算机与外界的通信,是通过输入输微型计算机与外界的通信,是通过输入输 出设备进行的,通常一种出设备进行的,通常一种i/oi/o设备与微型机设备与微型机 连接,就需要一个连接电路,我们称之为连接,就需要一个连接电

2、路,我们称之为 i/oi/o接口。存储器也可以看做是一种标准化接口。存储器也可以看做是一种标准化 的的i/oi/o设备。设备。 而对于微型计算机来说,设计微处理器而对于微型计算机来说,设计微处理器 cpucpu时,并不设计它与外设之间的接口部件,时,并不设计它与外设之间的接口部件, 而是将输入而是将输入/ /输出设备的接口设计成完全独输出设备的接口设计成完全独 立的部件,使它们成为立的部件,使它们成为通用的接口芯片通用的接口芯片,通,通 过它们可以将各种类型的外设与过它们可以将各种类型的外设与cpucpu连接起连接起 来构成完整的微型计算机系统。来构成完整的微型计算机系统。 不同不同i/oi/

3、o设备对应了不同的设备对应了不同的i/oi/o接口。计算接口。计算 机在与机在与i/oi/o设备进行信息交换时,它直接控制设备进行信息交换时,它直接控制 的是的是i/oi/o接口,然后再由接口,然后再由i/oi/o接口与接口与i/oi/o设备进设备进 行信息的交换,因此,行信息的交换,因此,计算机的输入计算机的输入/ /输出操输出操 作被分为多级传送作被分为多级传送。为增加通用性,。为增加通用性,i/oi/o接口接口 电路一般均具有可编程功能电路一般均具有可编程功能,通过程序设置,通过程序设置 使其具有不同的功能,实现与多种设备的连使其具有不同的功能,实现与多种设备的连 接。接。 6.1 cp

4、u6.1 cpu与外设通讯的特点与外设通讯的特点 存储器与存储器与cpucpu交换信息交换信息: :它们在数据格式、存取速度它们在数据格式、存取速度 等方面基本是等方面基本是匹配匹配的,也就是说的,也就是说cpucpu要从存储要从存储 器读入指令,数据或向存储器写入新的结果和器读入指令,数据或向存储器写入新的结果和 数据,只要一条存储器访问指令就可完成,在数据,只要一条存储器访问指令就可完成,在 硬件连接方面是芯片与芯片之间的管脚连接。硬件连接方面是芯片与芯片之间的管脚连接。 cpucpu与外部设备与外部设备通讯的困难:通讯的困难: 1.cpu1.cpu的运行速度要比外设的处理速度高得多的运行

5、速度要比外设的处理速度高得多 2.2.一台打印机不能直接与一台打印机不能直接与cpucpu的管脚连接,的管脚连接, 一个键盘或者其他外设也是如此。一个键盘或者其他外设也是如此。 接口是接口是用于控制微机系统与外设或外设与用于控制微机系统与外设或外设与 系统设备之间的数据交换和通信的系统设备之间的数据交换和通信的硬件电硬件电 路路。 接口设计涉及到两个基本问题:接口设计涉及到两个基本问题: 1.1.中央处理器如何寻址外部设备,实现多中央处理器如何寻址外部设备,实现多 个外部设备的识别;个外部设备的识别; 2.2.是中央处理器如何与外设连接,进行数是中央处理器如何与外设连接,进行数 据、状态和控制

6、信号的交换。据、状态和控制信号的交换。 接口的功能:接口的功能: (1)输入输出数据的通道)输入输出数据的通道 (2)数据缓冲与锁存功能)数据缓冲与锁存功能 (3)协调)协调cpu和输入输出设备的数据传送和输入输出设备的数据传送 (4)设备选择功能)设备选择功能 (5)数据格式转换功能)数据格式转换功能 (6) 中断请求与管理功能中断请求与管理功能 不同的不同的i/oi/o接口具有不同的功能,一般来接口具有不同的功能,一般来 说,说,i/oi/o接口接口应具有以下功能应具有以下功能: : (1) (1) 转换信息格式转换信息格式。例如正负逻辑之间。例如正负逻辑之间 的转换,串行数据与并行数据之

7、间的转换,的转换,串行数据与并行数据之间的转换, 模拟信号与数字信号之间的转换等。模拟信号与数字信号之间的转换等。 (2) (2) 提供联络信号。提供联络信号。 为了协调为了协调cpucpu与与i/oi/o设备之间的数据传送,设备之间的数据传送, 需要设置一些需要设置一些表示表示i/oi/o设备状态的信息设备状态的信息( (如设如设 备备“准备就绪准备就绪”、“忙忙”等等) )及表示微机输出及表示微机输出 的数据是否准备好的信息的数据是否准备好的信息( (如如“启动启动”,“停停 止止”等等) )。 (3) (3) 缓冲与锁存数据。缓冲与锁存数据。 为了协调微机与为了协调微机与i/oi/o设备

8、在定时或数据处设备在定时或数据处 理速度上的差异,使两者之间的数据交换变理速度上的差异,使两者之间的数据交换变 得同步,有必要对传输的数据信息或地址信得同步,有必要对传输的数据信息或地址信 息加以缓冲或锁存息加以缓冲或锁存。 (4) (4) 信号特性匹配。信号特性匹配。 由于微机中所采用的信号电平一般为由于微机中所采用的信号电平一般为 ttlttl电平,而不同的电平,而不同的i/oi/o设备其信号电平有较设备其信号电平有较 大的差异大的差异( (如有的是正负电压,有的是如有的是正负电压,有的是3 v3 v电电 压压) )。且有的。且有的i/oi/o设备的负载比较重,微机的设备的负载比较重,微机

9、的 输出信号不能直接驱动,为使微机同输出信号不能直接驱动,为使微机同i/oi/o设备设备 之间能进行正确的信息传输,接口电路必须之间能进行正确的信息传输,接口电路必须 提供相应的电平转换和驱动功能。提供相应的电平转换和驱动功能。 (5) (5) 译码选址译码选址。 在一个微机系统中,往往存在多个不在一个微机系统中,往往存在多个不 同的同的i/oi/o设备,为了区分不同的设备,外设设备,为了区分不同的设备,外设 接口必须提供地址译码以及选择不同外设的接口必须提供地址译码以及选择不同外设的 功能。功能。 在一个在一个i/oi/o接口中也设置有多个寄存器,接口中也设置有多个寄存器, 它们用来存放不同

10、的信息,如输入数据、输它们用来存放不同的信息,如输入数据、输 出数据、出数据、i/oi/o设备的状态、设备的状态、cpucpu的控制命令等。的控制命令等。 为了方便为了方便cpucpu对它们的访问,需要使用不同的对它们的访问,需要使用不同的 识别码来区分,这种识别码称为端口地址。识别码来区分,这种识别码称为端口地址。 i/oi/o接口能够对接口能够对cpucpu送来的端口地址进行译码,送来的端口地址进行译码, 实现对各个寄存器的访问。实现对各个寄存器的访问。 (6) (6) 中断管理中断管理。 在在i/oi/o接口中设置中断管理逻辑,能对外接口中设置中断管理逻辑,能对外 设进行中断管理,如建立

11、中断请求,进行中设进行中断管理,如建立中断请求,进行中 断排队,提供中断识别码等。断排队,提供中断识别码等。 (7) (7) 提供时序及其他控制功能。提供时序及其他控制功能。 在接口电路中一般还应具有时钟发生电在接口电路中一般还应具有时钟发生电 路,以满足微型计算机和各种外设对时序方路,以满足微型计算机和各种外设对时序方 面的要求。由于设备种类较多,因此某些外面的要求。由于设备种类较多,因此某些外 部设备还需要增加部分特殊的控制电路。部设备还需要增加部分特殊的控制电路。 cpucpu与外设交换的信息类型与外设交换的信息类型 cpucpu i/oi/o装置装置 控制信息控制信息 状态信息状态信息

12、 数据信息数据信息 2 2、控制信息、控制信息 3 3、状态信息、状态信息 1 1、数据信息、数据信息 数字量数字量 模拟量模拟量 开关量开关量 接口电路的一般结构接口电路的一般结构 外外 部部 设设 备备 控制信息控制信息 状态信息状态信息 数据信息数据信息 cb ab db 接口电路接口电路 总线总线 驱动驱动 地址地址 译码译码 控制控制 逻辑逻辑 数据数据 寄存器寄存器 状态状态 寄存器寄存器 控制控制 寄存器寄存器 cpu 为了对不同接口的不同寄存器进行访问,为了对不同接口的不同寄存器进行访问, 需要给每一个寄存器分配一个编号,称为需要给每一个寄存器分配一个编号,称为 地址地址。通常

13、。通常把把i io o接口电路中能被接口电路中能被cpucpu直接直接 访问的寄存器或某些特定器件访问的寄存器或某些特定器件称为称为端口端口 (portport)。因此,一个)。因此,一个i io o接口可能有几接口可能有几 个端口,如命令口、状态口、数据口等。个端口,如命令口、状态口、数据口等。 cpucpu对外设的访问实质上是对外设接口电对外设的访问实质上是对外设接口电 路中相应端口的访问。路中相应端口的访问。 微处理器进行微处理器进行i io o操作时,对操作时,对i io o接口的接口的 寻址方式与存储器寻址方式相似。寻址方式与存储器寻址方式相似。 常用的常用的i/oi/o端口的寻址方

14、法有端口的寻址方法有i/oi/o端口与内端口与内 存统一寻址存统一寻址和和i/oi/o端口独立寻址端口独立寻址两种方式。两种方式。 i/oi/o端口的寻址方式有两种:端口的寻址方式有两种: i/oi/o端口和存储器统一寻址端口和存储器统一寻址 i/oi/o端口独立寻址端口独立寻址 1.1.独立的独立的i io o寻址方式寻址方式 也称为标准的也称为标准的i io o寻址方式或称为端口寻址方式或称为端口 寻址方式。寻址方式。 所谓独立寻址,说穿了就是将所谓独立寻址,说穿了就是将i/o端口与端口与 存储器彼此独立,各寻各的地址。存储器彼此独立,各寻各的地址。 有有3 3个特点:个特点: (1 1)

15、i io o设备的地址空间和存储器地址空间设备的地址空间和存储器地址空间 是独立的、分开的。即是独立的、分开的。即i io o接口地址不占用接口地址不占用 存储器的地址空间。存储器的地址空间。 (2 2)微处理器对)微处理器对i io o设备的管理是利用专用设备的管理是利用专用 的的inin(输入)和(输入)和outout(输出)指令来实现数据(输出)指令来实现数据 传送的。传送的。 (3 3)cpucpu对对i io o设备的读写控制是用设备的读写控制是用i io o的的 读写控制信号。读写控制信号。 缺点:缺点: 是对端口的是对端口的i/oi/o操作缺乏灵活性,寻址操作缺乏灵活性,寻址 方

16、式单调,没有存储器那样的寻址方式方式单调,没有存储器那样的寻址方式 和运算功能。和运算功能。 所谓统一编址,就是将所谓统一编址,就是将i/oi/o端口与存储器端口与存储器 不分彼此,一起统一进行编址。此时的不分彼此,一起统一进行编址。此时的 i/oi/o端口就可看作存储器单元,端口就可看作存储器单元,cpucpu对存储对存储 器的访问和操作指令也就同样适用于器的访问和操作指令也就同样适用于i/oi/o 端口,端口,cpucpu访问访问i/oi/o就和访问存储器一样,就和访问存储器一样, 无需再设置专用访问无需再设置专用访问i/oi/o端口的指令。端口的指令。 2.i/o2.i/o端口和存储器统

17、一编址端口和存储器统一编址 有三个特点:有三个特点: 1.i/o1.i/o接口与存储器共用同一个地址空间。接口与存储器共用同一个地址空间。 2.cpu2.cpu利用对存储器的存储单元进行操作的利用对存储器的存储单元进行操作的 指令来实现对指令来实现对i/oi/o设备的管理。设备的管理。 ( (例例 movmov指令)指令) 3.cpu3.cpu用存储器读用存储器读/ /写控制信号对写控制信号对i/oi/o设备进设备进 行读行读/ /写控制。写控制。 优点:优点: 1.cpu1.cpu对外设的操作可使用全部的存储器操作对外设的操作可使用全部的存储器操作 指令,故指令多,使用方便。如可对外设指令,

18、故指令多,使用方便。如可对外设 的数据进行算术和逻辑运算的数据进行算术和逻辑运算, ,进行循环或移进行循环或移 位等。位等。 2.2.存储器和外设的地址分布图是同一个。存储器和外设的地址分布图是同一个。 3.3.不需要专门的输入不需要专门的输入/ /输出指令。输出指令。 缺点:缺点: 1. 1. 外设占用了内存单元,使内存容量减少。外设占用了内存单元,使内存容量减少。 2. 2. 存储器操作指令通常要比存储器操作指令通常要比i/oi/o指令的字节指令的字节 多,故加长了多,故加长了i/oi/o操作的时间。操作的时间。 在微机系统中,大量数据在在微机系统中,大量数据在cpucpu、存储器、存储器

19、 和和i/oi/o接口之间传送。数据传送过程中的关键接口之间传送。数据传送过程中的关键 问题是问题是数据传送的控制方式数据传送的控制方式。微机系统中数。微机系统中数 据传送的控制方式有:查询方式、中断控制据传送的控制方式有:查询方式、中断控制 方式、方式、dma(dma(直接存储器存取直接存储器存取) )方式。方式。 5.1.4 5.1.4 输入输出数据的传送方式输入输出数据的传送方式 在查询方式下,中央处理器需要完成下在查询方式下,中央处理器需要完成下 面一些操作:面一些操作: (1 1)中央处理器向接口发出传送命令,输)中央处理器向接口发出传送命令,输 入数据或输出数据;入数据或输出数据;

20、 (适合慢速的外设适合慢速的外设) (2 2)中央处理器查询外设是否允许传送?)中央处理器查询外设是否允许传送? 若不允许传送,则继续查询外设,直至若不允许传送,则继续查询外设,直至 允许传送才传送数据。在查询方式下,中央处允许传送才传送数据。在查询方式下,中央处 理器需要花费较多的时间去理器需要花费较多的时间去不断地不断地“询问询问” ” 外设外设,外设的接口电路处于被动状态。,外设的接口电路处于被动状态。 传传 送送 查查 询询 等等 待待 i /o 工工 作作 传传 送送 查查 询询 等等 待待 i /o 工工 作作 传传 送送 t c p u 外外 设设 图图 7 7 . . 5 5

21、查查 询询 传传 送送 方方 式式 下下 c c p p u u 与与 外外 设设 工工 作作 过过 程程 示示 意意 图图 查询方式是中央处理器在数据传送之查询方式是中央处理器在数据传送之 前通过接口的状态设置存储电路询问外前通过接口的状态设置存储电路询问外 设,待外设允许传送数据后才传送数据设,待外设允许传送数据后才传送数据 的操作方式。的操作方式。 有些输出设备有些输出设备随时可以接收数据随时可以接收数据,如发光,如发光 二极管的亮或灭、电机的启动或停止;还有些二极管的亮或灭、电机的启动或停止;还有些 输出设备在接收一个数据后需要过一段时间才输出设备在接收一个数据后需要过一段时间才 能接

22、收下一个数据,如能接收下一个数据,如d da a转换器。有些输入转换器。有些输入 设备准备数据的时间是已知的,如设备准备数据的时间是已知的,如a ad d转换器。转换器。 对于这类外部设备,就可以简化接口设计,省对于这类外部设备,就可以简化接口设计,省 去状态设置存储电路和查询程序,直接传送数去状态设置存储电路和查询程序,直接传送数 据或者延迟一段时间后再传送数据。这种传送据或者延迟一段时间后再传送数据。这种传送 方式就是所谓的方式就是所谓的“无条件无条件”传送方式传送方式。 中断控制方式,是当外设的输入数据准中断控制方式,是当外设的输入数据准 备好或接收数据的锁存器空时,备好或接收数据的锁存

23、器空时,外设外设便便主主 动向动向cpu发出中断请求发出中断请求,于是,于是cpu暂停现暂停现 行程序的执行,行程序的执行,转去执行为外设服务的输转去执行为外设服务的输 入入/输出控制子程序输出控制子程序,服务完毕后即返回原,服务完毕后即返回原 来程序继续执行。来程序继续执行。 (适合中、慢速外设适合中、慢速外设) 引入了中断概念后,引入了中断概念后,cpu和外设(甚至和外设(甚至 多个外设)可以同时工作,从而大大提高多个外设)可以同时工作,从而大大提高 cpu的效率和控制程序执行的实时性。的效率和控制程序执行的实时性。 主 程 序 继 续 主 程 序 中 断 服 务 程 序 中 断 响 应

24、中 断 返 回 断 点 图 6.8 中 断 过 程 示 意 图 图图6.8 中断过程示意图中断过程示意图 在程序中断传送方式中,外设处于主动地位,在程序中断传送方式中,外设处于主动地位, cpucpu处于被动地位。当处于被动地位。当cpucpu与外设之间无数据交与外设之间无数据交 换时,换时,cpucpu与外设彼此无关,并行工作,即与外设彼此无关,并行工作,即cpucpu 运行主程序,外设处理其内部事务。运行主程序,外设处理其内部事务。 dmadma方式的特点方式的特点是数据的传输过程是数据的传输过程由由dmadma控控 制器控制,不需要制器控制,不需要cpucpu的干预的干预(cpu(cpu

25、只需向只需向dmadma 控制器布置任务即可控制器布置任务即可) )。在。在dmadma传输数据期间,传输数据期间, cpucpu可以执行其他程序可以执行其他程序( (除了访问主存冲突外除了访问主存冲突外) ), 因而可大大提高因而可大大提高cpucpu的利用率。的利用率。 (适合高速外设、成块交换数据适合高速外设、成块交换数据) dma控制器从控制器从cpu手中完全接管对总线手中完全接管对总线 的控制,数据交换不经过的控制,数据交换不经过cpu,而直接在内,而直接在内 存和存和i/o设备之间进行。设备之间进行。 dma传送方式不仅可以在传送方式不仅可以在存储器与外设存储器与外设 之间之间信息

26、交换,也可以在信息交换,也可以在存储器的两区域之存储器的两区域之 间间或或两种高速外设之间两种高速外设之间进行进行dma传送。传送。 中断技术是计算机的一种重要技术,中断中断技术是计算机的一种重要技术,中断 技术源于输入、输出,它是计算机内部管理技术源于输入、输出,它是计算机内部管理 的一种重要手段。它的作用之一是使异步于的一种重要手段。它的作用之一是使异步于 主机的外部设备与主机并行工作,从而提高主机的外部设备与主机并行工作,从而提高 整个系统的工作效率。整个系统的工作效率。 5.2 5.2 中断技术中断技术 中断中断就是指就是指cpu响应中断请求,暂停现行的主响应中断请求,暂停现行的主 程

27、序,转去执行中断服务子程序,完成中断事件处程序,转去执行中断服务子程序,完成中断事件处 理后,返回断点继续执行主程序的过程。理后,返回断点继续执行主程序的过程。 中断过程示意中断过程示意 图图 微型计算机微型计算机应用中断技术后的优点:应用中断技术后的优点: v 可实现分时操作可实现分时操作 v 可进行实时处理可进行实时处理 v 能及时处理各种故障能及时处理各种故障 图7.1 中断过程示意图 采用中断技术,能实现以下功能:采用中断技术,能实现以下功能: (1) (1) 分时操作分时操作 计算机配上中断系统后,计算机配上中断系统后,cpucpu就可以分时执行多就可以分时执行多 个用户的程序和多道

28、作业,使每个用户认为它正在个用户的程序和多道作业,使每个用户认为它正在 独占系统。此外,独占系统。此外,cpucpu可控制可控制多个外设同时工作多个外设同时工作,并,并 可及时得到服务处理,使各个外设一直处于有效工可及时得到服务处理,使各个外设一直处于有效工 作状态,从而大大提高主机的使用效率。作状态,从而大大提高主机的使用效率。 (2) (2) 实时处理实时处理 当计算机用于实时控制时,计算机在现场测试当计算机用于实时控制时,计算机在现场测试 和控制、网络通信、人机对话时都会具有强烈的实和控制、网络通信、人机对话时都会具有强烈的实 时性,中断技术能确保对实时信号的处理。实时控时性,中断技术能

29、确保对实时信号的处理。实时控 制系统要求计算机为它们服务是随机发生的,且时制系统要求计算机为它们服务是随机发生的,且时 间性很强,要求做到近乎间性很强,要求做到近乎即时处理即时处理。 (3) (3) 故障处理故障处理 如电源掉电、存储器读出出错、运算溢出,还如电源掉电、存储器读出出错、运算溢出,还 有非法指令、存储器超量装载、信息校验出错等等。有非法指令、存储器超量装载、信息校验出错等等。 尽管故障出现的概率较小,但是一旦出现故障将使尽管故障出现的概率较小,但是一旦出现故障将使 整个系统瘫痪。有了中断系统,当出现上述情况时,整个系统瘫痪。有了中断系统,当出现上述情况时, cpucpu就转去执行

30、故障处理程序,自行处理故障而不就转去执行故障处理程序,自行处理故障而不 必停机。中断系统能在故障出现时发出中断信号,必停机。中断系统能在故障出现时发出中断信号, 调用相应的处理程序,将故障的危害降低到最低程调用相应的处理程序,将故障的危害降低到最低程 度,并请求系统管理员排除故障。度,并请求系统管理员排除故障。 中断源的类型有:中断源的类型有: 1 1外部设备请求中断外部设备请求中断 2 2故障故障强迫强迫中断中断 3 3实时时钟请求中断实时时钟请求中断 4 4数据通道中断数据通道中断 5 5程序自愿中断程序自愿中断 中断源中断源即引起即引起cpucpu中断的原因或发出中断请中断的原因或发出中

31、断请 求的来源。(外部中断和内部中断)求的来源。(外部中断和内部中断) 中断源中断源 内部指令中断内部指令中断 (int n) 由于由于cpu的某些错误而引起的某些错误而引起 为调试程序(为调试程序(debug)设置的中断)设置的中断 外部中断外部中断 软件中断软件中断 非屏蔽中断(非屏蔽中断(nmi) 可屏蔽中断(可屏蔽中断(intr) 除法错中断(除法错中断(int 0) 溢出中断(溢出中断(int 4) 单步中断(单步中断(int 1) 断点中断(断点中断(int 3) 1. 1.外部硬件中断:外部硬件中断: 中断源是外部硬电路。通过中断源是外部硬电路。通过cpucpu的的nminmi引

32、脚或引脚或intrintr引脚引脚 向向cpucpu提出中断请求。提出中断请求。 intr:intr:可屏蔽中断,受可屏蔽中断,受cpucpu内标志寄存器中内标志寄存器中ifif位的屏蔽位的屏蔽 nmi:nmi:非屏蔽中断,不受非屏蔽中断,不受ifif位的屏蔽,位的屏蔽,cpucpu必须响应。必须响应。 cpucpu每执行完每执行完一条指令一条指令,检测,检测nminmi和和intrintr引脚上有无中引脚上有无中 断请求。断请求。 2.2.内部异常中断:内部异常中断: 中断源是中断源是cpucpu内部正在执行的过程发生的异常情况。内部正在执行的过程发生的异常情况。 如除法操作时结果太大如除法

33、操作时结果太大 ( (分母太小分母太小) ) ; 3.中断优先顺序中断优先顺序 cpucpu的中断优先权排列从高到低为:的中断优先权排列从高到低为: (1 1)除法出错中断,溢出中断,)除法出错中断,溢出中断,int n,int n, (2 2)nminmi (3 3)intrintr (4 4)单步中断)单步中断 4.中断类型码中断类型码 中断类型码是连接中断源和中断处理程序的中断类型码是连接中断源和中断处理程序的唯一桥唯一桥 梁梁。80x8680x86可处理可处理256256级中断级中断,中断类型码可以是,中断类型码可以是0 0 255255,一部分由系统占用,一部分用户可以支配。,一部分

34、由系统占用,一部分用户可以支配。 比如:除法错误(比如:除法错误(n=0n=0) 调试异常(调试异常(n=1n=1) nminmi中断(中断(n=2n=2) 断点中断(断点中断(n=3n=3) 溢出中断(溢出中断(n=4n=4) 中断是一个过程,包括中断是一个过程,包括中断检测中断检测、中断中断 响应响应及及执行中断服务程序执行中断服务程序和和中断返回中断返回。 中断检测中断检测 检测中断并通过软、硬件方式判优。检测中断并通过软、硬件方式判优。 5.2.3 5.2.3 中断处理过程中断处理过程 中断响应中断响应 中断响应就是中断响应就是cpu“cpu“中断中断”现正在进行现正在进行 的处理任务

35、,转向中断请求相对应的处理程的处理任务,转向中断请求相对应的处理程 序的过程。中断响应过程应解决如下问题:序的过程。中断响应过程应解决如下问题: * * 保护断点保护断点 * * 保护现场保护现场 * * cpucpu关中断关中断 * * 转到中断请求所对应的处理程序转到中断请求所对应的处理程序 中断处理(服务)中断处理(服务) 中断处理就是执行中断服务程序,完成中断处理就是执行中断服务程序,完成 中断源提出的处理要求。实际上是软件编程中断源提出的处理要求。实际上是软件编程 问题。问题。 中断服务程序与子程序的区别:随机事件中断服务程序与子程序的区别:随机事件 与意料之中事件;对主程序透明与不

36、透明。与意料之中事件;对主程序透明与不透明。 中服程序中如何保护现场与恢复现场。中服程序中如何保护现场与恢复现场。 中断返回中断返回 中断返回就是中断返回就是cpucpu控制权由中服程序转控制权由中服程序转 移到被中断程序的过程。移到被中断程序的过程。 几个重要概念:几个重要概念: . .中断向量表中断向量表: :设置在系统设置在系统ramram的最低端的最低端00000h00000h 003ffh003ffh的的1k1k字节内,表中共有字节内,表中共有256256个中断类个中断类 型码对应的向量值。(型码对应的向量值。(256256* *4=1k4=1k) . .中断向量中断向量: :每个向

37、量占用每个向量占用4 4个字节,称为中断个字节,称为中断 向量。前向量。前2 2个字节为中断服务程序入口地址的个字节为中断服务程序入口地址的 偏移地址偏移地址ipip,后,后2 2个字节为服务程序的个字节为服务程序的段基址段基址 cscs。 . .向量地址向量地址: :这这4 4个单元的地址中的个单元的地址中的最小地址最小地址称称 为向量地址。为向量地址。 规定规定:中断向量表中各向量:中断向量表中各向量等长等长,且处理程序,且处理程序 入口地址在向量表中按中断源的入口地址在向量表中按中断源的类型码排序类型码排序。 重要公式重要公式: 向量地址向量地址= =向量表的首地址向量表的首地址 + +

38、 中断类型码中断类型码* *4 4 讨论讨论: :已知中断类型码已知中断类型码n,n,如何得到中断服务程如何得到中断服务程 序入口地址序入口地址? ? 中断向量表中断向量表 1个字节 1个字节 ip cs 低字节低字节 高字节高字节 8086 cpu:8086 cpu: 中断类型号中断类型号 256256个个 中断向量表占用中断向量表占用 2562564=1kb4=1kb 即存储区域为即存储区域为0000000000003ffh003ffh 中断向量表中断向量表 8086中断向量表中断向量表 中断向量表中断向量表 如何进行中断服务?如何进行中断服务? 中断类型码中断类型码4=中断向量表的地址中

39、断向量表的地址 中断向量表中断向量表 某中断的中断类型号为某中断的中断类型号为4 4,中断服务程序,中断服务程序 的入口地址为的入口地址为3000h:2000h,3000h:2000h,试画中断向量表试画中断向量表 0000 2020 0000 3030 5.3 5.3 中断控制器中断控制器8259a8259a 目前的目前的pcpc系列微机,其外围接口芯片系列微机,其外围接口芯片 (如(如80c28680c286)都集成有与两片)都集成有与两片8259a8259a相当的中相当的中 断控制电路。断控制电路。 nmosnmos工艺,单一工艺,单一+5v+5v电源,全静态工作电源,全静态工作( (无

40、需外加无需外加 时钟时钟) ) 1 1片片8259a8259a能管理能管理8 8级中断级中断 可用可用9 9片片8259a8259a级联级联成成6464级主从式中断系统级主从式中断系统 即一片即一片8259a8259a主片最多允许与主片最多允许与8 8片片8259a8259a从片级连从片级连 具有中断判优、中断允许、中断屏蔽等功能具有中断判优、中断允许、中断屏蔽等功能 可编程选择不同的工作方式可编程选择不同的工作方式 自动向自动向cpucpu提供中断类型号提供中断类型号 1 2 3 4 5 6 7 8 9 10 11 12 13 14 28 27 26 25 24 23 22 21 20 19

41、 18 17 16 15 8259a cs wr rd d7 d6 d4 d5 d2 d3 d0 d1 cas0 cas1 gnd inta ir7 ir6 ir4 ir5 ir2 ir3 ir0 ir1 int cas2 sp/en vcc a0 5.3.1 8259a5.3.1 8259a的内部结构及管脚分配的内部结构及管脚分配 数据数据 总线总线 缓冲器缓冲器 读读/写写 控制控制 逻辑逻辑 级联缓冲级联缓冲 /比较器比较器 中断中断 服务服务 寄存器寄存器 isr 优先级优先级 分析器分析器 pr 中断中断 请求请求 寄存器寄存器 irr 中中 断断 屏屏 蔽蔽 寄寄 存存 器器 im

42、r 控控 制制 电电 路路 初始化命令初始化命令 寄存器组寄存器组 操作命令操作命令 寄存器组寄存器组 d7d0 intaint a0 rd wr cs sp/ en cas0 cas1 cas2 irq0 . . . irq7 特点:可编程、八级向量优先中断、级连、优先权动特点:可编程、八级向量优先中断、级连、优先权动 态地改变。态地改变。 1.1.中断请求寄存器中断请求寄存器(irr)(irr) 中断请求中断请求ir7-ir0,ir7-ir0,当某个为高电平时,当某个为高电平时,irrirr相应位置相应位置“1”1”。 2.2.中断服务寄存器中断服务寄存器(isr)(isr) 任何一级中断

43、被响应,执行其中断服务程序,任何一级中断被响应,执行其中断服务程序,isrisr相应位置相应位置 “1” 1” 。多重中断情况下,。多重中断情况下,isrisr中多位被同时置中多位被同时置“1”1”。 3.3.优先权判别器优先权判别器(pr)(pr) 当当ir7-ir0ir7-ir0中有多个中断请求信号同时产生时,中有多个中断请求信号同时产生时,prpr判定哪个中判定哪个中 断请求具有最高优先权,并把它置入断请求具有最高优先权,并把它置入isrisr的相应位。的相应位。 4 .4 .中断屏蔽寄存器中断屏蔽寄存器(imr)(imr) 通过通过imrimr可实现对各级中断的有选择的屏蔽。可实现对各

44、级中断的有选择的屏蔽。 5.5.级联级联(中断最多扩展到(中断最多扩展到6464级)级) 一片一片8259a8259a只能接收只能接收8 8级级中断,当超过中断,当超过8 8级时,可用级时,可用 多片多片8259a8259a级联级联使用,构成主从关系。使用,构成主从关系。 连线要求:连线要求: . .主主8259a8259a: :级联信号级联信号cascas2 2-cas-cas0 0是输出信号;是输出信号; spsp端端 为为“1”1” . .从从8259a8259a: :级联信号级联信号cascas2 2-cas-cas0 0是输入信号;是输入信号; spsp端端 为为“0”0” . .从

45、从8259a8259a的的intint输出接到主的中断输入端输出接到主的中断输入端irir上上 级级 联联 方方 式式 cas2 cas1 cas0cas2 cas1 cas0 intint d7d7d0d0 rdrd wrwr intainta a0a0 cscs 8259a8259a ( (主片主片) ) vcc sp/en gndvcc sp/en gnd +5v+5v cas2 cas1 cas0cas2 cas1 cas0 intint d7d7d0d0 rdrd wrwr intainta a0a0 cscs 8259a8259a ( (从片从片) ) vcc sp/en gndv

46、cc sp/en gnd +5v+5v intrintr dbdb iorior iowiow intainta a0a0 80868086 译码电译码电 路输出路输出 译码电译码电 路输出路输出 ir0ir0 ir1ir1 ir2ir2 ir3ir3 ir4ir4 ir5ir5 ir6ir6 ir7ir7 ir0ir0 ir1ir1 ir2ir2 ir3ir3 ir4ir4 ir5ir5 ir6ir6 ir7ir7 例子:例子:3 3片级联片级联 6.6.控制电路控制电路 根据根据irrirr的置位情况和优先权判别器的置位情况和优先权判别器prpr的判定结果,的判定结果, 向向8259a82

47、59a内部其它部件发出控制信号,并向内部其它部件发出控制信号,并向cpucpu发出发出中中 断请求断请求intint和接收来自和接收来自cpucpu的的中断响应中断响应intainta。 7.7.读读/ /写控制逻辑写控制逻辑 a0 :8259aa0 :8259a占两个占两个i/oi/o端口地址,用端口地址,用a0a0来选来选 : :端口地址的其它高位由片选信号端输入。端口地址的其它高位由片选信号端输入。 : :读信号读信号 : :写信号写信号 8.8.数据总线缓冲器数据总线缓冲器 双向双向8 8位三态缓冲器,构成位三态缓冲器,构成8259a8259a与与cpucpu之间的数据接之间的数据接

48、口。口。 二、二、8259a8259a的管脚分配的管脚分配 4 4类:类: . . 与外部设备连接的中断请求输入管脚与外部设备连接的中断请求输入管脚irir0 0-ir-ir7 7; . . 与与cpucpu连接的数据通路和控制信号:连接的数据通路和控制信号:d d0 0-d-d7 7,wr,wr, rd,inta,intrd,inta,int; . . 用于用于8259a8259a级联的管脚级联的管脚cascas0 0-cas-cas2 2,sp/en,sp/en; . . 端口地址选择信号端口地址选择信号cs,acs,a0 0。 8259a8259a的中断管理方式的中断管理方式 一、中断优

49、先权管理一、中断优先权管理(4(4种种) ) 1.1.完全嵌套方式完全嵌套方式 固定固定优先权优先权:ir:ir0 0irir1 1 irir7 7。 高优先级的中断可进入低优先级,但低优先级不能进入高优先级的中断可进入低优先级,但低优先级不能进入 高优称级或同等优先级。高优称级或同等优先级。 2.2.自动循环方式自动循环方式 irir0 0-ir-ir7 7轮流轮流具有最高优先权。具有最高优先权。 当任何一级中断被处理完,它的优先级别就被改变为最当任何一级中断被处理完,它的优先级别就被改变为最 低,而最高优先级分配给该中断的下一级中断。低,而最高优先级分配给该中断的下一级中断。 3.3.中断

50、屏蔽方式中断屏蔽方式 . .普通屏蔽普通屏蔽: :在中断屏蔽寄存器在中断屏蔽寄存器imrimr中,将某一位或几位置中,将某一位或几位置 “1”1”来屏蔽掉相应级别的中断请求。来屏蔽掉相应级别的中断请求。 . .特殊屏蔽特殊屏蔽: :可使低优先级别的中断进入正在服务的高优先可使低优先级别的中断进入正在服务的高优先 级别中。级别中。 4.4.特殊完全嵌套方式特殊完全嵌套方式( (用于级联情况用于级联情况) ) 接在接在主片主片ir3ir3上的从片比接在上的从片比接在ir4ir4上的从片上的从片具有高的优先权;具有高的优先权; 而而主片上主片上ir0,ir1,ir2ir0,ir1,ir2上的中断比从

51、片具有高优先权。上的中断比从片具有高优先权。 二、二、8259a8259a中断结束的管理方式中断结束的管理方式 中断结束的管理就是用不同的方式使中断结束的管理就是用不同的方式使isrisr的相应位清的相应位清“0”0”, 并确定下面的优先排队。并确定下面的优先排队。 . .完全嵌套情况完全嵌套情况 . .自动循环情况自动循环情况 . .特殊完全嵌套情况特殊完全嵌套情况 5.3.2 8259a5.3.2 8259a的编程的编程 初始化初始化: :第一部分称预置命令字第一部分称预置命令字icw1-icw4icw1-icw4。预置。预置 命令字是要命令字是要按规定顺序按规定顺序写入写入8259a82

52、59a中的。中的。 预置命令字功能:预置命令字功能: . . icw1icw1:8259a:8259a是单一式还是主从式;是单一式还是主从式; . . icw2icw2: :设置设置8 8个中断请求设备的类型号;个中断请求设备的类型号; . . icw3icw3: :若为主从式则规定主若为主从式则规定主8259a8259a中每个中每个irir端是端是 否带从否带从8259a8259a,从,从8259a8259a则要规定从主则要规定从主8259a8259a的哪的哪 个个irir端引入;端引入; . . icw4icw4: :完成中断管理方式的设定。完成中断管理方式的设定。 不是任何情况下都需要设

53、置不是任何情况下都需要设置4 4个预命令,可根据个预命令,可根据8259a8259a 的使用情况而定。的使用情况而定。 第二部分第二部分称操作命令字称操作命令字ocw1-ocw3ocw1-ocw3 ,8259a8259a通过通过 icw1-icw4icw1-icw4初始化后,任何时间写入初始化后,任何时间写入ocw1-ocw3 ocw1-ocw3 , 且无需按顺序写。且无需按顺序写。 8259a8259a的中断响应过程的中断响应过程 1 1、irq0irq0irq7irq7有中断请求,有中断请求,8259a8259a的的irrirr的相应位置的相应位置1 1 2 2、irrirr与与imrim

54、r相应位比较后,封锁或发送中断请求给相应位比较后,封锁或发送中断请求给prpr 3 3、prpr分析后,把当前最高优先级的中断请求由分析后,把当前最高优先级的中断请求由intint送至送至cpucpu 4 4、若、若if=1if=1,cpucpu执行完当前指令后,连续发出执行完当前指令后,连续发出2 2个个intainta信号信号 5 5、接到第、接到第1 1个个intainta后,后,8259a8259a的的isrisr和和irrirr对应位分别置对应位分别置1 1清清0 0 6 6、接到第、接到第2 2个个intainta后,后,8259a8259a把中断类型号送上数据总线把中断类型号送上

55、数据总线 7 7、cpucpu将收到的中断类型号乘以将收到的中断类型号乘以4 4,到中断向量表中获取中,到中断向量表中获取中 断向量,转入相应中断服务子程序进行中断处理断向量,转入相应中断服务子程序进行中断处理 d1 d0d2d31d5d6d7 单片单片 1 级联级联0 不写不写0 写写1 是否写是否写 icw4 d0 边沿触发边沿触发0 电平触发电平触发1 触发方式触发方式d3 41 80 注注: 80 x86系统不用此位系统不用此位 调用地址间隔调用地址间隔 d2 a0 0 icw1 icw1 芯片控制命令字芯片控制命令字 中断向量地址的中断向量地址的a7a6a5 注注:只用于只用于808

56、0/8085系统中系统中 d7d6d5 特征位特征位 一、初始化命令字一、初始化命令字 d1 d0d2d3d4d5d6d7 a0 1 icw2 icw2 中断类型码命令字中断类型码命令字 中断向量地址中断向量地址a15a8 d7d0 中断向量码的高中断向量码的高5位位 d7d3d2d1d0 在在8086/8088 系统中系统中 在在8080/8085 系统中系统中 111ir7 110ir6 101ir5 100ir4 011ir3 010ir2 001ir1 000 则则 自自 动动 填填 入入 ir0 d2d1d0 irqi 若若 有请求有请求 a0 1 icw3 icw3 主主/ /从片

57、级联命令字从片级联命令字 a0 1 d1d0d200000 从片初始化命令字:从片初始化命令字: irq7irq6irq5irq4irq3irq2irq1irq0 从片从片int接入接入 主片的主片的irqi引脚引脚 10101010d0 11001100d1 11110000d2 d1 d0d2d3d4d5d6d7 主片初始化命令字:主片初始化命令字: 有有1 没有没有0 irqi是否有从片接入是否有从片接入di icw4 icw4 方式控制命令字方式控制命令字 d1d0d2d3d4000 a0 1 8080/8085模式模式0 80 x86模式模式1 完全嵌套方式完全嵌套方式0 特殊全嵌套

58、方式特殊全嵌套方式1 自动自动eoi1 正常正常eoi0 缓冲方式缓冲方式/主片主片10 非缓冲方式非缓冲方式0 缓冲方式缓冲方式/从片从片11 触发方式触发方式d3d2 特征位特征位 二、操作方式命令字二、操作方式命令字 ocw1 ocw1 d1 d0d2d3d4d5d6d7 中断屏蔽操作控制字中断屏蔽操作控制字 屏蔽屏蔽1 允许允许0 是否屏蔽是否屏蔽 iri 中断请求中断请求di a0 1 ocw2 ocw2 d7 d6 d5操操 作作 功功 能能 001一般一般eoi结束命令结束命令 011特殊特殊eoi结束命令结束命令 101自动循环优先级的一般结束命令自动循环优先级的一般结束命令 100设置优先级自动循环方式命令设置优先级自动循环方式命令 000结束优先级自动循环方式的命令结束优先级自动循环方式的命令 111设置特殊优先级循环的设置特殊优先级循环的eoi结束命令结束命令 110设置特殊优先级循环方式命令设置特殊优先级循环方式命令 010无效无效 优先级固定优先级固定0 优先级旋转优先级旋转1 不发结束命令不发结束命令0 发结束命令发结束命令1 d2d1d0无效无效0 d2d1d0有效有

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论