计算机组成及结构第8章_输入输出系统_第1页
计算机组成及结构第8章_输入输出系统_第2页
计算机组成及结构第8章_输入输出系统_第3页
计算机组成及结构第8章_输入输出系统_第4页
计算机组成及结构第8章_输入输出系统_第5页
已阅读5页,还剩70页未读 继续免费阅读

下载本文档

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

文档简介

1、第8章 输入输出系统2022年3月27日星期日2目录目录l8.1 外围设备的速度分级与信息交换方式外围设备的速度分级与信息交换方式 了解了解l8.2 程序查询方式程序查询方式 了解了解l8.3 程序中断方式程序中断方式掌握掌握l8.4 DMA方式方式掌握掌握l8.5 通道方式通道方式 了解了解l8.6 通用通用I/O标准接口标准接口了解了解2022年3月27日星期日3考研大纲要求考研大纲要求(一一) I/O系统基本概念系统基本概念(二二) 外部设备外部设备(三三) I/O接口接口(I/O控制器控制器)1. I/O接口的功能和基本结构接口的功能和基本结构2. I/O端口及其编址端口及其编址(四四

2、) I/O方式方式1. 程序查询方式程序查询方式2. 程序中断方式程序中断方式3. DMA方式方式 DMA控制器的组成;控制器的组成;DMA传送过程。传送过程。4. 通道方式通道方式第第7 7章章中断的基本概念中断的基本概念中断响应过程中断响应过程中断处理过程中断处理过程多重中断和中断屏蔽的概念多重中断和中断屏蔽的概念2022年3月27日星期日48.1 外围设备的速度分级与信息交换方式外围设备的速度分级与信息交换方式l8.1.1 外围设备的速度分级外围设备的速度分级l8.1.2 信息交换方式信息交换方式2022年3月27日星期日58.1.1 外围设备的速度分级外围设备的速度分级l根据外设的工作

3、速度,根据外设的工作速度,CPU与外设的定时方式有以下与外设的定时方式有以下3种:种:速度极慢或简单的外围设备速度极慢或简单的外围设备uCPU直接接收或发送数据。直接接收或发送数据。 慢速或中速的外围设备慢速或中速的外围设备u采用异步定时方式,或称为应答式数据交换;采用异步定时方式,或称为应答式数据交换;uCPU与外设之间通过两个相互的联络信号来决定开始数据传与外设之间通过两个相互的联络信号来决定开始数据传送的时间。送的时间。 高速的外围设备高速的外围设备u采用同步定时方式;采用同步定时方式;CPU以等间隔的速率执行输入输出指令。以等间隔的速率执行输入输出指令。询问信号询问信号应答信号应答信号

4、由时钟脉冲控制由时钟脉冲控制如何使如何使CPUCPU与外与外设同步工作设同步工作如:机械开关、发光二极管如:机械开关、发光二极管如:键盘、显示器如:键盘、显示器如:主存、辅存如:主存、辅存2022年3月27日星期日68.1.2外设信息交换方式外设信息交换方式l程序查询方式程序查询方式早期计算机中使用的一种方式,效率低。早期计算机中使用的一种方式,效率低。l程序中断方式程序中断方式适用于随机出现的服务。适用于随机出现的服务。l直接内存访问(直接内存访问(DMA)方式)方式适用于内存和高速外围设备之间大批数据交换的场合。适用于内存和高速外围设备之间大批数据交换的场合。 l通道方式通道方式增加一个具

5、有特殊功能的处理器增加一个具有特殊功能的处理器通道,将通道,将CPU的输的输入输出权力下放。入输出权力下放。l外围处理机方式外围处理机方式(PPU)是通道方式的进一步发展。是通道方式的进一步发展。2022年3月27日星期日7程序查询方式程序查询方式l工作过程工作过程CPU传送数据之前先检查外设的状态,若没有准备好,则传送数据之前先检查外设的状态,若没有准备好,则继续查询等待继续查询等待,直至外设就绪即进行数据传送。,直至外设就绪即进行数据传送。l硬件要求硬件要求只需接口电路的状态、数据口,不需增加其他控制电路。只需接口电路的状态、数据口,不需增加其他控制电路。l特点特点CPU主动查询,主动查询

6、,程序控制数据传送过程程序控制数据传送过程,简单易行;,简单易行;每次查询之后只能传送一个字或一个字节的数据,数据传每次查询之后只能传送一个字或一个字节的数据,数据传输率不高,输率不高,CPU时间浪费较多。时间浪费较多。l适用场合适用场合CPU不太忙且对传送速度要求不高的系统。不太忙且对传送速度要求不高的系统。2022年3月27日星期日8l工作过程工作过程CPU有传送要求时,有传送要求时,启动外设后可处理其他事件启动外设后可处理其他事件,当外设,当外设准就绪后,通过准就绪后,通过中断的方式中断的方式和和CPU完成数据传送工作。完成数据传送工作。l硬件要求硬件要求需要附加的需要附加的中断控制电路

7、中断控制电路。l特点特点一定程度上实现了一定程度上实现了CPU和外设的并行工作;和外设的并行工作;中断操作过程增加了软硬件的开销,且每次数据传送只能中断操作过程增加了软硬件的开销,且每次数据传送只能传送一个字或一个字节的数据,数据传送效率低。传送一个字或一个字节的数据,数据传送效率低。l适用场合适用场合CPU与与慢速外设慢速外设之间的数据传送。之间的数据传送。程序中断方式程序中断方式2022年3月27日星期日9l工作过程工作过程CPU分配总线使用权分配总线使用权之后,在硬件之后,在硬件DMA控制器(控制器(DMAC)的)的控制下完成存储器与高速外设之间的大量数据的传送。控制下完成存储器与高速外

