微机原理 第06章 IO接口和总线综述

上传人:我** 文档编号:117223729 上传时间:2019-12-05 格式:PPT 页数:31 大小:352.50KB
返回 下载 相关 举报
微机原理 第06章 IO接口和总线综述_第1页
第1页 / 共31页
微机原理 第06章 IO接口和总线综述_第2页
第2页 / 共31页
微机原理 第06章 IO接口和总线综述_第3页
第3页 / 共31页
微机原理 第06章 IO接口和总线综述_第4页
第4页 / 共31页
微机原理 第06章 IO接口和总线综述_第5页
第5页 / 共31页
点击查看更多>>
资源描述

《微机原理 第06章 IO接口和总线综述》由会员分享,可在线阅读,更多相关《微机原理 第06章 IO接口和总线综述(31页珍藏版)》请在金锄头文库上搜索。

1、第第 六六 章章 I/OI/O接口和总线接口和总线 6-1 I/O6-1 I/O接口接口 6-2 总线总线 学习目的学习目的 通过对本章的学习,您应该能够达到下列要求 : n 端口的功能、种类、编址方式 n CPU与外设交换数据 n 查询式传送软硬件设计 n 总线的概念、分类,PC总线 重点与难点 n输入缓冲、输出锁存的概念 nCPU与外设交换数据的方式 n查询方式 6-1 I/O6-1 I/O接口接口 一、I/O接口的功 能 1、采用I/O接口的必要性 n计算机目的是进行信息处理,需要输入原始信息 并输出运算结果,需要输入/输出外部设备。 n外设种类多:机械、电子、电动等,信息格式、 内容多

2、种多样。 n速度不匹配:高速硬盘,低速打印机,键盘。 n信号电平不匹配:CPU为TTL电平,外设有 DC24V继电器、AC220V接触器等。 n信号格式不匹配:CPU为8/16位并行总线,外设 有串行、并行、数字信号、模拟信号。 n时序不匹配:外设有自己的操作逻辑,不同于 CPU 2、接口的功能 n设置数据缓冲以解决速度不匹配:在CPU与外设 之间设置缓冲区,发送方可把数据存放在缓冲区 中,接收方再从缓冲区中读取数据。CPU与外设 交换数据不必总是联合进行,增加灵活性。 n设置电平转换电路:实现TTL电平与外设信号电 平之间的转换,例如RS-232 n设置信息转换逻辑以满足对各自格式的要求:例

3、 如A/D转换器、D/A转换器、总线控制器 n设置时序控制电路来同步CPU和外设的工作:设 计握手信号(准备好、出错) n提供地址译码电路:多个外设、多个端口的区分 。 二、简单的输入输出接口芯片 1、缓冲器74LS244和74LS245 n输入缓冲的概念: 考虑CPU从1#、2#、3#三个外设读取数据。 1#2#3# CPU总线 当CPU读取1#的数据时,要求2#、3#不能影响总线 上的数值,即要求2#、3#与总线之间处于高阻状态 ,同时1#的数据要正确传送到总线上。 CPU与输入外设之间的三态门就是输入缓冲器,其 输入是专用的,但输出是共用的。 (1)74LS244 n双4单向缓冲器,输入

4、端为1A11A4、2A12A4 ,输出端为1Y11Y4、2Y12Y4。 n两个使能控制引脚1G、2G, 1G=01Y=1A,1G=11Y与1A之间为高阻态 。 2G=02Y=2A,2G=12Y与2A之间为高阻态 。 (2)74LS245(类似Intel 8286) n8位双向缓冲器,输入/输出端为A1A8、B1B8 。 n一个使能控制引脚G, G=0A1A8=B1B8, G=1A1A8与B1B8之间为高阻态。 n一个传送方向控制引脚DIR DIR=1AB,DIR=0AB 2、锁存器74LS373 n输出锁存的概念: 1#2#3# CPU总线(公用) 1#专用 2#专用 3#专用 当CPU写数据

5、到1#时, 要求不能影响2#、3#的 专用信号数值,即要求 2#、3#能保持原来的数 值,这就要求接口具有 锁存功能。 从接口角度看,锁存器 用于一个公用输入信号 多个专用输出信号的 情况下。 OEGDO 0111(直通状态,O = D) 0100(直通状态, O = D) 00X锁存值,G下降沿对应的D值 1XX与内部线路间为高阻态 2、锁存器74LS373 n具有三态功能的8D锁存器,输入端为1D8D,输 出端为1O8O。 n一个输出使能控制引脚OE n一个输入控制引脚G(数据打入线) 三、三、 I/OI/O端口及其编址方式端口及其编址方式 1.I/O端口 nI/O端口是外设接口电路中CP

