微机原理课件第6章输入输出_第1页
微机原理课件第6章输入输出_第2页
微机原理课件第6章输入输出_第3页
微机原理课件第6章输入输出_第4页
微机原理课件第6章输入输出_第5页
免费预览已结束,剩余28页可下载查看

下载本文档

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

文档简介

1、第六章 输入输出及其接口6.1概述 接口概念 计算机通过外围设备同外部世界通信或交换数据称为“输入输出”. 把外围设备同微型计算机连接起来实现数据传送的控制电路称为“外设接口电路”,简称“外设接口”。(介于主机和外设之间的一种缓冲电路称为I/O接口电路). 具体结构示意图见图所示:6.1.1 外设接口的功能 外围设备的品种繁多,有机械式的、电子式的、机电式的、磁电式的,以及光电式的等等;外围设备所处理的信息也多种多样,有数字信号、模拟信号、开关信号、电压信号或电流信号等等;从工作速度来看,有的速度很慢,有的速度很快,不同的外围设备处理信息的速度相差悬殊;另外,微型计算机与不同的外围设备之间所传

2、送信息的格式和电平高低等也是多种多样的。这些都形成外设接口电路的多样性和复杂性。外设接口电路应具有的功能:(1)转换信息格式例如串并转换、并串转换、配备校验位等;(2)提供联络信号设备“就绪”、“忙”,数据缓冲器“满”、“空”等状态信号;(3)协调定时差异必要时要对传输的数据或地址加以缓冲或锁存;(4)进行译码选址;(5)实现电平转换为使微型计算机同外设相匹配,接口电路必须提供电平转换和驱动功能;(6)具备时序控制有的接口电路具有自己的时钟发生器;(7)最好可编程序对一些通用的功能齐全的接口电路,应该具有可编程序的能力.I/O接口电路中最基本的接口电路有8259中断控制器接口电路,8255可编

3、程并行接口电路、8253可编程定时/计数器、8251可编程串行接口电路、8237直接存储器存取电路(DMA),A/D,D/A转换器等。6.1.2 接口与端口CPU与外设之间的接口信息 CPU与一个外设交换信息,通常需要以下一些信号: 1. 数据(Data) 数字量键盘等输入的数据; 模拟量如温度、压力、流量等; ( 需先经过A/D转换,将其变为数字量,由CPU处理后,再经过 D/A转 换,变为模拟量,进行控制),这部分工作由接口电路 来完成。 开关量如开关的合与断等。 2. 状态信息(Status) 输入时, 输入设备的信息是否准备好(READY); 输出时,输出设备是否有空等(BUSY)。

4、3. 控制信息(Control) 控制输入输出设备的启动和停止等。 6.1.3 I/O端口控制方式一个I/O接口总要包括若干个端口,如数据端口、命令端口、状态端口、方式端口、操作结果端口、地址索引端口等。 I/O端口也必须进行编址以便能被主机访问。在微机系统中,对I/O接口的端口编址有两种方法:端口统一编址和端口独立编址。一、端口独立编址独立编址方式的优点是: IO端口的地址码较短(一般比同一系统中存储单元的地址码短),译码电路比较简单,存储器同I0端口的操作指令不同,程序比较清晰;存储器和IO端口的控制结构相互独立,可以分别设计。独立编址方式的缺点: 需 要有专用的IO指令,而这些I0指令的

5、功能一般不如存储器访问指令那样丰 富,所以程序设计的灵活性较差。典型系统 8086采用的就是这种方式OUT 43H, AL二、统一编址统一编址方式的优点 任何对存储器数据进行操作的指令都可用于 I0端口的数据操作,不需要专用的I0指令,从而使系统编程比较灵活;l/O端口的地址空间是内存空间的一部分,这样,l/O端口的地址空间可大可小,从而使外设的数目几乎可以不受限制。统一编址方式的缺点 l/O端口占用了内存空间的一部分,显然内存空间必然减少,影响了系统内存的容量;同时访问l/O端口同访问内存一样,由于访问内存时的地址长,指令的机器码也长,执行时间显然增加。典型系统 IntelMCS51等系列单

6、片微计算机就采用这种编址方式,这些微计算机中无专门的INOUT指令。 I/O 指令: 若端口地址在 0FFH 范围内,则用: IN AL,端口地址 (输入) OUT 端口地址 ,AL (输出) 如: IN AL, KOU1 OUT KOU2, AL 若端口地址在 0100FFFFH 范围内,则用: MOV DX, 端口地址 IN AL, DX OUT DX, AL 如: MOV DX, KOU100 IN AL, DX65F302 00外设000000FFFFFF0100KOU1KOU2KOU3112233 44KOU100KOU101可寻址28=256个端口可寻址216=64K个端口1132

