输入与输出课件
更新时间:2022-09-29 06:20:58 阅读: 评论:0
第7章输入与输出(I/O)
本章主要教学内容
输入输出接口的基本概念
I/O端口的寻址方式
输入/输出数据的传输控制方式
本章教学目的及要求
掌握输入/输出接口电路的基本概念;
掌握I/O端口的编址方法和特点及其地址译码方法;
了解PC机的I/O端口地址分配情况;
掌握CPU与外设数据传送的控制方法。
7.1输入输出(I/O)接口的基本概念
程序、原始数据和各种现场信息需要输入计算机;
计算结果或给出的各种控制信号需要输出进行显示、打印和实现动作控制;
CPU与外设之间的信息交换需通过I/O接口来实现。
CPU
RAM
ROM
I/O接口
I/O接口
I/O接口
I/O接口
外存
输入设备
输出设备
过程通道
7.1.1I/O接口的定义及功能
1.I/O接口的定义
接口的基本意思是交接界面(Interface),在计算机中指不同硬件或软件之间的连接部分;
I/O接口指设置在主机与外设之间,使两者协调工作的连接电路;
I/O接口在CPU和外设之间建立一个缓冲隔离区,解决两者在数据形式、数据的传递方式以及传输速率等方面存在很大差异的矛盾。
7.1.2接口电路中的信息
数据信息是CPU与外设交换的基本信息和最终目的,通常是8位和16位。
根据类型可分为:数字型,模拟型,开关型及脉冲型等;
数据的传送可以是输入,也可以是输出。
状态信息反映外设当前的工作状态。
对于输入设备,通常用数据准备就绪(READY)表示待输入数据已准备好;
对于输出设备,通常用忙碌(BUSY)表示外设是否处于空闲状态;
状态信息通过接口送往CPU,CPU在数据就绪和外设不忙的情况下才进行I/O操作。
控制信息是用于控制接口和外设工作的信息。
控制信息由CPU送给接口和外设。
7.1.3端口的概念
接口电路中传输的数据、状态和控制信息是不同性质的信息,需要区别对待;
CPU通过接口与外设交换信息时,对于三种不同性质的信息都用相同的IN、OUT指令以数据的形式通过数据总线进行传递;
CPU与多个接口电路相连接,某一时刻只能与一个外设交换一种信息。
接口中要分别设计存储不同信息的寄存器,即端口;
每个端口都有自己独立的地址;
复用端口通过操作顺序或数据特定标志位加以区分;
接口电路的硬件设计对编程不可见,编程时需要清楚端口的分配及其相应的功能。
7.1.4接口的类型
接口电路种类繁多,功能各异;
按通用性划分:专用接口,如显卡、声卡、网卡、键盘和鼠标控制器、以及软、硬盘控制器等;通用接口可供多种外设使用,如8255A、8251A等。
按数据传送方式划分:并行接口和串行接口;
按复杂程度划分:大规模集成的,具有标准、系列、智能等特点;分立元件的,自行设计;
接口电路设计存在多种规范,如LPT、COM、USB(板载)和扩展槽的使用,PnP技术等等。
7.2I/O端口的寻址方式
7.2.1I/O端口的编址
1.I/O端口和存储器统一编址
端口地址和存储单元地址共同占用存储器的访问空间;端口输入和输出操作等同于存储器的读和写操作;
优点:不用设置专用的I/O命令;CPU可以用访存命令,以及各种操作数寻址方式对I/O端口操作;
缺点:在地址总线根数一定的情况下,使系统中实际可以直接寻址的内存单元数减少;指令代码较长(端口地址字节多),对提高系统的运行速度不利。
00000H
I/O端口
编址空间
内存空间
FFFFFH
2.I/O端口独立编址
端口地址和存储单元地址分别建立在各自的地址空间,独立寻址;CPU要用专门的I/O指令访问I/O端口。
8088CPU采用I/O端口独立寻址:最小方式时用M/IO信号区分是访问存储器还是IO;最大方式时,用MWRC和MRDC访问存储器,用IOWC和IORC访问端口。
I/O
空间
0000H
FFFFH
00000H
内存空间
FFFFFH
1MB
64KB
7.2.2I/O端口地址译码方法
1.直接地址译码(固定式)
按分配给某接口的地址区域,对部分高位地址译码产生对该接口包含各寄存器(端口)的组选信号,再由低位地址对组内端口译码寻址。
G1Y0
G2A
G2B
C
B
A
IOWC
A5
A6
A7
AEN
A9
A8
Y1
Y2
Y3
Y4
Y5
Y6
Y7
LS02
&
LS02
&
DMACS
INTRCS
T/CCS
PPICS
NMI屏蔽寄存器
DMA页面寄存器
IBMPC系统板上的接口地址译码电路
CS
A9
A7
A6
A5
A8
A4
A3
A2
A1
AEN
分立元件译码电路
2E0H~2E1H