6、U访问的寄存器。 nCPU通过对端口的访问来实现对外设的访问。 n根据所存内容不同,接口电路包含以下几种端口 : n数据端口:存放外设与CPU之间要交换的数据, 通常为1个字节或1个字。 n状态端口:存放外设的当前状态,通常有准备好 、出错、忙等。 n命令端口:也叫控制端口,存放CPU对接口电路 的行为逻辑的控制信息,通常有方式控制字、操 作控制字。 n n 每个端口存储一个字节数据,地址相邻的两个每个端口存储一个字节数据,地址相邻的两个 字节端口可以组成一个字端口,低地址存放地字节端口可以组成一个字端口,低地址存放地 字节,高地址存放高字节。字节,高地址存放高字节。 n n 端口的访问用输入

7、输出指令端口的访问用输入输出指令 INAL,portINAX,port OUTport,ALOUTport,AX INAL,DXINAX,DX OUTDX,ALOUTDX,AX n n 访问外设的访问外设的IN/OUTIN/OUT指令与访问存储器的指令与访问存储器的MOVMOV指令指令 硬件的区别在于:硬件的区别在于:M/IOM/IO(对(对80868086)、)、IO/MIO/M(对(对 80888088)。)。 2.I/O端口编址方式 n n CPUCPU通过地址信息区分不同的端口,接口电路中通过地址信息区分不同的端口,接口电路中 要有地址译码功能。要有地址译码功能。CPUCPU有两种处理

8、端口地址的有两种处理端口地址的 方法:统一编址、独立编址。方法:统一编址、独立编址。 n n 存储器映象编址:存储器映象编址: n n 把每个把每个I/OI/O端口当作一个存储器单元,并与存储端口当作一个存储器单元,并与存储 单元统一编址。单元统一编址。 n n 所有访问存储器的指令都可访问所有访问存储器的指令都可访问I/OI/O端口。端口。 n n 地址译码电路简单,占用存储器地址空间。地址译码电路简单,占用存储器地址空间。 n n 例如:例如:MC6800MC6800,5151系列单片机。系列单片机。 n n I/OI/O独立编址:独立编址: n n 把所有把所有I/OI/O端口组成端口组

9、成I/OI/O端口空间,与存储器空端口空间,与存储器空 间相互独立。间相互独立。 n n 用独立的用独立的I/OI/O指令访问指令访问I/OI/O端口。端口。 n n 地址译码电路复杂,不占用存储器地址空间。地址译码电路复杂,不占用存储器地址空间。 n n 例如:例如:INTEL 8088/8086INTEL 8088/8086 n n 在在 8088/8086 8088/8086 系统中,系统中,I/OI/O端口空间使用低端口空间使用低1616 位地址信号位地址信号A0A0 A15A15,总共,总共64kB64kB,而存储器空间,而存储器空间 使用使用2020位地址信号,总共位地址信号,总共

10、1MB1MB。 n n 80868086使用使用M/IOM/IO(80888088用用IO/MIO/M)控制信号来区分)控制信号来区分 I/OI/O端口空间与存储器空间。端口空间与存储器空间。 四、四、 CPUCPU与外设间的数据传输方式与外设间的数据传输方式 1.程序控制方式 nCPU与外设接之间的数据交换完全在程序控 制下实现,包括无条件传送和条件传送两 种方式。 n(1)无条件传送: nCPU直接用 IN 指令从外设读取数据,直接 用 OUT 指令向外设发送数据。 n要求外设总是已经准备好数据,总是准备 好接收数据。 n用于简单的外设,如显示、按键。 按键、开关输入接口按键、开关输入接口

