CPU和外设数据传送方式

上传人:野鹰 文档编号:1089664 上传时间:2017-05-27 格式:PPT 页数:44 大小:233.50KB
返回 下载 相关 举报
CPU和外设数据传送方式_第1页
第1页 / 共44页
CPU和外设数据传送方式_第2页
第2页 / 共44页
CPU和外设数据传送方式_第3页
第3页 / 共44页
CPU和外设数据传送方式_第4页
第4页 / 共44页
CPU和外设数据传送方式_第5页
第5页 / 共44页
点击查看更多>>
资源描述

《CPU和外设数据传送方式》由会员分享,可在线阅读,更多相关《CPU和外设数据传送方式(44页珍藏版)》请在金锄头文库上搜索。

1、第四章 微机和外设的数据传输,主要内容:CPU和外设之间的数据传送方式:程序方式 中断方式 DMA方式程序方式无条件传送方式 条件传送方式查询方式中断中断基本原理8086的中断系统中断的引申及分类DMADMA的基本原理DMA工作过程,微型计算机系统硬件组成,问题:为什么存储器可以直接挂在系统总线上?而外设不能直接直接挂在系统总线上?,2外部设备特点(1)品种繁多。(2)工作速度一般比CPU慢,且速度的分布也相当宽。(3)信号类型与信息格式多样化。,1存储器特点(1)功能单一,品种有限(2)速度与CPU匹配,1 I/O接口(Interface) I/O接口是一电子电路(以IC芯片或接口板形式出现

2、 ),其内有若干专用寄存器和相应的控制逻辑电路构成。它是CPU和I/O设备之间交换信息的媒介和桥梁。,信息格式 时序匹配,速度匹配(Buffer)对传送数据提供缓冲,以消除计算机与外设在“定时”或数据处理速度上的差异,4.1 I/O接口的基本功能,信号形式匹配A/D、D/A;串/并 、并/串,信号电平和驱动能力 电平转换、增加驱动能力,一. I/O端口I/O接口通常包含一组能够与处理器交换信息的寄存器,称为I/O端口寄存器,简称为I/O端口。( 接口中可寻址并进行读写的寄存器。),4.2 I/O接口中的I/O端口,1. 一个外设与CPU交换信息往往需要几个端口:,数据端口 控制端口 状态端口,

3、CPU对外设的访问实际上是通过对I/O端口的访问来实现的。 CPU对外设的各种操作(向外设发出控制命令、查询外设的状态向外设输出数据、从外设获得数据),均归结为对接口电路中各端口的读/写操作(IN/OUT指令)。,存放数据信息,存放状态信息,即反映外设当前工作状态的信息,状态信息与控制信息可以广义地看作数据信息,通过数据总线传送。,存放控制命令,二、I/O端口的编址方式,I/O端口独立编址I/O端口与存储单元统一编址,端口地址:在微机系统中,每个端口分配有唯一的地址码,称之为端口地址:,I/O端口的编址方式,1. 统一编址把外设接口与内存统一进行编址。各占据统一地址空间的不同部分。优点指令统一

4、,灵活;访问控制信号统一。 缺点内存可用地址空间减小,0,地址空间(共1MB),内存地址(960KB),I/O地址(64KB),FFFFFH,EFFFFHF0000H,2. 独立编址外设地址空间和内存地址空间相互独立。优点:内存地址空间不受I/O编址的影响缺点:I/O指令功能较弱,0,I/O地址1MB,FFFFFH,0,内存地址1MB,FFFFFH,8088/8086 CPU的I/O编址方式采用I/O独立编址方式最小模式下,通过控制总线中的 来区分访问存储器还是IO端口; 最大模式下通过控制总线 、 IOR 、 IOW 区分访问存储器还是IO端口;I/O操作只使用20根地址线中的16根: A1

5、5 A0I/O地址范围为0FFFFHIBM PC只使用了1024个I/O地址(03FFH),M/IO,8086总线,A19-A0,A9-A0,MEMR、MEMW,IOR、IOW 、AEN,存储器,输入/输出,MEMR、MEMW,在接口电路的设计中,可把几个端口设计为相同的端口地址:(1)对数据输入端口只进行读操作(IN),对数据输出端口仅进行写操作(OUT),因此,数据输入端口和数据输出端口可使用相同的地址,接口电路用读写控制信号来区分。IN AL,80HOUT 80H,AL(2)由于对状态端口只进行读操作(IN),对控制端口仅进行写操作(OUT),因此,状态端口和控制端口可使用相同的地址。

6、IN AL, 81HOUT 81H,AL,系统板上的I/O芯片大多是可编程的大规模集成电路,完成相应的接口操作。如定时/计数器、中断控制器、DMA控制器、并行接口、键盘控制器等。,I/O扩展槽上的接口控制卡由若干个集成电路按一定的逻辑组成的一个部件。如软驱卡、硬驱卡、图形卡、声卡、打印卡、串行通信卡等,4.3 I/O接口硬件分类I/O接口的硬件分成两类:,I/O端口地址分配 PC微机I/O地址线可有16根,对应的I/O端口编址可达64K字节,其端口地址译码是采用部分译码法,即只使用了低10位地址线一个A0A9,故其I/O端口地址范围是0000H003FFH,总共只有1024个端口。,表2.1

