当前位置:
文档之家› 微机原理与接口技术 南京信息工程大学第6章-输入输出技术
微机原理与接口技术 南京信息工程大学第6章-输入输出技术
12
6.2.1 I/O端口
数据端口 端口包括缓冲器、锁存器
存放外设与CPU之间交换的数据,是主机与外设之间交 换的最基本信息,主要起数据缓冲作用。
状态端口
反映外设的状态
反映外设的工作状态。通过接口向CPU传送,用READY 信号表示设备是否准备就绪;用BUSY表示输出设备是否可以 接受数据。
命令端口
(AL) = (28H端口) = 0AFH
(AH) = (29H端口) = 50H 若(300H端口)=69H,执行 MOV DX, 300H 后 IN AL,DX
(AL) = (300H端口) = 69H
23
IN AL, 21H
24
累加器专用传送指令
OUT 指令 将AL或AX中的内容传送到一个输出端口 指令格式 含义
19
I/O端口的编址方法
8086是哪一种编址方式?存储器统一编址或端口独立编 址? 第三章指令系统中介绍过IN和OUT指令,用于端口的 数据传送,采用端口独立编址方式。 8 0 8 6 总 线
MEMR、MEMW
A19-A0
IOR、IOW 、AEN
存储器
A15-A0
输入/输出
20
I/O端口的编址方法
1A1 2Y4 1A2 2Y3 1A3 2Y2 1A4 2Y1
1Y1 2A4 1Y2 2A3 1Y3 2A2 1Y4 2A1
18 17 16 15 14 13 12 11
2G 1G
74LS244
31
74LS245
双向的8路数据缓冲器
G:低电平有效的 门控输入端
DIR:方向控制端, 1:A→B,0:B→A
NUIST
第6章 输入输出接口技术
第6章 输入输出接口技术
I/O接口概述
I/O端口及其编址方法
输入/输出方式及其接口
2
NUIST
6.1 I/O接口概述
微型计算机系统 主 机 CPU子系统
信息处理与控制 信息存储
存储器子系统
与CPU进行数据交换
I/O子系统
3
6.1 I/O接口概述
微机系统接口框图: 由接口挂接 I/O设备与 CPU,有两个侧面, CPU 一个面向CPU,一个 面向外设
地址重叠 I/O端口
MOV [0], AL
0
n-1 存储器
0 把AL的内容送到地址为DS:0的存储单元。 n-1 IN [0], AL
把AL的内容送到地址为0的端口。
m-1
18
编址方法对比
存储器统一编址 优点 简化了指令系统的设计 对端口的操作更灵活 缺点 I/O端口占用存储单元 的地址空间 端口独立编址 优点 I/O和访问存储器的指 令分开,程序可读性好 I/O指令短,执行速度 快 I/O端口不要占用内存 空间 I/O译码电路简单 缺点 需要专门的I/O指令和 控制信号
OUT port,AL
OUT DX,AL OUT DX,AX
(AL)→ (port端口)
(AL)→((DX)端口) (AL)→((DX)端口,(AH)→((DX)+1端口)
OUT port,AX (AL)→(port 端口),(AH)→(port +1端口)
若端口地址超过255时,则必须用DX保存端口地址,这样用 DX作端口寻址最多可寻找64K个端口。
存放CPU发出的命令字
CPU通过接口传送给外设的,CPU通过控制信息控制外 设的工作。如控制外设的启动和停止等。
13
6.2.1 I/O端口
接口
接CPU的DB 接CPU的AB 接CPU的CB
数据输入寄存器 (数据端口) 数据输出寄存器 (数据端口) 状态寄存器 (状态端口) 控制寄存器 (命令端口) 主机与外设连接示意图
程序控制传输方式
输出过程
执行指令 OUT 34H,AL; (AL)=12H
12H 12H 锁存器 (8)
到输出外设
数据总线 34H 地址译码 1
0 M/IO
地址总线
0 WR 当快速的外设做好接收数据的准备工作 后,再把数据取走。
I/O端口
0
n− 1 n
把BL的内容送到地址为PORT1的端口。
MOV [PORT2], BL; n≤ PORT2≤m−1 把BL的内容送到地址为PORT2的存储单元。
17
存储器 m−1
I/O端口的编址方法
端口独立编址 把I/O端口看成是独立于存储器的I/O空间。I/O端口的地址 可以与存储器相同。 靠指令区分对存储器操作还是I/O端口操作。
所以端口必须编址才能进行读写操作!
15
6.2
I/O端口及其编址方法
1
I/O端口
2
I/O端口的编址方法
16
I/O端口的编址方法
主机在进行I/O操作时需要区分不同的端口,因此需要 给每个端口分配一个地址。 存储器统一编址 与存储器统一编址就是把一个端口当成一个存储器单元 对待,主机访问端口与访问存储器完全一样。如 MOV [PORT1], BL; 0≤ PORT1≤n−1
33
3 4 7 8 13 14 17 18 11 1
D0 D1 D2 D3 D4 D5 D6 D7 OE G
Q0 Q1 Q2 Q3 Q4 Q5 Q6 Q7
2 5 6 9 12 15 16 19
74LS737
6.3
输入/输出方式及其接口
1 2 3 4
程序控制传输方式 中断传输方式
DMA方式
4种I/O方式的比较
(AL)←(port端口)
(AL)← (port端口),(AH)←(port+1端口) (AL)←((DX)端口) (AL)←((DX)端口),(AH)←((DX)+1端口)
22
累加器专用传送指令
若(28H端口)=1010 1111B,执行 IN AL,28H 后 (AL) = (28H端口) = 0AFH 若(28H端口)=1010 1111B,(29H端口)= 0101 0000B 执行 IN AX,28H 后
端口地址
0000 0001 00FE …
端口
** ** ** ** ** ** … ** ** …
备注
存储器地址 00000 00001 000FE 00100 00101 0FFFE 0FFFF … …
存储单元 ** ** … ** ** ** … ** **
64K
00FF 0100 0101 FFFE FFFF …
输入过程
执行指令 IN AL, 34H; (34H)=12H
三态 缓冲器 (8)
12H
数据总线
地址译码 34H 地址总线
来自输入设备 的数据
1
0 M/IO
0 RD 在输入数据时,不允许多个外设同时把数据送到数据总 线上,以免引起总线竞争而毁坏总线,为此必须在输入 寄存器和数据总线之间放一个缓冲器,只有CPU发出的 选通命令到达时,特定的输入缓冲器才被选通,外设送 来的数据才抵达数据总线。 36
2 3 4 5 6 7 8 9
A0 A1 A2 A3 A4 A5 A6 A7 G DIR
B0 B1 B2 B3 B4 B5 B6 B7
18 17 16 15 14 13 12 11
19 1
74LS245
32
74LS373
锁存器具有暂存数据的能力,能在数据传输过程中将数据 锁存住,在此后的任何时间,在输出信号的作用下将数据传输 出去。 74LS373有两个控制输入端: OE 0 0 0 1 G 1 1 0 X D 1 0 X X Q 1 0 锁存 高阻 输出允许端OE 输入使能端G
25
累加器专用传送指令
若(AL)=1100 1100B,执行 OUT 21H,AL 后 (21H端口) = (AL) = 0CCH 若(AL)=1010 0110B,执行 MOV DX, 21BH 后 OUT DX,AL (21BH端口)= (AL) = 0A6H
26
OUT 43H, AL
27
课堂练习
点阵打印机 激光打印机 喷墨打印机 X-Y记录仪 CRT显示器 液晶显示器 绘图仪
硬盘 光盘 软驱 U盘
4
6.1 I/O接口概述
CPU和I/O设备之间的信号种类
数字量:由键盘、磁盘等输入的信息,或是主机从给打印机、 磁盘、显示器的信息,通常以二进制形式的数据或ASCII码表 示的数据及字符。
模拟量:如果一个微机系统是用于控制的,则多数情况下的 输入信息是连续变化的模拟量,如温、压力、流量等。这些 信息需要经过A/D转换才能输入计算机处理;相反计算机输出 的数字量要经过D/A转换,变成模拟量才能控制现场设备。 开关量:通常表示两个状态,如开关的闭合、电机的运转和 停止等,这些量用1位二进制表示即可。
34
程序控制传输方式
主机直接通过I/O指令对I/O接口进行操作访问,主机与外设 交换信息的每个过程均在程序中表示出来。
无条件传输方式(同步方式)
当确信外设总是处于准备好或空闲状态,即外设与主机同 步,则主机无需询问接口的状态,可以直接由I/O指令访问相应 的I/O端口,输入或输出数据。
35
程序控制传输方式
10
NUIST
6.2
:
I/O端口及其编址方法
1
I/O端口
2
I/O端口的编址方法
11
6.2.1 I/O端口
接口功能的实现——交换各种信息 为了完成CPU与外设之间的信息交换,通常在接口部件中 要传送三种信息:数据信息、状态信息、控制信息。
这三种信息都通过接口电路传送,分别送入不同的寄存器, 这些寄存器和它们的逻辑控制电路统称为I/O端口。 传送这三类信息的端口分别叫做:数据端口、状态端口、 控制(命令)端口。