当前位置:文档之家› 输入输出接口和总线

输入输出接口和总线


DMA传输:
外设
内存
外设直接与存储器进行数据交换 ,CPU不再担 当数据传输的中介者;
总线由DMA控制器(DMAC)进行控制(CPU 要放弃总线控制权),内存/外设的地址和读写 控制信号均由DMAC提供。
优点:数据传输由DMA硬件来控制,数据直 接在内存和外设之间交换,可以达到很高的 传输速率(可达几MB/秒)
D7 Q2
反相器
c
Q3
d
Q4
e
CP Q5
f
Q6
g
Q7
DP
74LS244
D0 O1 I1 D1 O2 I2 D2 O3 I3 D3 O4 I4
#E1
+5V K0~K3
ห้องสมุดไป่ตู้应程序段如下:
……
Seg7 DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H
DB 7FH,67H,77H,7CH,39H,5EH,79H,71H
第六章 输入/输出接口和总线
本章内容
基本概念
I/O端口的编址 输入输出的基本方法:
1、程序控制的输入/输出方法 (又分为:无条件传送和查询式传送或有条件传送)
2、中断方式传送 3、DMA方式传送
中断
中断基本概念
DMA*
DMA的基本概念
6.1 输入/输出接口(I/O接口)
6.1.1 概述
常用芯片:(教材图6.3)
74LS373(具有三态输出的锁存器,内部结构见图 6.3)
应用例子:发光二极管接口
74LS373
+5V
D0~D7 A0~A15 IOW#
D0 |
Q0
=1
R

D7 ...
...
... ...

CP

R
Q7
=1
/OE
GND
输入/输出接口综合应用例子
根据开关状态在7段数码管上显示数字或符号
不同外设具有的端口数各不相同,计算机中为每 一个端口都赋予一个惟一编号——称为端口地址 (或端口号)。
端口有两种编址方式:统一编址和独立编址。
1. 统一编址
地址空间(共1MB)
把外设接口与内存统一进行
0
编址。各占据统一地址空间
的不同部分。
优点
指令统一,灵活; 访问控制信号统一,使用同一
总线是计算机系统各部件之间传输地址、 数据和控制信息的通道。
任一时刻,只能有一个部件/设备通过总 线发送数据,其他部件只能处于接收状 态。
总线的分类及特点
按传送信息的类型划分
数据总线(Data Bus,DB)
传输数据信息,双向三态 其宽度决定了其数据传输能力
例如,ISA总线为16位,PCI总线为32/64位
A2 A1 A0
IOR
74LS138
&G
Y0
≥1
G2A
G2B
C
Y3
B
A
D5
≥1 3F8H
74LS374
D7-D0 Q7 Q6 Q5 Q4 Q3 Q2 Q1
CP Q0 OE
3FBH
≥1
BUSY Q S D
Q CP 状态端口
D7 外 D6 设
D5 D4 D3 D2 D1 D0
STROBE
程序段?
6.3.3 中断方式传送
用74LS273作为输出接口,把数据送到7段数码管
74LS273的端口地址假设为F0H
用74LS244作为输入口,读入开关K0~K3的状态
74LS244的端口地址假设为F1H
当开关的状态分别为0000~1111时,在7段数码管上 对应显示’0’~’F’
(7段码表见下页)
符号 ’0’ ’1’ ’2’ ’3’ ’4’ ’5’ ’6’ ’7’
DMA传送原理示意图
CPU
②⑥
HOLD
HLDA
③⑦
DMAC

DRQ
DACK

外设接口
AEN IOW IOR
AEN MEMW MEMR
IOW IOR AEN MEMW MEMR IOW IOR
MEMW MEMR
系统总线

