第二章输入输出与接口技术
1 第二章 输入输出与接口技术
第一节接口概述 1/0接口基本概念 1、接口定义 内存 CPU 内存接口 电源 系統总线 用户交互接口 外存接口 通信接口 训控接口 键盘、鼠标、显示器、 磁盘机 终端 ADC 打印机、声音输入辎 磁带机 MODEMI DAC 出、图形输入、视频输 光盘机 电传机 数字化仪器 入输出 定义:是CPU与“外部世界”的连接电路,负责“中 转”各种信息。 2
2 第一节 接口概述 一、I/O接口基本概念 1、接口定义 定义:是CPU与“外部世界”的连接电路,负责“中 转”各种信息
分类:存储器接口和I/0接口。 位置:介于系统总线与外部设备之间 2、I/0接口与1/0设备 不同I/0设备对应I/0接口不同。 I/0接口受CPU控制,I/0设备受Ⅰ/0接口控制。 为增加通用性,I/0接口的接口电路一般均具有可编 程功能。 微机的应用离不开与外部设备接口的设计、选用和 连接。 微机接口技术是编程人员的一项基本技能
3 分类:存储器接口和I/O接口。 位置:介于系统总线与外部设备之间。 2、I/O接口与I/O设备 不同I/O设备对应I/O接口不同。 I/O接口受CPU控制,I/O设备受I/O接口控制。 为增加通用性,I/O接口的接口电路一般均具有可编 程功能。 微机的应用离不开与外部设备接口的设计、选用和 连接。 微机接口技术是编程人员的一项基本技能
二、1/0接口功能 数据缓冲功能:通过寄存器或锁存器实现。 存放数据的寄存器或锁存器称之为数据口。 接受和执行CPU命令功能: 存放CPU命令代码的寄存器称之为命令口, 存放执行状态信息的寄存器称之为状态口。 信号转换功能:协调总线信号与I/0设备信号。 转换包括信号的逻辑关系、时序配合和电平转换 可编程功能:增加接口的灵活性和智能性
4 二、I/O接口功能 数据缓冲功能:通过寄存器或锁存器实现。 存放数据的寄存器或锁存器称之为数据口。 接受和执行CPU命令功能: 存放CPU命令代码的寄存器称之为命令口, 存放执行状态信息的寄存器称之为状态口。 信号转换功能:协调总线信号与I/O设备信号。 转换包括信号的逻辑关系、时序配合和电平转换。 可编程功能:增加接口的灵活性和智能性
三、1/0接口组成 I/0接口由接口硬件和接口软件组成。 1、接口硬件 控制寄存器 系统数据总线数据 总线 输出缓冲 缓冲 寄存器 CPU 控制总线 内部 输入缓冲 控制 寄存器 逻辑 状态寄存器 系统地址总线地址‖端口 地址 总线 译码 缓冲 联络 控制逻辑 返回下页 返回下二页 返回下三页 返回35页
5 三、I/O接口组成 I/O接口由接口硬件和接口软件组成。 1、接口硬件 返回下页 返回下二页 返回下三页 返回35页
(1)CPU侧引脚信号 思考1:CPU对接口有哪些操作?如何表示? 思考2:CPU对接口的软件命令如何分解的? 思考3:接口如何识别已分解的软件命令? 地址总线信号(I):区分接口的不同端口或CPU命令; 数据总线信号(I/0):根据端口或命令类型,送数 据到对应的REG中,或从REG中取得数据或状态; 控制总线信号(I):接口识别总线命令并控制执行; 状态总线信号(O):接口为完成总线命令所需的响 应信号。 转上页转29页
6 (1)CPU侧引脚信号 转上页 思考1:CPU对接口有哪些操作?如何表示? 思考2:CPU对接口的软件命令如何分解的? 思考3:接口如何识别已分解的软件命令? 地址总线信号(I):区分接口的不同端口或CPU命令; 数据总线信号(I/O):根据端口或命令类型,送数 据到对应的REG中,或从REG中取得数据或状态; 控制总线信号(I):接口识别总线命令并控制执行; 状态总线信号(O):接口为完成总线命令所需的响 应信号。 转29页
(2)外设侧引脚信号 数据信号:接口的缓冲REG与外设间的数据交换信 号,缓冲REG分输入和输出缓冲; 状态信号:外设工作状态送给接口的状态REG; 控制信号:接口的内部控制逻辑控制外设工作的控 制、时序和同步信号。 思考1:从哪些方面实现CPU侧数据与外设侧数据的 转换? 思考2:外设侧信号及时序的源头在哪里? 转上二页
7 (2)外设侧引脚信号 数据信号:接口的缓冲REG与外设间的数据交换信 号,缓冲REG分输入和输出缓冲; 状态信号:外设工作状态送给接口的状态REG; 控制信号:接口的内部控制逻辑控制外设工作的控 制、时序和同步信号。 转上二页 思考1:从哪些方面实现CPU侧数据与外设侧数据的 转换? 思考2:外设侧信号及时序的源头在哪里?
(3)内部控制逻辑 根据总线信号完成与CPU的通讯(CS#有效时); 根据控制/状态REG、数据缓冲器控制外设侧信号。 CPU OUT DX. AL 其它与接口无关指令 I/0接口CP侧接收新命令 不与CPU通信 外设侧按旧命令控制外设按新命令控制外设 I/0设备 按I/0接口信号处理按I/0接口信号处理 CPU对接口的控制与接口对外设的控制是独立的! 例:并行接口8255有三个设备端8位口,如何设计 其外部接口?如何节省端口数量? 转上三页
8 (3)内部控制逻辑 根据总线信号完成与CPU的通讯(CS#有效时); 根据控制/状态REG、数据缓冲器控制外设侧信号。 转上三页 不与CPU通信 按新命令控制外设 按I/O接口信号处理 其它与接口无关指令 I/O接口 I/O设备 按I/O接口信号处理 CPU OUT DX,AL CPU侧 接收新命令 外设侧 按旧命令控制外设 CPU对接口的控制与接口对外设的控制是独立的! 例:并行接口8255有三个设备端8位口,如何设计 其外部接口?如何节省端口数量?
2、接口软件(设备驱动程序) 初始化程序段:设置接口工作方式及初始条件。 传送方式处理程序段:CPU针对不同的I/O设备有不 同的处理方式。 主控程序段:完成接口任务的程序。 程序终止与退出程序段:接口电路硬件保护及操作 系统中数据恢复。 辅助程序段:提供人-机对话手段
9 2、接口软件(设备驱动程序) 初始化程序段:设置接口工作方式及初始条件。 传送方式处理程序段:CPU针对不同的I/O设备有不 同的处理方式。 主控程序段:完成接口任务的程序。 程序终止与退出程序段:接口电路硬件保护及操作 系统中数据恢复。 辅助程序段:提供人-机对话手段
第二节数据传输控制方式 程序控制方式 1、无条件传送方式 特点:I时假设外设已准备好,0时假设外设空闲。 要求:接口I时加缓冲器,O时加锁存器。 应用:对简单外设的操作。 2、条件传送方式(查询方式) 工作原理:CPU查询外设已准备好后,才传送数据 特点:CPU与外设间自然同步、串行工作。 要求:不需要增加额外的硬件电路。 应用:适用在CPU不太忙且传输速度要求不高时
10 第二节 数据传输控制方式 一、程序控制方式 1、无条件传送方式 特点:I时假设外设已准备好,O时假设外设空闲。 要求:接口I时加缓冲器,O时加锁存器。 应用:对简单外设的操作。 2、条件传送方式(查询方式) 工作原理:CPU查询外设已准备好后,才传送数据。 特点:CPU与外设间自然同步、串行工作。 要求:不需要增加额外的硬件电路。 应用:适用在CPU不太忙且传输速度要求不高时