8、设之间的大量数据的传送。l硬件要求硬件要求需要相应的需要相应的DMA控制器及数据通路控制器及数据通路,电路结构复杂,硬件开,电路结构复杂,硬件开销大。销大。l特点特点数据传送不需要经过数据传送不需要经过CPU,直接由硬件控制直接由硬件控制;外设与存储器之间的数据传送量大。外设与存储器之间的数据传送量大。l适用场合适用场合包含有高速外设的系统中。包含有高速外设的系统中。存储器与外设之间存储器与外设之间数据交换时使用数据交换时使用直接内存访问(直接内存访问(DMA)方式)方式2022年3月27日星期日10通道方式通道方式l工作过程工作过程CPU将将IO控制的权利下放给通道,由控制的权利下放给通道,

9、由通道统一管理所有的通道统一管理所有的输入输出操作输入输出操作。l硬件要求硬件要求需要需要IO通道(也称通道(也称IO处理器,处理器,IOP););通道是一个具有通道是一个具有特殊功能的处理器特殊功能的处理器。l特点特点硬件代价较高;硬件代价较高;IO传送的效率高,并且减轻了传送的效率高,并且减轻了CPU的工作负担。的工作负担。l适用场合适用场合高性能要求的系统中。高性能要求的系统中。2022年3月27日星期日118.2 程序查询方式程序查询方式 CPUIN AL , DX数据总线数据总线地址总线地址总线/RD/WR/MIOIO0地址信息地址信息0ALOUT DX , AL00地址信息地址信息

10、AL数据的输入数据的输入输出完全由输出完全由程序控制!程序控制!2022年3月27日星期日121、设备编址、设备编址统一编址方式统一编址方式l统一编址方式统一编址方式将将I/O系统与主存系统作为系统与主存系统作为一个整体一个整体进行编址;进行编址;l优点:优点:访问访问I/O端口可使用端口可使用访存指令访存指令,操作类型多样,操作类型多样,使用灵活;使用灵活;I/O端口有较大的编址空间;端口有较大的编址空间;l缺点:缺点:占用主存空间占用主存空间,使实际主存容量减小;,使实际主存容量减小;I/O访问的指令字长较长,执行速度慢。访问的指令字长较长,执行速度慢。以以2020位主存地址、位主存地址、

11、1616位位I/OI/O地址为例地址为例主主存存储储器器I/O设设备备EFFFFHF0000H2022年3月27日星期日131、设备编址、设备编址独立编址方式独立编址方式l独立编址方式独立编址方式将将I/O系统与主存系统系统与主存系统分别分别编址;编址;l特点:特点:I/O端口地址不占用主存空间;端口地址不占用主存空间;使用使用专用的专用的I/O指令指令,指令字长短,指令字长短,执行速度快;执行速度快;与主存空间区分容易。与主存空间区分容易。主主存存储储器器I/O设设备备以以2020位主存地址、位主存地址、1616位位I/OI/O地址为例地址为例2022年3月27日星期日142、输入、输入/输

12、出指令输出指令lIO指令指令 输入指令:输入指令:IN AL/AX , DX/PORTu从指定端口读入一个字节从指定端口读入一个字节/字数据到累加器;字数据到累加器; 输出指令:输出指令:OUT DX/PORT , AL/AXu将累加器中的一个字节将累加器中的一个字节/字数据送到指定端口输出;字数据送到指定端口输出;lIO指令一般的功能:指令一般的功能:对对I/O接口的控制触发器置接口的控制触发器置1或或0,控制其进行某些操作;,控制其进行某些操作;uCPU向向IO接口发命令字;接口发命令字;测试设备的某些状态;测试设备的某些状态;uCPU读取读取IO接口的状态字;接口的状态字;输入或输出数据

13、;输入或输出数据;CPU与与IO接口之间的数据传送;接口之间的数据传送; 以数据形式传送以数据形式传送控制、状态信息控制、状态信息2022年3月27日星期日153、程序查询方式的接口、程序查询方式的接口lCPU通过地址信号通过地址信号选选中中某设备接口;某设备接口;lCPU通过向该接口发通过向该接口发送命令字的方式,送命令字的方式,启动启动外设外设;l外设开始工作后,外设开始工作后,设设置当前置当前“忙忙”状态状态;lCPU与外设通过接口与外设通过接口内部的数据缓冲器内部的数据缓冲器传送传送数据数据;动画演示:动画演示:8-2.swf8-2.swf2022年3月27日星期日164、程序查询输入

14、、程序查询输入/输出方式输出方式l程序执行动作如下:程序执行动作如下: CPU请求数据传送;请求数据传送; CPU从从I/O接口接口读入状态字读入状态字; 检查检查状态字中的标志;状态字中的标志; 未就绪,则未就绪,则重复重复、步,步,直到设备就绪为止。直到设备就绪为止。 CPU输入或输出数据,同时输入或输出数据,同时复位接口中的状态标志。复位接口中的状态标志。l特点特点可通过改变查询顺序修改设可通过改变查询顺序修改设备的优先权;备的优先权;CPU工作效率低;工作效率低;动画演示:动画演示:8-3.swf8-3.swf2022年3月27日星期日178.3 程序中断方式程序中断方式l8.3.1

