121)了解I/O系统、I/O接口和I/O端口的一般概念2)了解I/O端口的编址方式3)深入理解基本输入/输出方法及中断控制技术4)掌握简单接口芯片的应用教学目的及要求3§6.1输入输出系统4一、输入输出系统输入输出系统:计算机系统中除CPU和内存储器之外的部分I/O系统输入输出设备输入输出接口输入输出软件5输入输出系统特点复杂性输入输出设备、处理器、操作系统的复杂性异步性工作速度和时序不一致实时性控制的时效性与设备无关性接口的标准化6二、I/O接口系统及接口有关I/O系统的概念、特点,以及I/O接口的功能等,请参阅教材描述,自行学习。总体上,I/O接口应具备以下功能:数据的缓冲与暂存信号电平与类型的转换增加信号的驱动能力对外设进行监测、控制与管理,中断处理三、I/O端口端口:接口中的寄存器端口的主要作用:数据缓存端口类型:数据端口缓存输入和输出的数据状态端口缓存需要输入的外设工作状态控制端口缓存由系统输出的各种控制信息78I/O端口CPU数据状态控制外设I/O接口DB9I/O系统中的接口和端口┅┅┅┅接口1接口2接口N端口1端口2端口m端口1端口1端口2端口2端口m端口m端口编址端口地址=芯片地址(高位地址)+片内地址10四、I/O端口的编址方式编址方式:与内存统一编址独立编址111.端口与内存的统一编址特点:指令及控制信号统一;内存地址资源减少内存地址960KBI/O地址64KB00000HF0000HFFFFFH122.端口的独立编址特点:内存地址资源充分利用能够应用于端口的指令较少内存地址I/O地址00000HFFFFFHFFFFH0000H138088/8086的I/O端口编址采用I/O独立编址方式(但地址线与存储器共用)地址线上的地址信号用IO/M来区分I/O操作只使用20根地址线中的16根:A15~A0可寻址的I/O端口数为64K(65536)个I/O地址范围为0~FFFFH14五、I/O地址译码目的:确定端口的地址寻址端口的信号:IOR、IOWA15~A0参加译码的信号:IOR,IOW,高位地址信号OUT指令将使总线的IOW信号有效IN指令将使总线的IOR信号有效15I/O地址译码一个接口电路中可以有多个端口,也可以只有一个端口。对全地址译码:当接口只有一个端口时,16位地址线应全部参与译码,译码输出直接选择该端口;当接口具有多个端口时,则16位地址线的高位参与译码(决定接口的基地址),低位用于寻址接口中要访问的端口。对部分地址译码:仅用部分地址信号参与译码对含多个端口的接口,则为部分高位地址。I/O系统中,因地址资源丰富,多采用部分地址译码。I/O地址的译码当接口只有一个端口时,16位地址线一般应全部参与译码,译码输出直接选择该端口;当接口具有多个端口时,则16位地址线的高位参与译码(决定接口的基地址),而低位则用于确定要访问哪一个端口。INAL,21H返回OUT43H,AL返回19I/O地址译码例某外设接口有4个端口,地址为2F0H——2F3H,由A15~A2译码得到,而A1、A0用来区分接口中的4个端口。试画该接口与系统的连接图。题目分析:寻址端口的地址信号最多为16bit,题中仅给出12bit——为部分地址译码该接口电路中含有4个端口,片内端口寻址需2位地址信号,其余10位为片选地址信号。20I/O地址译码例地址范围:××××001011110000××××001011110011任意状态A11片内地址图中不接入21I/O地址译码例译码电路图:≥1A11A10A18A3A2A9A7A4┇&CEA1A0接口芯片IORIOW&22六、接口的基本构成数据线控制线状态线DBCBAB数据输入寄存器(or三态门)数据输出寄存器(锁存器)状态寄存器(or三态门)命令寄存器译码电路控制逻辑23接口的基本构成数据输入/输出寄存器暂存输入/输出的数据命令寄存器存放控制命令设定接口功能、工作参数和工作方式。状态寄存器保存外设当前状态,以供CPU读取。24七、接口的类型及特点按传输信息的方向分类:输入接口输出接口按传输信息的类型分类:数字接口模拟接口按传输信息的方式分类:并行接口串行接口25接口特点输入接口:要求对数据具有控制能力常用三态门实现输出接口:要求对数据具有锁存能力常用锁存器实现26§6.2简单接口电路27掌握:两类简单接口芯片的应用28一、三态门接口高电平、低电平、高阻态2974LS244含8个三态门的集成电路芯片在外设具有数据保持能力时用来输入接口74LS244应用例教材p238P238图30二、锁存器接口通常由D触发器构成;特点:具有对数据的锁存能力;不具备对数据的控制能力31常用锁存器芯片74LS2738D触发器,不具备数据的控制能力74LS373含三态的8D触发器,具有对数据的控制能力。既可以做输入接口,也可以做输出接口。P240图32I/O接口综合应用例根据开关状态在7段数码管上显示数字或符号设输出接口的地址为F0H设输入接口地址为F1H当开关的状态分别为0000~1111时,在7段数码管上对应显示’0’~’F’7段数码管图见教材p242符号形状7段码.gfedcba符号形状7段码.gfedcba’0’00111111’8’01111111’1’00000110’9’01100111’2’01011011’A’01110111’3’01001111’B’01111100’4’01100110’C’00111001’5’01101101’D’01011110’6’01111101’E’01111001’7’00000111’F’01110001O1I1O2I2O3I3O4I4E1K0~K3+5VGG2AG2BCBA≥174LS244D0Q0|Q1D7Q2Q3Q4CPQ5Q6Q7abcdefgDP7406反相器74LS273Rx8≥174LS138D0~D7IOWIORY0Y1F0H=11110000F1H=11110001&A6~A4A3A2A1A0D0D1D2D3译码器A7A0135I/O接口综合应用例——程序段……Seg7DB3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,67H,77H,7CH,39H,5EH,79H,71H……LEABX,Seg7MOVAH,0GO:INAL,0F1HANDAL,0FHMOVSI,AXMOVAL,[BX+SI]OUT0F0H,ALJMPGO36§6.3基本输入/输出方法37基本输入/输出方法无条件传送查询式传送中断方式传送直接存储器存取(DMA)程序控制方式38一、无条件传送要求外设总是处于准备好状态优点:软件及接口硬件简单缺点:只适用于简单外设,适应范围较窄39无条件传送例读取开关的状态;当开关闭合时,输出编码使发光二极管亮。DCPQD0D1输出口地址38F3H输入口地址38F0H+5V141二、查询工作方式仅当条件满足时才能进行数据传送;每满足一次条件只能进行一次数据传送。适用场合:外设并不总是准备好对传送速率和效率要求不高工作条件:外设应提供设备状态信息接口应具备状态端口READY?进行一次数据交换读入并测试外设状态YN传送完?Y结束N每满足一次条件只能进行一次数据传送开始查询工作方式流程图超时?READY?与外设进行数据交换超时错读入并测试外设状态YNYN传送完?防止死循环复位计时器NY结束N44查询工作方式例外设状态端口地址为03FBH,bit5为状态标志(=1忙,=0准备好)外设数据端口地址为03F8H,写入数据会使状态标志置1;外设把数据读走后又把它置0。试画出其电路图,并将DATA下100B数据输出。状态端口D5D7-D0A9|A3≥1&A15|A10≥13F8HA2A1A0GG2AG2BCBA74LS138Y0≥1D7-D0CPQ7Q6Q5Q4Q3Q2Q1Q074LS273外设D7D6D5D4D3D2D1D0BUSYY33FBHIOWIOR状态端口地址:0000001111111011数据端口地址:0000001111111000LEASI,DATAMOVCX,100AGAIN:MOVDX,03FBHWAITT:INAL,DXTESTAL,20HJNZWAITTMOVDX,03F8HMOVAL,[SI]OUTDX,ALINCSILOOPAGAINHLT读状态进行一次传送Bit5=1?传送完否?修改地址指针初始化YNNY结束控制程序查询工作方式优点:软硬件比较简单缺点:CPU效率低,数据传送的实时性差,速度较慢47YN1号外设YYYNNN对1号外设服务对2号外设服务对3号外设服务对n号外设服务准备就绪?2号外设3号外设n号外设准备就绪?准备就绪?准备就绪?┇48三、中断控制方式特点:外设在需要时向CPU提出请求,CPU再去为它服务。服务结束后或在外设不需要时,CPU可执行自己的程序。优点:CPU效率高,实时性好,速度快。缺点:程序编制相对较为复杂。中断传送流程返回50以上三种I/O方式的共性信息的传送均需通过CPU软件:外设与内存之间的数据传送是通过CPU执行程序来完成的(PIO方式);硬件:I/O接口和存储器的读写控制信号、地址信号都是由CPU发出的。缺点:程序的执行速度限定了传送的最大速度51四、DMA控制方式特点:外设直接与存储器进行数据交换,CPU不再担当数据传输的中介者;总线由DMA控制器(DMAC)进行控制(CPU要放弃总线控制权),内存/外设的地址和读写控制信号均由DMAC提供。52DMA控制方式DMAC外设接口CPUQRDMEMDACKHOLDHLDA…BUS控制信号地址信号53DMA控制方式的工作过程外设向DMA控制器发出“DMA传送请求”信号DRQ;DMA控制器收到请求后,向CPU发出“总线请求”信号HOLD;CPU在完成当前总线周期后会立即发出HLDA信号,对HOLD信号进行响应;DMA控制器收到HLDA信号后,就开始控制总线,并向外设发出DMA响应信号DACK。DMA传送流程返回55DMA控制方式工作过程例例:从外设向内存传送若干字节数据DMAC向I/O接口发出读信号;向地址总线上发出存储器的地址;发出存储器写信号和AEN信号;传送数据并自动修改地址和字节计数器判断是否需要重复传送操作;若数据传送完,DMA控制器撤销发往CPU的HOLD信号;CPU检测到HOLD失效后,则撤销HLDA信号,并在下一时钟周期重新开始控制总线。56DMA控制方式数据传输由DMA硬件来控制,数据直接在内存和外设之间交换,可以达到很高的传输速率。控制复杂,硬件成本相对较高。57§6.4中断技术58掌握:中断的基本概念中断响应的一般过程中断向量表及其初始化8088/8086中断系统59一、中断的基本概念中断:CPU执行程序时,由于发生了某种随机的事件(外部或内部),引起CPU暂时中断正在运行的程序,转去执行一段特殊的服务程序(称为中断服务程序或中断处理程序),以处理该事件,该事件处理完后又返回被中断的程序继续执行,这一过程称为中断。60中断源引起CPU中断的事件,发出中断请求的来源。内部中断外部中断异常中断软件中断可屏蔽中断非屏蔽中断异常事件引起中断指令引起INTR中断NMI中断61引入中断的原因提高数据传输率;避免了CPU不断检测外设状态的过程,提高了CPU的利用率。实现对特殊事件的实时响应。62二、中断处理的一般过程中断请求中断源识别及中断判优中断响应中断处理(服务)中断返回63中断请求中断请求信号应保持到中断被处理为止;CPU响应中断后,中断请求信号应及时撤销。NMIINTR64中断源识别软件查询法中断矢量法由中断源提供中断类型号,CPU根据类型确定中断源。中断源