输入输出接口技术

上传人:san****019 文档编号:70356636 上传时间:2019-01-16 格式:PPT 页数:55 大小:1.64MB
返回 下载 相关 举报
输入输出接口技术_第1页
第1页 / 共55页
输入输出接口技术_第2页
第2页 / 共55页
输入输出接口技术_第3页
第3页 / 共55页
输入输出接口技术_第4页
第4页 / 共55页
输入输出接口技术_第5页
第5页 / 共55页
点击查看更多>>
资源描述

《输入输出接口技术》由会员分享,可在线阅读,更多相关《输入输出接口技术(55页珍藏版)》请在金锄头文库上搜索。

1、1,第8讲 微型计算机和外设间的数据传输,苏 放 北京邮电大学 信息与通信工程学院,2,接口技术的基本概念,3,接口技术的基本概念,为什么要用接口电路 解决计算机的高速和外设的低速的矛盾 一般来说,外部设备的工作速度比CPU的速度低许多。如果没有接口,CPU必须长期的等待,才可以和外设配合工作。就会大大降低CPU的工作效率。 解决计算机信号和外设信号的差别。 如模拟和数字的差别、信号电平高低的差别、信号传送方式的差别(并行和串行)等。,4,接口技术,微机系统由连接在系统总线上的CPU,存储器, 外设,接口电路,电源组成。 接口是指CPU和存储器、外部设备之间通过系统总线进行连接的逻辑部件。它

2、是CPU和外界进行信息交换的中转站。 要使这些设备正常工作,一是要设计正确的接口电路,二是要编制相应的软件。 接口技术是采用硬件和软件方法研究微处理器如何与外界进行最佳偶合,实现CPU与外界高效可靠进行信息交换的技术。,5,接口技术的基本概念,接口电路的功能 数据的寄存和缓存:解决外设与主机的速度差距 设备选择功能 :多种设备的选择 信号转换功能 :外设与主机的信号差异 对外设的控制监视功能:操作同步 中断和DMA功能 :解决实时性和并行性问题 可编程功能:灵活性和可扩充性,6,接口技术的基本概念,计算机和存储器之间也是要交换信息的,但计算机和存储器之间并没有专门的接口电路 原因就在于计算机和

3、存储器的工作速度基本上是匹配的,信号的形式也是一致的。如果存储器的速度较慢,可以通过增加等待周期来解决。 而外设和计算机的工作速度相差太大,不可能通过增加等待周期的方式来解决两者速度的不一致。使用接口电路则是必然的。,7,CPU与I/O之间的接口信号,接口电路中的信息 数据信息 数据信息可以有各种形式: 数字量。大多数信息是数字信息,即二进 制信息或者代表字符的ASCII码 开关量。开关量实际是数字信息,但一般只占用一位二进制信息,以表示开关的打开或闭合。 模拟量。通过接口的模拟量,要变换为数字量,再加到计算机。,8,CPU与I/O之间的接口信号,状态信息 状态信息主要是反映外设的工作状态 对

4、于输入设备,可以表示它是否准备好数据,只有数据已准备好,才启动CPU一次读入操作。 对于输出设备,可以反映它是否已经把上一个数据处理完,只有上一个数据处理完,才可以启动CPU的下一次输出操作。 状态信息也可以是CPU传送给外部设备的,传送CPU的状态。 状态信息也称为握手信息。,9,CPU与I/O之间的接口信号,控制信息 控制信息一般是CPU通过接口电路传送给外部设备的,一般控制外部设备的动作。如启动打印机开始打印,启动A/D转换器,开始模拟到数字信号的转换等。 这三种信息,将都通过数据总线在CPU和接口之间传送。 从形式上看,三种信息并没有差别,都是二进制信息。如10000000,既可以是数

