微型计算机课件-05

上传人:j****9 文档编号:54606003 上传时间:2018-09-15 格式:PPT 页数:70 大小:1.51MB
返回 下载 相关 举报
微型计算机课件-05_第1页
第1页 / 共70页
微型计算机课件-05_第2页
第2页 / 共70页
微型计算机课件-05_第3页
第3页 / 共70页
微型计算机课件-05_第4页
第4页 / 共70页
微型计算机课件-05_第5页
第5页 / 共70页
点击查看更多>>
资源描述

《微型计算机课件-05》由会员分享,可在线阅读,更多相关《微型计算机课件-05(70页珍藏版)》请在金锄头文库上搜索。

1、第 5 章,微型机和外设的 数据传输,第5章 微型计算机和外设的数据传输,教学重点I/O接口电路的典型结构无条件传送方式查询传送方式中断工作过程,存储器都是用来保存信息的,功能单一,传送方式单一(一次必定是传送1个字节或者1个字),品种很有限(只有只读类型和可读/可写类型),存取速度基本上和CPU的工作速度匹配。 微机的外部设备多种多样 工作原理、驱动方式、信息格式、以及工作速度方面彼此差别很大 它们不能与CPU直接相连 必须经过中间电路再与系统相连 这部分电路被称为I/O接口电路,通过接口电路对输入/输出过程起一个缓冲和联络的作用。 注:接口电路完成相应的信号转换、速度匹配、数据缓冲等功能,

2、多种外设,5.1 为什么要用接口电路,5.2 接口电路的概述,什么是接口技术?,连接计算机系统中的各种功能部件,构成一个完整的、实用的计算机系统,这是接口技术的广义定义。依次定义,实现处理器到系统总线连接的总线驱动器、数据收发器、时钟电路等称为处理器接口。此外,还有RAM接口、ROM接口、外部设备接口等等。更为流行的观点认为接口技术是把由处理器、RAM、ROM等组成的基本系统与外部设备连接起来,从而实现计算机与外部世界通讯的一门 技术,即仅指I/O设备接口技术。,什么是I/O接口(电路)? I/O接口是位于系统与外设间、用来协助完成数据传送和控制任务的逻辑电路 PC机系统板的可编程接口芯片、I

3、/O总线槽的电路板(适配器)都是接口电路,5.2 接口电路的概述(续),什么是微机接口技术? 处理微机系统与外设间联系的技术 注意其软硬结合的特点 根据应用系统的需要,使用和构造相应的接口电路,编制配套的接口程序,支持和连接有关的设备,5.2 接口电路的概述(续),5.2 接口功能, 寻址能力:对送来的片选信号进行识别。 输入/输出功能:根据读/写信号决定当前进行的是输入操作还是输出操作。 数据转换功能:并行数据向串行数据的转换或串行数据向并行数据的转换。 联络功能:就绪信号,忙信号等。 中断管理:发出中斯请求信号、接收中断响应信号、发送中断类型码的功能。并具有优先级管理功能。 复位:接收复位

4、信号,从而使接口本身以及所连的外设进行重新启动。 可编程:用软件来决定其工作方式,用软件来设置有关的控制信号。 错误检测:一类是传输错误。另一类是覆盖错误。 注:一些接口还可根据具体情况设置其它的检测信息。,5.3 I/O接口与系统的连接,(1) 数据信息 CPU和外设交换的基本信息,包括三种形式:数字量、模拟量 、开关量。 (2) 状态信息 是外设通过接口往CPU传送的,反映了当前外设的工作状态。如:“准备好”(READY)信号、“忙”(BUSY)信号 (3) 控制信息 是CPU通过接口传送给外设的相关控制信息。 如:外设的启动信号、停止信号就是常见的控制信息。,1CPU与I/O设备之间的信

5、号(三类),5.3 I/O接口与系统的连接(续),数据端口、控制端口、状态端口 CPU和外设进行数据传输时,各类信息在接口中进入不同的寄存器,一般称这些寄存器为I/O端口,每个端口有一个端口地址。用于对来自CPU和内存的数据或者送往CPU和内存的数据起缓冲作用的,这些端口叫数据端口。用来存放外部设备或者接口部件本身的状态,称为状态端口。用来存放CPU发出的命令,以便控制接口和设备的动作,这类端口叫控制端口。如下图,2接口部件的I/O端口,注: 输入还是输出,所用到的地址总是对端口而言的,不是对接口部件而言的。 为了节省地址空间,将数据输入端口和数据输出端口对应同一个端口地址。同样,状态端口和控

