《(8.1)--计算机组成原理第8章_输入输出系统.ppt》由会员分享,可在线阅读,更多相关《(8.1)--计算机组成原理第8章_输入输出系统.ppt(71页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、第8章 输入输出系统30 三月 20232l8.1外围设备的速度分级与信息交换方式外围设备的速度分级与信息交换方式了解了解l8.2程序查询方式程序查询方式了解了解l8.3程序中断方式程序中断方式掌握掌握l8.4DMA方式方式掌握掌握l8.5通道方式通道方式了解了解l8.6通用通用I/O标准接口标准接口了解了解30 三月 202338.1外围设备的速度分级与信息交换方式外围设备的速度分级与信息交换方式l8.1.1外围设备的速度分级外围设备的速度分级l8.1.2信息交换方式信息交换方式30 三月 202348.1.1外围设备的速度分级外围设备的速度分级l根据外设的工作速度,根据外设的工作速度,CP
2、U与外设的定时方式有以下与外设的定时方式有以下3种:种:速度极慢或简单的外围设备速度极慢或简单的外围设备uCPU直接接收或发送数据。直接接收或发送数据。慢速或中速的外围设备慢速或中速的外围设备u采用异步定时方式,或称为应答式数据交换;采用异步定时方式,或称为应答式数据交换;uCPU与外设之间通过两个相互的联络信号来决定开始数据传与外设之间通过两个相互的联络信号来决定开始数据传送的时间。送的时间。高速的外围设备高速的外围设备u采用同步定时方式;采用同步定时方式;uCPU以等间隔的速率执行输入输出指令。以等间隔的速率执行输入输出指令。询问信号询问信号应答信号应答信号由时钟脉冲控制由时钟脉冲控制如何
3、使如何使CPUCPU与外与外设同步工作设同步工作如:机械开关、发光二极管如:机械开关、发光二极管如:键盘、显示器如:键盘、显示器如:主存、辅存如:主存、辅存30 三月 202358.1.2外设信息交换方式外设信息交换方式l程序查询方式程序查询方式早期计算机中使用的一种方式,效率低。早期计算机中使用的一种方式,效率低。l程序中断方式程序中断方式适用于随机出现的服务。适用于随机出现的服务。l直接内存访问(直接内存访问(DMA)方式)方式适用于内存和高速外围设备之间大批数据交换的场合。适用于内存和高速外围设备之间大批数据交换的场合。l通道方式通道方式增加一个具有特殊功能的处理器增加一个具有特殊功能的
4、处理器通道,将通道,将CPU的输的输入输出权力下放。入输出权力下放。l外围处理机方式外围处理机方式(PPU)是通道方式的进一步发展。是通道方式的进一步发展。30 三月 20236程序查询方式程序查询方式l工作过程工作过程CPU传送数据之前先检查外设的状态,若没有准备好,则传送数据之前先检查外设的状态,若没有准备好,则继续查询等待继续查询等待,直至外设就绪即进行数据传送。,直至外设就绪即进行数据传送。l硬件要求硬件要求只需接口电路的状态、数据口,不需增加其他控制电路。只需接口电路的状态、数据口,不需增加其他控制电路。l特点特点CPU主动查询,主动查询,程序控制数据传送过程程序控制数据传送过程,简
5、单易行;,简单易行;每次查询之后只能传送一个字或一个字节的数据,数据传输每次查询之后只能传送一个字或一个字节的数据,数据传输率不高,率不高,CPU时间浪费较多。时间浪费较多。l适用场合适用场合CPU不太忙且对传送速度要求不高的系统。不太忙且对传送速度要求不高的系统。30 三月 20237l工作过程工作过程CPU有传送要求时,有传送要求时,启动外设后可处理其他事件启动外设后可处理其他事件,当外设,当外设准就绪后,通过准就绪后,通过中断的方式中断的方式和和CPU完成数据传送工作。完成数据传送工作。l硬件要求硬件要求需要附加的需要附加的中断控制电路中断控制电路。l特点特点一定程度上实现了一定程度上实
6、现了CPU和外设的并行工作;和外设的并行工作;中断操作过程增加了软硬件的开销,且每次数据传送只能中断操作过程增加了软硬件的开销,且每次数据传送只能传送一个字或一个字节的数据,数据传送效率低。传送一个字或一个字节的数据,数据传送效率低。l适用场合适用场合CPU与与慢速外设慢速外设之间的数据传送。之间的数据传送。程序中断方式程序中断方式30 三月 20238l工作过程工作过程CPU分配总线使用权分配总线使用权之后,在硬件之后,在硬件DMA控制器(控制器(DMAC)的)的控制下完成存储器与高速外设之间的大量数据的传送。控制下完成存储器与高速外设之间的大量数据的传送。l硬件要求硬件要求需要相应的需要相
7、应的DMA控制器及数据通路控制器及数据通路,电路结构复杂,硬件开,电路结构复杂,硬件开销大。销大。l特点特点数据传送不需要经过数据传送不需要经过CPU,直接由硬件控制直接由硬件控制;外设与存储器之间的数据传送量大。外设与存储器之间的数据传送量大。l适用场合适用场合包含有高速外设的系统中。包含有高速外设的系统中。存储器与外设之间存储器与外设之间数据交换时使用数据交换时使用直接内存访问(直接内存访问(DMA)方式)方式30 三月 20239通道方式通道方式l工作过程工作过程CPU将将IO控制的权利下放给通道,由控制的权利下放给通道,由通道统一管理所有的通道统一管理所有的输入输出操作输入输出操作。l
8、硬件要求硬件要求需要需要IO通道(也称通道(也称IO处理器,处理器,IOP););通道是一个具有通道是一个具有特殊功能的处理器特殊功能的处理器。l特点特点硬件代价较高;硬件代价较高;IO传送的效率高,并且减轻了传送的效率高,并且减轻了CPU的工作负担。的工作负担。l适用场合适用场合高性能要求的系统中。高性能要求的系统中。30 三月 2023101、设备编址、设备编址统一编址方式统一编址方式l统一编址方式统一编址方式将将I/O系统与主存系统作为系统与主存系统作为一个整体一个整体进行编址;进行编址;l优点:优点:访问访问I/O端口可使用端口可使用访存指令访存指令,操作类型多样,操作类型多样,使用灵
9、活;使用灵活;I/O端口有较大的编址空间;端口有较大的编址空间;l缺点:缺点:占用主存空间占用主存空间,使实际主存容量减小;,使实际主存容量减小;I/O访问的指令字长较长,执行速度慢。访问的指令字长较长,执行速度慢。00000HFFFFFH以以2020位主存地址、位主存地址、1616位位I/OI/O地址为例地址为例主主存存储储器器I/O设设备备EFFFFHF0000H8.2程序查询方式程序查询方式30 三月 2023111、设备编址、设备编址独立编址方式独立编址方式l独立编址方式独立编址方式将将I/O系统与主存系统系统与主存系统分别分别编址;编址;l特点:特点:I/O端口地址不占用主存空间;端
10、口地址不占用主存空间;使用使用专用的专用的I/O指令指令,指令字长短,指令字长短,执行速度快;执行速度快;与主存空间区分容易。与主存空间区分容易。00000HFFFFFH主主存存储储器器I/O设设备备0000HFFFFH以以2020位主存地址、位主存地址、1616位位I/OI/O地址为例地址为例30 三月 2023122、输入、输入/输出指令输出指令lIO指令指令输入指令:输入指令:INAL/AX,DX/PORTu从指定端口读入一个字节从指定端口读入一个字节/字数据到累加器;字数据到累加器;输出指令:输出指令:OUTDX/PORT,AL/AXu将累加器中的一个字节将累加器中的一个字节/字数据送
11、到指定端口输出;字数据送到指定端口输出;lIO指令一般的功能:指令一般的功能:对对I/O接口的控制触发器置接口的控制触发器置1或或0,控制其进行某些操作;,控制其进行某些操作;uCPU向向IO接口发命令字;接口发命令字;测试设备的某些状态;测试设备的某些状态;uCPU读取读取IO接口的状态字;接口的状态字;输入或输出数据;输入或输出数据;uCPU与与IO接口之间的数据传送;接口之间的数据传送;以数据形式传送以数据形式传送控制、状态信息控制、状态信息30 三月 2023133、程序查询方式的接口、程序查询方式的接口lCPU通过地址信号通过地址信号选选中中某设备接口;某设备接口;lCPU通过向该接
12、口发通过向该接口发送命令字的方式,送命令字的方式,启动启动外设外设;l外设开始工作后,外设开始工作后,设设置当前置当前“忙忙”状态状态;lCPU与外设通过接口与外设通过接口内部的数据缓冲器内部的数据缓冲器传送传送数据数据;30 三月 2023144、程序查询输入、程序查询输入/输出方式输出方式l程序执行动作如下:程序执行动作如下:CPU请求数据传送;请求数据传送;CPU从从I/O接口接口读入状态字读入状态字;检查检查状态字中的标志;状态字中的标志;未就绪,则未就绪,则重复重复、步,步,直到设备就绪为止。直到设备就绪为止。CPU输入或输出数据,同时输入或输出数据,同时复位接口中的状态标志。复位接
13、口中的状态标志。l特点特点可通过改变查询顺序修改设可通过改变查询顺序修改设备的优先权;备的优先权;CPU工作效率低;工作效率低;30 三月 2023158.3程序中断方式程序中断方式l8.3.1中断的基本概念中断的基本概念l8.3.2程序中断方式的基本程序中断方式的基本IO接口接口l8.3.3单级中断单级中断l8.3.4多级中断多级中断l8.3.5中断控制器中断控制器l8.3.6PC系列机中断机制系列机中断机制30 三月 2023168.3.1中断的基本概念中断的基本概念l定义:定义:中断是指中断是指CPU正常运行程序时,由正常运行程序时,由系统内系统内/外部非预期事件外部非预期事件或或程序中
14、预先安排好的指令性事件程序中预先安排好的指令性事件引起的,引起的,CPU暂停暂停当前程序当前程序的执行,的执行,转去转去为该事件服务的程序中执行,服务完毕后,再为该事件服务的程序中执行,服务完毕后,再返回返回原程序继续执行的过程。原程序继续执行的过程。l注意:注意:中断中断是一个是一个CPU执行程序的执行程序的变化过程变化过程;所有能引起中断的事件均称为所有能引起中断的事件均称为中断源中断源;处理中断事件的处理中断事件的中断服务程序中断服务程序是预先设置好的;是预先设置好的;结束中断返回原程序时,要以结束中断返回原程序时,要以原状态返回原状态返回暂停处继续执行。暂停处继续执行。30 三月 20
15、2317IRET主主程程序序中中断断服服务务程程序序IP中断请求中断请求主程序主程序中断响应中断响应中断服中断服务程序务程序中断返回中断返回IRET断断点点IP IP IP中中断断过过程程示示意意30 三月 202318有关中断有关中断l中断处理过程是由中断处理过程是由硬件和软件结合硬件和软件结合来完成的。来完成的。l为什么要使用中断?为什么要使用中断?解决速度问题,使解决速度问题,使CPU和和I/O并行工作;并行工作;对意外情况对意外情况(如磁盘损坏、运算溢出等如磁盘损坏、运算溢出等)能够及时处理。能够及时处理。在实时控制领域中,及时响应外来信号的请求。在实时控制领域中,及时响应外来信号的请
16、求。30 三月 202319中断处理流程中断处理流程由中由中断隐断隐指令指令执行执行30 三月 202320中断处理过程中的问题中断处理过程中的问题l第一个问题第一个问题CPU只有在一条指令执行完毕转入公操作时时,才能处理外只有在一条指令执行完毕转入公操作时时,才能处理外设的中断请求。设的中断请求。l第二个问题第二个问题为了保证中断服务程序执行完毕后,能够正确地返回到原断为了保证中断服务程序执行完毕后,能够正确地返回到原断点位置,则必须保存点位置,则必须保存PC和当前和当前CPU的状态到堆栈中。的状态到堆栈中。l第三个问题第三个问题CPU在中断响应期间,还可能有新的中断请求。为了不致于在中断响
17、应期间,还可能有新的中断请求。为了不致于造成混乱,中断管理部件中必须有中断屏蔽触发器,在中断造成混乱,中断管理部件中必须有中断屏蔽触发器,在中断响应期间屏蔽其他中断源。响应期间屏蔽其他中断源。l第四个问题第四个问题中断处理过程是由硬件和软件结合来完成的;中断处理过程是由硬件和软件结合来完成的;中断周期由硬件实现,中断处理程序由机器指令序列实现。中断周期由硬件实现,中断处理程序由机器指令序列实现。中断返回时再恢复断点状态中断返回时再恢复断点状态对中断源的优先权管理对中断源的优先权管理30 三月 2023218.3.2程序中断方式的基本程序中断方式的基本I/O接口接口l接口内部组成接口内部组成数据
18、缓冲寄存器;数据缓冲寄存器;就绪触发器就绪触发器RD、忙状态触发器、忙状态触发器BS、允许中断触发器、允许中断触发器EI;中断向量产生逻辑;中断向量产生逻辑;lCPU的相应部件的相应部件中断请求触发器中断请求触发器IR、中断屏蔽触发器、中断屏蔽触发器IM;l程序中断的数据传送过程:程序中断的数据传送过程:CPU启动外设启动外设外设准备就绪后,向外设准备就绪后,向CPU请求中断请求中断CPU接受请求,完成数据传送接受请求,完成数据传送30 三月 202322程序中断方式数据传送示意程序中断方式数据传送示意就绪触发器就绪触发器允许触发器允许触发器忙状态触发器忙状态触发器中断请求中断请求触发器触发器
19、中断屏蔽中断屏蔽触发器触发器数据数据一条指令结束一条指令结束数据数据10110IF=000130 三月 202323中断处理的策略中断处理的策略l根据计算机系统对中断处理的策略的不同,可分为:根据计算机系统对中断处理的策略的不同,可分为:单级中断系统单级中断系统所有的中断源都属于同一个级别,不允许有中断嵌套;所有的中断源都属于同一个级别,不允许有中断嵌套;多级中断系统多级中断系统中断源分为不同的级别,可以发生中断嵌套,高优先权中断源分为不同的级别,可以发生中断嵌套,高优先权的中断源请求可以打断低优先权的中断服务;的中断源请求可以打断低优先权的中断服务;l实现方法实现方法进入中断服务时的中断屏蔽
20、设置;进入中断服务时的中断屏蔽设置;30 三月 2023248.3.3单级中断单级中断l单级中断中,所有中断源属于同一个级别,不允许中断嵌套。单级中断中,所有中断源属于同一个级别,不允许中断嵌套。中断请求信号中断请求信号优先权高优先权高优先权低优先权低中断响应信号中断响应信号动画演示:动画演示:8-7.swf8-7.swf30 三月 2023252、单级中断源的识别、单级中断源的识别串行排队链法串行排队链法动画演示:动画演示:8-8.swf8-8.swf排队链排队链中断响应中断响应信号信号中断排队输入信号;中断排队输入信号;由高优先权中断得到由高优先权中断得到中断排队中断排队输出信号输出信号选
21、中选中信号信号中断源的中中断源的中断请求信号断请求信号30 三月 202326中断向量的产生中断向量的产生1.向量中断向量中断由硬件直接产生一个与该中断源对应的由硬件直接产生一个与该中断源对应的向量地址向量地址;u向量地址向量地址中断源的中断服务程序入口地址;中断源的中断服务程序入口地址;要求:在硬件设计时考虑所有中断源的向量地址。要求:在硬件设计时考虑所有中断源的向量地址。2.位移量中断位移量中断由硬件直接产生一个由硬件直接产生一个位移量位移量,该位移量加上,该位移量加上CPU中某寄存器中某寄存器中的基地址,得到中断处理程序的入口地址。中的基地址,得到中断处理程序的入口地址。3.向量地址转移
22、向量地址转移由硬件直接产生一个该中断源对应的由硬件直接产生一个该中断源对应的固定地址码固定地址码,该地址码,该地址码中存放可转入中断服务程序的入口地址。中存放可转入中断服务程序的入口地址。30 三月 2023278.3.4多级中断多级中断l当当CPU正在执行某个中断正在执行某个中断服务程序时,另一个中断服务程序时,另一个中断源又提出了新的中断请求源又提出了新的中断请求,而而CPU再次响应这一新的再次响应这一新的请求;请求;暂停当前的中断服务暂停当前的中断服务程序,转去执行新的程序,转去执行新的中断服务程序。中断服务程序。l多级中断中需要进行优先多级中断中需要进行优先权的控制和判断。权的控制和判
23、断。30 三月 202328l一维多级中断结构一维多级中断结构每级仅有一个中断源;每级仅有一个中断源;l中断屏蔽触发器中断屏蔽触发器IM其状态决定对应级别的中其状态决定对应级别的中断源是否能够被响应;断源是否能够被响应;l中断优先权控制中断优先权控制当某中断源的请求被响应当某中断源的请求被响应时,将同时设置低级中断时,将同时设置低级中断源的源的IM=1,而高级中断,而高级中断源的源的IM=0,可以发生中,可以发生中断嵌套。断嵌套。一维多级中断结构一维多级中断结构30 三月 202329二维多级中断结构二维多级中断结构l二维多级中断结构二维多级中断结构每级包含多个中断源每级包含多个中断源;同级的
24、中断源的服务同级的中断源的服务是不能嵌套的是不能嵌套的;l若设备若设备E、F、H同时请求同时请求中断,则先响应设备中断,则先响应设备E;l此时,此时,若设备若设备D请求中断,请求中断,则不响应则不响应;l若设备若设备B请求中断,则打请求中断,则打断设备断设备E的中断服务,嵌的中断服务,嵌套响应设备套响应设备B;动画动画演示演示:8-9.swf8-9.swf30 三月 202330CPU内部的中断请求内部的中断请求/屏蔽寄存器屏蔽寄存器l对于每一个中断源,对于每一个中断源,CPU内部会有一个内部会有一个中断请求触发器中断请求触发器和一和一个个中断屏蔽触发器中断屏蔽触发器,用于管理当前该中断源的状
25、态;,用于管理当前该中断源的状态;中断请求触发器:中断请求触发器:1有请求;有请求;0无请求;无请求;中断屏蔽触发器:中断屏蔽触发器:1被屏蔽;被屏蔽;0未被屏蔽;未被屏蔽;l若系统中共有若系统中共有n级中断,则有两个级中断,则有两个n位中断请求寄存器和中断位中断请求寄存器和中断屏蔽寄存器;屏蔽寄存器;CPU响应中断时,系统需要进行优先权控制,实现正常的响应中断时,系统需要进行优先权控制,实现正常的中断嵌套;中断嵌套;u置置“1”(关闭)本级和低级的中断屏蔽触发器;(关闭)本级和低级的中断屏蔽触发器;u清清“0”(开放)更高级的中断屏蔽触发器;(开放)更高级的中断屏蔽触发器;30 三月 202
26、331单重中断和多重中断的服务程序流程单重中断和多重中断的服务程序流程中断否?中断否?保护现场保护现场设备服务设备服务恢复现场恢复现场 开中断开中断中断返回中断返回取指令取指令执行指令执行指令中中断断服服务务程程序序 中断响应中断响应 程序断点进栈程序断点进栈 关中断关中断 向量地址向量地址 PC中中断断周周期期是是中断返回中断返回保护现场保护现场设备服务设备服务恢复现场恢复现场开中断开中断开中断开中断开中断开中断中中断断隐隐指指令令中中断断隐隐指指令令否否取指令取指令执行指令执行指令中断否?中断否?否否 中断响应中断响应 程序断点进栈程序断点进栈 关中断关中断向量地址向量地址 PC中中断断周
27、周期期是是中中断断服服务务程程序序单重单重 多重多重 30 三月 2023322、多级中断源的识别、多级中断源的识别独立请求方独立请求方式式的中断优的中断优先级排队与先级排队与中断向量产中断向量产生逻辑;生逻辑;30 三月 202333课本课本P249【例【例1】如图如图8.9的二维中断系统中。问:的二维中断系统中。问:1.在中断情况下,在中断情况下,CPU和设备的优先级如何考虑?请按和设备的优先级如何考虑?请按降序排列各设备的中断优先级。降序排列各设备的中断优先级。在中断情况下,在中断情况下,CPU的优先级最低;的优先级最低;各设备的优先次序为各设备的优先次序为(ABC)(DEF)(GHI)
28、CPU*括号中的为同级中断源,不可进行中断嵌套,括号中的为同级中断源,不可进行中断嵌套,但同时请求时会有优先权的区分;但同时请求时会有优先权的区分;30 三月 202334课本课本P249【例【例1】如图如图8.9的二维中断系统中。问:的二维中断系统中。问:2.若若CPU现执行设备现执行设备B的中断服务程序,则的中断服务程序,则IM2、IM1、IM0的状态是什么?如果的状态是什么?如果CPU执行设备执行设备D的中断服务程的中断服务程序,则序,则IM2、IM1、IM0的状态又是什么?的状态又是什么?由于设备由于设备B的优先权最高,则在执行设备的优先权最高,则在执行设备B的中断的中断服务时要禁止同
29、级和低级所有中断源的请求,因此服务时要禁止同级和低级所有中断源的请求,因此IM2IM1IM0=111;若执行设备若执行设备D的中断服务,则设备的中断服务,则设备A、B、C均可发均可发生中断嵌套,因此生中断嵌套,因此IM2IM1IM0=011;30 三月 202335课本课本P249【例【例1】如图如图8.9的二维中断系统中。问:的二维中断系统中。问:3.每一级的每一级的IM能否对某个优先级的个别设备单独进行屏蔽?如果能否对某个优先级的个别设备单独进行屏蔽?如果不能,采取什么措施可以实现?不能,采取什么措施可以实现?每一级的每一级的IM只能对同级所有设备进行屏蔽,无法实现对个别只能对同级所有设备
30、进行屏蔽,无法实现对个别设备的单独屏蔽;设备的单独屏蔽;若要单独屏蔽个别设备,则可在该设备的接口中实现,将接若要单独屏蔽个别设备,则可在该设备的接口中实现,将接口内的口内的EI(中断允许标志)清(中断允许标志)清0;4.若要使设备若要使设备C一提出中断请求,一提出中断请求,CPU立即响应,则应如何调整立即响应,则应如何调整?使设备使设备C的优先权最高,即可满足题目要求;的优先权最高,即可满足题目要求;可将设备可将设备C单独设置为第单独设置为第3级中断,并令级中断,并令IM3=0即可。即可。30 三月 202336多级中断的中断屏蔽技术多级中断的中断屏蔽技术l关中断关中断即使有中断源产生中断请求
31、,但即使有中断源产生中断请求,但CPU因某种条件存在而因某种条件存在而不会中止现行程序,发生中断;不会中止现行程序,发生中断;l中断屏蔽中断屏蔽用程序方式有选择地封锁某些中断源,而允许另一些中用程序方式有选择地封锁某些中断源,而允许另一些中断响应。断响应。l实现多级中断的条件实现多级中断的条件提前设置提前设置“开中断开中断”指令。指令。优先级高的中断请求优先级高的中断请求有权有权中断优先级低的中断服务。中断优先级低的中断服务。由屏蔽字决定是否有权中断由屏蔽字决定是否有权中断30 三月 202337多级中断的中断屏蔽技术多级中断的中断屏蔽技术l中断屏蔽的实现方法:中断屏蔽的实现方法:设优先级从高
32、到低依次为:设优先级从高到低依次为:7、6、5、4、3、2、1、0;则当响应第则当响应第3级中断时级中断时中断屏蔽字设为:中断屏蔽字设为:00001111l改变优先级的方法:改变优先级的方法:修改屏蔽字修改屏蔽字欲使第欲使第2级中断的优先权高于第级中断的优先权高于第3级;级;则可设置第则可设置第3级中的屏蔽字设为:级中的屏蔽字设为:00001011第第2级中的屏蔽字设为:级中的屏蔽字设为:0000111130 三月 202338(1)将表中各级中断处理程序的各中断屏蔽值如何设置?)将表中各级中断处理程序的各中断屏蔽值如何设置?每级对应一位,该位为每级对应一位,该位为0表示允许中断,为表示允许中
33、断,为1表示中断屏蔽表示中断屏蔽8、设某机器有、设某机器有5级中断:级中断:L0,L1,L2,L3,L4,其中断响,其中断响应优先次序为:应优先次序为:L0最高,最高,L1次之,次之,L4最低,现在要求将中最低,现在要求将中断处理次序改为断处理次序改为L1L3L0L4L2,试问:,试问:30 三月 202339l按优先次序按优先次序先调用先调用L0,L0屏蔽了屏蔽了本级和低级中断请求,而本级和低级中断请求,而L1的中的中断请求未屏蔽断请求未屏蔽,则,则L1发生中断嵌发生中断嵌套响应;套响应;lL1中断时,不允许任何中断中断时,不允许任何中断,服,服务完毕后,退回到务完毕后,退回到L0的中断服务
34、的中断服务程序,这时,允许程序,这时,允许L3的中断嵌套的中断嵌套响应;响应;lL3服务完毕后,返回服务完毕后,返回L0中断服务中断服务程序;程序;lL0服务完毕后,按照顺序应处理服务完毕后,按照顺序应处理L2,L2开放了更高级中断开放了更高级中断L4,因,因此响应了此响应了L4,L4响应完成后再继响应完成后再继续执行续执行L2级中断服务程序。级中断服务程序。(2)若这若这5级中断同时发出中级中断同时发出中断请求,按更改后的次断请求,按更改后的次序画出进入各级中断处序画出进入各级中断处理程序的过程示意图。理程序的过程示意图。(L1L3L0L4L2)30 三月 2023408.3.5中断控制器中
35、断控制器418.3.6PC系列机中断机制系列机中断机制中断源中断源外部中断外部中断异常中断异常中断不可屏蔽中断不可屏蔽中断NMI可屏蔽中断可屏蔽中断INTR异常中断异常中断指令中断指令中断INT n除法错中断除法错中断单步中断单步中断断点中断断点中断溢出中断溢出中断由执行指令引起由执行指令引起的中断。的中断。由由随机的硬件信随机的硬件信号号引起的中断;引起的中断;动画演示:动画演示:8-12.swf30 三月 202342不可屏蔽中断不可屏蔽中断NMIl由由CPU的的NMI引脚引脚引入该中断请求,引入该中断请求,CPU得到该中断请求得到该中断请求立即立即响应响应,不需要,不需要CPU发响应信号
36、;发响应信号;l中断类型号固定为中断类型号固定为2;l中断优先权高于可屏蔽中断中断优先权高于可屏蔽中断INTR,一般用于系统对紧急情况,一般用于系统对紧急情况的处理,用户不能使用;的处理,用户不能使用;l常见的常见的NMI中断:中断:系统系统RAM奇偶校验错、奇偶校验错、I/O通道校验错、协处理器出错等。通道校验错、协处理器出错等。30 三月 202343可屏蔽中断可屏蔽中断INTRl由由CPU的的INTR引脚引脚引入该中断请求;引入该中断请求;该中断请求只有在该中断请求只有在CPU的中断允许标志位的中断允许标志位IF=1时,时,CPU才会通过发回才会通过发回响应信号响应信号的方式响应;的方式
37、响应;CPU对对INTR中断的响应控制可由中断的响应控制可由STI(允许响应(允许响应INTR中中断)、断)、CLI(禁止响应(禁止响应INTR中断)两条指令完成。中断)两条指令完成。l此类中断的中断类型号由此类中断的中断类型号由中断源中断源提供;提供;l常见的常见的INTR中断:中断:外部设备的中断请求,如外部设备的中断请求,如I/O设备的数据传送请求,用户设备的数据传送请求,用户可自行设计;可自行设计;30 三月 202344指令中断指令中断INTnl由由CPU执行在程序中执行在程序中预先安排好的预先安排好的中断指令引起的;中断指令引起的;该中断是该中断是可预期可预期的、且的、且不可屏蔽不
38、可屏蔽的;的;l处理该中断时,处理该中断时,CPU不需要发响应信号不需要发响应信号;l指令的操作数字段(指令的操作数字段(n)即为中断类型号;)即为中断类型号;中断类型号的范围为中断类型号的范围为5n255;l这类中断包括这类中断包括BIOS中断、中断、DOS中断以及一些未定义的自由中中断以及一些未定义的自由中断(可由系统扩充或根据应用需要自定义)。断(可由系统扩充或根据应用需要自定义)。30 三月 202345异常中异常中断断l由由CPU内部的突发事件内部的突发事件引起的中断,是引起的中断,是不可屏蔽不可屏蔽中断;中断;l其中断类型号固定;其中断类型号固定;除法错中断除法错中断类型号为类型号
39、为0;u执行除法指令时,除数为执行除法指令时,除数为0,或除得的商大于规定位数;,或除得的商大于规定位数;单步中断单步中断类型号为类型号为1;断点中断断点中断类型号为类型号为3;溢出中断溢出中断类型号为类型号为4;l该类中断的实质该类中断的实质由由CPU运行过程中的突发事件引起系统在适当位置运行过程中的突发事件引起系统在适当位置自动添加自动添加一条中断指令一条中断指令,然后由,然后由CPU执行该指令引起的中断;执行该指令引起的中断;l同指令中断一样,处理该中断时,同指令中断一样,处理该中断时,CPU不需要发响应信号不需要发响应信号。30 三月 202346外部中断外部中断指令中断指令中断内部异
40、常中断内部异常中断硬件故障中断硬件故障中断软软件件故故障障中中断断30 三月 202347各类中断的比较各类中断的比较中断产生中断产生的特点的特点中断类型号的中断类型号的来源来源CPU是是否应答否应答可屏蔽性可屏蔽性NMI中断中断随机性随机性突发性突发性系统固定为系统固定为2 2不需要不需要不可屏蔽不可屏蔽INTR中断中断随机性随机性突发性突发性由中断源提供由中断源提供需要需要可屏蔽(可屏蔽(IFIF)指令中断指令中断可预期可预期由指令提供由指令提供不需要不需要不可屏蔽不可屏蔽内部中断内部中断随机性随机性突发性突发性系统固定为系统固定为0 0、1 1、3 3、4 4不需要不需要不可屏蔽不可屏蔽
41、(除单步中断除单步中断TF)TF)30 三月 2023488.4DMA方式方式lDMA(直接内存访问)方式(直接内存访问)方式完全由硬件控制完全由硬件控制执行执行I/O交换的工作方式;交换的工作方式;DMAC完全完全接管系统总线接管系统总线的控制权,利用总线控制数据在的控制权,利用总线控制数据在主存和外设之间的直接传送,主存和外设之间的直接传送,所交换的数据不经过所交换的数据不经过CPU。lDMA特点特点速度快,但硬件复杂度高。速度快,但硬件复杂度高。lDMA方式中,方式中,DMAC的工作:的工作:接受外设的接受外设的DMA请求,并提交给请求,并提交给CPU;接管总线的控制权,控制主存和外设之
42、间的数据传送;接管总线的控制权,控制主存和外设之间的数据传送;完成数据传送后,交还总线使用权。完成数据传送后,交还总线使用权。磁盘与主存之间的数据传送磁盘与主存之间的数据传送8.4.1DMA的基本概念的基本概念30 三月 2023498.4.2DMA传送方式传送方式lDMA传送时,传送时,CPU不能使用总线,会影响不能使用总线,会影响CPU的工作效率;的工作效率;当当CPU需要访存,或者访问外设时,程序会阻塞;需要访存,或者访问外设时,程序会阻塞;可使可使DMAC与与CPU分时复用总线;分时复用总线;l常用的常用的DMA传送方式传送方式停止停止CPU访问方式访问方式周期挪用方式周期挪用方式(周
43、期窃取方式(周期窃取方式DMA与与CPU交替访问方式交替访问方式(透明(透明DMA方式)方式)30 三月 202350停止停止CPU访问方式访问方式l工作过程工作过程DMA传送期间,由传送期间,由DMAC长期占用总线,长期占用总线,CPU不能访存,只有不能访存,只有DMA传送结束时才将总线归还给传送结束时才将总线归还给CPU使用;使用;l特点特点控制简单,适于高速外设的数据成组传送;控制简单,适于高速外设的数据成组传送;内存使用效率不高。内存使用效率不高。(一般外设的读写周期远大于主存的存取周期一般外设的读写周期远大于主存的存取周期)30 三月 202351周期挪用方式周期挪用方式l工作过程工
44、作过程每次每次DMA传送,都是通过外设挪用一个或几个主存周期,分别完成传送,都是通过外设挪用一个或几个主存周期,分别完成数据的成块传送。数据的成块传送。l特点:特点:主存使用效率较高,常用;主存使用效率较高,常用;缺点:每次挪用都要申请、建立、释放缺点:每次挪用都要申请、建立、释放总线控制权。总线控制权。uCPU和外设访存冲突时,外设优先访问。和外设访存冲突时,外设优先访问。30 三月 202352DMA与与CPU交替访存方式交替访存方式l工作过程工作过程将将CPU的工作周期一分为二,分别用于的工作周期一分为二,分别用于DMA和和CPU访存;访存;l特点:特点:对主存的访问时间不会发生冲突,也
45、对主存的访问时间不会发生冲突,也不需要总线控制权的申不需要总线控制权的申请建立和归还过程请建立和归还过程;l透明透明DMA方式方式DMA传送不影响传送不影响CPU的工作;的工作;30 三月 2023538.4.3DMA控制器控制器1、DMA控制器的基本组成控制器的基本组成30 三月 2023542、DMA数据传送过程数据传送过程lDMA请求请求DMAC向向CPU请求总线使用权;请求总线使用权;lDMA响应响应CPU给给DMAC分配总线使用权;分配总线使用权;lDMA传送传送DMAC寻址外设和存储器;寻址外设和存储器;DMAC控制外设与主存之间的数控制外设与主存之间的数据传送,并检测是否传送结束
46、;据传送,并检测是否传送结束;lDMA结束结束DMAC归还总线使用权。归还总线使用权。之前要有对之前要有对DMAC芯芯片的编程操作片的编程操作传传送前的预处理送前的预处理30 三月 202355DMA方式和中断控制方式的区别方式和中断控制方式的区别l数据传送的实现方式数据传送的实现方式中断中断程序传送;程序传送;DMA硬件实现;硬件实现;lCPU响应请求的时间响应请求的时间中断中断一个指令周期结束;一个指令周期结束;DMA一个总线周期结束;一个总线周期结束;l请求的目的请求的目的中断中断CPU的服务;的服务;DMA总线的使用权;总线的使用权;l是否需要保护现场是否需要保护现场中断中断需要;需要
47、;DMA不需要(不需要(CPU不参与数据传送);不参与数据传送);lDMA的优先权高于中断的优先权。的优先权高于中断的优先权。30 三月 2023568.4.4DMAC的类型的类型1.选择型选择型DMACl特点特点物理上,可以连接物理上,可以连接多个设备;多个设备;逻辑上,只允许连逻辑上,只允许连接一个设备;接一个设备;l选择型选择型DMAC相当于一个相当于一个逻辑开关;逻辑开关;只增加少量硬件,只增加少量硬件,可实现为多个设备服务的目的;可实现为多个设备服务的目的;l适用于数据传输率很高的设备;适用于数据传输率很高的设备;30 三月 2023572.多路型多路型DMACl特点特点物理上,可以
48、连接物理上,可以连接多个设备;多个设备;逻辑上,也允许多逻辑上,也允许多个个设备同时工作;设备同时工作;l各设备以字节交叉方各设备以字节交叉方式进行数据传送;式进行数据传送;DMAC内部需要多内部需要多组寄存器;组寄存器;l设备对设备对DMAC的请求的请求可采用可采用链式链式,或,或独立请独立请求方式求方式;30 三月 202358课本课本P260【例【例3】l设有磁盘、磁带、打印机三个设备同时工作。设有磁盘、磁带、打印机三个设备同时工作。l各设备各设备发出发出DMA请求的时间间隔如下请求的时间间隔如下磁盘磁盘30s;磁带磁带45s;打印机打印机150s;l设优先权为磁盘最高,磁带次之,打印机
49、最低;设优先权为磁盘最高,磁带次之,打印机最低;l已知已知DMAC每完成一次每完成一次DMA传送所需的时间是传送所需的时间是5s。l若采用多路型若采用多路型DMAC,则请画出,则请画出DMAC为三个设备服为三个设备服务的工作时间图。务的工作时间图。30 三月 202359 T4T6 T7T2为磁盘为磁盘 服务服务T5T8T3为磁带为磁带 服务服务为打印为打印机服务机服务T15sDMA 请求请求打印机打印机tDMA 请求请求DMA 请求请求DMA 请求请求45s磁带磁带tDMA 请求请求DMA 请求请求DMA 请求请求DMA 请求请求30s磁盘磁盘t课本课本P260【例【例3】图解】图解30 三
50、月 2023608.5通道方式通道方式8.5.1通道的功能通道的功能8.5.2通道的类型通道的类型8.5.3通道结构的发展通道结构的发展30 三月 2023618.5.1通道的功能通道的功能1.通道的功能通道的功能执行通道指令、组织外围设备和内存进行数据传输执行通道指令、组织外围设备和内存进行数据传输;按按I/O指令要求启动外围设备,向指令要求启动外围设备,向CPU报告中断。报告中断。2.CPU对通道的管理对通道的管理CPU通过执行通过执行I/O指令控制通道的数据传送;指令控制通道的数据传送;CPU处理来自通道的中断,实现对通道的管理;处理来自通道的中断,实现对通道的管理;u一种是数据传送结束