7、32 01内存00000FFFFF6.2 简单的输入输出接口芯片 在外设接口电路中,经常需要对传输过程中的信息进行放大、隔离以及锁 存,能实现上述功能的接口芯片最简单的就是缓冲器、数据收发器和锁存器。一、74系列器件 74系列器件是TI(德州仪器)公司生产的中小规模TTL集成电路芯片,这是一种低成本、工业民用产品,工作温度为00C700C,从功能和速度分类有如下几类:74xxx标准TTL 74Lxxx低功耗TTL74Sxxx肖特基型TTL .74LSxxx低功耗肖特基型TTL.74ALSxxx高性能型TTL .74Fxxx高速型TTL 对于相同编号(XXX),不同类型的芯片,其逻辑功能完全一样

8、。二、锁存器74LS373 74LS373是一种8D锁存器,具有三态驱动输出。使能端G有效时,将D端数据打入锁存器中D门,当输出允许端OE有效时,将锁存器中锁存的数据送到输出端Q 74LS373的功能:当使能端G为高电平时,同时输出允许端OE为低电平,则输出Q=输人D;当使能端G为低电平,而输出允许端OE也为低电平时,则输出Q=Qo(原状态,即使能端G由高电平变为低电平前,保持输出端Q的状态,这就是“锁存”的意义)。当输出允许端OE为高电平时,不论使能端G为何值,输出端Q总为高阻态。 74LS373锁存器主要用于锁存地址信息、数据信息以及DMA页面地址信息等。 常用的锁存器还有74LS273,

9、573,Intel 8282和8283等。三、缓冲器74LS244 一种三态输出的八缓冲器和线驱动器1A11A4,2A12A4为输入, 1Y11Y4,2Y12Y4为输出当1G有效(低电平)时:1Y11Y4输出等于1A11A4;当2G有效(低电平)时:2Y12Y4输出等于2A12A4;而当1G(或2G)为高电平时,输出1Y11Y4(或2Y1-2Y4)为高阻态。经74LS244缓冲后,输入信号被驱动,输出信号的驱动能力加大了。74LS244缓冲器主要用于三态输出的存储地址驱动器、时钟驱动器和总线定向接收器和定向发送器等。 常用的缓冲器还有74LS240和741241等。四、数据收发器74LS245

10、6.3数据传送的控制方式按照IO控制组织的演变顺序以及外设与主机并行工 作的程度,微机系统中数据传送的控制方式主要有程序控制方式、DMA(直接存储器存取)方式和IO处理机方式。6.3.1程序控制方式1. 程序直接控制方式 无条件传送方式 查询传送方式2. 中断传送方式一、无条件传送方式 又称“同步传送方式”。主要用于外设的定时是固定的并且是已知的场合,外设必须在微处理器限定的指令时间内准备就绪,并完成数据的接收或发送。通常采用的办法是:把IO指令插入到程序中,当程序执行到该IO指令时,外设必定已为传送数据作好准备,于是在此指令时间内完成数据传送任务。无条件传送是最简便的传送方式,它所需的硬件和

11、软件都较少。Data segmentDtor dw 100 dup(?)Data endsCode segment assume cs:code,ds:dataStart: mov ax,data mov ds,ax mov dx, 0100 lea bx, dtor xor al, alAgain: mov al, dl out 20h, al call near delay1 mov al, dh out 20h, al call near delay2 in ax, 10h mov bx, ax inc bx inc bx rcl dh, 1 jnc again例:采用同步传送的数据采集

12、系统(8路采样) 接口输入口输出口 mov ah, 4ch int 21h Delay1 proc near push ax push dx mov ax, 3ffhLoop2: mov dx, 0ffff hLoop1: dec dx jnz loop1 dec ax jnz loop2 pop dx Pop ax retDelay1 endpCode ends end start二、查询式传送方式 CPU与I/O设备的工作往往是异步的,很难保证当CPU执行输入操作时,外设已把要输入的信息准备好了;而当CPU执行输出时,外设的寄存器(用于存放CPU输出数据的寄存器)一定是空的。所以,通常程序

13、控制的传送方式在传送之前,必须要查询一下外设的状态,当外设准备就绪了才传送;若未准备好,则CPU等待。例:采用查询方式传送的数据采集系统(8路采样)Start: mov dl, 0f8h ;1111,1000 启动A/D转换 lea di, detor ;输入数据存放地址 Again: mov al, dl ; and al, 0efh ;AL=1110,1000, 使D4=0 out 4, al ;停止A/D转换, call delay ; mov al, dl ; AL=1111,1000 out 4 , al ;启动A/D转换并选择模拟量A0poll: in al, 2 ;输入状态信息