6、制端口也常用同一个端口地址。 CPU对外设的输入/输出操作就归结为对接口芯片各端口的读/写操作。,2接口部件的I/O端口(续),第5章: I/O接口的典型结构,1. 接口电路的内部结构 2. 接口电路的外部特性 3. 接口电路芯片的分类 4. 接口电路的可编程性,CPU与外设主要有数据、状态和控制信息需要相互交换,于是从应用角度看内部: 数据寄存器 输入数据寄存器:保存外设给CPU的数据 输出数据寄存器:保存CPU给外设的数据 状态寄存器 保存外设或接口电路的状态 控制寄存器 保存CPU给外设或接口电路的命令,2接口部件的I/O端口(续),3接口与系统的连接,接口电路位于CPU与外设之间,从结

7、构上看,可以把一个接口分为两个部分。 用来和I/O设备相连; 用来和系统总线相连,这部分接口电路结构类似,连在同一总线上。 下图是一个典型的I/O接口和外部电路的连接图:,3接口与系统的连接(续),联络信号:读/写信号,以便决定数据传输方向。 地址译码器,片选信号:地址译码器除了接收地址信号外,还用来区分I/0地址空间和内存地址空间的信号(M/ I0)用于译码过程。,注: 一个接口通常有若干个寄存器可读/写, 一般用1-2位低位地址结合读/写信号来实现对接口内部寄存器的寻址。,4输入输出的寻址方式,接口电路占用的I/O端口有两类编排形式 I/O端口单独编址 I/O地址空间独立于存储地址空间 如

8、8086/8088 I/O端口与存储器统一编址 它们共享一个地址空间 如M6800,I/O端口与存储器统一编址,优点: 不需要专门的I/O指令 I/O数据存取与存储器数据存取一样灵活 缺点: I/O端口要占去部分存储器地址空间 程序不易阅读(不易分清访存和访问外设),优点: I/O端口的地址空间独立 控制和地址译码电路相对简单 专门的I/O指令使程序清晰易读 缺点: I/O指令没有存储器指令丰富,80x86采用I/O端口独立编址,I/O端口单独编址,8088/8086的输入输出指令,输入指令(IN:将外设数据传送给CPU内的AL/AX) IN AL,i8 ;字节输入 IN AL,DX ;字节输

9、入 IN AX,i8 ;字输入 IN AX,DX ;字输入 输出指令(OUT:将CPU内的AL/AX数据传送给外设) OUT i8,AL ;字节输出 OUT DX,AL ;字节输出 OUT i8,AX ;字输出 OUT DX,AX ;字输出,演示,演示,8088/8086的I/O端口,8088只能通过输入输出指令与外设进行数据交换;呈现给程序员的外设是端口(Port),即I/O地址 8086用于寻址外设端口的地址线为16条,端口最多为21665536(64K)个,端口号为0000H FFFFH 每个端口用于传送一个字节的外设数据,I/O寻址方式,8088/8086的端口有64K个,无需分段,设

10、计有两种寻址方式 直接寻址:只用于寻址00H FFH前256个端口,操作数i8表示端口号 间接寻址:可用于寻址全部64K个端口,DX寄存器的值就是端口号 对大于FFH的端口只能采用间接寻址方式,数据交换方式,如果输入输出一个字节,利用AL寄存器 如果输入输出一个字,利用AX寄存器 输入一个字,实际上是从连续两个端口输入两个字节,分别送AL(对应低地址端口)和AH(对应高地址端口) 输出一个字,实际上是将AL(对应低地址端口)和AH(对应高地址端口)两个字节的内容输出给连续两个端口,5.4 CPU和外设之间的数据传送方式,程序控制下的数据传送通过CPU执行程序中的I/O指令来完成传送,又分为:无