5、据信息,代表十进制数128,也可以是一种状态信息,或一种控制信息。,10,端口,接口和端口 为了区分以上所述的三种信息,在接口部件中都包含一组寄存器,分别对应不同的外设地址,CPU和外设交换信息时,将三种不同的信息,送入不同的寄存器: 数据送入数据寄存器,状态信息就送入状态寄存器,等等。 这些寄存器就称为端口(PORT)。不同的端口有不同的地址,不同的端口存放不同的信息。,11,端口及其寻址方式,I/O端口的编址方式 存储器映射方式,即I/O端口和存储器统一编址:即存储器和外设共同分享CPU的寻址空间。一般,存储器占用较多的寻址空间,而外设(I/O接口)占用较少的寻址空间。 在这种情况下,CP

6、U可以用对存储器的操作指令来对外设进行操作,两者对CPU来说,实际上是相同的。即不需要专用的对外设操作的指令。 外设和存储器的区别就在于地址。,12,端口及其寻址方式,I/O映射方式,即I/O端口单独编址 这时,存储器和I/O接口,各自都有自己的地址范围,而且这些地址在数值上可以是重叠的。也就是不能用地址来区别存储器和外设。 此时,必须有专门的I/O操作指令。更实质地说,是需要有用于存储器寻址和外设寻址的不同控制信号。 对8086来说,就是这种情况。用来区别存储器和I/O端口的信号的M/IO:对存储器操作时,此信号为1;对外设操作时,此信号为0。,13,端口及其寻址方式,如果8086工作在最大

7、方式,对外设寻址的控制信号则是IORC和IOWC 。 I/O端口单独编址,使存储器可以使用的地址空间就是CPU的全部寻址范围。对8086,就是1M。 I/O端口单独编址时,可以使用的外设数目由直接参与的地址线的数目来决定。对8086 来说,就是16条地址线,因此,最多可以对65536个外设(或I/O端口)来交换信息。,14,接口技术的基本概念,8086的输入输出指令: 输入:IN AL , n IN AX , n IN AL , DX IN AX , DX 输出:OUT n, AL OUT n, AX OUT DX, AL OUT DX, AX 注:n为8位无符号数,表示只有8条地址线和外设相

8、连,最多寻址256个I/O端口。 用DX表示地址时,最多有16条地址和外设相连,最多寻址65536个端口。,15,CPU和外设之间的数据传送方式,无条件传送方式 无条件是指CPU不管外设的状态,在需要和外设交换信息的时候,就用输入或输出指令和外设交换信息。 在这种方式下,CPU和外设之间只有数据信息的传送,没有状态信息的传送。 但无条件传送,不等于不需要接口电路,只是接口电路可以比较简单,因为只有数据的通道,一般就只有输出锁存器和输入缓冲器。,16,无条件传送方式,控制开关K0K2打开则对应发光二极管Q0Q2亮 开关闭合则对应发光二极管不亮,17,DON:IN AL,IN_PORT ;读入B口

9、开关状态 XOR AL,0FFH ;求反 OUT OUT_PORT,AL ;点亮对应发光二极管 JMP DON HLT,18,输入输出传送方式,一位七段显示器接口电路:,19,输入/输出接口综合应用例子,根据开关状态在7段数码管上显示数字或符号 共阳极7段数码管结构 用74LS273作为输出接口,把数据送到7段数码管 74LS273的地址假设为F0H 用74LS244作为输入口,读入开关K0K3的状态 74LS244的地址假设为F1H 当开关的状态分别为00001111时,在7段数码管上对应显示0F,20,21,O1 I1 O2 I2 O3 I3 O4 I4 #E1,K0K3,+5V,G G2

10、A G2B C B A,1,74LS244,D0 Q0 | Q1 D7 Q2 Q3 Q4 CP Q5 Q6 Q7,a b c d e f g DP,7406,8个 反相器,74LS273,Rx8,1,74LS138,D0D7,IOW#,IOR#,Y0,Y1,F0H = 0000 0000 1111 0000 F1H = 0000 0000 1111 0001,&,1,A7A4,A15A8,A3,A2,A1,A0,D0,D1,D2,D3,译码电路,22,相应程序段如下: Seg7 DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H DB 7FH,67H,77H,7CH,39H,

