预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共22页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

7.1I/O接口概述图7.1主机与外设的连接2.I/O接口的作用 接口是主机和外设之间交换信息的桥梁。那么,主机与外设交换信息时为什么要通过接口电路呢?这主要有以下三个原因。 ①总线隔离作用 数据总线是外设及存储器传送信息的公共线路,任何外设或存储器都不允许长期占用数据总线,而仅允许被选中的外设或存储器在读/写总线周期中享用数据总线。 因此,大多数外设不能直接和CPU的数据总线相连,要借助与接口电路使外设与总线隔离,起缓冲、暂存数据的作用,使主机和外设协调一致的工作。 ②速度匹配作用 接口电路可以提供握手信息给微处理器和外设,协调主机和外设间数据传送速度不匹配的矛盾。 大多数外设输入输出信息的速度远远低于微处理器,为同步外设与主机的工作,在输入输出控制中,常需要接口电路提供外设的工作状态给微处理器,同时记忆主机下达给外设的命令,从而使主机与外设之间协调一致地工作。③信号变换作用 外设的信息格式与微处理器不一致时,需要接口电路进行信息的变换。 从本质上说,微处理器的信息格式是并行的数字信号,而外设由于其功能的多样性,信息格式也是多种多样的。这就需要进行: 电平变换 并串变换 数模变换 7.1.2CPU与外设交换的信息 主机与I/O设备之间交换的信息可分为数据信息、状态信息和控制信息三种。 (1)数据信息:它是CPU与外设之间传送的主要信息,可分为数字量、模拟量和开关量三种形式。 (2)状态信息:是外设通过接口送往CPU的信息,作为外设与CPU之间交换数据的联络信号,反映了当前外设所处的工作状态。 (3)控制信息:是CPU通过接口传送给外设的信息,用来设置外设(包括接口)的工作方式、控制外设的工作等。 7.1.3I/O接口的基本结构(接口与端口) 接口(Interface):介与主机和外设之间的缓冲电路。 端口(Port):接口中可以进行寻址读写的寄存器,简称口。 一个接口往往含有几个端口,CPU通过输入输出指令向这些端口取或存信息。端口主要有三类:一类为状态口,一类为命令口(或控制口),一类是数据口。 CPU通过输入指令从状态口获取外设的状态信息,通过输出指令从命令口发出控制命令,控制外设的工作。通过输入输出指令可以从数据端口与外设交换数据。因此说,计算机主机与外设之间交换信息都是通过接口中的端口来实现的。7.1.4I/O端口的编址 微机系统中,I/O端口的编址方式分为统一编址和独立编址两大类。在Intel80x86系列微机中,采用独立编址方式。 1.I/O端口的统一编址方式 统一编址又称存储器映象编址(Memory-mappingAddressCoding),就是将I/O端口看成是存储器空间的一个组成部分,按照存储器单元的编址方法统一编排地址号,每个I/O端口占用一个地址。这样,CPU对I/O端口的输入/输出操作如同对存储单元的读/写操作一样,对存储器的各种寻址方式也同样适用于I/O端口。图7.4I/O端口与内存单元统一编址2.I/O端口的独立编址方式(IsolatedI/OAddressCoding) 在独立编址方式下,I/O地址空间完全独立于存储器空间。在I/O地址空间中,每个端口有一个唯一的端口地址,CPU有专用的I/O指令,用于CPU与I/O端口之间的数据传输。Intel80x86系列CPU中设有IN、OUT指令作为专用的I/O指令和寻址方式。在直接寻址方式下,CPU只利用地址总线的低8位输出地址信息,所以只能寻址I/O地址空间的00HFFH地址,而在间接寻址方式下,CPU利用地址总线的低16位输出地址信息,可以寻址的I/O空间多达64K个端口。00000H7.2CPU与外设之间数据传送的方法 各种外设的工作速度相差很大,有些相当高,如磁盘机的传送速度达0.26Mb/s,而有些外设的工作速度却相当低,如键盘是用于人工输入数据的,输入1个字符通常需几十毫秒。 这里所说的输入/输出方法就是指CPU通过接口与外设之间数据传送的方式,一般有三种:程序控制的输入/输出方式、程序中断的输入/输出方式和直接存储器存取方式。7.2.1程序控制的输入/输出方式 该方式完全通过执行程序来控制CPU与外设之间的数据交换,I/O指令序列事先就排在程序中所需要的位置。这种传送方式又分为无条件传送和有条件传送。 1.无条件传送:程序中I/O指令的执行不需要事先测试外设的状态,而是直接执行。这种传送方式只适用于对简单外设的操作,这些外设始终处于就绪状态,典型的输入是开关,典型的输出是LED。 2.有条件传送:也称查询方式传送,程序中I/O指令的执行需要事先测试外设的状态,待外设准备就绪后,执行I/O指令进行数据传送,否则循环测试等待。例如,CPU向打印机送打印字符,就需要测试打印接口电路的BUSY信号。图7.7