7、系统板上接口芯片的端口地址I/O芯片名称 端口地址DMA控制器1 00001FHDMA控制器2 0C00DFH DMA页面寄存器 08009FH中断控制器1 02003FH中断控制器2 0A00BFH 定时器 04005FH并行接口芯片(键盘接口) 06006FHRT/CMOS RAM 07007FH 协处理器 0F00FFH,2.2 I/O端口地址分配,表2.2扩展槽上接口控制卡的端口地址I/0接口名称 端口地址游戏控制卡 20020FH并行口控制卡1 37037FH并行口控制卡2 27027FH串行口控制卡1 3F83FFH串行口控制卡2 2F02FFH原型插件板(用户可用) 30031F

8、H同步通信卡1 3A03AFH同步通信卡2 38038FH单显MDA 3B03BFH彩显CGA 3D03DFH彩显EGA/VGA 3C03CFH硬驱控制卡 1F01FFH软驱控制卡 3F03F7HPC网卡 36036FH,三、I/O地址空间的选用凡是被系统配置占用了的地址一律不能使用;未被占用的地址,用户可以使用,但申明保留的地址,不要使用。用户可使用300H31FH地址。,4.4 输入输出的控制方式,主机与外设之间数据传送的控制方式有以下三种:程序方式中断方式直接存储器存取(DMA, Direct Memory Access),程序传送方式,CPU与外设间的数据交换在程序(指令)控制下进行。

9、又分为:无条件程序传送; 条件传送即程序查询;,1 无条件程序传送方式,适用于总是处于准备好状态的外设以下外设可采用无条件传送方式:开关发光器件(如发光二极管、7段数码管、灯泡等)继电器步进电机优点:软件及接口硬件简单缺点:只适用于慢速简单外设,适应范围较窄,认为外设已经准备就绪,直接与外设传送数据,查询方式的流程图,超时?,READY?,与外设进行数据交换,超时错,读入并测试外设状态,Y,N,Y,N,传送完?,防止死循环,复位计时器,N,Y,2 程序查询方式,CPU在与外设交换数据前必须询问外设状态“你准备好没有?”,适用于外设并不总是准备好,而且对传送速率、传送效率要求不高的场合。对外设的

10、要求:应提供设备状态信息对接口的要求:需要提供状态端口优点:软件比较简单缺点:CPU效率低,数据传送的实时性差, 速度较慢 使用查询方式,CPU必须检测接口电路的状态寄存器,如果设备未准备好,CPU就要不断地查询,降低了CPU的运行效率.,动画演示,在进行输入输出操作时,输入需要缓冲,输出需要锁存输入缓冲:输入时,在系统的数据总线和外设间接三态缓冲器,当读该缓冲器的控制信号有效时,才将缓冲器的三态门打开,使外设的数据进入系统的数据总线。常用的三态缓冲器有:74LS244(单向) 74LS245(双向)当三态缓冲器的控制端有效时,三态门打开,允许数据通过否则,三态门关闭,呈高阻状态,输出锁存:输

11、出时,需要在系统的数据总线和外设间接锁存器,在锁存允许端为无效电平时,数据总线上的新数据不能进入锁存器。只有当确知外设已经取走上次输出的数据时,方能在锁存允许端为有效电平时,将新数据送入锁存器保留。常用的锁存器有:74LS273(8D触发器)74LS373(8位锁存器,三态输出),中断方式,CPU无需循环查询外设状态,而是外部设备在需要进行数据传送时才中断CPU正在进行的工作,让CPU来为其服务。即CPU在没有外设请求时可以去做更重要的事情,有请求时才去传输数据,从而大大提高了CPU的利用率。优点:CPU效率高,实时性好,速度快。缺点:程序编制较为复杂。,DMA传输,前面三种I/O方式都需要C

12、PU作为中介: 外设 CPU 内存 1)软件:外设与内存之间的数据传送是通过CPU执行程序(中断处理子程序)来完成的;(IN/OUT指令)2)硬件:I/O接口和存储器的读写控制信号、地址信号都是由CPU发出的(总线由CPU控制)。 缺点:对于高速外设(如磁盘、高速A/D),中断方式不能满足数据传输速度的要求,解决:DMA传输,DMA传输: 外设 内存外设直接与存储器进行数据交换 ,CPU不再担当数据传输的中介者;总线由DMA控制器(DMAC)进行控制(CPU要放弃总线控制权),内存/外设的地址和读写控制信号均由DMAC提供。优点:数据传输由DMA硬件来控制,数据直接在内存和外设之间交换,可以达

13、到很高的传输速率(可达几MB/秒),DMA=Direct Memory Access 直接存储器访问DMA方式是一种由专门的硬件电路执行I/O的数据传送方式,它可以让外设接口直接与内存进行高速的数据传送,而不必经过CPU.这种专门的硬件电路称为DMA控制器,简称DMAC.,DMA传送原理示意图,系统总线,CPU,DMAC,存储器,外设接口,AEN,IOW,MEMW,MEMR,IOR,MEMW,MEMR,IOW,IOR,AEN,HOLD,HLDA,DRQ,DACK,AEN,IOW,IOR,MEMW,MEMR, 外设发出DMA请求 DMAC向CPU申请总线 CPU响应,释放总线控制权 DMAC得到总线控制权,并发出DMA响应信号 由DMAC发出各种控制信号和地址信息,控制外设与存储器之 间的数据传送 数据传送完后,DMAC撤销HOLD信号 CPU释放HLDA信号,并重新控制总线,中断的定义,CPU执行程序时,由于发生了某种随机的事件(外部或内部),引起CPU暂时中断正在运行的程序,转去执行一段特殊的服务程序(称为中断服务程序或中断处理程序),以处理该事件,该事件处理完后又返回被中断的程序继续执行,这一过程称为中断。,

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

当前位置:首页 > 研究报告 > 综合/其它

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