11、条件传送、查询传送、中断传送 直接存储器存取(DMA)传送请求由外设向DMA控制器(DMAC)提出,后者向CPU申请总线,最后DMAC利用系统总线来完成外设和存储器间的数据传送 I/O处理机CPU委托专门的I/O处理机来管理外设,完成传送和相应的数据处理,第5章:1. 无条件传送方式及其接口,在CPU与慢速变化的设备交换数据时,可以认为它们总是处于“就绪”状态,随时可以进行数据传送,这就是无条件传送,或称立即传送、同步传送 适合于简单设备,如LED数码管、按键或按纽等 无条件传送的接口和操作均十分简单 这种传送有前提:外设必须随时就绪,流程,第5章:无条件传送:输入示例,MOV DX, 160

12、H IN AL, DX,第5章:无条件传送:输入实例,MOV DX, 160H IN AL, DX,第5章:无条件传送:输出示例,MOV DX, 160H MOV AL, BX OUT DX, AL,第5章:无条件传送:输出实例,MOV DX, 160H MOV AL, BX OUT DX, AL,第5章:无条件传送:输入输出接口,next: mov dx,8000h ;DX指向数据端口in al,dx ;从输入端口读开关状态not al ;反相out dx,al ;送输出端口显示call delay ;调子程序延时jmp next ;重复,又称查询方式,即通过程序查询相应设备的状态,若状态不

13、符合,则CPU不能进行输入/输出操作,需要等待;只有当状态信号符合要求时,CPU才能进行相应的输入/输出操作。,第5章:2. 条件传送方式,一般外设均可以提供一些反映其状态的信号,如对输入设备来说,它能够提供“准备好”(“READY”)信号,“READY” 1 表示输入数据已准备好。输出设备则提供“忙”(“BUSY”)信号,“BUSY”1表示当前时刻不能接收CPU来的数据,只有当“BUSY”0时,才表明它可以接受来自于CPU的输出数据。,第5章:2. 条件传送方式(续),CPU需要先了解(查询)外设的工作状态,然后在外设可以交换信息的情况下(就绪)实现数据输入或输出 对多个外设的情况,则CPU

14、按一定顺序依次查询(轮询)。先查询的外设将优先进行数据交换 查询传送的特点是:工作可靠,适用面宽,但传送效率低,就绪?,第5章:条件传送的两个环节, 查询环节 寻址状态口 读取状态寄存器的标志位 若不就绪就继续查询,直至就绪 传送环节 寻址数据口 是输入,通过输入指令从数据端口读入数据 是输出,通过输出指令向数据端口输出数据,流程,第5章:查询输入接口,mov dx,8000h ;DX指向状态端口 status: in al,dx ;读状态端口test al,01h ;测试标志位D0jz status ;D00,未就绪,继续查询inc dx ;D01,就绪,DX指向数据端口in al,dx ;

15、从数据端口输入数据,第5章: 查询输出接口,mov dx,8000h ;DX指向状态端口 status: in al,dx ;读取状态端口的状态数据test al,80h ;测试标志位D7jnz status ;D71,未就绪,继续查询inc dx ;D70,就绪,DX指向数据端口mov al,buf ;变量buf送ALout dx,al ;将数据输出给数据端口,第5章: 条件传送举例,例1. 假定接口的数据输入端口地址为0052H,数据输出端口地址为0054H,状态端口地址为0056H,并且设定如果状态寄存器中第1位为1,则表示输入缓冲器中已经有1个字节准备好,可以进行输入。此外,还设定如果

16、状态寄存器的第0位为1,则表示输出缓冲器已经腾空,因而CPU可以往终端输出数据。,程序:,DATA_SEG SEGMENT MESSAGE DB BUFFER OVERFLOW,0DH,0AH DATA_SEG ENDS COM_SEG SEGMENT BUFFER DB 82 DUP(?) COUNT DB ? COM_SEG ENDS CODE SEGMENT ASSEME DS:DATA_SEG, ES:COM_SEG, CS:CODE STAT: MOV AX,DATA_SEGMOV DS,AXMOV AX, COM_SEG,程序(续):,MOV ES,AX MOV DI, OFFEST BUFFERMOV COUNT, DIMOV CX, 81CLD NEXT_IN: IN AL, 56HTEST AL, 02HJZ NEXT_ININ AL, 52HOR AL, 0JPE NO_ERRORJMP ERROR NO_ERROR: AND AL, 7FH STOSB,

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

当前位置:首页 > 中学教育 > 初中教育

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