第 6章 I/O接口和总线
6.1 I/O接口概述
输入 /输出 (I/O)接口是 CPU与外设之间传送信息的一个界面 (或连接部件 )
I/O接口通过三总线与 CPU相连
I/O接口 — 作用
I/O接口的作用
CPU与外界的联络
解决连接的不匹配、不协调
速度 —— 数据缓冲
信号电平 —— 信号电平转换电路
信号格式 —— 信息转换逻辑
时序 —— 时序控制电路
多端口、多连接 —— 地址译码
I/O接口 —— 方式
I/O接口与外设交互三种信息
数据信息
控制信息
状态信息
均通过 DB
CPU同外设之间的信息传递,实质上是对端口进行读 /写操作
I/O接口 —— 形式
简单 I/O接口电路
由简单组合电路构成的 I/O接口电路
按需求构成,不可改变
可编程 I/O接口 (芯片 )电路
使用专用接口芯片
具有内部寄存器 (方式、状态、数据 )
由程序设置 (改变 )其工作方式
I/O接口 —— 简单电路
I/O接口 —— 简单电路
I/O接口 —— 可编程接口电路
I/O端口 —— 编址方式
I/O独立编址
M/IO = L
64K独立编址的 I/O地址空间
专用 IN/OUT 指令
存储器映像编址
M/IO = H
I/O端口与存储器统一编址
使用存储器操作指令
I/O端口 —— 编址方式
00000H
FFFFFH
0000H
FFFFH
00000H
FFFFFH
I/O
I/O
I/O接口的译码
端口选择信号
I/O地址总线
M/IO
全译码
部分译码
线选法
74LS138
6.2 CPU与外设之间数据传递的方式
程序控制方式
无条件传送方式
条件传送方式
中断方式
DMA方式
需 DMA控制器的介入程序控制方式 —— 无条件传送
外设总是准备好
输入 —— 数据已经准备好
输出 —— 已准备好接收
只有数据,没有状态
同步方式
不需要过多的程序处理,在需要与外设交换信息时,随时访问 I/O端口程序控制方式 —— 无条件传送程序控制方式 —— 无条件传送程序控制方式 —— 条件传送
查询传送方式
查询外设的状态信息
输入 —— 数据已准备好
输出 —— 接收装置已准备好
状态端口、数据端口程序控制方式 —— 条件传送
输入程序控制方式 —— 条件传送程序控制方式 —— 条件传送
输出程序控制方式 —— 条件传送程序控制方式 —— 中断方式
需要访问外设时,允许相应的中断,当期望的状态到达时,产生中断请求
充分利用 CPU的资源,提高效率
常用于高速 CPU与低速外设之间的数据交换程序控制方式 — DMA方式
直接存储器方式
不必通过 CPU的中转( IN/OUT指令均通过 AL/AX),而直接在 I/O接口与存储器之间进行传递( 抢占总线 )
需要 DMA控制器的介入
适用于大量数据的交换程序控制方式 — DMA方式程序控制方式 —— I/O处理机方式
DMA可以撇开 CPU实现直接的数据传送,
但无法单独实现数据的处理
建立独立的处理机制,单独处理 I/O数据
例:智能串行接口卡
6.3 总线技术
总线 —— 在微型计算机系统中,用于各部件间传送信息的公共通路
分类
片级总线
地址、数据、控制
系统总线
板卡间的总线
外部总线
机器间的总线总线 —— PC总线
62Pin,8数据,20地址总线 —— ISA总线
62+36Pin,16数据,24地址
兼容 PC总线总线 —— EISA总线
198Pin,32数据,32地址
兼容 PC,ISA总线
两层结构插件总线 —— EISA总线总线 —— PCI总线
PCI—— 外围部件互联总线,局部总线
PnP特性总线 —— AGP总线
AGP—— 加速图形端口总线 —— USB总线
USB—— 通用串行总线
全速 12Mb/s(<=5米 ),慢速 1.5Mb/s(<=3米 )
总线 —— USB总线