15、中断的基本概念中断的基本概念 l8.3.2 程序中断方式的基本程序中断方式的基本IO接口接口 l8.3.3 单级中断单级中断l8.3.4 多级中断多级中断l8.3.5 中断控制器中断控制器l8.3.6 PC系列机中断机制系列机中断机制2022年3月27日星期日188.3.1 中断的基本概念中断的基本概念 l定义:定义:中断是指中断是指CPU正常运行程序时,由正常运行程序时,由系统内系统内/外部非预期事件外部非预期事件或或程序中预先安排好的指令性事件程序中预先安排好的指令性事件引起的,引起的,CPU暂停暂停当前程序当前程序的执行,的执行,转去转去为该事件服务的程序中执行,服务完毕后,再为该事件服

16、务的程序中执行,服务完毕后,再返回返回原程序继续执行的过程。原程序继续执行的过程。l注意:注意:中断中断是一个是一个CPU执行程序的执行程序的变化过程变化过程;所有能引起中断的事件均称为所有能引起中断的事件均称为中断源中断源;处理中断事件的处理中断事件的中断服务程序中断服务程序是预先设置好的;是预先设置好的;结束中断返回原程序时,要以结束中断返回原程序时,要以原状态返回原状态返回暂停处继续执行。暂停处继续执行。2022年3月27日星期日19主主程程序序中中断断服服务务程程序序IP中断请求中断请求主程序主程序中断响应中断响应中断服中断服务程序务程序中断返回中断返回IRET断断点点IP IP IP

17、中中 断断 过过 程程 示示 意意2022年3月27日星期日20有关中断有关中断l中断处理过程是由中断处理过程是由硬件和软件结合硬件和软件结合来完成的。来完成的。l为什么要使用中断?为什么要使用中断?解决速度问题,使解决速度问题,使CPU和和I/O并行工作;并行工作;对意外情况对意外情况(如磁盘损坏、运算溢出等如磁盘损坏、运算溢出等)能够及时处理。能够及时处理。在实时控制领域中,及时响应外来信号的请求。在实时控制领域中,及时响应外来信号的请求。l中断系统需要解决的问题中断系统需要解决的问题各中断源如何向各中断源如何向CPU发出中断请求;发出中断请求;有多个中断源时,如何确定优先级;有多个中断源

18、时,如何确定优先级;CPU在什么条件、什么时候、以什么方式响应中断;在什么条件、什么时候、以什么方式响应中断;如何保护如何保护/恢复现场、如何转入中断服务程序的入口地址;恢复现场、如何转入中断服务程序的入口地址;如何处理多重中断。如何处理多重中断。2022年3月27日星期日21l 中断请求中断请求 CPU在结束一个指令周期后,在结束一个指令周期后,检测中断请求信号检测中断请求信号;l 中断响应中断响应 关中断;关中断; 保护断点现场;保护断点现场; 判断中断源,获取判断中断源,获取中断向量中断向量; 根据中断向量转入中断服务程序执行根据中断向量转入中断服务程序执行;l 中断服务中断服务 保护保

19、护CPU现场;现场; 执行中断服务程序;执行中断服务程序; 开中断;开中断; 恢复恢复CPU现场;现场;l 中断返回中断返回 恢复断点现场,恢复断点现场,返回主程序返回主程序继续执行;继续执行;由硬件自动完成由硬件自动完成CPU的中断处理流程的中断处理流程由软件完成由软件完成第一个问题:第一个问题:CPUCPU公操作时检测保存中公操作时检测保存中断请求信号的寄存器断请求信号的寄存器对对CPU内部寄存器的保护与恢复内部寄存器的保护与恢复第三个问题:第三个问题:避免再次中断影响当前中避免再次中断影响当前中断响应,屏蔽中断源;断响应,屏蔽中断源;可实现中断优先权管理可实现中断优先权管理第四个问题:第

20、四个问题:中断处理过程由中断处理过程由软硬件结合完成软硬件结合完成由软硬件共同完成由软硬件共同完成第二个问题:第二个问题:为保证为保证CPUCPU能够正常能够正常返回主程序返回主程序2022年3月27日星期日22中断向量中断向量l中断向量:中断向量:中断服务程序的入口地址中断服务程序的入口地址,包括段地址和段内偏移地址,包括段地址和段内偏移地址,共共4个字节的内容;个字节的内容;CPU响应中断时,将中断源对应的中断向量送入响应中断时,将中断源对应的中断向量送入CS、IP寄寄存器中,以跟踪中断服务程序的执行。存器中,以跟踪中断服务程序的执行。 l中断向量表中断向量表:集中存放系统中所有中断向量的

21、存储区。集中存放系统中所有中断向量的存储区。8086 PC机中,将存储器物理地址为机中,将存储器物理地址为03FFH的的1024个单元个单元作为中断向量表,每个向量占用作为中断向量表,每个向量占用4个字节,可容纳个字节,可容纳256个个中中断向量。断向量。2022年3月27日星期日23中中断断向向量量表表0000 : 00000000 : 00010000 : 00020000 : 0003 0000 : 00200000 : 00210000 : 00220000 : 0023 0000 : 03FC0000 : 03FD0000 : 03FE0000 : 03FF类型号类型号 0类型号类型