14、shr al, 1 ; jnc poll ;若未Ready,等待 in al, 3 ;否则,输入数据 stosb ;将数据存入内存 inc dl ;取下一个模拟量 jne again ;状态端口数据口状态口控制口A7 A0 D0三、中断传送方式 .为提高cpu的工作效率和使cpu和外设以及外设间的并行工作,可采用中断传送方式。 .在中断传送方式中,通常是在程序中安排好在某一时刻启动某一台外设,然后CPU继续执行其主程序,当外设完成数据传送的准备后,向CPU发出“中断请求”信号,在CPU可以响应中断的条件下,现行主程序被“中断”,转去执行“中断服务程序”,在“中断服务程序”中完成一次CPU与外设

15、之间的数据传送,传送完成后仍返回被中断的主程序,从断点处继续执行。传送流程演示6.3.2 DMA(直接存储器存取)传送方式 中断传送仍是由CPU通过程序来传送,每次要保护断点,保护现场需用多条指令,每条指令要有取指和执行时间。这对于一个高速I/O设备,以及成组交换数据的情况,例如磁盘与内存间的信息交换,就显得速度太慢了。所以希望用硬件在外设与内存间直接进行数据交换(DMA),而不通过CPU,这样数据传送的速度的上限就取决于存储器的工作速度。但是,通常系统的地址和数据总线以及一些控制信号线(例如I/O、等)是由CPU管理的。在DMA方式时,就希望CPU把这些总线让出来(即CPU连到这些总线上的线

16、处于第三态高阻状态),而由DMA控制器接管,控制传送的字节数,判断DMA是否结束,以及发出DMA结束等信号。这些都是由硬件实现的。传送流程演示一、DMA操作方法 1.周期挪用 2.周期扩展 3.CPU的停机方式二、DMA的传送方式 1. 单字节方式:每次DMA请求只传送一个字节数据,每传送完一个字节,都撤除DMA请求信号,释放总线。 2成组传送方式 一个DMA请求可以传送一组信息,这一组信息的字节数由编程决定(在DMAC初始化时),只要在DACK有效之前DREQ保持有效即可。一旦DACK有效,不管DREQ是否有效,DMAC一直不放弃总线控制权,直到整个数组传送完。 3请求传送方式 又称查询传送

17、方式。该方式的传送类似于成组传送方式,但每传送一个字节后,DMAC就检测DREQ,若无效,则挂起;若有效,继续DMA传送,直到:一组信息传送结束;外加信号强制DMAC中止操作。三、DMA控制器的基本功能DMAC是控制存储器和外部设备之间直接高速地传送数据的硬件电路,它应能取代CPU,用硬件完成图8-17所示的各项功能。具体地说应具有如下功能:(1)能接收外设的请求,向CPU发出DMA请求信号。(2)当CPU发出DMA响应信号之后,接管对总线的控制,进入DMA方式。(3)能寻址存储器,即能输出地址信息和修改地址。(4)能向存储器和外设发出相应的读/写控制信号。(5)能控制传送的字节数,判断DMA

18、传送是否结束。(6)在DMA传送结束以后,能结束DMA请求信号,释放总线,使CPU恢复正常工作。, 该电路的工作过程如下:当输入设备准备好一个字节数据时,发出选通脉冲STB,该信号一方面选通“数据缓冲寄存器”U2,把输人数据通过U2送人“锁存器”U3;另一方面将“DMA请求触发器”Ul置“1”,作为锁存器U3的准备就绪信号 READY,打开锁存器U3,把输人数据送上数据总线;同时DMA请求触发器U1向DMAC发出DMA请求信号。然后,DMAC向CPU发出HOLD(总线请求)信号,CPU在现行总线周期结束后给予响应,发出HLDA信号,DMAC接到该信号后接管总线控制权,发出DMA响应和地址信息,并发出存储器写命令,把外设输人数据(经缓冲器U2、锁存器U3暂存在系统数据总线上)写到内存然后修改地址指针,修改计数器、检查传送是否结束,若未结束,则循环传送直到整个数据块传送完。在整个数据传送完后,DMAC撤除总线请求信号HOLD,在下一个T周期的上升沿,使HLDA变为无效。上述过程如图613的波形图所示。四、I/O处理机方式 在IO处理机方式中,IO处理机几乎接管了原来由CPU承担的控制输入输出操作及其他的全部功能; IO处理机有自己的指令系统,也能独立地执行程序,能对外设进行控制

温馨提示

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

评论

0/150

提交评论