I/O接口的主要功能
I/O接口的主要功能
% a, x8 N; U- Z$ J 一般而言,I/O接口具有以下主要功能:
# W+ X7 B7 f: s* c$ n- Z- a0 X (1)对传送数据提供缓冲、隔离和寄存
0 X0 R: j9 M0 \2 q* q) W" T; n 由于I/O设备与CPU的定时标准不同,数据处理速度也不同,所以需要对传送数据提供缓冲、隔离和寄存(或锁存)。在输出接口中,一般都要安排寄存环节(寄存器或锁存器)。对CPU来说,要输出的数据送到寄存器就可以了。此后由输出设备利用寄存器中的数据去具体实现输出,输出得快一些或慢一些都可以。寄存环节的中转作用对于一个数据(字节、字或双字)的传送是非常明显的,对于多个数据的传送也是以此为基础,要进一步考虑的是CPU何时输出下一个数据。在输入接口中,一般要安排缓冲隔离环节(如三态门),当CPU 读取数据时,只有被选定的输入设备将数据送到总线,其他的输入设备此时与数据总线隔离。在输入接口中有时也安排寄存环节,用来存放输入设备的数据,等待cPu读取。 / b% r7 R0 h: F: @
(2)对信号的形式和数据的格式进行转换
0 M$ @5 o# W. U" d& c8 L( a 计算机与I/0设备所用的信号的形式和数据的格式可能不同,I/O接口应能进行相互之间的转换,例如,将电流信号变为电压信号,将模拟信号变为数字信号,将串行数据变为并行数据,以及反方向转换等。
. Y& }9 m" z0 m0 I, r; L) j" m3 n' Q (3)对I/O端口进行寻址
; c3 P6 l! u3 k. \. i2 V I/O接口实际上都会包含若干个I/O端口。I/O端口是面向用户的,也就是说,从编程的角度,即从CPU的角度看,和I/0设备打交道实际是和I/O端口打交道。每一个I/O端口有一个编号,称为端口地址,简称口地址。与访问存储单元相类似,CPU与I/O端口交换信息时总是先给出端口地址,选中的端口才可以和CPU进行信息交换。 & T- b4 R( r: q* D
(4)与CPU和I/0设备进行联络
* u4 f' {0 P8 Z! ~0 u! b! m, P9 t I/O接口处于cPu和I/O设备的中间,在传送数据时,经常要在两个方向上进行联络,即接口电路既要面向CPU进行联络,又要面向I/0设备进行联络。联络的信息有:状态信号(如设备准备好)、请求信号(如中断请求)和控制信号(如中断响应)等。
点击图标进入精品网摘收藏 欢迎大家加入网络收藏夹