22、号 8类型号类型号 255偏移地址偏移地址段地址段地址偏移地址偏移地址段地址段地址偏移地址偏移地址段地址段地址每个中断向量每个中断向量在中断向量表在中断向量表中的序号,值中的序号,值为为0 0255255。中断类型号中断类型号2022年3月27日星期日24用中断向量赋值用中断向量赋值CSCS、IPIP中断类型号与中断向量中断类型号与中断向量 中断类型号(中断类型号(n)4 中断向量在表中的偏移地址中断向量在表中的偏移地址 如:如:n8,则应从向量表,则应从向量表20H23H中取出中断向量中取出中断向量中断源提供中断源提供中断类型号中断类型号n4中断向量中断向量地址地址查表查表中断向量中断向量C

23、PU转向中断转向中断服务程序执行服务程序执行 CPU使用向量中断的过程:使用向量中断的过程:2022年3月27日星期日25中断处理流程中断处理流程由中由中断隐断隐指令指令执行执行2022年3月27日星期日26中断处理过程中的问题中断处理过程中的问题l第一个问题第一个问题CPU只有在一条指令执行完毕转入公操作时时,才能处理外只有在一条指令执行完毕转入公操作时时,才能处理外设的中断请求。设的中断请求。l第二个问题第二个问题为了保证中断服务程序执行完毕后,能够正确地返回到原断为了保证中断服务程序执行完毕后,能够正确地返回到原断点位置,则必须保存点位置,则必须保存PC和当前和当前CPU的状态到堆栈中。

24、的状态到堆栈中。l第三个问题第三个问题CPU在中断响应期间,还可能有新的中断请求。为了不致于在中断响应期间,还可能有新的中断请求。为了不致于造成混乱,中断管理部件中必须有中断屏蔽触发器,在中断造成混乱,中断管理部件中必须有中断屏蔽触发器,在中断响应期间屏蔽其他中断源。响应期间屏蔽其他中断源。l第四个问题第四个问题中断处理过程是由硬件和软件结合来完成的;中断处理过程是由硬件和软件结合来完成的;中断周期由硬件实现,中断处理程序由机器指令序列实现。中断周期由硬件实现,中断处理程序由机器指令序列实现。中断返回时再恢复断点状态中断返回时再恢复断点状态对中断源的优先权管理对中断源的优先权管理2022年3月

25、27日星期日278.3.2 程序中断方式的基本程序中断方式的基本I/O接口接口l接口内部组成接口内部组成数据缓冲寄存器;数据缓冲寄存器;就绪触发器就绪触发器RD、忙状态触发器、忙状态触发器BS、允许中断触发器、允许中断触发器EI;中断向量产生逻辑;中断向量产生逻辑;lCPU的相应部件的相应部件中断请求触发器中断请求触发器IR、中断屏蔽触发器、中断屏蔽触发器IM;l程序中断的数据传送过程:程序中断的数据传送过程: CPU启动外设启动外设外设准备就绪后,向外设准备就绪后,向CPU请求中断请求中断CPU接受请求,完成数据传送接受请求,完成数据传送2022年3月27日星期日28程序中断方式数据传送示意

26、程序中断方式数据传送示意就绪触发器就绪触发器允许触发器允许触发器忙状态触发器忙状态触发器中断请求中断请求触发器触发器中断屏蔽中断屏蔽触发器触发器 数据数据一条指令结束一条指令结束 数据数据10110IF=00012022年3月27日星期日29中断处理的策略中断处理的策略l根据计算机系统对中断处理的策略的不同,可分为:根据计算机系统对中断处理的策略的不同,可分为:单级中断系统单级中断系统所有的中断源都属于同一个级别,不允许有中断嵌套;所有的中断源都属于同一个级别,不允许有中断嵌套;多级中断系统多级中断系统中断源分为不同的级别,可以发生中断嵌套,高优先权中断源分为不同的级别,可以发生中断嵌套,高优

27、先权的中断源请求可以打断低优先权的中断服务;的中断源请求可以打断低优先权的中断服务;l实现方法实现方法进入中断服务时的中断屏蔽设置;进入中断服务时的中断屏蔽设置;2022年3月27日星期日308.3.3单级中断单级中断l单级中断中,所有中断源属于同一个级别,不允许中断嵌套。单级中断中,所有中断源属于同一个级别,不允许中断嵌套。 中断请求信号中断请求信号优先权高优先权高优先权低优先权低中断响应信号中断响应信号2022年3月27日星期日312、单级中断源的识别、单级中断源的识别 串行排队链法串行排队链法 排队链排队链中断响中断响应信号应信号中断排队输入信号;中断排队输入信号;由高优先权中断得到由高

28、优先权中断得到中断排队中断排队输出信号输出信号选中选中信号信号中断源的中中断源的中断请求信号断请求信号2022年3月27日星期日32中断向量的产生中断向量的产生l向量中断向量中断由硬件直接产生一个与该中断源对应的由硬件直接产生一个与该中断源对应的向量地址向量地址;u向量地址向量地址中断源的中断服务程序入口地址;中断源的中断服务程序入口地址;要求:在硬件设计时考虑所有中断源的向量地址。要求:在硬件设计时考虑所有中断源的向量地址。 l位移量中断位移量中断由硬件直接产生一个由硬件直接产生一个位移量位移量,该位移量加上,该位移量加上CPU中某寄存器中某寄存器中的基地址,得到中断处理程序的入口地址。中的

29、基地址,得到中断处理程序的入口地址。l向量地址转移向量地址转移由硬件直接产生一个该中断源对应的由硬件直接产生一个该中断源对应的固定地址码固定地址码,该地址码,该地址码中存放可转入中断服务程序的入口地址。中存放可转入中断服务程序的入口地址。2022年3月27日星期日338.3.4 多级中断多级中断l当当CPU正在执行某个中断正在执行某个中断服务程序时,另一个中断服务程序时,另一个中断源又提出了新的中断请求源又提出了新的中断请求,而而CPU再次响应这一新的再次响应这一新的请求;请求;暂停当前的中断服务暂停当前的中断服务程序,转去执行新的程序,转去执行新的中断服务程序。中断服务程序。l多级中断中需要

30、进行优先多级中断中需要进行优先权的控制和判断。权的控制和判断。2022年3月27日星期日34l一维多级中断结构一维多级中断结构每级仅有一个中断源;每级仅有一个中断源;l中断屏蔽触发器中断屏蔽触发器IM其状态决定对应级别的中其状态决定对应级别的中断源是否能够被响应;断源是否能够被响应;l中断优先权控制中断优先权控制当某中断源的请求被响应当某中断源的请求被响应时,将同时设置低级中断时,将同时设置低级中断源的源的IM=1,而高级中断,而高级中断源的源的IM=0,可以发生中,可以发生中断嵌套。断嵌套。一维多级中断结构一维多级中断结构2022年3月27日星期日35二维多级中断结构二维多级中断结构l二维多

31、级中断结构二维多级中断结构每级包含多个中断源每级包含多个中断源;同级的中断源的服务同级的中断源的服务是不能嵌套的是不能嵌套的;l若设备若设备E、F、H同时请求同时请求中断,则先响应设备中断,则先响应设备E;l此时,此时,若设备若设备D请求中断,请求中断,则不响应则不响应;l若设备若设备B请求中断,则打请求中断,则打断设备断设备E的中断服务,嵌的中断服务,嵌套响应设备套响应设备B;2022年3月27日星期日36CPU内部的中断请求内部的中断请求/屏蔽寄存器屏蔽寄存器l 对于每一个中断源,对于每一个中断源,CPU内部会有一个内部会有一个中断请求触发器中断请求触发器和一和一个个中断屏蔽触发器中断屏蔽

32、触发器,用于管理当前该中断源的状态;,用于管理当前该中断源的状态; 中断请求触发器:中断请求触发器:1有请求;有请求;0无请求;无请求; 中断屏蔽触发器:中断屏蔽触发器:1被屏蔽;被屏蔽;0未被屏蔽;未被屏蔽;l 若系统中共有若系统中共有n级中断,则有两个级中断,则有两个n位中断请求寄存器和中断位中断请求寄存器和中断屏蔽寄存器;屏蔽寄存器; CPU响应中断时,系统需要进行优先权控制,实现正常响应中断时,系统需要进行优先权控制,实现正常的中断嵌套;的中断嵌套;u置置“1”(关闭)本级和低级的中断屏蔽触发器;(关闭)本级和低级的中断屏蔽触发器;u清清“0”(开放)更高级的中断屏蔽触发器;(开放)更

33、高级的中断屏蔽触发器;2022年3月27日星期日37单重中断和多重中断的服务程序流程单重中断和多重中断的服务程序流程中断否?中断否?保护现场保护现场设备服务设备服务恢复现场恢复现场 开中断开中断中断返回中断返回取指令取指令执行指令执行指令中断服务程序中断服务程序 中断响应中断响应 程序断点进栈程序断点进栈 关中断关中断 向量地址向量地址 PC中断周期中断周期是是中断返回中断返回保护现场保护现场设备服务设备服务恢复现场恢复现场开中断开中断开中断开中断开中断开中断中断隐指令中断隐指令中断隐指令中断隐指令否否取指令取指令执行指令执行指令中断否?中断否?否否 中断响应中断响应 程序断点进栈程序断点进栈

34、 关中断关中断向量地址向量地址 PC中断周期中断周期是是中断服务程序中断服务程序单重单重 多重多重 2022年3月27日星期日382、多级中断源的识别、多级中断源的识别独立请求方独立请求方式式的中断优的中断优先级排队与先级排队与中断向量产中断向量产生逻辑;生逻辑;2022年3月27日星期日39课本课本P247【例例1】如图如图8.9的二维中断系统中。问:的二维中断系统中。问:l在中断情况下,在中断情况下,CPU和设备的优先级如何考虑?请和设备的优先级如何考虑?请按降序排列各设备的中断优先级。按降序排列各设备的中断优先级。 在中断情况下,在中断情况下,CPU的优先级最低;的优先级最低; 各设备的

35、优先次序为各设备的优先次序为(ABC)(DEF)(GHI)CPU*括号中的为同级中断源,不可进行中断嵌套,括号中的为同级中断源,不可进行中断嵌套,但同时请求时会有优先权的区分;但同时请求时会有优先权的区分;2022年3月27日星期日40课本课本P247 【例例1】如图如图8.9的二维中断系统中。问:的二维中断系统中。问:l若若CPU现执行设备现执行设备B的中断服务程序,则的中断服务程序,则IM2、IM1、IM0的状态是什么?如果的状态是什么?如果CPU执行设备执行设备D的中断服务程的中断服务程序,则序,则IM2、IM1、IM0的状态又是什么?的状态又是什么? 由于设备由于设备B的优先权最高,则

36、在执行设备的优先权最高,则在执行设备B的中断的中断服务时要禁止同级和低级所有中断源的请求,因此服务时要禁止同级和低级所有中断源的请求,因此IM2IM1IM0=111; 若执行设备若执行设备D的中断服务,则设备的中断服务,则设备A、B、C均可发均可发生中断嵌套,因此生中断嵌套,因此IM2IM1IM0=011;2022年3月27日星期日41课本课本P247 【例例1】如图如图8.9的二维中断系统中。问:的二维中断系统中。问:l 每一级的每一级的IM能否对某个优先级的个别设备单独进行屏蔽?如果能否对某个优先级的个别设备单独进行屏蔽?如果不能,采取什么措施可以实现?不能,采取什么措施可以实现?每一级的

37、每一级的IM只能对同级所有设备进行屏蔽,无法实现对个别只能对同级所有设备进行屏蔽,无法实现对个别设备的单独屏蔽;设备的单独屏蔽;若要单独屏蔽个别设备,则可在该设备的接口中实现,将接若要单独屏蔽个别设备,则可在该设备的接口中实现,将接口内的口内的EI(中断允许标志)清(中断允许标志)清0;l 若要使设备若要使设备C一提出中断请求,一提出中断请求,CPU立即响应,则应如何调整立即响应,则应如何调整?使设备使设备C的优先权最高,即可满足题目要求;的优先权最高,即可满足题目要求;可将设备可将设备C单独设置为第单独设置为第3级中断,并令级中断,并令IM3=0即可。即可。2022年3月27日星期日42多级

38、中断的中断屏蔽技术多级中断的中断屏蔽技术l 关中断关中断 即使有中断源产生中断请求,但即使有中断源产生中断请求,但CPU因某种条件存在而因某种条件存在而不会中止现行程序,发生中断;不会中止现行程序,发生中断;l 中断屏蔽中断屏蔽 用程序方式有选择地封锁某些中断源,而允许另一些中用程序方式有选择地封锁某些中断源,而允许另一些中断响应。断响应。l 实现多级中断的条件实现多级中断的条件提前设置提前设置“开中断开中断”指令。指令。 优先级高的中断请求优先级高的中断请求有权有权中断优先级低的中断服务。中断优先级低的中断服务。由屏蔽字决定是否有权中断由屏蔽字决定是否有权中断2022年3月27日星期日43多

39、级中断的中断屏蔽技术多级中断的中断屏蔽技术l中断屏蔽的实现方法:中断屏蔽的实现方法:设优先级从高到低依次为:设优先级从高到低依次为: 7、6、5、4、3、2、1、0;则当响应第则当响应第3级中断时级中断时中断屏蔽字设为:中断屏蔽字设为:00001111l改变优先级的方法:改变优先级的方法:修改屏蔽字修改屏蔽字欲使第欲使第2级中断的优先权高于第级中断的优先权高于第3级;级;则可设置第则可设置第3级中的屏蔽字设为:级中的屏蔽字设为: 00001011 第第2级中的屏蔽字设为:级中的屏蔽字设为: 000011112022年3月27日星期日44中断屏蔽技术举例中断屏蔽技术举例例:某机有例:某机有5个中

40、断源个中断源L0L4,按中断响应优先级从高,按中断响应优先级从高到低为到低为L0L1L2L3L4,现要求将中断处理,现要求将中断处理次序改为次序改为L1L3L4L0L2,请写出各中断源,请写出各中断源的屏蔽字。的屏蔽字。10100111110010010111101012022年3月27日星期日458.3.5 中断控制器中断控制器2022年3月27日星期日468.3.6PC系列机中断机制系列机中断机制中断源中断源外部中断外部中断异常中断异常中断不可屏蔽中断不可屏蔽中断NMI可屏蔽中断可屏蔽中断INTR异常中断异常中断指令中断指令中断INT n除法错中断除法错中断单步中断单步中断断点中断断点中断

41、溢出中断溢出中断由执行指令引起由执行指令引起的中断。的中断。由由随机的硬件信随机的硬件信号号引起的中断;引起的中断;2022年3月27日星期日47不可屏蔽中断不可屏蔽中断NMIl由由CPU的的NMI引脚引脚引入该中断请求,引入该中断请求,CPU得到该中断请求得到该中断请求立即立即响应响应,不需要,不需要CPU发响应信号;发响应信号;l中断类型号固定为中断类型号固定为2;l中断优先权高于可屏蔽中断中断优先权高于可屏蔽中断INTR,一般用于系统对紧急情况,一般用于系统对紧急情况的处理,用户不能使用;的处理,用户不能使用;l常见的常见的NMI中断:中断:系统系统RAM奇偶校验错、奇偶校验错、I/O通

42、道校验错、协处理器出错等。通道校验错、协处理器出错等。2022年3月27日星期日48可屏蔽中断可屏蔽中断INTRl由由CPU的的INTR引脚引脚引入该中断请求;引入该中断请求;该中断请求只有在该中断请求只有在CPU的中断允许标志位的中断允许标志位IF=1时,时,CPU才会通过发回才会通过发回响应信号响应信号的方式响应;的方式响应;CPU对对INTR中断的响应控制可由中断的响应控制可由STI(允许响应(允许响应INTR中中断)、断)、CLI(禁止响应(禁止响应INTR中断)两条指令完成。中断)两条指令完成。l此类中断的中断类型号由此类中断的中断类型号由中断源中断源提供;提供;l常见的常见的INT

43、R中断:中断:外部设备的中断请求,如外部设备的中断请求,如I/O设备的数据传送请求,用户设备的数据传送请求,用户可自行设计;可自行设计;2022年3月27日星期日49指令中断指令中断INT nl由由CPU执行在程序中执行在程序中预先安排好的预先安排好的中断指令引起的;中断指令引起的;该中断是该中断是可预期可预期的、且的、且不可屏蔽不可屏蔽的;的;l处理该中断时,处理该中断时,CPU不需要发响应信号不需要发响应信号;l指令的操作数字段(指令的操作数字段(n)即为中断类型号;)即为中断类型号;中断类型号的范围为中断类型号的范围为5n255 ;l这类中断包括这类中断包括BIOS中断、中断、DOS中断

44、以及一些未定义的自由中中断以及一些未定义的自由中断(可由系统扩充或根据应用需要自定义)。断(可由系统扩充或根据应用需要自定义)。2022年3月27日星期日50异常中断异常中断l由由CPU内部的突发事件内部的突发事件引起的中断,是引起的中断,是不可屏蔽不可屏蔽中断;中断;l其中断类型号固定;其中断类型号固定;除法错中断除法错中断类型号为类型号为0;u执行除法指令时,除数为执行除法指令时,除数为0,或除得的商大于规定位数;,或除得的商大于规定位数;单步中断单步中断类型号为类型号为1;断点中断断点中断类型号为类型号为3;溢出中断溢出中断类型号为类型号为4;l该类中断的实质该类中断的实质由由CPU运行

45、过程中的突发事件引起系统在适当位置运行过程中的突发事件引起系统在适当位置自动添加自动添加一条中断指令一条中断指令,然后由,然后由CPU执行该指令引起的中断;执行该指令引起的中断;l同指令中断一样,处理该中断时,同指令中断一样,处理该中断时,CPU不需要发响应信号不需要发响应信号。2022年3月27日星期日51外部中断外部中断指令中断指令中断内部异常中断内部异常中断硬件故障中断硬件故障中断软软 件件 故故 障障 中中 断断2022年3月27日星期日52各类中断的比较各类中断的比较2022年3月27日星期日538.4 DMA方式方式lDMA(直接内存访问)方式(直接内存访问)方式完全由硬件控制完全

46、由硬件控制执行执行I/O交换的工作方式;交换的工作方式;DMAC完全完全接管系统总线接管系统总线的控制权,利用总线控制数据在的控制权,利用总线控制数据在主存和外设之间的直接传送,主存和外设之间的直接传送,所交换的数据不经过所交换的数据不经过CPU。lDMA特点特点速度快,但硬件复杂度高。速度快,但硬件复杂度高。lDMA方式中,方式中,DMAC的工作:的工作:接受外设的接受外设的DMA请求,并提交给请求,并提交给CPU;接管总线的控制权,控制主存和外设之间的数据传送;接管总线的控制权,控制主存和外设之间的数据传送;完成数据传送后,交还总线使用权。完成数据传送后,交还总线使用权。磁盘与主存之间的数

47、据传送磁盘与主存之间的数据传送8.4.1 DMA的基本概念的基本概念2022年3月27日星期日548.4.2 DMA传送方式传送方式lDMA传送时,传送时,CPU不能使用总线,会影响不能使用总线,会影响CPU的工作效率;的工作效率;当当CPU需要访存,或者访问外设时,程序会阻塞;需要访存,或者访问外设时,程序会阻塞;可使可使DMAC与与CPU分时复用总线;分时复用总线;l常用的常用的DMA传送方式传送方式停止停止CPU访问方式访问方式u早期使用的一种方式;早期使用的一种方式;周期挪用方式周期挪用方式(周期窃取方式)(周期窃取方式)u适用于外设读写周期大于主存的存取周期的系统中;适用于外设读写周

48、期大于主存的存取周期的系统中;DMA与与CPU交替访问方式交替访问方式(透明(透明DMA方式)方式)u适用于适用于CPU周期大于主存存取周期的系统中;周期大于主存存取周期的系统中;每次挪用的一个总线每次挪用的一个总线周期,对于周期,对于DMACDMAC来说来说需要需要2-52-5个周期,用个周期,用于总线控制权的申请、于总线控制权的申请、建立和归还。建立和归还。2022年3月27日星期日55停止停止CPU访问方式访问方式l 工作过程工作过程DMA传送期间,由传送期间,由DMAC长期占用总线,长期占用总线, CPU不能访存,只有不能访存,只有DMA传送结束时才将总线归还给传送结束时才将总线归还给

49、CPU使用;使用;l特点特点控制简单,适于高速外设的数据成组传送;控制简单,适于高速外设的数据成组传送;内存使用效率不高。内存使用效率不高。(一般外设的读写周期远大于主存的存取周期一般外设的读写周期远大于主存的存取周期)2022年3月27日星期日56周期挪用方式周期挪用方式l工作过程工作过程每次每次DMA传送,都是通过外设挪用一个或几个主存周期,传送,都是通过外设挪用一个或几个主存周期,分别完成数据的成块传送。分别完成数据的成块传送。l特点:特点:主存使用效率较高,常用;主存使用效率较高,常用;uCPU和外设访存冲突时,外设优先访问。和外设访存冲突时,外设优先访问。2022年3月27日星期日5

50、7DMA与与CPU交替访存方式交替访存方式l工作过程工作过程将将CPU的工作周期一分为二,分别用于的工作周期一分为二,分别用于DMA和和CPU访存;访存;l特点:特点:对主存的访问时间不会发生冲突,也对主存的访问时间不会发生冲突,也不需要总线控制权的不需要总线控制权的申请建立和归还过程申请建立和归还过程;l透明透明DMA方式方式DMA传送不影响传送不影响CPU的工作;的工作;2022年3月27日星期日588.4.3 DMA控制器控制器1、DMA控制器的基本组成控制器的基本组成2022年3月27日星期日592、DMA数据传送过程数据传送过程lDMA请求请求DMAC向向CPU请求总线使用权;请求总

51、线使用权;lDMA响应响应CPU给给DMAC分配总线使用权;分配总线使用权;lDMA传送传送DMAC寻址外设和存储器;寻址外设和存储器;DMAC控制外设与主存之间的数控制外设与主存之间的数据传送,并检测是否传送结束;据传送,并检测是否传送结束;lDMA结束结束DMAC归还总线使用权。归还总线使用权。之前要有对之前要有对DMAC芯芯片的编程操作片的编程操作传传送前的预处理送前的预处理2022年3月27日星期日60DMA方式和中断控制方式的区别方式和中断控制方式的区别l数据传送的实现方式数据传送的实现方式中断中断程序传送;程序传送;DMA硬件实现;硬件实现;lCPU响应请求的时间响应请求的时间中断

52、中断一个指令周期结束;一个指令周期结束;DMA一个总线周期结束;一个总线周期结束;l请求的目的请求的目的中断中断CPU的服务;的服务;DMA总线的使用权;总线的使用权;l是否需要保护现场是否需要保护现场中断中断需要;需要;DMA不需要(不需要(CPU不参与数据传送);不参与数据传送);lDMA的优先权高于中断的优先权。的优先权高于中断的优先权。2022年3月27日星期日618.4.4 DMAC的类型的类型l 选择型选择型DMACl 特点特点 物理上,可以连接物理上,可以连接多个设备;多个设备; 逻辑上,只允许连逻辑上,只允许连接一个设备;接一个设备;l 选择型选择型DMAC相当于一个相当于一个

53、逻辑开关;逻辑开关; 只增加少量硬件,只增加少量硬件,可实现为多个设备服务的目的;可实现为多个设备服务的目的;l 适用于数据传输率很高的设备;适用于数据传输率很高的设备;2022年3月27日星期日622. 多路型多路型DMACl特点特点 物理上,可以连接物理上,可以连接多个设备;多个设备;逻辑上,也允许多逻辑上,也允许多个个 设备同时工作;设备同时工作;l各设备以字节交叉方各设备以字节交叉方式进行数据传送;式进行数据传送;DMAC内部需要多内部需要多组寄存器;组寄存器;l设备对设备对DMAC的请求的请求可采用可采用链式链式,或,或独立请独立请求方式求方式;2022年3月27日星期日63课本课本

54、P260【例例3】l设有磁盘、磁带、打印机三个设备同时工作。设有磁盘、磁带、打印机三个设备同时工作。l各设备各设备发出发出DMA请求的时间间隔如下请求的时间间隔如下磁盘磁盘30s;磁带磁带45s;打印机打印机150s;l设优先权为磁盘最高,磁带次之,打印机最低;设优先权为磁盘最高,磁带次之,打印机最低;l已知已知DMAC每完成一次每完成一次DMA传送所需的时间是传送所需的时间是5s。l若采用多路型若采用多路型DMAC,则请画出,则请画出DMAC为三个设备服为三个设备服务的工作时间图。务的工作时间图。2022年3月27日星期日64 T4T6 T7T2为磁盘为磁盘 服务服务T5T8T3为磁带为磁带

55、 服务服务为打印为打印机服务机服务T15sDMA 请求请求打印机打印机tDMA 请求请求DMA 请求请求DMA 请求请求45s磁带磁带tDMA 请求请求DMA 请求请求DMA 请求请求DMA 请求请求30s磁盘磁盘t课本课本P260【例例3】图解图解2022年3月27日星期日658.5 通道方式通道方式8.5.1 通道的功能通道的功能8.5.2 通道的类型通道的类型8.5.3 通道结构的发展通道结构的发展2022年3月27日星期日668.5.1 通道的功能通道的功能l通道的功能通道的功能 执行通道指令、组织外围设备和内存进行数据传输执行通道指令、组织外围设备和内存进行数据传输; 按按I/O指令

56、要求启动外围设备,向指令要求启动外围设备,向CPU报告中断。报告中断。lCPU对通道的管理对通道的管理 CPU通过执行通过执行I/O指令控制通道的数据传送;指令控制通道的数据传送; CPU处理来自通道的中断,实现对通道的管理;处理来自通道的中断,实现对通道的管理;u一种是数据传送结束中断;一种是故障中断。一种是数据传送结束中断;一种是故障中断。l通道对设备控制器的管理通道对设备控制器的管理 通道使用通道指令控制通道使用通道指令控制I/O模块进行数据传送操作;模块进行数据传送操作; 通道接收通道状态字了解外设的状态。通道接收通道状态字了解外设的状态。2022年3月27日星期日67通道结构通道结构

57、2022年3月27日星期日688.5.2 通道的类型通道的类型l选择通道选择通道物理上可以连接多个设备,但这些设备不能同时工作;物理上可以连接多个设备,但这些设备不能同时工作;u某一段时间内通道只能选择一个设备进行工作。某一段时间内通道只能选择一个设备进行工作。l多路通道多路通道同一时间能处理多个同一时间能处理多个I/O设备的数据传输。设备的数据传输。多路通道的类型多路通道的类型u数组多路通道数组多路通道 利用设备寻址的空隙为其他设备服务;利用设备寻址的空隙为其他设备服务;u字节多路通道字节多路通道 利用设备数据传送中字节之间的空隙为其他设备服务;利用设备数据传送中字节之间的空隙为其他设备服务;高速通道高速通道多路转换通路多路转换通路连接高速设备连接高速设备连接低速设备连接低速设备2022年3月27日星期日698.5.3 通道结构的发展通道结构的发展l通道结构的通道结构的I/O处理器处理器输入输出处理器输入输出处理器(IOP)IOP可以和可以和CPU并行工作,提供高速的并行工作,提供高速的DMA处理能处理能力,实现数据的高速传送;力,实现数据的高速传送;IOP不独立于不独立于CPU工作,它是主机的一个部件;工作,它是主机的一个部件;l外围处理机(外围处理机(PPU)PPU独立于主机

温馨提示

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

评论

0/150

提交评论