① 外设发出DMA请求 ② DMAC向CPU申请总线 ③ CPU完成当前总线周期后响应,并释放总线控制权 ④ DMAC得到总线控制权,并发出DMA响应信号 ⑤ 由DMAC发出各种控制信号,控制外设与存储器之
I/O地址空间
0000H
内存空间 (1MB)
FFFFH
I/O空间 (64KB)
FFFFFH
例如:8088/8086系统
MEMR、MEMW
8
存储器访问
0
A19-A0
8
6 总
IOR、IOW 、AEN
I/O访问
线
A9-A0
8088/8086 CPU的I/O编址方式
采用I/O独立编址方式(但地址线与存储器共用)
组的地址/控制信号。
缺点
内存可用地址空间减小
EFFFFH F0000H
FFFFFH
内存地址 (960KB)
I/O地址 (64KB)
2. 独立编址
外设地址空间和内存地址空间相互独立。
优点:内存地址空间不受I/O编址的影响
缺点:I/O指令功能较弱,使用不同的读写控制信号
内存地址空间
00000H
F0H = 0000 0000 1111 0000 F1H = 0000 0000 1111 0001
D0~D7
IOW#
译码电路
≥1
A7~A4
A15~A8
A3 A2 A1 A0
74LS138
&G Y0
≥1 G2A
G2B
C B
Y1
A
IOR#
≥1
74LS273
7406 Rx8
D0 Q0
a
| Q1
8个
b
适用于总是处于准备好状态的外设 以下外设可采用无条件传送方式:
开关 发光器件(如发光二极管、7段数码管、灯泡等) 继电器 步进电机
优点:软件及接口硬件简单 缺点:只适用于简单外设,适应范围较窄
6.3.2 查询方式传送
适用于外设并不总是准备好,而且对传送速 率、传送效率要求不高的场合。
地址总线(Address Bus,AB)
传输地址信息,单向三态 其宽度决定了微机系统的寻址能力
例如,ISA为24位,可寻址16MB;PCI为32/64位,可寻址 4GB/224TB
控制总线(Control Bus,CB)
传输控制信号、时序信号和状态信号 特点各异:三态、入/出/双向等特性均不相同
什么是I/O接口?
把外设连接到总线上的一组逻辑电路的总称。实现外设与主机之 间的信息交换。
I/O接口要解决的问题
速度匹配(Buffer) 信号电平和驱动能力(电平转换器、驱动器) 信号形式匹配(A/D、D/A) 信息格式(字节流、块、数据包、帧) 时序匹配(定时关系) 总线隔离(三态门)
串行
数据按位进行传送 速度慢、距离远、成本低 例: PC机的串行接口(通常用于串行通信)
6.2 简单接口电路
6.2.1 接口电路的基本结构
译码
AB
电路
接 主 DB 机
CB
控制
逻辑
数据输入寄存器 (or 三态门)
数据输出寄存器 (锁存器)
状态寄存器 (or 三态门)
命令寄存器
数据线
接 状态线 外
例如: 某外设接口有4个端口,地址为2F0H~2F3H, 则其基地址为2F0H,由A15~A2译码得到,而A1、A0用 来确定4个端口中的某一个。
6.1.4 I/O数据的传送方式
并行
一个数据单位(通常为字节)的各位同时传送 速度快、距离短、成本高 例:PC机的并行接口(通常用于连接打印机)
形状
7段码 .gfedcba
00111111 00000110 01011011 01001111 01100110 01101101 01111101 00000111
符号 ’8’ ’9’ ’A’ ’B’ ’C’ ’D’ ’E’ ’F’
形状
7段码 .gfedcba
01111111 01100111 01110111 01111100 00111001 01011110 01111001 01110001

数据输出接口
常用锁存器实现
三态门:高电平、低电平、高阻态
通常一个器件中包含8个三态门 常用芯片:74LS244(见241页) 应用例子:开关接口
工作波形图如下:
A0~A15 IOR#
译码输出
D0~D7
地址有效 开关状态
简单的输入接口举例
接口电路图如下:
D0-D7
译码器
IOR
A2 A3 A4

控制线
数据输入/输出寄存器——暂存输入/输出的 数据
命令寄存器——存放控制命令,用来设定接 口功能、工作参数和工作方式。
状态寄存器——保存外设当前状态,以供 CPU读取。
简单接口电路
数据输入接口
必须具有三态输出能力,以便与总线挂接 外设有数据保持能力时—可用三态门实现 外设无数据保持能力时—用三态输出的锁存器实
……
LEA BX, Seg7
;取7段码表基地址
MOV AH, 0
;先清零,以后要和AL联合使用
GO: MOV DX, 0F1H
;开关接口的地址为F1H
IN
AL, DX
;读入开关状态
AND AL, 0FH
;保留低4位
MOV SI, AX
;作为7段码表的表内位移量
相关主题