第七章 I/O接口
第一节概述
一、I/O 接口的功能二、I/O接口的一般结构
第二节输入输出寻址方式和指令
一. I/O指令寻址
二. 存储器映象的 I/O寻址
三、8088I/O指令
第三节 CPU与外设数据传送方式
一、无条件传送
二、查询传送
三、中断传送
四、直接数据通信传送DMA
第四节 DMA控制器(Intel8237)
一、主要功能
二、DMA控制器8237的功能
三、8237的内部结构
第七章基本输入输出接口
第一节概述
一、I/O接口的功能
1. 采用I/O接口的必要性
* 外围设备的品种繁多机械,电子,机电,磁电,光电
* 所传输的信息的要求不同数字,模拟,电压,电流等
2. 计算机与外设之间的信息交换应解决的问题:
* 速度不匹配
* 信号电平不匹配
* 信号格式不匹配
* 信号时序不匹配
3. I/O接口应具有的功能(解决的方案)
* 设置数据缓冲器以解决两者速度差异所带来的不协调问题;
输入: 输入设备数据线三态缓冲器 DB CPU
寻址
等待数据输入
读入数据
确定输入端口地址
AB、M/ IO、ALE、DT/R
等待数据输入
输入缓冲器
输入缓冲器
DB CPU
输出: CPU DB 锁存器输出设备数据线
寻址
输出数据
等待数据输出
确定输出端口地址
AB、M/IO、ALE、DT/R
CPU DB
输出锁存器
等待输出设备
从锁存器取走数据
* 设置信号电平转换电路以解决两者之间信号电平的不一致问题
例如:在串行通信中,常采用MC1488,MC1489等芯片实现
电平转换(RS232)。
* 设置信息转换逻辑以满足对各自信号格式的要求
例如:A/D转换,D/A转换,串/并转换,并/串转换等。
* 设置时序控制电路以同步CPU和外设的工作
接口电路接收CPU送来的命令或控制字,实施对外设的控
制和管理;外设的工作状态和应答信号也通过接口及时返
回给CPU(设备就绪,忙,缓冲器满,空),保证CPU与
外设工作实现同步。
* 提供地址译码电路
CPU与多个外部设备交换信息;
每个外部设备通常包含若干个端口(数据,控制,状态)。
* 最好可编程应用
信号: CPU与外设之间传送的信号有:数据、状态、控制
状态信号:反映外设当前所处的工作状态。输入设备数据准备好,READY=1 输出设备正忙于处理,BUSY=1。
控制信号:控制外设的工作。 CPU启动或停止外设工作,CPU确定外设的工作方式。
端口:CPU与一个外设之间通常有三个端口。数据端口(输入/输出);状态端口;控制端口。
二、I/O接口的一般结构
C
P
U
AB
DB
M / IO
WR
RD
接
口
数据
状态
控制
外
部
设
备
第二节输入输出寻址方式和指令
一. I/O指令寻址
存储器和I/O端口在两个独立的地址空间中, I/O端口的读、写用IOR和IOW控制信号实现,访问I/O端口用专用的IN或OUT指令。
C
P
U
存储器
I/O口
AB
DB
控制逻辑
CB
MEMR
MEMW
IOR
IOW
二. 存储器映象的 I/O寻址
存储器和I/O端口共用一个地址空间, I/O端口的读、写用RD和WR控制信号实现,所有访问存储器的指令都可以用于I/O端口。
C
P
U
存储器
I/O口
AB
DB
RD
WR
输入输出端口地址在指令中以立即数 n (8bit) 表明。直接寻址可寻址256个输入端口和256个输出端口。
IN AL, n 字节输入(n 端口数据) AL
IN AX, n 字输入(n+1):(n) AX
OUT n,AL 字节输出(AL) n 端口
OUT n,AX 字输出(AX) n+1:n
输入输出端口地址由DX寄存器(16bit)间接寻址。间接寻址可寻址64K个输入端口和64K个输出端口。
IN AL, DX 字节输入((DX)) AL
IN AX, DX 字输入((DX)+1):((DX)) AX
OUT DX,AL 字节输出(AL) (DX)
OUT DX,AX 字输出(AX) (DX)+1:(DX)
三、8086的I/O指令
第三节 CPU与外设数据传送方式
输入:CPU在执行IN指令前,输入三态缓冲器已准备好。
输出:CPU在执行OUT指令前,输出锁存器已空。
一、无条件传送
AB
外设输入数据
三态缓冲器
地址译码
RD
DB
n
输入
端口 n
无条件输入
M/IO
输出外设数据
锁
存
器
地址译码
WR
第7章 基本输入输出接口 来自淘豆网www.taodocs.com转载请标明出处.