欢迎来到天天文库
浏览记录
ID:59809702
大小:587.50 KB
页数:28页
时间:2020-11-25
《计算机硬件34上课讲义.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、计算机硬件34第6章:6.3.1程序控制的I/O一、无条件传送——最简单、单纯的I/O操作方式。用于:固定状态或固定工作的外设:LED、硬开关状态等。可以认为它们总是处于“就绪”状态,随时可进行数据传送,这就是无条件传送(或称立即传送、同步传送)。第6章:无条件传送方式实现方法CPU不查询外设工作状态,与外设速度的匹配通过在软件上延时完成;在程序中直接用I/O指令,完成与外设的数据传送。第6章:无条件传送的输入接口300H第6章:无条件传送的输出接口特点1.适用于在CPU与外设进行数据传送时,外设已准备好的情况;2.软、硬件十分简单,但时序要求配合精确。第6章:二、查询传送方式及其接口C
2、PU需要先了解(查询)外设的工作状态,然后在外设就绪的前提下实现数据输入或输出;对多个外设的情况,则CPU按一定顺序依次查询。第6章:查询输入的基本环节⑴状态查询寻址状态端口;读取状态标志位;若不就绪就继续查询,直至就绪;⑵输入数据寻址数据端口;通过输入指令从端口读入数据;第6章:查询传送的输入接口接DB7数据端口译码第6章:查询传送的输出接口第6章:查询输出的基本环节【例】查询方式输入接口举例三态缓冲器输入设备DB218H数据地址译码AB状态地址译码锁存器IORRQD三态缓冲器+5vD421CHSTBIORA15~A0D7~D0&&要求:编程连续读入50H个字节到内存变量buffer内。L
3、EADI,bufferMOVCX,50H;传送个数next:MOVDX,21CHINAL,DX;从状态端口读入状态信息TESTAL,00010000B;检测D4位JZnext;D4=0,继续查询MOVDX,218HINAL,DX;从数据端口读入数据MOV[DI],AL;送缓冲区INCDI;修改缓冲区指针LOOPnext;传送下一个参考程序段:第6章:程控IO方式的两种方法比较无条件传送和查询的特点比较:1、无条件传送必须保证CPU和外设同步,否则容易出错,但硬件简单;2、查询操作大部分时间用于查询状态上,而真正进行数据传输的时间很少,效率低并且缺乏实时性(P264)。但查询的可靠性很高,且软
4、件简单。第6章:6.3.2中断传送中断传送是一种效率更高的程序传送方式,进行传送的中断服务程序是预先设计好的;中断请求是外设随机向CPU提出的;CPU对请求的检测是有规律的:一般是在每条指令的最后一个时钟周期采样中断请求输入引脚;第6章:中断传送方式实现方法:(1)当外设准备好,主动向CPU发出中断请求;(2)CPU在满足响应中断的条件下,发出中断响应信号;(3)CPU暂停当前的程序,转去执行中断服务程序,完成与外设的数据传送;(4)CPU从中断服务程序返回,继续执行被中断的程序。第6章:中断输入接口1.CPU和外设大部分时间处在并行工作状态,只在CPU响应外设的中断申请后,进入数据传送的过
5、程。2.中断传送方式提高了CPU的效率适用:与查询方式同样场合。差别:①外设主动开始传送过程,节约CPU时间;②中断请求出现的时刻具有随机性。中断传送方式的特点:第6章:6.3.3直接数据通道传送--DMA传送方式希望克服程序控制传送的如下不足:外设→CPU→存储器外设←CPU←存储器直接存储器存取DMA:外设→存储器外设←存储器DMA传送示意图第6章:DMA传送方式DMA的基本思想:在内存与外设间建立直接的数据传送通路,由专门的DMA控制器控制内存与外设间的数据传送,在传送时不需要CPU的干预。它完全由硬件实现,满足高速数据传送的需要。数据传送速度的上限取决于内存的工作速度。在DMA
6、方式下,CPU让出总线(为高阻状态),由DMA控制器接管。第6章:DMA传送的工作过程⑴CPU对DMA控制器(DMAC)进行初始化设置;⑵外设、DMAC和CPU三者通过应答信号建立联系,CPU将总线交给DMAC控制;⑶DMA传送DMA读存储器:存储器→外设DMA写存储器:存储器←外设⑷自动增减地址和计数,判断传送完成否DMA工作流程1、外设和内存之间,直接进行数据传送,不通过CPU,传送效率高。2、适用于在内存与高速外设、或两个高速外设之间进行大批量数据传送。3、电路结构复杂,硬件开销较大。第6章:DMA传送方式的特点第6章:各种传送方式的比较无条件传送:慢速外设需与CPU保持同步查询传送:
7、简单实用,效率较低中断传送:外设主动,可与CPU并行工作,但每次传送需要大量额外时间开销DMA传送:DMAC控制,外设直接和存储器进行数据传送,适合大量、快速数据传送就绪(Ready)在输入场合“就绪”说明输入接口已准备好送往CPU的数据,正等着CPU来读取该状态也可用接口中数据缓冲器已“满”来描述在输出场合“就绪”说明输出接口已做好准备,等待接收CPU要输出的数据该状态也可用接口数据缓冲器已“空”、或者用接
此文档下载收益归作者所有