输入输出技术
一,I/O接口概述
I/O 接口:将CPU和外围设备连接起来实现信息交换的缓冲电路称为lO接口(Interface)电路,简称“I/O接口”。
I/O 接口的分类:
- 按数据传送方式:并行接口、串行接口
- 按功能选择的灵活性:可编程接口、不可编程接口
- 按应用的通用性:通用接口、专用接口
- 按数据控制的方式:程序型接口、DMA型接口
1,I/O 接口的基本功能:
- 缓冲、隔离和锁存的功能
- 信息格式与电平转换功能
- 信息交换的应答联络功能
- 译码寻址外设功能
2,I/O 接口的基本结构:
3,I/O端口的编址方式
- 独立编址(相对存储器而言,将存储器地址空间和I/O接口寄存器地址空间分开设置,互不影响。)
- 统一编址(又称存储器映像编址,将所有I/O接口电路中的寄存器作为存储单元对待,并给每一个寄存器分配相应的存储器地址。)
4,I/O端口的地址译码:
与存储器单元的地址译码方法相同。
二,简单I/O接口芯片(重点)
1,74LS373锁存器
74LS373可被用于锁存地址信息、数据信息和状态信息等,更多用于锁存地址信息。
2,74LS244缓冲器
3,74LS245收发器
三,基本输入/输出方法(重难点)
1,程序控制的输入/输出(重难点)
传送过程以CPU为中心,通过程序(数据传送指令和IN/OUT指令)完成数据传送
传送路径必须经过CPU内部的寄存器传送速度不高,响应比较慢
-
无条件传送
又称同步传送,CPU 可以随时与I/O 进行数据传送,不依赖于任何条件,不需要在CPU和I/O 之间建立任何握手信号,所需硬件很少,软件 简单。
-
查询方式传送
又称应答式传送,在CPU和外设之间建立了问答机制。
CPU通过程序指令不断询问外设的工作状态,如果“就绪”就开始进行数据传送,如果未“就绪”则继续不断地询问。
例题辅助理解:
/*例:某外设接口的8位数据端口地址为200H,状态端口地址为201H,状态口中第7位为1表示外设己准备好。如该外设为输入设备,试编制从该设备输入一个字节数据的程序段。*/ MOV DX,201 ;状态口地址 LOP:IN AL,DX ;读取外设的状态字 TEST AL,10000000B ;状态位第7位是否为1? JZ LOP ;不是1则继续查询 DEC DX ;数据口地址 IN AL,DX ;从数据口输入数据
例子:
/*例:某外设接口的8位数据端口地址为200H,状态端口地址为201H,状态口中第7位为1表示外设己准备好。如该外设为输出设备,则向该设备输出一个字节数据的程序段如何编制。*/ MOV DX,201 ;状态口地址 LOP:IN AL,DX ;读取外设的状态字 TEST AL,10000000B ;状态位第7位是否为1? JZ LOP ;不是1则继续查询 DEC DX ;数据口地址 OUT AL,DX ;向数据口输出数据
-
3,中断方式传送
外设“准备好”才发中断,效率高,实时性好。CPU 与外设“并行”工作,多个外设也可“并行”工作。
2,直接存储器存取方式(DMA)
- 程序控制的输入/输出方式都是在CPU的干预下通过执行IN/OUT指令实现,传送速度不高。
- 直接存储器存取方式(DMA)可以在存储器和IO设备间直接传送数据,但需要DMA控制器的支持。