11、5EH,79H,71H LEA BX, Seg7 ;取7段码表基地址 MOV AH, 0 GO: MOV DX, 0F1H ;开关接口的地址为F1H IN AL, DX ;读入开关状态 AND AL, 0FH ;保留低4位 MOV SI, AX ;作为7段码表的表内位移量 MOV AL, BX+SI ;取7段码 MOV DX, 0F0H ;7段数码管接口的地址为F0H OUT DX, AL JMP GO,23,输入输出传送方式,无条件传送的输入方式:CPU输出地址后,经过地址译码器选通输入缓冲器。 ALE为0,表示非DMA 操作。,24,输入输出传送方式,无条件传送的输出方式:CPU输出地址后

12、,经过地址译码器选通输出锁存器。 ALE为0,表示非DMA 操作。,25,输入输出传送方式,由译码器提供至少一个I/O地址来对端口寻址。 输入口和输出口在这里使用了同一个译码地址。 因为除了一个地址信号以外,还有读、写信号可以参加控制。如当地址有效,读信号有效时,可以选中输入缓冲器;而当地址有效,写信号有效时,则选中输出锁存器。 也可以分别给输出口和输入口各有一个地址。,26,输入输出传送方式,无条件传送使用的场合: 或者是外设的工作速度很快,使得CPU两次读写操作之间的时间,外设肯定可以处理完上次的数据。因此就不需要考虑外设的状态。就象CPU和存储器交换信息。 或者是外设的速度虽然并不很快,

13、但CPU两次读写外设的操作,一定有较长时间的间隔。而这个时间间隔对于处理上一个数据,时间肯定是足够的。,27,输入输出传送方式,例:三路任意波形的输出 用数据线D2 D1 D0输出三路信号。波形的形状由数据段来定义。 数据段: DATA SEGMENT TAB DB 08, 1, 2, 6, 3, 2, 4, 4, 0 PORT EQU 8CH DATA ENDS 其中08表示波形有8个状态。,28,STR: LEA BX, TAB MOV CH, 0 MOV CL, BX ;CL=8 LOP: INC BX MOV AL, BX ;取波形形状 OUT PORT, AL ;输出 PUSH CX

14、 CALL DELAY ;延迟 POP CX LOOP LOP DELAY PROC MOV CX, 2801 WAT: LOOP WAT RET DELAY ENDP,29,输入输出传送方式,以上程序可以使用无条件传送是因为在两次传送之间有一个10ms的延迟。 10ms的延迟既是波形间隔的需要,也保证了输出的稳定性。 实际上,延迟也是一种等待。这种方式的无条件传送,也是通过等待来解决CPU和外设的速度匹配。 但延迟的长短是估计的,要精确地匹配CPU和外设的工作,可以使用查询方式。,30,输入输出传送方式,查询式传送(条件传送方式) 这种方式,CPU要遵循“先查询,后传送”的原则,保证只有在外

15、设已经是在“准备好”状态,才开始传送数据。 查询式传送的一般流程: 先从状态口读入状态字; 如果状态是“准备好”,开始传送; 如果状态是“没有准备好”,则继续查询,直到“准备好”,开始传送。,31,输入输出传送方式,查询式输入:,ready,ready,32,输入输出传送方式,33,输入输出传送方式,图中的“选通信号”就是输入设备发出的状态信号。选通脉冲有效时,触发器输出1。表示输入设备已经将数据准备好。 CPU查询READY信号,有效时,发出输入指令,从数据口读入输入数据。 图中的数据口读选通信号一方面选中数据缓冲器,同时也是CPU的状态信号,它可以清除触发器的输出,使之为0,以便接收下一次的输入数据。,34,输入输出传送方式,查询输入的部分程序: POLL: MOV DX,STATUS_PORT IN AL,DX TEST AL,80H JE POLL MOV DX,DATA_PORT IN AL,DX,35,输入输出传送方式,查询式输出:,36,输入输出传送方式,查询式输出接口电路,37,输入输出传送方式,例:8路模拟信号采集系统 系统有三个端口:331H是状态口,接到A/D转

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号