11、 1Y1 1A1 1Y2 1A2 | 2Y4 2A4 1G 2G D0 D1 | D7 M/IO CS RD +5V K1 K2 K8 INAL,port 1G = 2G = 0K1K8AL INM/IO=0,RD=0 Port地址译码后CS=0 最小模式下的总线写操作 ALESTB 把地址信息A0A19从复用 总线上提取出来加以保持 八段码输出接口八段码输出接口 1D 1Q 2D 2Q | 8D 8Q CLK D0 D1 | D7 M/IO CS WR L1 L2 L8 OUT port,AL AL L1L8 OUTM/IO=0,RD=0 Port地址译码后CS=0 CLK = (2)条件传

12、送(查询传送): n一般而言,CPU应该在外设准备好数据以后才读 取数据,应该在外设准备好接收数据以后才发送 数据。 n传送数据前,CPU应该查询外设的当前状态,等 到外设准备好以后才开始传送。 n除数据端口以外,接口电路还需要另有一个状态 端口以存放外设的当前状态,CPU线先读取该端 口以判断外设是否准备好。 n输入时,数据准备好信号由外设置位,由CPU读 数据操作复位。 n输出时,忙信号由CPU写操作置位,由外设复位 。 输 入 设 备 8位锁 存器 8位缓 冲器 R D Q C +5V 地址 译码 RD RD M/IO CS2 CS1 A15A0 D0 READY 查询式输入接口电路 D

13、7D0 选通 信号 查询式输入程序流程图 初始化 读入状态 准备好? 读入数据A 数据缓冲区 完毕? 结束 N N 查询式输入程序清单 MOVBX,0;地址指针 MOVCX,COUNT_1;要输入的字节数 READ_S1:INAL,PORT_1;读状态端口 TESTAL,01H;查询准备好信号 JZREAD_S1;没有准备好,循环查询等待 INAL,PORT_2;准备好,读取数据 MOVBUF1BX,AL ;数据存入缓冲区 INCBX;修改指针,指向下一个字节 LOOP READ_S1;未传送完毕,继续传送 ;传送完毕,执行后续指令 输 入 设 备 8位锁 存器 8位缓 冲器 D R Q C

14、+5V 地址 译码 RD RD M/IO CS2 CS1 A15A0 D0 READY 查询式输入工作流程 D7D0 选通 信号 外设准备好 发选通信号 正脉冲,使 数据进入 锁存器;D 触发器反转 Q=D=1。 IN AL,PORT_2 使 得M/IO=0、CS2=0、 RD= 0、缓冲器打开, 数据进入AL中,同时 R=0清除D触发器, READY=Q =0 IN AL,PORT_1 使得M/IO=0、CS1=0、RD=0、三 态门打开,READY=1进入AL中的D0。 四、四、 CPUCPU与外设间的数据传输方式与外设间的数据传输方式 2.DMA方式 (1)、DMA方式的提出 n在程序控

15、制方式下,外设与内存之间的数据交换 要通过累加器中转,至少需要一条IN/OUT指令与 一条MOV指令,还有修改指针、计数器的指令, 不可能快速传递。 n在大多数系统中,硬件操作速度远高于指令执行 时间,若不经过CPU中转,在内存与外设之间直 接传送数据,则可获得很高的传送速度,称为直 接存储器存取方式。 nDMA方式常用于与高速外设之间一次传送大量数 据的场合,如磁盘操作,需要DMA控制器才实现 。 (2 2) DMADMA工作原理工作原理 地址总线 数据总线 控制总线 HLDA HOLD 存 储 器 外 设 地址总线 数据总线 控制总线 控制总线 HLDA HRQ DREQ DACK DMA

16、C CPU (2 2) DMADMA工作原理工作原理 n外设通过DREQ向DMAC请求DMA操作,DMAC 据此向CPU发出HREQ信号。 nCPU收到HOLD信号,执行完当前指令,进入总 线响应周期,释放总线使CPU内部与三总线 之间处于高阻状态,并给出总线保持应答HLDA 。 nDMAC收到HLDA以后,接管总线撤销其内 部电路与三总线的高阻状态,向存储器输出地址 信息,制定传送数据单元,发DACK到外设。 n外设收到DACK后,即准备好收发数据。 nDMAC控制数据传送过程。 n传送完毕,DMAC撤销HREQ,CPU接管总线, 撤销HLDA,DMAC再撤销DACK,结束。 五、 PC机 I/O 端口地址分配 0000 001F 0020 003F 0040 005F 0060 007F 0080 009F 00A0 00BF 0080 01FF 32字节 320字节 32字节 32字节 32字节 32字节 32字节 0000000F82

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

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

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