第6章 输入输出与接口技术

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

1微机原理、汇编与接口技术朱定华2008.826.16.26.3接口的基本概念I/O指令和I/O地址译码数字通道接口第六章输入输出和接口技术6.4模拟通道接口3输入输出(I/O)是指微型计算机与外界的信息交换,即通信(communication)。微型计算机与外界的通信,是通过输入输出设备进行的,通常一种I/O设备与微型机连接,就需要一个连接电路,我们称之为I/O接口。接口是用于控制微机系统与外设或外设与系统设备之间的数据交换和通信的硬件电路。接口设计涉及到两个基本问题,一是中央处理器如何寻址外部设备,实现多个设备的识别;二是中央处理器如何与外设连接,进行数据、状态和控制信号的交换。41.接口的一般定义接口是一组电路,是中央处理器与存储器、输入输出设备等外设之间协调动作的控制电路。接口电路并不局限在中央处理器与存储器或外设之间,也可在存储器与外设之间,如直接存储器存取DMA接口就是控制存储器与外设之间数据传送的电路。6.1接口的基本概念6.1.1接口的功能56.1接口的基本概念2.接口电路的作用就是将来自外部设备的数据信号传送给处理器,处理器对数据进行适当加工,再通过接口传回外部设备。所以,接口的基本功能就是对数据传送实现控制,具体包括以下5种功能:地址译码、数据缓冲、信息转换、提供命令译码和状态信息以及定时和控制。66.1接口的基本概念3.接口电路的基本结构7控制命令逻辑电路一般由命令字寄存器和控制执行逻辑组成,这一部分是接口电路的“中央处理器”,用来完成全部接口操作的控制。状态设置和存储电路主要由一组数据寄存器构成,中央处理器和外设就是根据状态寄存器的内容进行协调动作的。数据存储和缓冲电路也是一组寄存器,用于暂存中央处理器和外设之间传送的数据,以完成速度匹配工作。6.1接口的基本概念81.数据传送方式在微机系统内,如,大系统部件之间的数据传送都采用并行数据传送方式。并行数据的每一位都对应独立的传输线路,所以数据传送速度快,但线路多,一般只用于较短距离的数据传送。(1)并行数据传送6.1.2接口控制原理9串行数据传送是将构成字符的每个二进制数据位,按一定的顺序逐位进行传送的方式。串行数据传送主要用于远程终端或经过公共电话网的计算机之间的通信。远距离数据传送采用串行方式比较经济,但串行数据传送比并行数据传送控制复杂。(2)串行数据传送6.1.2接口控制原理10异步串行通信协议规定字符数据的传送格式:异步串行通信中,接收设备和发送设备必须保持相同的传送波特率,并与每个字符数据的起始位同步。起始位、数据位、奇偶位和停止位约定,在同一次传送过程中必须保持一致。6.1.2接口控制原理112.传送控制方式6.1.2接口控制原理传送控制方式有查询、中断和DMA3种。(1)查询方式查询方式是中央处理器在数据传送之前通过接口的状态设置存储电路询问外设,待外设允许传送数据后才传送数据的操作方式。122.传送控制方式(1)查询方式6.1.2接口控制原理在查询方式下,CPU需要完成以下操作:(1)CPU向接口发出传送命令,输入数据或输出数据;(2)中央处理器查询外设是否允许传送?在查询方式下,中央处理器需要花费较多的时间去不断地“询问”外设,外设的接口电路处于被动状态。传送控制方式有查询、中断和DMA3种。13(2)中断方式6.1.2接口控制原理中断方式是在外设要与中央处理器传送数据时,外设向中央处理器发出请求,中央处理器响应后再传送数据的操作方式。在中断方式下,中央处理器不必查询外设,提高了系统的工作效率,但中央处理器管理中断的接口比管理查询复杂。14(3)直接存储器存取(DMA)方式6.1.2接口控制原理DMA方式是数据不经过中央处理器在存储器和外设之间直接传送的操作方式。DMA方式是这3种方式中效率最高的一种传送方式,DMA方式控制接口也最复杂,需要专用的DMA控制器。DMA方式适合数据量较大的传送,如存储器与磁盘之间的数据传送。15接口控制信号可分为两类:总线控制信号和输入输出控制信号。接口控制信号图输入输出控制信号比较复杂,不同控制方式的接口信号不同。一般包括数据线、输入输出应答信号等。中断接口和DMA接口的控制信号更复杂一些,通常由接口芯片提供专用控制信号来完成数据传送控制。总线控制信号包括数据线、地址线、、、等。6.1.3接口控制信号16微处理器进行I/O操作时,对I/O接口的寻址方式与存储器寻址方式相似。即必须完成两种选择:一是选择出所选中的I/O接口芯片(称为片选);二是选择出该芯片中的某一寄存器(称为字选)。通常有两种I/O接口结构:一种是标准的I/O结构,另一种是存储器映象I/O结构(memorymappedI/O)。与之对应的有两种I/O寻址方式。6.2I/O指令和I/O地址译码17标准的I/O寻址方式有以下3个特点:(1)I/O设备的地址空间和存储器地址空间是独立的、分开的,即I/O接口地址不占用存储器的地址空间。(2)微处理器对I/O设备的管理是利用专用的IN(输入)和OUT(输出)指令来实现数据传送的。(3)CPU对I/O设备的读/写控制是用I/O读/写控制信号(、)。一个外设常有若干个端口地址。6.2.1标准的I/O寻址方式181.存储器映象I/O寻址方式又称为存储器对应I/O寻址方式,有3个特点:(1)I/O接口与存储器共用同一个地址空间。即在系统设计时指定存储器地址空间内的一个区域供I/O设备使用,故I/O设备的每一个寄存器占用存储器空间的一个地址。这时存储器与I/O设备之间的唯一区别是其所占用的地址不同。(2)CPU利用对存储器的存储单元进行操作的指令来实现对I/O设备的管理。(3)CPU用存储器读/写控制信号(、)对I/O设备进行读/写控制。6.2.2存储器映像I/O寻址方式192.存储器映象I/O寻址方式的优点:(1)CPU对外设的操作可使用全部的存储器操作指令,故指令多,使用方便,如可对外设中的数据(存于外设的寄存器中)进行算术和逻辑运算,进行循环或移位等;(2)存储器和外设的地址分布图是同一个;(3)不需要专门的输入/输出指令。3.其缺点有以下两种:(1)外设占用了内存单元,使内存容量减小;(2)存储器操作指令通常要比I/O指令的字节多,故加长了I/O操作的时间。6.2.2存储器映像I/O寻址方式201.输入指令INAcc,Port或INAcc,DX6.2.3输入输出指令输入指令是把一个字节或一个字由输入端口传送至AL(8位Acc)或AX(16位Acc)或EAX(32位Acc)。端口地址若是由指令中的port所规定,则只可寻址0~255。端口地址若用寄存器DX间址,则允许寻址64K个输入端口。212.输出指令OUTPort,Acc或OUTDX,Acc6.2.3输入输出指令输出指令是把AL中的一个字节或AX中的一个字或者EAX中的一个双字,传送至输出端口。端口寻址方式与IN指令相同。输入输出指令传送字节还是字,取决于端口的宽度。PCXT机端口宽度只有8位,只能传送字节。2280x86微处理器都由低16位地址线寻址I/O端口,故可寻址64K个I/O端口,但在实际的80x86PC机中,只用了最前面1K个端口地址,也即只寻址1K范围内的I/O空间。因此仅使用了地址总线的低10位,即只有地址线A9~A0用于I/O地址译码。在DMA操作时,DMA控制器控制了系统总线。DMA控制器在发出地址的同时还要发出地址允许信号AEN,所以还必须将DMA控制器发出的地址允许信号AEN也参加端口地址的译码,用AEN限定地址译码电路的输出。当AEN信号有效时即DMA控制器控制系统总线时,地址译码电路无输出;当AEN信号无效时,地址译码电路才有输出。6.2.4I/O接口的端口地址译码23无论是大规模集成电路的接口芯片,还是基本的输入输出缓冲单元,都是由一个或多个寄存器加上一些附加控制逻辑构成的。对这些寄存器的寻址就是对接口的寻址。通常采用两级译码方法,译码地址的高位组确定一个地址区域,作为组选信号;低位组地址直接接到芯片的地址输入端,选择芯片内各寄存器。6.2.4I/O接口的端口地址译码24图6-4是采用直接地址译码寻址端口的电路。图6-4所示的直接地址译码电路的输出线分别用于输入和输出。6.2.4I/O接口的端口地址译码1.直接地址译码直接地址译码是一种局部译码方法,按照系统分配给某接口的地址区域,对地址总线的某些位进行译码,产生对该接口包含的缓冲器和寄存器的组选信号,再由低位地址线对组内缓冲器和寄存器译码寻址。25图6-5所示的直接地址译码电路的输出线,既可以用于输入也可以用于输出。图6-5输入输出直接地址译码6.2.4I/O接口的端口地址译码26PC微机接口芯片的译码电路6.2.4I/O接口的端口地址译码276.2.4I/O接口的端口地址译码2.间接端口地址译码间接端口地址译码仅使用两个端口地址就可以对多个端口进行寻址,第一个端口地址指向地址寄存器,第二个端口地址指向数据寄存器。端口寄存器的地址都要先送到地址存器,然后再根据地址寄存器的内容来选择端口寄存器。从处理器看来,系统只须对地址寄存器和数据寄存器进行寻即可,对端口各寄存器的第二次寻址由地址寄存器的内容确定。28这种译码电路节省系统地址空间,但在寻址时必须把间接地址作为数据输出,这样就多使用了一条OUT指令。6.2.4I/O接口的端口地址译码间接端口译码电路图29在接口电路中,大量使用三态缓冲器、寄存器和三态缓冲寄存器来作微处理器与外部设备的数字量通道,用来输入输出数据或检测和控制与之相连接的外部设备。微处理器可以将接口电路中的三态缓冲(寄存)器视为存储单元,把控制或状态信号作为数据位信息写到寄存器中或从三态缓冲(寄存)器中读出。寄存器的输出信号可以接到外部设备上,外部设备的信号也可以输入到三态缓冲寄存器中。一般说来,微处理器都是通过三态缓冲(寄存)器检测外设的状态,通过输出寄存器发出控制信号。6.3数字通道接口30数据输出寄存器用来寄存微处理器送出的数据和命令。74LS273可以用作无条件传送的输出接口电路。6.3.1数据输出寄存器8D触发器74LS27331外设输入的数据和状态信号,通过数据输入三态缓冲器经数据总线传送给微处理器。74LS244三态总线驱动器74LS244可以用作无条件传送的输入接口电路。6.3.2数据输入三态缓冲器32三态缓冲寄存器是三态缓冲器和寄存器组成的。数据进入寄存器寄存后并不立即从寄存器输出,要经过三态缓冲才能输出。三态缓冲寄存器既可以作数据输入寄存器,又可作数据输出寄存器。寄存器既可以由触发器构成,也可以锁存器构成。触发器与锁存器是有差别的。74LS373就是三态缓冲锁存器,74LS374是三态缓冲触发器,它的引线排列与74LS373相同。6.3.3三态缓冲寄存器33寄存器和缓冲器接口的应用简单又灵活,只要处理好它们的时钟端(选通端)或输出允许端与微型计算机的连接即可。在下述应用接口电路中都使用图6-10所示的电路的地址译码,该电路的8个输出端是对图6-5所示的输入输出直接地址译码电路的进一步译码的输出。图6-10读缓冲器和写寄存器信号6.3.4寄存器和缓冲器接口的应用34需要注意的是图6--5中的不仅仅是对地址信号译码的输出信号,其中也包含有输入和输出的读或写信号。若使用的仅仅是对地址信号译码的输出信号,则要将它和或者相与后才能用作读缓冲器或写寄存器的信号。6.3.4寄存器和缓冲器接口的应用35发光二极管显示器(LED)是微型计算机应用系统中常用的输出装置。6.3.4寄存器和缓冲器接口的应用1.七段发光二极管显示器接口36七段显示器动态显示接口电路37把从PC机的键盘键入的六位十进制数送七段显示器显示的程序如下:stacksegmentstackstackdw32dup(0)stackendsdatasegmentIBFDB7,0,7DUP(0)SEGPTDB40H,79H,24H,30H,19H,12H,2,78H,0,18Hdataendscodesegmentstartprocfarassumess:stack,

1 / 91
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功