8程序查询方式课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《8程序查询方式课件.ppt》由用户(三亚风情)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 程序 查询 方式 课件
- 资源描述:
-
1、1多种多样的外设多种多样的外设 工作原理不同工作原理不同机械、电子、机电、电磁机械、电子、机电、电磁 传送信息类型多样传送信息类型多样数字量、模拟量、开关量数字量、模拟量、开关量 传送速度差别极大传送速度差别极大 传送方式不尽相同传送方式不尽相同串行、并行串行、并行 编码方式不同编码方式不同二进制、二进制、BCD码、码、ASCII码码外设的信息交换方式外设的信息交换方式22022年6月8日0时55分 输入输出设备和输入输出设备和CPUCPU交换数据的过程:交换数据的过程:输入过程:输入过程: CPUCPU把一个设备地址值放在地址总线上,这一步把一个设备地址值放在地址总线上,这一步将选择一个输入
2、设备将选择一个输入设备 CPUCPU等候输入设备的数据成为有效等候输入设备的数据成为有效 CPUCPU从数据总线上读入数据,并放在一个相应的从数据总线上读入数据,并放在一个相应的寄存器中寄存器中输出过程:输出过程: CPUCPU把一个设备地址值放在地址总线上,这一步把一个设备地址值放在地址总线上,这一步将选择一个输出设备将选择一个输出设备 CPUCPU把数据放在数据总线上把数据放在数据总线上 输出设备认为数据有效,从而把数据取走。输出设备认为数据有效,从而把数据取走。3如果把高速工作的主机同不同速度工作的外围设备相连接,如果把高速工作的主机同不同速度工作的外围设备相连接,如何保证主机与外围设备
3、在时间上同步如何保证主机与外围设备在时间上同步?1.1.速度极慢或简单的外围设备速度极慢或简单的外围设备不需要不需要CPU和外设之间的时间同步!和外设之间的时间同步!2.2.慢速或中速的外围设备慢速或中速的外围设备采用采用异步定时方式异步定时方式外设有外设有“准备就绪准备就绪”状态位;状态位;CPU查询状态位,就绪查询状态位,就绪时时就读走;就读走; 应答式数据交换。应答式数据交换。3.3.高速的外围设备高速的外围设备采用采用同步定时方式同步定时方式 CPU和外设之间的数据交换由时钟脉冲控制。和外设之间的数据交换由时钟脉冲控制。 4例子假设幼儿园一个阿姨带假设幼儿园一个阿姨带10个孩子,要给每
4、个孩子分个孩子,要给每个孩子分4块水果糖。假设孩子们都应把块水果糖。假设孩子们都应把4块糖都吃完,那么她采用什块糖都吃完,那么她采用什么方法呢么方法呢?方法1: 她先给孩子甲一块糖,盯着甲吃完,然后再给第二块,等吃完第二块又给她先给孩子甲一块糖,盯着甲吃完,然后再给第二块,等吃完第二块又给第三第三 块,吃完第三块又给第四块。接着给孩子乙,其过程与孩子甲完全一样。依块,吃完第三块又给第四块。接着给孩子乙,其过程与孩子甲完全一样。依次类推,直至到次类推,直至到 第第10个孩子发完四块糖。看来这种方法效率太低,重要之点还在个孩子发完四块糖。看来这种方法效率太低,重要之点还在于孩子们吃糖时她一直在守于
5、孩子们吃糖时她一直在守 候,什么事也不能干。候,什么事也不能干。(程序查询方式)方法2: 每人发一块糖各自去吃,并约定谁吃完后就每人发一块糖各自去吃,并约定谁吃完后就 向她举手报告,再发第二块。向她举手报告,再发第二块。看来这种新方法提高了工作效率,而且在未接到孩子们吃完糖看来这种新方法提高了工作效率,而且在未接到孩子们吃完糖 的的 报告以前,她还报告以前,她还可以腾出时间给孩子们改作业。但是这种方法还可以改进。可以腾出时间给孩子们改作业。但是这种方法还可以改进。(程序中断方式)方法3: 进行批处理:每人拿进行批处理:每人拿4块糖各自去吃,吃完块糖各自去吃,吃完4块糖后再向她报告。显然这块糖后
6、再向她报告。显然这种方法工作种方法工作 效率大大提高,她可以腾出更多的时间改作业。效率大大提高,她可以腾出更多的时间改作业。(直接内存访问(DMA)方式)方法4: 权力下放,把发糖的事交给另一个人分管,只是必要时她才过问一下。权力下放,把发糖的事交给另一个人分管,只是必要时她才过问一下。(通道方式) 5第八章 输入输出系统u 8.1 外设的信息交换外设的信息交换u 8.2 程序查询方式程序查询方式u 8.3 程序中断方式程序中断方式u 8.4 DMA方式方式u 8.5 通道方式通道方式68.1信息交换方式 在计算机系统中,CPU管理外围设备有以下几种方式: 1. 程序查询方式程序查询方式 2.
7、 程序中断方式程序中断方式 3. 直接内存访问直接内存访问(DMA)方式方式 4. 通道方式通道方式 71. 1. 程序查询方式程序查询方式适用许多单片机系统适用许多单片机系统这种方式又称这种方式又称程序控制方式程序控制方式数据在数据在CPU和和外围外围设备设备之间的传送完全靠计算机之间的传送完全靠计算机程序控制。程序控制。查询方式的查询方式的优点优点:是:是CPU的操作和外围设备的操的操作和外围设备的操作能够同步,而且硬件结构比较简单。作能够同步,而且硬件结构比较简单。缺点缺点:外围设备动作很慢,程序进入查询循环时:外围设备动作很慢,程序进入查询循环时将白白浪费掉将白白浪费掉CPU很多时间。
8、很多时间。CPU此时只能等待,不能处理其他业务不过在此时只能等待,不能处理其他业务不过在实际应用中并不这样使用,而是实际应用中并不这样使用,而是CPU定期地由主程序定期地由主程序转向查询设备状态的子程序进行扫描轮询。转向查询设备状态的子程序进行扫描轮询。程序查询方式按照程序查询方式按照启动、查询、等待、交换启动、查询、等待、交换的步的步骤进行。骤进行。2. 2. 程序中断方式程序中断方式中断是外围设备用来中断是外围设备用来“主动主动”通知通知CPU,准备,准备送出输入数据或接收输出数据的一种方法通常,送出输入数据或接收输出数据的一种方法通常,当一个中断发生时,当一个中断发生时,CPU暂停它的现
9、行程序,而转暂停它的现行程序,而转向中断处理程序,从而可以输入或输出一个数向中断处理程序,从而可以输入或输出一个数据当中断处理完毕后,据当中断处理完毕后,CPU又返回到它原来的任又返回到它原来的任务,并从它停止的地方开始执行程序务,并从它停止的地方开始执行程序它节省了它节省了CPU宝贵宝贵的时间,是管理的时间,是管理IO操作操作的一个比较有效的方法。的一个比较有效的方法。中断方式一般适用于中断方式一般适用于随机出现的服务随机出现的服务,并且一,并且一旦提出要求,应旦提出要求,应立即进行立即进行同程序查询方式相比,硬件结构相对复杂一些,同程序查询方式相比,硬件结构相对复杂一些,服务开销时间较大服
10、务开销时间较大 892. 2. 程序中断方式程序中断方式 外设输入或输出数据就绪时,外设输入或输出数据就绪时,主动主动通知通知CPU。 CPU如何如何响应响应中断请求,中断请求, 暂停现行程序,保护好暂停现行程序,保护好“断点断点”; 转转“中断服务程序中断服务程序”,完成对外设的读或写;,完成对外设的读或写; 再回到原程序,继续执行。再回到原程序,继续执行。A中断服务程序B中服C中服主程序A请求中断B请求C请求3. 3. 直接存储器存取直接存储器存取(DMA)(DMA)方式方式 DMA的引入:的引入:用中断方式交换数据时,每处理一次用中断方式交换数据时,每处理一次IO交换,约需几十微秒到几百
11、微秒对于一些高速的外围设备,以及成交换,约需几十微秒到几百微秒对于一些高速的外围设备,以及成组交换数据的情况,仍然显得速度太慢组交换数据的情况,仍然显得速度太慢 直接内存访问直接内存访问(DMA)方式:方式:是一种完全由是一种完全由硬件执行硬件执行IO交换交换的工作方式。的工作方式。这种方式既考虑到中断响应,同时又要节约中断开销此时,这种方式既考虑到中断响应,同时又要节约中断开销此时,DMA控制器控制器从从CPU完全接管对总线的控制,完全接管对总线的控制,数据交换不经过数据交换不经过CPU,而,而直接在直接在内存内存和和外围设备外围设备之间进行,以之间进行,以高速高速传送数据传送数据优点:优点
12、:是数据传送速度很是数据传送速度很高高,传送速率仅受到内存访问时间的限,传送速率仅受到内存访问时间的限制。制。缺点:缺点:与中断方式相比,需要更多的硬件。与中断方式相比,需要更多的硬件。DMA方式适用于方式适用于内存内存和和高速外围设备高速外围设备之间之间大批数据交换大批数据交换的场合的场合 10114. 4. 通道方式通道方式 通道方式的引入通道方式的引入:DMA方式的出现已经减轻了方式的出现已经减轻了CPU对对I/O操作操作的控制的控制,使得,使得CPU的效率有显著的提高,而通道的出现则进一步的效率有显著的提高,而通道的出现则进一步提高提高了了CPU的效率的效率。这是因为这是因为CPU将部
13、分将部分权力下放权力下放给通道。通道是给通道。通道是一个具有特殊功能一个具有特殊功能的处理器的处理器,在某些应用中称为,在某些应用中称为输入输出处理器(输入输出处理器(IOP),它可以实现对它可以实现对外设的统一管理和外设与内存之间的数据传送。外设的统一管理和外设与内存之间的数据传送。这种方法大大提高了这种方法大大提高了CPU的工作效率。然而这种提高的工作效率。然而这种提高CPU效率的效率的方法是以花费更多硬件为代价的。方法是以花费更多硬件为代价的。. . 外围处理机(外围处理机(PPUPPU)方式)方式 外围处理机外围处理机(PPU)方式方式是通道方式的进一步是通道方式的进一步发展。由于发展
14、。由于PPU基本上基本上独立于主机工作独立于主机工作,它的结,它的结构更接近一般处理机,甚至就是一般的微小型计构更接近一般处理机,甚至就是一般的微小型计算机在一些系统中,设置了多台算机在一些系统中,设置了多台PPU,分别承,分别承担担IO控制、通信、维护诊断等任务从某种意控制、通信、维护诊断等任务从某种意义上说,这种系统已变成分布式的多机系统义上说,这种系统已变成分布式的多机系统。1213I/O控制方式控制方式主要由程序实现主要由程序实现主要由附加硬件实现主要由附加硬件实现程序程序查询方式查询方式程序程序中断方式中断方式DMA方式方式通道方式通道方式14、定义、定义CPU需要先了解(需要先了解
15、(查询查询)外设的工作状态,)外设的工作状态,然后在外设可以交换信息的情况下(然后在外设可以交换信息的情况下(就绪就绪)实现)实现数据输入或输出数据输入或输出对多个外设的情况,按顺序依次查询(轮询)对多个外设的情况,按顺序依次查询(轮询)8.2 程序查询方式程序查询方式8.2.1程序查询方式的基本概念程序查询方式的基本概念 2.程序查询方式的数据传送过程程序查询方式的数据传送过程程序执行的动作如下:程序执行的动作如下:、向、向I/OI/O设备发出命令字,设备发出命令字,请请求求进行数据传送;进行数据传送;、从、从I/OI/O接口接口读入读入状态字;状态字;、检查状态字检查状态字中的标志,看数中
16、的标志,看数据交换是否可以进行。据交换是否可以进行。、若外设、若外设就绪就绪,则进行数据,则进行数据传传送送,否则,重复、两步,否则,重复、两步,一直到该设备准备好交换数一直到该设备准备好交换数据,发出就绪信号据,发出就绪信号“READYREADY”为止。为止。、CPUCPU从从I/OI/O接口的数据缓冲寄接口的数据缓冲寄存器输入数据,或将数据从存器输入数据,或将数据从CPUCPU输出至接口的数据缓冲寄输出至接口的数据缓冲寄存器。与些同时,存器。与些同时,CPUCPU将将I/OI/O接口中的接口中的状态标志复位状态标志复位 。15 启动外设启动外设外设工作完成?外设工作完成?N NY Y 入入
17、/出操作出操作3、程序查询方式的优缺点程序查询方式的优缺点 (1(1)优点优点:简单、经济、只需少量的硬件,主要简单、经济、只需少量的硬件,主要以编制程序为主,较容易实现。以编制程序为主,较容易实现。 (2 2)缺点缺点:效率低、速度慢、不管是执行子程序,效率低、速度慢、不管是执行子程序,还是查询外设是否准备好,都得占用还是查询外设是否准备好,都得占用CPUCPU时间。时间。因此,程序查询方式主要因此,程序查询方式主要适用于适用于I/OI/O设备少,设备少,数据传送率低的系统数据传送率低的系统。 1617程序查询接口包括:程序查询接口包括:1.设备选择电路设备选择电路2.数据缓冲寄存数据缓冲寄
18、存3.设备状态位(标志)设备状态位(标志)8.2.2程序查询方式的接口程序查询方式的接口17 (1)向向I/O设备发出命令字请求设备发出命令字请求进行数据传送,从进行数据传送,从I/O接口读入状接口读入状态字,标志寄存器为(忙状态字,标志寄存器为(忙状态)。态)。 (2)数据交换开始。数据交换开始。 (3)外设输入数据。外设输入数据。 (4)就绪标志寄存器置为就绪标志寄存器置为1。 (5) 数据进入数据缓冲器数据进入数据缓冲器,发出发出准备信号准备信号“Ready”。 (6)CPU从从I/O接口的数据缓冲接口的数据缓冲寄存器取走数据寄存器取走数据CPU从外设输入一个字的过程从外设输入一个字的过
19、程:188.2.3多台外设的程序查询过程多台外设的程序查询过程3个外设的查询过程:个外设的查询过程:1.cpu在执行主程序的过程中可周期性的调用各外部设备在执行主程序的过程中可周期性的调用各外部设备询问询问子程序。子程序。2.该程序依次测试各该程序依次测试各I/O设备的状态是否就绪,设备的状态是否就绪,3.如果如果ready为为1则转去执行该设备的任务,如果为则转去执行该设备的任务,如果为0则测试下一个设备。则测试下一个设备。4.CPU主动询问主动询问 。设备服务子程序的主设备服务子程序的主要功能:要功能:、实现数据传送。、实现数据传送。、修改内存地址,、修改内存地址,为下一次数据传送做为下一
20、次数据传送做准备。准备。、修改传送字节、修改传送字节数,以便修改传送长数,以便修改传送长度。度。、进行状态分析、进行状态分析或其他控制功能。或其他控制功能。查询:查询:中断的引入中断的引入程序程序并行操作并行操作主机主机外设外设空闲空闲启动启动等待等待(不断(不断的查询等待)的查询等待) 工作工作(将数据输将数据输入到接口中)入到接口中)程序程序从数据缓冲寄存器从数据缓冲寄存器中取走数据。中取走数据。交换数据交换数据中断:中断:主机主机程序程序外设外设空闲空闲启动启动 工作工作设备控制器控制工作设备控制器控制工作程序程序请求请求中断程序中断程序交换数据交换数据程序程序19208.3 8.3 程
21、序中断方式程序中断方式8.3.1 中断的基本概念1、定义定义 所谓所谓中断中断是指是指CPU执行程序的过执行程序的过程中,出现某些程中,出现某些突发事件突发事件亟待处理,亟待处理,CPU必须暂停执行当前的程序,转去必须暂停执行当前的程序,转去处理突发事件处理突发事件,处理完毕后,处理完毕后CPU又又返返回原程序回原程序被中断的位置并继续执行。被中断的位置并继续执行。由于处理突发事件是以由于处理突发事件是以CPU执行执行中断中断处理程序处理程序的方式进行的,因此这种控的方式进行的,因此这种控制方式称为程序中断方式,简称制方式称为程序中断方式,简称“中中断断”。21程序中断方式程序中断方式A中断服
22、务程序B中服C中服主程序A请求中断B请求C请求中断请求的发出时刻是中断请求的发出时刻是随机随机的,的,CPUCPU何时响应?何时响应?为返回主程序正确位置,必须保护为返回主程序正确位置,必须保护“断点断点”。“断点断点”包含哪些信息?包含哪些信息?当当CPUCPU响应中断后,若有新的中断请求如何处理?响应中断后,若有新的中断请求如何处理?l处理器在执行程序过程中,被内部或外部的事件所打断,处理器在执行程序过程中,被内部或外部的事件所打断,转去执行一段预先安排好的中断服务程序;服务结束后,转去执行一段预先安排好的中断服务程序;服务结束后,又返回原来的断点,继续执行原来的程序又返回原来的断点,继续
23、执行原来的程序22几个概念:几个概念:1、在中断处理的整个过程中,原程序被中断的在中断处理的整个过程中,原程序被中断的位置位置称为称为断点断点。2、用于处理中断事件的程序称为用于处理中断事件的程序称为中断处理(服中断处理(服务)程序务)程序。3、保存被中断的位置称为保存被中断的位置称为断点保护断点保护。4、原程序中各通用寄存器的内容称为原程序中各通用寄存器的内容称为现场现场。5、在中断处理程序开始要保存的寄存器内容称在中断处理程序开始要保存的寄存器内容称为为现场保护现场保护。6、在中断处理程序即将结束要恢复这些寄存器在中断处理程序即将结束要恢复这些寄存器内容,称为内容,称为现场恢复现场恢复。7
24、、返回原来被中断的位置称为返回原来被中断的位置称为中断返回中断返回。8、CPU对中断请求的认可称为对中断请求的认可称为中断响应中断响应。23中断的两个重要征:中断的两个重要征:1、程序切换(控制权的转移)、程序切换(控制权的转移)2、随机性、随机性中断过程的程序转移与子程序调用的区别:中断过程的程序转移与子程序调用的区别: 子程序调用是由主程序安排在子程序调用是由主程序安排在特定位置特定位置上上的,通常是完成主程序要求的的,通常是完成主程序要求的特定功能特定功能,与主程,与主程序序有必然有必然联系。而中断是联系。而中断是随机发生的,随机发生的,可以在程可以在程序的序的任一位置任一位置进行切换,
25、而且中断处理程序的功进行切换,而且中断处理程序的功能与主程序能与主程序没有任何直接联系没有任何直接联系。 2 2、向量中断和非向量中断、向量中断和非向量中断 (1)向量中断)向量中断 外设在提出中断请求的同时,通过外设在提出中断请求的同时,通过硬件硬件向主机提供中向主机提供中断服务程序的断服务程序的入口地址入口地址,它称为,它称为向量地址。向量地址。 主机响应中断后,就根据主机响应中断后,就根据向量地址向量地址直接转入相应的中直接转入相应的中断程序。这种具有断程序。这种具有产生向量地址产生向量地址的中断功能称为的中断功能称为向量中断向量中断。 (2)非向量中断)非向量中断 不能直接提供中断服务
展开阅读全文