版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第第 6 6 章章第第6章章 基本输入输出接口基本输入输出接口教学重点 微机和外设间的输入微机和外设间的输入/输出接口输出接口 输入输入/输出的控制方式(程序控制方式、输出的控制方式(程序控制方式、中断工作过程和中断工作过程和DMA控制方式控制方式6.4.2. 查询传送方式及其接口查询传送方式及其接口CPU需要先了解(查询)外设的工作状态,需要先了解(查询)外设的工作状态,然后在外设可以交换信息的情况下(然后在外设可以交换信息的情况下(就绪就绪)实现数据输入或输出实现数据输入或输出对多个外设的情况,则对多个外设的情况,则CPU按一定顺序依按一定顺序依次查询(轮询)。先查询的外设将优先进次查询(
2、轮询)。先查询的外设将优先进行数据交换行数据交换查询传送的特点是:工作可靠,适用面宽,查询传送的特点是:工作可靠,适用面宽,但传送效率低但传送效率低就绪?就绪?查询传送的两个环节查询传送的两个环节 查询环节查询环节寻址状态口寻址状态口读取状态寄存器的标志位读取状态寄存器的标志位若不就绪就继续查询,直至就绪若不就绪就继续查询,直至就绪 传送环节传送环节寻址数据口寻址数据口是输入,通过输入指令从数据端口是输入,通过输入指令从数据端口读入数据读入数据是输出,通过输出指令向数据端口是输出,通过输出指令向数据端口输出数据输出数据输入状态输入状态就绪?就绪?数据交换数据交换YN流程流程准备好?准备好?读取
3、状态信息读取状态信息输入数据输入数据是是否否查询式输入程序流程图查询式输入程序流程图忙?忙?读取状态信息读取状态信息输出数据输出数据否否是是查询式输出程序流程图查询式输出程序流程图查询输入接口查询输入接口mov dx,8000h;DX指向状态端口指向状态端口status: in al,dx;读状态端口;读状态端口test al,01h;测试标志位;测试标志位D0jz status;D00,未就绪,继续查询,未就绪,继续查询inc dx;D01,就绪,就绪,DX指向数据端口指向数据端口in al,dx;从数据端口输入数据;从数据端口输入数据查询输出接口查询输出接口mov dx,8000h ;DX
4、指向状态端口指向状态端口status: in al,dx;读取状态端口的状态数据;读取状态端口的状态数据test al,80h;测试标志位;测试标志位D7jnz status;D71,未就绪,继续查询,未就绪,继续查询inc dx;D70,就绪,就绪,DX指向数据端口指向数据端口mov al,buf;变量;变量buf送送ALout dx,al;将数据输出给数据端口;将数据输出给数据端口6.4.3 中断传送方式中断传送方式断点断点主程序主程序中断服务程序中断服务程序中断请求中断请求对外设对外设进行处理进行处理继续执行继续执行返回断点返回断点CPU在执行程序中,在执行程序中,被内部或外部的事件所被
5、内部或外部的事件所打断,转去执行一段预打断,转去执行一段预先安排好的中断服务程先安排好的中断服务程序;服务结束后,又返序;服务结束后,又返回原来的断点,继续执回原来的断点,继续执行原来的程序行原来的程序流程流程中断传送与接口中断传送与接口中断传送是一种效率更高的程序传送方中断传送是一种效率更高的程序传送方式式进行传送的进行传送的中断服务程序是预先设计好中断服务程序是预先设计好的的中断请求是外设随机向中断请求是外设随机向CPU提出的提出的中断输入接口中断输入接口中断工作过程中断工作过程n接口发中断请求信号接口发中断请求信号n当前指令执行后,当前指令执行后,CPU进行中断回应进行中断回应n中断类型
6、号中断类型号N送送CPUn当前的当前的CS、IP和状态寄存器入栈和状态寄存器入栈n清除清除IF和和TFn(4N)作为)作为IP,(,(4N2)作为)作为CSn中断子程序执行中断子程序执行n开中断开中断nIRET指令使指令使IP、CS和状态寄存器弹出堆栈和状态寄存器弹出堆栈n返回被中断的程序返回被中断的程序中断优先级中断优先级中断优先权中断优先权问题问题1:系统有多个中断请求,:系统有多个中断请求,CPU如何判定优先级?如何判定优先级?解答解答1:软件查询法软件查询法 解答解答2:简单硬件方法简单硬件方法 解答解答1:软件查询法软件查询法 只需有简单的硬件电路,如将只需有简单的硬件电路,如将A、
7、B、C三台三台设备的中断请求信号设备的中断请求信号“或或”后作为系统后作为系统INTR,这时,这时,A、B、C三台设备中只要至三台设备中只要至少有一台设备提出中断请求,都可以向少有一台设备提出中断请求,都可以向CPU发中断请求。进入中断服务子程序后,发中断请求。进入中断服务子程序后,再用软件查询的方式分别对不同的设备的再用软件查询的方式分别对不同的设备的服务,查询程序的设计思想同查询式,查服务,查询程序的设计思想同查询式,查询的前后顺序就给出了设备的优先级,框询的前后顺序就给出了设备的优先级,框图如图所示。图如图所示。解答解答2:简单硬件方法简单硬件方法以链式中断优先权排队电路为例,以链式中断
8、优先权排队电路为例,基本设计思想基本设计思想:将所有的设备连成一条链,:将所有的设备连成一条链,靠近靠近CPU的设备优先级最高,越远的设备的设备优先级最高,越远的设备优先级别越低,则发出中断响应信号,若优先级别越低,则发出中断响应信号,若级别高的设备发出了中断请求,在它接到级别高的设备发出了中断请求,在它接到中断响应信号的同时,封锁其后的较低级中断响应信号的同时,封锁其后的较低级设备使得它们的中断请求不能响应,只有设备使得它们的中断请求不能响应,只有等它的中断服务结束以后才开放,允许为等它的中断服务结束以后才开放,允许为低级的设备服务。如下图所示。低级的设备服务。如下图所示。第第6章:章:6.
9、4.4 DMA传送方式传送方式希望克服程序控制传送的不足:希望克服程序控制传送的不足:外设外设CPU存储器存储器外设外设CPU存储器存储器直接存储器存取直接存储器存取DMA:外设外设存储器存储器外设外设存储器存储器DMA(Direct Memory Access)意为直接数据传送,)意为直接数据传送,它是在内存的不同区域之间,或者在内存与外设它是在内存的不同区域之间,或者在内存与外设端口之间直接进行数据传送,而不经过端口之间直接进行数据传送,而不经过CPU中转中转的一种数据传送方式,可以大大提高信息的传送的一种数据传送方式,可以大大提高信息的传送速度。速度。 CPU释放总线,由释放总线,由DM
10、A控制器管理控制器管理第第6章:章:DMA传送的工作过程传送的工作过程DMA方式传送的主要步骤方式传送的主要步骤 外设准备就绪时,向外设准备就绪时,向DMA控制器发控制器发DMA请求,请求,DMA控控制器接到此信号后,向制器接到此信号后,向CPU发发DMA请求;请求;CPU接到接到HOLD请求后,如果条件允许(一个总线操作请求后,如果条件允许(一个总线操作结束),则发出结束),则发出HLDA信号作为响应,同时,放弃对总信号作为响应,同时,放弃对总线的控制;线的控制;DMA控制器取得总线控制权后,往地址总线发送地址信控制器取得总线控制权后,往地址总线发送地址信号,每传送号,每传送1个字节,就会自
11、动修改地址寄存器的内容,个字节,就会自动修改地址寄存器的内容,以指向下一个要传送的字节;以指向下一个要传送的字节;每传送一个字节,字节计数器的值减每传送一个字节,字节计数器的值减1,当减到,当减到0时,时,DMA过程结束;过程结束; DMA控制器向控制器向CPU发结束信号,将总线控制权交回发结束信号,将总线控制权交回CPU。 第第6章:章:DMA传送流程传送流程HLDA发存储器地址发存储器地址传送数据传送数据传送结束?传送结束?DMA结束结束修改地址指针修改地址指针流程流程第第6章:传送方式的比较章:传送方式的比较无条件传送无条件传送:慢速外设需与:慢速外设需与CPU保持同保持同步步查询传送查
12、询传送: 简单实用,效率较低简单实用,效率较低中断传送中断传送:外设主动,可与:外设主动,可与CPU并行工并行工作,但每次传送需要大量额外时间开销作,但每次传送需要大量额外时间开销 DMA传送传送:DMAC控制,外设直接和存控制,外设直接和存储器进行数据传送,适合大量、快速数据储器进行数据传送,适合大量、快速数据传送传送本章作业本章作业1.CPU与外设之间的数据传输控制方式有哪与外设之间的数据传输控制方式有哪几种?何谓程序控制方式?它有哪两种几种?何谓程序控制方式?它有哪两种 基本方式?请分别用流程图的形式描述出基本方式?请分别用流程图的形式描述出来。来。 端口(端口(PORT)端口泛指端口泛
13、指I/O地址,通常对应接口电路的寄存器地址,通常对应接口电路的寄存器一个接口电路可以具有多个一个接口电路可以具有多个I/O端口(寄存器),端口(寄存器),每个端口用来保存和交换不同的信息每个端口用来保存和交换不同的信息数据寄存器、状态寄存器和控制寄存器占有的数据寄存器、状态寄存器和控制寄存器占有的I/O地址常依次被称为数据端口、状态端口和控制端地址常依次被称为数据端口、状态端口和控制端口,用于保存数据、状态和控制信息口,用于保存数据、状态和控制信息输入、输出端口可以是同一个输入、输出端口可以是同一个I/O地址地址一定要理解一定要理解返回IN AL, 21H返回OUT 43H, AL返回无条件传送流程无条件传送流程返回就绪就绪(Ready)在输入场合在输入场合“就绪就绪”说明输入接口已准备好送往说明输入接口已准备好送往CPU的数的数据,正等着据,正等着CPU来读取来读取该状态也可用接口中数据缓冲器已该状态也可用接口中数据缓冲器已“满满”来描述来描述 在输出场合在输出场合“就绪就绪”说明输出接口已做好准备,等待接收说明输出接口已做好准备,等
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论