为了正常的体验网站,请在浏览器设置里面开启Javascript功能!

5.1-2

2011-11-25 30页 ppt 10MB 40阅读

用户头像

is_582800

暂无简介

举报
5.1-2null第六章 输入/输出第六章 输入/输出5.1 概述 5.1.1 外设接口的功能 5.1.2 接口与端口 5.1.3 I/O端口的编址方式 5.2 数据传送的控制方式 5.2.1 程序控制传送方式 本章学习目的本章学习目的掌握输入/输出接口电路的基本概念、掌握I/O端口编址方法和特点。 掌握CPU与外设数据传送的方式。 5.1 概述5.1 概述5.1.1 外设接口的功能 一个简单的微机系统需要CPU、存储器、基本的输入/输出系统以及将它们连接在一起的各种信号线和接口电路...
5.1-2
null第六章 输入/输出第六章 输入/输出5.1 概述 5.1.1 外设接口的功能 5.1.2 接口与端口 5.1.3 I/O端口的编址方式 5.2 数据传送的控制方式 5.2.1 程序控制传送方式 本章学习目的本章学习目的掌握输入/输出接口电路的基本概念、掌握I/O端口编址方法和特点。 掌握CPU与外设数据传送的方式。 5.1 概述5.1 概述5.1.1 外设接口的功能 一个简单的微机系统需要CPU、存储器、基本的输入/输出系统以及将它们连接在一起的各种信号线和接口电路。 外部设备通过接口电路和系统总线相联,接口电路的作用是把计算机输出的信息变成外设能够识别的信息,把外设输入的信息转化成计算机所能接受的信息。 外设接口电路应具有如下功能: 转换信息格式(例如串/并,并/串转换,配备校验位等) 提供联络信号(协调数据传送状态,如:“就绪”、“忙”;数据“满”、“空”等) 协调定时差异(完成计算机与外设之间数据传送处理速度匹配问) (4) 进行译码选址(在具有多台外设的系统中,接口必须提供地址译码功能) (5) 实现电平转换(为使计算机与外设之间电平匹配,接口必须提供电平转换) (6) 具备时序控制(接口必须满足计算机与外设的时序) (7) 最好可编程序(对一些通用的接口,应具有可编程功能) 5.1.2 接口与端口 5.1.2 接口与端口1. 两个概念 接口: 接口是CPU与外设之间传送信息的一个“界面”或一个“连接部件”。外设通过CPU的三总线与CPU连接;同样CPU也是通过三总线与外设进行连接的。接口是由端口组成。 端口: “接口”中可以与CPU进行读写的寄存器被称之为“端口”(Port),按存放的信息的类型,可分为“数据端口”、“状态端口”、“控制端口”。nullCPU与I/O设备之间的接口信息 1).数据(Data) 在微型机中,数据通常为8位、16位或32位。它大致可以分为三种基本类型: (1)数字量 (2)模拟量 (3)开关量 2).状态信息(Status) 在输入时,有输入设备是否准备好(Ready)的状态信息;在输出时,有输出设备是否有空(Empty)的状态信息,若输出设备正在输出,则以忙(Busy)指示等等。 3).控制信息(Control) 控制输入输出设备启动或停止等的状态信息。状态信息和控制信息与数据是不同性质的信息,必须要分别传送。但在大部分微型机中(8086也如此),只有通用的IN和OUT指令,因此,外设的状态也必须作为一种数据输入;而CPU的控制命令也必须作为一种数据输出。所以,一个外设往往要几个端口地址,CPU寻址的是端口,而不是笼统的外设。 5.1.3 I/O端口的编址方式 5.1.3 I/O端口的编址方式一、 I/O端口独立编址 独立编址方式的硬件结构及地址空间分配如下图所示。nullnull独立编址方式的特点:存储器和I/O端口在两个独立的地址空间中,用不同的指令来访问存储器和I/O端口,用MOV指令来访问存储器,用IN和OUT指令来访问I/O端口。 优点: I/O端口的地址码较短,译码电路简单;访问存储器和I/O端口的指令不同,程序比较清晰;存储器和I/O端口的控制结构相互独立,可以分别设计。 缺点:需要专用的IN和OUT指令,而这些指令的功能不如存储器访问指令丰富,程序设计的灵活性较差。null二、存储器映象编址(统一编址) 在这种方式中,把一个外设端口作为存储器的一个单元来对待,故每一个外设端口占有存储器的一个单元地址。从外部设备输入一个数据,作为一次存储器读的操作;而向外部设备输出一个数据,则作为一次存储器写的操作。 这种方式的优点是: (1)CPU对外设的操作可使用全部的存储器操作指令,故指令多,使用方便。如可以对外设中的数据(存于外设的寄存器中)进行算术和逻辑运算,进行循环或移位等。 (2)I/O端口的地址空间是内存空间的一部份发,这样, I/O端口的地址空间可大可小,从而使外设的数目几乎可以不受限制。 缺点是: I/O端口占用了内存空间的一部分,使内存容量减小;访问I/O端口的时间长。(如图6-3所示)null5.2 数据传送的控制方式5.2 数据传送的控制方式 微机系统中,数据传送的控制方式主要有程序控制方式和DMA(直接存储器存取)方式。 5.2.1 程序控制传送方式 无条件传送方式 查询传送方式 中断传送方式 这类传送方式的特点是以CPU为中心,通过预先编制好的输入或输出程序实现数据的传送。这种传送方式的数据传送速度较低,传送路径为外设→CPU →内存,同时数据的输入输出的响应也较慢。一、无条件传送方式 一、无条件传送方式 又称为“同步传送方式”。主要用于外设的定时是固定的并且是已知的场合,外设必须在微处理器限定的指令时间内准备就绪,并完成数据的接收或发送。通常的办法是:把I/O指令插入到程序中,当程序执行到该I/O指令时,外设必定已为传送数据作好准备,于是在此指令时间内完成数据传送任务。无条件传送是最简单的传送方式,它所需要的硬件和软件较少。 如书P221例图6-9所示:nullnull输入接口电路的地址为2F1H,输出接口电路的地址为2F0H。 输入数据传送 MOV DX, 2F1H IN AL, DX 输出数据传送 MOV AL, LEDST --01010101B MOV DX, 2F0H OUT DX, AL二、查询传送方式二、查询传送方式查询传送方式又称“异步传送方式”。CPU与I/O设备的工作往往是异步的,很难保证当CPU执行输入操作时,外设已把要输入的信息准备好了;而当CPU执行输出时,外设的寄存器(用于存放CPU输出数据的寄存器)一定是空的。所以,通常程序控制的传送方式在传送之前,必须要查询一下外设的状态,当外设准备就绪了才传送;若未准备好,则CPU等待。null1.查询式输入 在输入时,CPU必须了解外设的状态,看外设是否准备好。 当输入设备的数据已准备好后,发出一个 “准备好”Ready的状态信号。而数据与状态必须由不同的端口输至CPU数据总线。当CPU要由外设输入信息时,先输入状态信息,检查数据是否已准备好,当数据已经准备好后,才输入数据。若数据未准备好,则CPU等待。这种查询输入方式的程序流程图,如下图所示。null查询输入方式控制流程YN读入设备状态准备好?传送数据nullnull相应程序段为 AWAIT: IN AL, 29H TEST AL, 01H ;检测RDY JZ AWAIT IN AL,28H MOV [BX], ALnull2.查询式输出 同样的,在输出时CPU也必须了解外设的状态,看外设是否有空,若有空,则CPU执行输出指令,否则就等待。 查询式输出的程序流程图如下图所示。null查询式输出程序流程图nullnullnullMOV AL, 00H;使STB=0 OUT 32H,AL LEA SI,BUFFER;为存放打印变量名 AWAIT:IN AL,30H;检测BUSY和OBF状态 TEST AL,03H JNZ AWAIT MOV AL,[SI] INC SI OUT 31H, AH MOV AH, AL MOV AL, 80H;输出STB脉冲 OUT 32H, AL MOV AL, 00H OUT 32H, AL MOV AL, AH CMP AL, 0AH;是换行符吗? JNZ AWAIT 三、中断传送方式三、中断传送方式 在上述的查询传送方式中,CPU要不断地询问外设,当外设没有准备好时,CPU要等待,不能进行别的操作,这样就浪费了CPU的时间。而且许多外设的速度是较低的,如键盘、打印机等等,它们输入或输出一个数据的速度是很慢的,在这个过程中,CPU可以执行大量的指令。为了提高CPU的效率,可采用中断的传送方式:在输入时,若外设的输入数据已存入寄存器;在输出时,若外设已把上一个数据输出,输出寄存器已空,由外设向CPU 发出中断请求,CPU就暂停原执行的程序( 即实现中断),转去执行输入或输出操作(中断服务),待输入输出操作完成后即返回,CPU再继续执行原来的程序。这样就可以大大提高CPU的效率,而且允许CPU与外设(甚至多个外设)同时工作。中断过程如下图所示。null入口主程序中断服务程序中断源断点 中断过程nullnull传送流程演示6.3.2 DMA(直接存储器存取)传送方式6.3.2 DMA(直接存储器存取)传送方式 中断传送仍是由CPU通过程序来传送,每次要保护断点,保护现场需用多条指令,每条指令要有取指和执行时间。这对于一个高速I/O设备,以及成组交换数据的情况,例如磁盘与内存间的信息交换,就显得速度太慢了。 所以希望用硬件在外设与内存间直接进行数据交换(DMA),而不通过CPU,这样数据传送的速度的上限就取决于存储器的工作速度。但是,通常系统的地址和数据总线以及一些控制信号线(例如IO/等)是由CPU管理的。在DMA方式时,就希望CPU把这些总线让出来(即CPU连到这些总线上的线处于第三态—高阻状态),而由DMA控制器接管,控制传送的字节数,判断DMA是否结束,以及发出DMA结束等信号。这些都是由硬件实现的。null直接存储器存取是一种不需要CPU干预也不需要软件介入的高速数据传送方式。由于CPU只启动而不干预这一传送过程,同时整个传送过程只由硬件完成而不需要软件介入,所以其数据传送速率可以达到很高。在DMA传送方式中,对这一数据传送过程进行控制的硬件称为DMA控制器。 8237A就是一种高性能的可编程DMA控制器(DMAC)。
/
本文档为【5.1-2】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索