资源描述
第七章第七章 输入输出方法及常用的输入输出方法及常用的接口电路接口电路(1)在前面章节已提到,微型计算机系统由微处理器、内存储器、控制总线、I/O接口电路及外设组成。各类外部设备,都需要通过各种接口电路连接到微机系统的总线上。本章将介绍I/O接口的基本概念、输入/输出方法,以及常用的一些I/O接口电路及其功能、应用。教学目的及要求教学目的及要求I/O接口电路的结构及数据传送方式理解并掌握并行接口电路芯片8255A掌握可编程定时器/计数器8253/82547.1 I/O接口的概念与功能接口的概念与功能1、什么是I/O接口(电路)?I/O接口是位于系统与外设间、用来协助完成数据传送和控制任务的逻辑电路;PC机系统板的可编程接口芯片、I/O总线槽的电路板(适配器)都是接口电路。一、概述一、概述CPUCPU接口接口接口接口电路电路电路电路 I/O I/O设备设备设备设备2、为什么需要I/O接口(电路)?微机的外部设备多种多样工作原理不同机械、电子、机电、电磁传送信息类型多样数字量、模拟量、开关量传送速度差别极大传送方式不尽相同串行、并行编码方式不同二进制、BCD码、ASCII码 由于它们工作原理、驱动方式、信息格式、以及工作速度方面彼此差别很大;它们不能与CPU直接相连,必须经过中间电路再与系统相连。这部分电路被称为I/O接口电路。二、二、I/O接口的主要功能接口的主要功能 对输入输出数据进行缓冲和锁存对输入接口输入接口:其内部有起缓冲和隔离作用的三态门电路,只有CPU选中此接口,且三态门选通时,才能将选定的输入设备中的数据送至系统数据总线;未被选中的设备则相当于三态门关闭,从而与数据总线隔离;对输出接口输出接口:需在接口电路中设置数据锁存器,暂时锁存CPU送至外设的数据。原则原则:“输入要三态、输出要锁存”对信号的形式和数据的格式进行变换微机直接处理:数字量、开关量、脉冲量 对I/O端口进行寻址 与CPU和I/O设备进行联络三、三、I/O接口的基本结构接口的基本结构1、CPU与外设交换的信息大致可分为三种类型:数据信息、状态信息、控制信息。数据信息:从键盘、磁盘、扫描仪等输入设备读入的信息;CPU输出至打印机、显示器、绘图仪等输出设备的信息。状态信息:反应外部设备工作状态的信息。如“空”、“忙”、“就绪”等均为状态信息。控制信息:指CPU向接口内部寄存器发出的各种控制命令。2、接口电路通常包含一组能够与CPU交换信息的寄存器或缓冲器,称为I/O端口。数据端口:存放数据信息。状态端口:存放状态信息。控制端口:存放控制信息。3、I/O接口电路基本结构框图如下所示:主主机机外外设设 数据寄存器状态寄存器控制寄存器数据缓冲地址译码控制逻辑接CPU一侧接外设一侧DBABCB数据信息控制信息状态信息端口接口接口分为数据输入和数据输出接口电路的内部结构数据缓冲器接口电路输入输出的数据、控制、状态信息都通过此缓冲电路传送,与系统的数据总线相连地址译码电路根据CPU的地址信息,由片选信号是否有效判定CPU是否选中接口芯片,再寻址出片内的某个端口 控制逻辑电路产生接口的内部控制信号和对外控制信号,以实现处理器和外设间相互协调工作。数据寄存器:保存外设给CPU和CPU发往外设的数据状态寄存器:保存外设或接口电路的状态控制寄存器:保存CPU给外设或接口电路的命令接口电路的外部特性主要体现在引脚上,分成两侧信号:面向CPU一侧的信号:用于与CPU连接主要是数据、地址和控制信号面向外设一侧的信号:用于与外设连接提供的信号五花八门功能定义、时序及有效电平等差异较大接口电路芯片的分类按数据传送方式:并行接口、串行接口按功能选择的灵活性:可编程接口、不可编程接口按通用性分类:通用接口、专用接口按数据控制方式:程序型接口、DMA型接口、专用I/O处理器方式。I/O端口的编址方式微型计算机系统中I/O端口编址方式有两种:I/O端口与内存单元统一编址和 I/O端口与内存单元独立编址。8086CPU组成的微机系统都采用独立编址方式。独立编址方式中,建立了两个地址空间,一个为内存地址空间,一个为I/O地址空间。内存地址空间和I/O地址空间是相对独立的,通过控制总线来确定CPU到底要访问内存还是I/O端口。在8086/8088系统中,共有20根地址线对内存寻址,内存的地址范围是00000HFFFFFH;用地址总线的低16位对I/O端口寻址,所以I/O端口的地址范围是0000HFFFFH。CPU在访问内存和外设时,使用了不同的控制信号来加以区分。例如,当8086 CPU的M/IO信号为1时,表示地址总线上的地址是一个内存地址;为0时,则表示地址总线上的地址是一个端口地址。I/O地址的译码 I/O地址的译码方法与存储器地址的译码方法一样,采用译码器、门电路进行译码外,可编程逻辑器件PLD。7.2 CPU与外设之间的数据传送方式与外设之间的数据传送方式程序控制下的输入输出方式:通过CPU执行程序中的IO指令来完成。可分为:无条件传送、查询传送、中断传送直接存储器存取方式DMAI/O处理器方式:CPU委托专门的I/O处理器来管理外设、完成传送和相应的数据处理 微型计算机与外部设备之间的信息传送方式,一般可分为以下几种:一、无条件传送方式一、无条件传送方式 微机系统中的一些简单的外设,如开关、继电器、数码管、发光二极管等,在它们工作时,可以认为输入设备已随时准备好向CPU提供数据,而输出设备也随时准备好接收CPU送来的数据,这样,在CPU需要同外设交换信息时,就能够用IN或OUT指令直接对这些外设进行输入/输出操作。动态演示例 输入示例:下图为外设数据输入至CPU的示例。MOV DX,160HINAL,DX74LS244+5V10K x 8G1 G2数数据据总总线线CSRDMOV DX,160HINAL,DX例 输出示例MOV DX,160HMOV AL,BXOUT DX,ALMOV DX,160HMOV AL,BXOUT DX,AL+5V74LS373300 x 8LE OE数数据据总总线线CSWR例:输入输出接口K7K1K0+5VD0D7A0A15CLKLS06反相反相驱动器驱动器LS2738D锁存器锁存器LS244三态三态缓冲器缓冲器8000H译码译码+5VLED0LED7GIOWIOR 二、查询传送方式二、查询传送方式 查询传送也称为条件传送,是指在执行输入指令(IN)或输出指令(OUT)前,要先查询相应设备的状态,当输入设备处于准备好状态,输出设备处于空闲状态时,CPU才执行输入/输出指令与外设交换信息。为此,接口电路中既要有数据端口,还要有状态端口。(1)CPU从接口中读取状态字。(2)CPU检测相应的状态位是否满足“就绪”条件。(3)如果不满足,则重复(1)、(2)步;若外设已处于“就绪”状态,则传送数据。查询传送方式的流程图动态演示例 设状态口的地址为PORT_S1,数据输入口的地址为PORT_IN,传送数据的总字节数为COUTNT_1,则查询方式输入数据的程序段为:MOV DX,8000H;DX指向状态端口STATUS:IN AL,DX;读取状态端口的状态数据TEST AL,80H;测试标志位D7JNZ STATUS;D71,未就绪,继续查询INC DX;D70,就绪,DX指向数据端口MOV AL,BUF;变量BUF送ALOUT DX,AL;将数据输出给数据端口例 查询输出接口 状态端口为8000H,数据端口为8001H三、中断传送方式三、中断传送方式断点断点主程序主程序中断服务程序中断服务程序中断请求中断请求对外设对外设进行处理进行处理继续执行继续执行返回断点返回断点 CPU在执行程序中,被内部或外部的事件所打断,转去执行一段预先安排好的中断服务程序;服务结束后,又返回原来的断点,继续执行原来的程序中断传送方式的优点优点:CPU不必查询等待,工作效率高,CPU与外设可以并行工作;由于外设具有申请中断的主动权,故系统实时性比查询方式要好得多。中断传送方式的缺点缺点:接口电路相对复杂,而且每进行一次数据传送就要中断一次CPU,CPU每次响应中断后,都要转去执行中断处理程序,且都要进行断点和现场的保护和恢复,浪费了很多CPU的时间。这种传送方式一般适合于少量数据的传送。动态演示四、直接存储器存取四、直接存储器存取(DMA)传送方式传送方式 DMA传送方式是在存储器和外设之间、存储器和存储器之间直接进行数据传送(如磁盘与内存间交换数据、高速数据采集、内存和内存间的高速数据块传送等),传送过程无需CPU介入,这样,在传送时就不必进行保护现场等一系列额外操作,传输速度基本取决于存储器和外设的速度。CPU释放总线,由DMA控制器管理。DMA传送的工作过程:CPU对DMA控制器进行初始化设置 外设、DMAC和CPU三者通过应答信号建立联系:CPU将总线交给DMAC控制 DMA传送DMA读存储器:存储器 外设DMA写存储器:存储器 外设 自动增减地址和计数,判断传送完成否DMA传送流程:HLDA发存储器地址发存储器地址传送数据传送数据传送结束?传送结束?DMA结束结束修改地址指针修改地址指针动态演示几种传送方式的比较:无条件传送:慢速外设需与CPU保持同步查询传送:简单实用,效率较低中断传送:外设主动,可与CPU并行工作,但每次传送需要大量额外时间开销DMA传送:DMAC控制,外设直接和存储器进行数据传送,适合大量、快速数据传送
展开阅读全文