第08章输入输出系统_第1页
第08章输入输出系统_第2页
第08章输入输出系统_第3页
第08章输入输出系统_第4页
第08章输入输出系统_第5页
已阅读5页,还剩31页未读 继续免费阅读

下载本文档

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

文档简介

第八章输入输出系统,输入输出系统概述程序查询方式程序中断方式DMA方式,输入输出系统概述,I/O接口的基本功能1.实现数据格式的转换:完成外设表达的数据形式与计算机所能处理的二进制形式之间的转换。2.匹配主机与外设的速度差距:主机传送信息的速度高,外设发送或接受信息的速度低,接口应具有对数据信息传送速度的缓冲作用。3.对众多外设的寻址功能:对各个外设进行寻址,使主机能够与指定的外设进行数据交换。4.传送主机指令:接口能记录和识别主机传送来的命令,并将命令传送到设备。5.反映设备的工作状态:接口能随时采集并保存设备的工作状态,以备主机查询。,输入输出系统包括输入输出设备、输入输出接口及相关软件,I/O接口(I/O适配器)是用来连接主机与I/O设备的,三者关系如下:,主机,I/O接口,I/O设备,I/O系统的编址方式1、与主存储器统一编址方式在主存储器的地址空间中划出某一区域专门作为外设地址区使用,即外设寄存器的地址包含在主存储器的地址空间内,划给外设的这部分区域不能配置存储器芯片。优点:操作方式灵活,使用通用的MOV或访存指令也可以访问I/O接口。缺点:需占用小部分存储空间。,CPU,主存储器,I/O接口,I/O接口,地址线数据线R/W控制线,2、I/O端口单独编址方式设置单独的I/O地址空间,为I/O接口的有关寄存器分配I/O端口地址,使用专门的I/O指令去访问。优点:不占用存储空间。缺点:需专门的I/O指令,其寻址方式较简单,编程灵活性稍差。,CPU,主存储器,I/O接口,I/O接口,地址线数据线,主存R/W控制,I/OR/W控制,例:8086/8088I/O端口单独编址电路实现,8086M/IORDWR,MEMR,MEMW,I/OR,I/OW,I/O主要控制方式问题的提出:外设的要求如何被满足?外设和主机如何同步?1、程序查询方式:由CPU执行一段输入输出程序来控制实现主机与外设之间的数据传送。CPU利用率很低,但接口简单。2、程序中断方式:当外设数据准备就绪后,“主动”向CPU发出请求中断的信号,CPU响应中断时,暂停主程序的执行,转移到请求中断的外设的中断服务程序,中断服务程序结束后,CPU再返回原被中断的主程序。3、直接存储器存取(DMA)方式:是一种完全由硬件执行I/O交换的工作方式。该方式中,DMA控制器接替CPU对总线的控制,数据交换直接在主存和I/O设备之间进行,而不经过CPU。4、通道和I/O处理机方式:由通道或I/O处理机控制实现数据输入输出,通道与CPU分时使用内存,实现了CPU与外设的并行工作。,程序查询方式,6.2.1程序查询方式接口,CPU,控制,寄存器,01,忙,01,就绪,数据缓冲寄存器,设备选择,动作开始动作结束输入数据,DB,AB,(1),(2),(3),(4),(5),(6),接口,设备,(1)CPU启动接口,置“忙”为1,“就绪”为0(2)设备“动作开始”(3)设备向接口“输入数据”(4)设备“动作结束”,置“就绪”为1(5)CPU检测到“就绪”(T1T4期间,CPU始终检测是否就绪)(6)CPU从接口接收数据,特点:CPU与外设处于串行工作方式,主程序与外设的服务子程序的执行不能同时进行。优点:接口简单。缺点:CPU效率低(查询的过程是快速CPU等待慢速外设的过程)。,程序查询方式总结,1.中断:在接到随机请求后,CPU暂停执行原来的程序,转去执行中断处理程序,为响应的随机事件服务,处理完毕后CPU恢复原程序的继续执行,这个过程称为中断。,CPU主程序,中断请求,响,应,返,回,中断服务程序,中断方式中断的基本概念,外设工作,外设工作,CPU查询,CPU查询,CPU工作,CPU工作,CPU工作,与程序查询方式比较,2.中断源:请求CPU中断的设备或事件,中断,内中断:发生在主机内部的中断,外中断:由主机外部事件引起的中断,中断方式,中断的处理过程1.中断的处理过程(1)中断请求:中断源向CPU发出中断请求。(2)中断响应:是中断处理开始的公操作,包括:a.关中断,即CPU内部的中断屏蔽寄存器IM置位(IM=1)b.中断现行程序并保护断点(PC及PSW的内容)c.发中断响应信号INTA(3)中断识别:确定应该处理哪一个中断,并调用其对应的中断服务程序。中断源的识别方法有软件查询和中断向量法。(4)中断服务:由中断服务程序完成,包括如下处理:a.保护现场b.执行中断服务程序c.恢复现场(5)中断返回:返回主程序断点,由中断返回指令IRET完成。,取指令,执行指令,中断,指令周期,中断周期,中断服务程序,TM,TM,TDC,TS,TA,TB,TC,TR,保存现场,设备服务程序,恢复现场,硬件实现,中断处理过程流程图,CPUINTRINTA,INTIINTOI/O接口1,INTIINTOI/O接口2,INTIINTOI/O接口n,ABDB,INTI:中断排队输入信号INTO:中断排队输出信号当某一接口提出中断请求时,该接口的INTO输出为高电平,禁止后面的接口提出中断请求,2.中断源识别:识别请求中断的中断源,(1)串行排队链法(daisy-chainmethod):每个接口具有链式排队和提供中断程序入口地址的功能.,7,8,9,数据总线,001010,001011,001000,INTA,INTI,编码器,IR1,IR2,IR3,1,2,3,4,5,IR1,IR2,IR3,串行排队链优先识别逻辑及中断向量的产生,优点:信号简单;易于扩展;可实现中断服务程序的快速转入。缺点:但联接的级数较多时,使响应速度变慢;可靠性差;中断优先级固定。,INTO,6,D5,D0,(2)独立请求方式,中断优先级排队电路与中断控制逻辑,CPU,IM2,IR2,0,1,0,1,IM1,IR1,IM0,IR0,0,1,0,0,1,0,1,0,1,设备A,设备B,设备C,高,低,优先权,各个中断源都有自己独立的中断请求线送往CPU的中断优先级排队电路,每根中断请求线在处理机中都有固定的或可编程的中断优先级。,3.中断服务程序:是中断处理的核心,不同的中断要求配置不同的中断服务程序。其流程如下:,保护现场,交换屏蔽字,开中断,中断服务,关中断,恢复现场,恢复屏蔽字,开中断,中断返回,前处理部分,主体部分,后处理部分,控制,IM,IR,0,1,0,1,公用寄存器,PC,IR,中断方式基本接口P278,CPU,接口,设备,BS,0,1,RD,0,1,EI,0,11,数据缓冲寄存器,中断向量逻辑,设备选择,1,INTA,S,C,(1),(10),(2),动作开始,(4),动作结束,(3),传送数据,(5),IR请求,(9),数据总线,(8),(7),(8),(7)中断,中断屏蔽触发器(IM):CPU是否受理中断或批准中断的标志.IM为“0”时,CPU可受理中断。中断允许触发器(EI):控制是否允许某设备发出中断请求.EI为“1”时,某设备可向CPU发出中断请求。,(6),1.单级中断:所有中断源属于同一级,CPU在处理一个中断时,禁止响应其它中断,即使优先级别高的中断也不能被响应。2.多级中断处理:将计算机系统中的多个中断源分成若干级别,每一中断级分配一个优先权,允许中断嵌套。,中断处理方式,定义:优先级别高的中断打断优先级别低的中断,称为嵌套中断方法:在中断服务程序中设置“开放中断”,以便CPU能够接受其它中断请求。用堆栈保护断点。,(1)嵌套中断,主程序,中断请求,PC=A,主程序,中断请求,PC=A,SP,主程序,中断请求,PC=A,中断请求,PC=B,A,B,SP,主程序,中断请求,PC=A,中断请求,PC=B,中断请求,PC=C,A,B,C,SP,IRET,嵌套过程,主程序,中断请求,PC=A,中断请求,PC=B,中断请求,PC=C,IRET,IRET,A,B,SP,主程序,中断请求,PC=A,中断请求,PC=B,中断请求,PC=C,IRET,IRET,IRET,A,SP,主程序,中断请求,PC=A,中断请求,PC=B,中断请求,PC=C,IRET,IRET,IRET,SP,(2)一维多级中断和二维多级中断一维多级中断指每一级中断里只有一个中断源,二维多级别中断指每一级又有多个中断源。,中断优先级排队电路与中断控制逻辑,CPU,IM2,IR2,0,1,0,1,IM1,IR1,IM0,IR0,0,1,0,0,1,0,1,0,1,设备A,设备D,设备G,高,低,优先权,设备B,设备C,设备E,设备F,设备H,设备I,高,优先权,低,2级IR,1级IR,0级IR,二维多级中断结构,(3)多级别中断源的识别,编码器,1,0,1,1,0,1,0,1,0,2,3,4,1,0,1,1,0,2,1,0,3,1,0,4,排队器,.,向量地址,IR1,IR2,IR3,IR4,中断请求寄存器,中断屏蔽寄存器,独立请求方式的优先级排队逻辑:如果每一级上还接有多个中断源设备,那么还需进一步用串行链式方式查询识别中断源。,IR1,IR2,IR3,IR4,(4)屏蔽码改变中断优先等级,中断屏蔽:对每个中断级设置一位中断屏蔽码,若该位为屏蔽状态,则该中断级提出的中断请求不能为CPU所接收。否则,若该位为非屏蔽状态,则该中断级提出的中断请求可以到达CPU。对于多级中断系统,可以将为每个中断级设置的屏蔽码存放在一个中断屏蔽寄存器中,通过编程改变中断屏蔽寄存器的内容,从而对各中断级对应的中断请求输入线进行屏蔽控制。,例:某计算机系统共有5级中断,其中断响应优先级从高到低为12345,先按如下规定修改:各级中断处理时均屏蔽本级中断,且处理1级中断时屏蔽2、3、4、5级中断;处理2级中断时屏蔽3、4、5级中断;处理4级中断时不屏蔽其它中断;处理3级中断时屏蔽4级和5级中断;处理5级中断时屏蔽4级中断.试问中断处理优先级(从高到低)顺序如何排列?并给出各级中断处理程序的中断屏蔽字?解:实际中断处理优先级(从高到低)顺序为123541级中断屏蔽字为:11111;2级中断屏蔽字为:01111;3级中断屏蔽字为:00111;4级中断屏蔽字为:00010;5级中断屏蔽字为:00011(1:屏蔽,0:开放),例:(P282)下图所示为一个二维中断系统,请问:,中断优先级排队电路与中断控制逻辑,CPU,IM2,IR2,0,1,0,1,IM1,IR1,IM0,IR0,0,1,0,0,1,0,1,0,1,设备A,设备D,设备G,高,低,优先权,设备B,设备C,设备E,设备F,设备H,设备I,高,优先权,低,2级IR,1级IR,0级IR,(1)在中断情况下,CPU和设备的优先级如何?按降序排列各设备的中断优先级.(2)若CPU现执行设备B的中断服务程序,IM0,IM1,IM2的状态是什么?如果CPU执行设备D的中断服务程序,IM0,IM1,IM2的状态是什么?(3)每一级的IM能否对某个优先级的个别设备单独进行屏蔽,如果不能,采用什么方法可达到目的?(4)假如设备C一提出中断请求,CPU立即响应,如何调整才能满足此要求?,例:(P282)参见教材P276图8.7所示的系统,只考虑A,B,C三个设备组成的单级中断系统,它要求CPU在执行完当前指令时对中断请求进行服务.假设:(1)CPU”中断批准“机构在响应一个新的中断之前,先要让被中断的程序的一条指令一定要执行完毕;(2)TDC为查询链中每个设备的延迟时间;(3)TA,TB,TC分别为设备A,B,C的服务程序所需的执行时间;(4)TS,TR为保存现场和恢复现场所需的时间;(5)主存工作周期为TM.试问:就这个中断请求环境来说,系统在什么情况下达到中断饱和?解:假设执行一条指令的时间也为TM.如果三个设备同时发出中断请求,那么依次分别处理设备A,B,C的时间为:tA=2TM+TDC+TS+TA+TRtB=2TM+TDC+TS+TB+TRtC=2TM+TDC+TS+TC+TR处理三个设备所需的总时间为:T=tA+tB+tCT为达到中断饱和的最小时间.即中断极限频率为f=1/T,DMA方式,主存,I/O设备,CPU,降低CPU效率,改进,主存,I/O设备,DMA(DirectMemoryAccess)直接存储器存取方式,采用中断方式时,主存与I/O交换信息:,是一种完全由硬件执行的主存与外设之间数据直接传送的I/O控制方式。由DMA控制器从CPU接管对总线的控制权,数据传送不经过CPU,而直接在主存和外设之间进行。一般用于高速成组的数据传送。DMA数据传送过程:(1)传送前预处理;(2)正式传送;(3)传送后处理,DMA数据传送过程,DMA控制器的组成,内存,CPU,设备,系统总线,中断请求,数据线,地址线,HOLD,HLDA,DMAC,内存,CPU,内存地址计数器,数据字计数器,数据缓冲寄存器,设备选择,中断机构,控制/状态逻辑,01DAM请求标志,设备,系统总线,+1,-1,溢出信号,中断请求,DMA请求,DMA响应,请求/结束,数据,数据线,地址线,HOLD,HLDA,DMA控制器的组成,内存地址计数器:存放主存中要交换的数据的地址。在DMA传送前,CPU通过指令将数据在主存中的起始地址送入该寄存器。在DMA传送时,每交换一次数据,该寄存器内容加1。数据字计数器:记录传送数据块的字数或字节数。在DMA传送前,由程序将其内容预置为要传送的数据块的字数或字节数。在DMA传送期间,每交换一次数据,该寄存器内容减1。当该寄存器内容减至0时,标明数据块传送完毕,DMAC向CPU发出中断请求信号。数据缓冲寄存器:暂存每次传送的数据。数据从外设向主存传送时,由外设将数据先存入该缓冲器,再由该缓冲器通过数据总线将数据送入主存。数据由外设向主存传送时,由主存通过数据总线将数据存入该缓冲器,然后再传送到外设。,DMA请求标志:,设备,DMA请求标志,控制/状态逻辑,CPU,问题:DMAC和CPU如何分时使用系统总线和主存?1、CPU停止法在DMA传送期间,CPU一直处于保持状态,不对总线和主存进行任何操作,适用于数据传输率很高的外

温馨提示

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

评论

0/150

提交评论