文档介绍:4第五章数字量输入输出
主要内容:本章介绍I/O接口的定义,I/O接口芯片的应用以及CPU系统总线。
第一节概述
【知识点】
※1、I/O接口的信息组成;
※2、CPU对I/O的控制方式;
※3、I/O的传递方式。
微型计算机的构成,除了CPU和存储器外,还包括输入设备和输出设备(合称外部设备)。在微机系统中,最常用的外部设备有键盘、显示器、打印机、磁盘机等。CPU对各种外部设备的电路连接及管理驱动程序就是输入(输出)接口技术(简称I/O)。
输入/输出(I/O)接口电路是计算机系统的重要组成部分。通过I/O接口可实现计算机与外部设备的通信,与外部设备交换信息,在工业控制系统中,I/O接口电路还可以通过A/D转换器或D/A转换器与各种工业检测和控制仪表相连,进而来控制工业现场。
通常,微型计算机I/O讨论的内容分为数字量和模拟量两部分。本章我们在了解I/O的基本概念和原理之后,重点介绍几种典型的数字I/O电路,至于模拟量I/O,留待第六章中专门讨论。
一、I/O接口
(一)I/O的信息组成
一切信息在存储器中的存放都是以二进制数的形式,在I/O操作中,由于与外界联系,这些信息按各自的作用可分为:
1、数据信号
数据信号是I/O的主要内容,例如我们从键盘上输到计算机内部的信息,从外部采集到的测量值,及由输出设备如
CRT显示的内容,或输出CPU运算的结果,都属于数据信号。当然这些信息是按一定的编码标准(例如是二进制格式,还是ASCII码标准),每若干位组合表示一个数字或符号。
2、状态信号
CPU与I/O设备进行数据传送时,往往需要了解I/O设备的状态。例如在打印作业中,打印机是否忙,打印纸是否用尽。只有在各种状态都处于“准备好”的情况下,才能可靠地传送数据信号。对于每一种二值状态,可以用一位二进制数表示。如输入的字节D7=1表示“忙”,D7=0表示“不忙”;D6=1表示“纸尽”,D6=0表示“有纸”等。CPU输入这些信号,在逐位进行测试,就可以清楚地了解设备的当前状态。在输出时,输出设备是否有空(Empty),若输出设备正在输出信息,则以忙(Busy)进行指示。
3、控制信号
控制信号实在数据传送过程中,CPU发给I/O设备的命令。一个输出字节的每一位可以表示一个开关命令,如D0=1时,控制设备“上电”,D1=1时,控制设备“启动”等。
说明:状态信号和控制信号是与数据是不同性质的信息,必须要分别传送。但在大部分微型机中,只有通用的IN和OUT指令,因此,外设的状态必须作为一种数据信息输入,而CPU的控制信号,也必须作为一种数据输出。为了使它们相互之间区分开,它们必须有自己的端口地址。
端口:计算机中所有能被指令直接寻址的I/O口被称为端口。每个端口均有各自的编号即端口地址。一个端口地址只能对应一个端口,决不允许两个端口共用一个地址,否则寻址时将发出混乱。
所以,数据需要一个端口,外设的状态需要一个端口,CPU才能将外设的状态读入,了解外设的运行情况,CPU的控制信号往往也需要一个端口输出,以控制外设的正常工作。所以,一个外设或接口电路往往有几个端口地址,CPU寻址的是端口,而不是笼统的外设。
(二)I/O接口的构成
一个典型的I/O接口,其中一般既有数据端口,又有状态及控制端口。每个I/O端口对应于一个I/O地址。从硬件上看,端口可以理解为寄存器(输入有缓冲器,输出有锁存器)。CPU用I/O指令(IN、OUT)对其直接访问,
中,接口电路通常占有三个I/O口地址(亦称端口地址),分别对应数据断口,状态端口和控制端口。其中数据端口可以是双向的,而状态端口只作输入操作,控制端口只作输出操作。有时候两个端口(控制端口和状态端口)合用一个端口地址,再用“I/O写”(IOW)或“I/O读”(IOR)信号来分别择一访问。
二、I/O的传递方式
CPU内部的数据总线是并行的(课本第16页),但I/O设备有并行,串行之分,因此传送信息方面也就有了两种方式:即并行I/O,串行I/O。
(一)并行I/O
数据的并行I/O将信息以字节(或字)为单位进行传递,其中各位同步地收发,这种方式适用较近距离,它们的特点是传送速度快。这种方式接口数据通道宽,硬件开销大。打印机以并行方式与主机相连。
(二)串行I/O
用软件或硬件的方法将每个字节(或字)拆开,然后位(Bit)为单位来进行传送的方式称为串行I/O。它运用于远距离,它的传送特点:传送速度低,但可利用电话线等设备进行信息传送,且抗干扰能力强。此时,硬件开销小,数据通道窄,调制调解器(Modem)。
三、I/O端口的寻址方式
微型计算机常用两种I/O端口的寻址方式:存储器映像寻址和I/O端口单独寻址。
(一)存储器映像寻址