(学生)第8章输入输出系统_第1页
(学生)第8章输入输出系统_第2页
(学生)第8章输入输出系统_第3页
(学生)第8章输入输出系统_第4页
(学生)第8章输入输出系统_第5页
已阅读5页,还剩43页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

输入输出系统第

8

章8.1输入输出〔I/O〕系统概述8.1.1输入输出设备的编址8.1.2I/O设备数据传送控制方式8.2程序中断输人输出方式

8.2.1中断的作用、产生和响应8.2.2中断处理8.3DMA输人输出方式8.3.1DMA三种工作方式8.3.2DMA的数据传送过程教学要求掌握几种数据传送方式的工作过程掌握中断的概念和中断原理了解DMA的特点和工作原理为什么要用接口电路?微机的外部设备多种多样外部提供或产生的信号形式多样工作速度方面彼此差异很大传输信息的方式不同接收及传送数据的工作原理不同它们不能与CPU直接相连,必须经过中间电路再与系统相连这局部电路被称为I/O接口电路,通过接口电路对输入/输出过程起一个缓冲和联络的作用。接口电路的功能:完成相应的信息变换、速度匹配、数据缓冲等功能。8.1输入输出〔I/O〕系统概述接口与主机,外设间的连接系统接口接口设备接口主机地址信息—————→外设识别设备控制器外设数据(并)←————→数据/命令/状态数据(并/串)←———→控制联络信息←————→控制电路控制联络←———→数据信息:输入数据,输出数据等控制信息:CPU对外设的控制信息或管理命令状态信息:标志外设的工作状态,例设备准备好,设备忙/空闲联络信息:主机和外设间工作的时间配合信息,例读/写命令外设识别信息:I/O寻址信息接口功能⑴寻址能力:对送来的片选信号进行识别。⑵输入/输出功能:根据读/写信号决定当前进行的是输入操作还是输出操作。⑶数据转换功能:并行数据向串行数据的转换或串行数据向并行数据的转换。⑷联络功能:就绪信号,忙信号等。⑸中断管理:发出中斯请求信号、接收中断响应信号、发送中断类型码的功能。并具有优先级管理功能。⑹复位:接收复位信号,从而使接口本身以及所连的外设进行重新启动。⑺可编程:用软件来决定其工作方式,用软件来设置有关的控制信号。⑻错误检测:一类是传输错误。另一类是覆盖错误。8.1输入输出〔I/O〕系统概述输入输出系统:

输入输出系统包括外部设备(输入输出设备和辅助存储器)及其与主机(CPU和存储器)之间的控制部件.控制部件称之为设备控制器,或设备适配器,或接口.输入输出地址:

为了便于对I/O设备进行寻址和选择,必须给众多的I/O设备进行编址。由于每个I/O设备占有多个I/O端口。CPU通过访问I/O端口和外设打交道,就如同访问存储器中的数据一样。设备号或设备代码:每一台外设被规定的地址码。I/O端口寻址方法:CPU访问I/O设备的方法。8.1.1

输入输出设备的编址I/O端口寻址方法

〔1〕专门的I/O指令例如,指令:IN完成输入,指令OUT完成输出操作。指令的地址码字段指出输入输出设备的设备代码。由相应的控制信号〔如M/IO#〕来区分CPU执行的是什么指令。〔2〕利用访问存储器指令完成I/O功能从主存的地址空间中分出一局部地址码作为I/O的设备代码,当访问到这些地址时,表示被访的不是主存储器,而是I/O设备端口。这时I/O空间和存储器空间是合在一起的,即I/O设备和存储单元是统一编址的.接口和端口的概念:端口是指接口电路中可以被CPU直接访问的存放器.接口是假设干端口加上相应的控制逻辑电路.接口部件的I/O端口⑴数据端口、⑵控制端口、⑶状态端口CPU和外设进行数据传输时,各类信息在接口中进入不同的存放器,一般称这些存放器为I/O端口,每个端口有一个端口地址。用于对来自CPU和内存的数据或者送往CPU和内存的数据起缓冲作用的,这些端口叫数据端口。用来存放外部设备或者接口部件本身的状态,称为状态端口。用来存放CPU发出的命令,以便控制接口和设备的动作,这类端口叫控制端口。输入输出接口类型有:〔1〕按数据传送的宽度可分为并行接口和串行接口并行接口:设备和接口是将一个字节(或字)的所有位同时传送。串行接口设备和接口间的数据是一位一位串行传送的;接口和主机之间是按字节或字并行传送;接口要完成数据格式的串—并变换。〔2〕按照数据传送的控制方式可分成:程序控制输入输出接口、程序中断输入输出接口、直接存储器存取〔DMA〕接口等8.1.2

I/O设备数据传送控制方式

I/O设备数据传送控制方式分为:

无条件传送方式程序查询传送方式程序中断传送方式直接存储器存取方式

I/O通道控制方式

外围处理机方式1.程序直接控制方式也叫程序查询方式。CPU不断地询问外设是否准备好:如果准备好,CPU执行IO操作;否那么,CPU一直等待。CPU大局部时间处于等待状态,利用率不高。⑴查询环节寻址状态口读取状态存放器的标志位假设不就绪就继续查询,直至就绪⑵传送环节寻址数据口通过输入指令从数据端口读入数据通过输出指令向数据端口输出数据输入状态就绪?数据交换YN2.程序中断控制方式CPU不去查询外设,当外设准备好后,发出中断请求,中断CPU的程序执行,转去执行中断处理程序,执行I/O操作,完毕后,恢复原来的程序。1.为什么要采用中断传送方式从程序查询方式的传输过程可以看出,它的优点是硬件开销小,使用起来比较简单。但在此方式下,CPU要不断地查询外设的状态,当外设未准备好时,CPU就只能循环等待,不能执行其它程序,这样就浪费了CPU的大量时间,降低了主机的利用率。

中断方式断点主程序中断服务程序中断请求对外设进行处理继续执行返回断点CPU在执行程序中,被内部或外部的事件所打断,转去执行一段预先安排好的中断效劳程序;效劳结束后,又返回原来的断点,继续执行原来的程序。中断传送是一种效率更高的程序传送方式进行传送的中断效劳程序是预先设计好的中断请求是外设随机向CPU提出的CPU对请求的检测是有规律的:一般是在每条指令的最后一个时钟周期采样中断请求输入引脚中断还有着非常广泛的应用DMA传送方式的提出利用中断进行信息传送,可以大大提高CPU的利用率,但是其传送过程必须由CPU进行监控。每次中断,CPU都必须进行断点及现场信息的保护和恢复操作,这些都是一些额外的操作,会占用一定的CPU时间。如果需要在内存的不同区域之间,或者在内存与外设端口之间进行大量信息快速传送的话,用查询或中断方式均不能满足速度上的要求,因此应采用直接数据通道传送,即DMA数据传送方式。3.直接存储器存取方式希望克服程序控制传送的缺乏:外设→CPU→存储器外设←CPU←存储器直接存储器存取DMA:外设→存储器外设←存储器CPU释放总线,由DMA控制器管理DMA〔DirectMemoryAccess〕意为直接数据传送,它是在在内存与高速外设之间直接进行成组的数据传送,而不经过CPU中转的一种数据传送方式,可以大大提高信息的传送速度。DMA传送流程HLDA发存储器地址传送数据传送结束?DMA结束修改地址指针实际输入输出是外设和内存交换数据。因此在高速数据传送时,可以考虑外设和内存直接交换数据,即直接存储器访问方式。程序控制方式和中断方式实际上每次传送都需要CPU干预,而DMA方式无需CPU干预,而是请求CPU让出3总线〔地址、数据、控制〕,由一个小控制器〔称DMA控制器,仅完成DMA传送控制〕接管3总线,传送完成后,再恢复CPU对3总线的控制。内存外设CPU内存外设CPU程序控制和中断控制DMA控制4.I/O处理机方式

输入输出处理机通常称作外围处理机〔简称ppu〕。这种外围处理机的结构更接近一般处理机,甚至就是一般小型通用计算机或微机。它可完成I/0通直所要完成的I/O控制,还可完成码制变换、格式处理、数据块的检错、纠错等操作。它可具有相应的运算处理部件、缓冲部件,还可形成I/O程序所必需的程序转移手段。有了外围处理机,不但可简化设备控制器,而且可用它作为维护、诊断、通信控制、系统工作情况显示和人机联系的工具。外围处理机根本上独立于主机工作。5.I/O通道控制方式

通道能独立地执行用通道命令编写的输人输出控制程序、产生相应的控制信号送给由它管辖的设备控制器,继而完成复杂的输入输出过程。通道是一种通用性和综合性都较强的输入输出方式。I/O通道具有自己的指令系统,并能实现指令所控制的操作,所以,I/0通道已具备处理机的功能。但它仅仅是面向外围设备的控制和数据的传送,其指令系统也仅仅是几条简单约与I/O操作有关的命令。它要在CPU的I/O指令指挥下启动、停止或改变工作状态。有一些操作仍由CPU来完支。因此,I/O通道不是一个完全独立的处理机,它只是附属于CPU的一个专用I/0处理器。8.2程序中断输人输出方式

8.2.1中断的作用、产生和响应

1.中断:“中断〞是由I/O设备或其他非预期的急需处理的事件引起的,它使CPU暂时中断现在正在执行的程序,而转至另一效劳程序去处理这些事件,处理完后再返回原程序。2.中断源:引起中断的事件称作中断源,3.中断效劳程序对某事件的处理实际上就是去执行一段例行程序,该程序被称为中断处理例行程序或中断效劳程序〔InterruptServiceRoutine,简称ISR〕。4.中断系统:实现中断的硬件及软件称为中断系统。5.中断向量每种中断都有一个与之对应的中断效劳程序。中断向量就是中断处理子程序的入口地址。在PC机中规定中断处理子程序为FAR型所以每个中断向量占用4个字节,其中低两个字节为中断向量的偏移量局部,高两个字节为中断向量的段基址局部。6.中断类型号 80x86系统共支持256种中断,相应编号为0-255之间唯一的编号,把这些编号称为中断类型号。地址 内容000000#偏移量低8位000010#偏移量高8位000020#段基址低8位000030#段基址高8位000041#偏移量低8位4nn#偏移量低8位n#偏移量高8位4n+2n#段基址低8位n#段基址高8位003FF中断向量表0#中断向量n#中断向量〔1〕CPU与I/O设备并行工作例CPU与针式打印机并行工作的时间安排。当打印机完成一行打印后,向CPU发中断信号,假设CPU响应中断,那么停止正在执行的程序转入打印中断效劳程序,将要打印的下一行字传送到打印机控制器并启动打印机工作.然后CPU又继续执行原来的程序,此时打印机开始了新一行字的打印过程.1.中断的作用特点:提高CPU的利用率;对成批数据的交换不便。〔2〕硬件故障处理计算机运行时,如硬件出现某些故障,机器中断系统发出中断请求,CPU响应中断后自动进行处理。〔3〕实现人机联系在计算机工作过程中,如果用户要干预机器,如抽查计算中间结果,了解机器的工作状态,给机器下达临时性的命令等。在没有中断系统的机器里这些功能几乎是无法实现的。利用中断系统实现人机通信是很方便、很有效的。〔4〕实现多道程序和分时操作实现多道程序运行是提高机器效率的有效手段。多道程序的切换运行需借助于中断系统。在一道程序的运行中,由I/O中断系统切换到另外一道程序运行。也可以通过分配每道程序一个固定时间片,利用时钟定时发中断进行程序切换。〔5〕实现实时处理实时处理是指在某个事件或现象出现时及时地进行处理,而不是集中起来再进行批处理。事件出现的时刻是随机的,而不是程序本身所能预见的,因此,要求计算机中断正在执行的程序,转而去执行中断效劳程序。〔6〕实现应用程序和操作系统〔管态程序〕的联系可以在用户程序中安排一条“Trap〞指令进入操作系统,称之为“软中断〞。其中断处理过程与其他中断类似。〔7〕多处理机系统各处理机间的联系在多处理机系统中,处理机和处理机之间的信息交流和任务切换可以通过中断来实现。2.有关中断的产生和响应的概念〔1〕中断源中断源的种类大致分3类:外中断:来自处理机外部设备的中断。如I/O设备、定时钟等内中断:处理器硬件故障或程序“出错〞引起的中断。如电源故障中断、算术操作溢出、除数为零、校验错、指令非法,用户程序执行特权指令以及虚拟存储器页面失效等。软中断:由“Trap〞指令产生的,这是在程序中预先安排好的。而前面两种中断那么是随机发生的。〔2〕中断的分级与中断优先权在设计中断系统时,要把全部中断源按中断性质和处理的轻重缓急进行排队并给予优先权.中断源数量很多时,中断字就会很长,一般把所有中断按不同的类别分为假设干级,称为中断级,在同一级中还可以有多个中断源.首先按中断级确定优先次序,然后在同一级内再确定各个中断源的优先权对设备分配优先权时,必须考虑数据的传输率和效劳程序的要求.数据的有效时间短,那么该设备的优先权高〔3〕禁止中断和中断屏蔽①禁止中断产生中断源后,由于某种条件的存在,CPU不能中止现行程序的执行,称为禁止中断。一般在CPU内部设有一个“中断允许〞触发器。只有该触发器为“1〞状态时,才允许处理机响应中断;如果该触发器被去除,那么不响应所有中断源申请的中断。前者叫做允许中断,后者叫做禁止中断。②中断屏蔽当产生中断请求后,用程序方式有选择地封锁局部中断,而允许其余局部中断仍得到响立,称为中断屏蔽。

中断处理过程↓关中断↓保存断点,保存现场↓判别中断条件转入中断服务程序↓开中断↓执行中断服务程序↓关中断↓↓恢复现场,恢复断点↓开中断↓返回断点8.2.2中断处理1.中断处理过程中断处理过程可分以下几个步骤:〔1〕关中断进入不可再次响应中断的状态,由硬件自动实现。因为接下去要保存断点,保存现场。在保存现场过程中,即使有更高级的中断源申请中断,CPU也不应该响应;否那么,如果现场保存不完整,在中断效劳程序结束之后,也就不能正确地恢复现场并继续执行现行程序。〔2〕保存断点和现场。为了在中断处理结束后能正确地返回到中断点,在响应中断时,必须把当前的程序计数器PC中的内容〔即断点〕保存起来。现场信息一般指的是程序状态字,中断屏蔽存放器和CPU中各存放器的内容。〔3〕判别中断源,转向中断效劳程序。在多个中断源同时请求中断的情况下,本次实际响应的只能是优先权最高的那个中断源。所以,需进一步判别中断源,并转入相应的中断效劳程序入口。〔4〕开中断。因为接下去就要执行中断效劳程序,开中断将允许更高级中断请求得到响应,实现中断嵌套。〔5〕执行中断效劳程序。不同中断源的中断效劳程序是不同的,实际有效的中断处理工作是在此程序段中实现的。〔6〕退出中断。在退出时,又应进入不可中断状态,即关中断,恢复现场、恢复断点,然后开中断,返回原程序执行。〔1〕查询法由测试程序按一定优先排队次序检查各个设备的“中断触发器〞〔或称为中断标志〕,当遇到第一个“1〞标志时,即找到了优先进行处理的中断源,通常取出其设备码,根据设备码转入相应的中断效劳程序。〔2〕串行排队链法由硬件确定中断源。当任一设备的中断触发器为“1〞时,通过“或〞门向CPU发出中断请求信号INTR。由硬件组成一个串行的优先链,称作排队链。2.判别中断源

可以有软件和硬件两种方法来确定中断源。3.多重中断处理多重中断是指在处理某一个中断过程又发生了新的中断请求,从而中断该效劳程序的执行,又转去进行新的中断处理。这种重叠处理中断的现象又称为中断嵌套。一般情况下,在处理某级中的某个中断时,与它同级的或比它低级的新中断请求应不能中断它的处理。而比它优先级高的新中断请求却能中断它的处理。也就是说,当CPU正在执行某中断效劳程序期间,假设有更高优先级的中断请求发生,CPU处于开中断状态时,CPU暂停对原中断效劳程序的执行,转去执行新的中断请求的效劳程序,处理完后再返回原中断效劳程序的执行。8.3DMA输人输出方式DMA是I/O设备与主存储器之间由硬件组成的直接数据通路,用于高速I/O设备与主存之间的成组数据传送。数据传送是在DMA控制器控制下进行的,由DMA控制器给出当前正在传送的数据字的主存地址,并统计传送数据的个数以确定一组数据的传送是否已结束。在主存中要开辟连续地址的专用缓冲器,用来提供或接收传送的数据。在数据传送前和结束后要通过程序或中断方式对缓冲器和DMA控制器进行预处理和后处理。8.3.1DMA三种工作方式1.CPU暂停方式主机响应DMA请求后,让出存储总线,直到一组数据传送完毕后,DMA控制器才把总线控制权交还给CPU。2.CPU周期窃取方式DMA控制器与主存储器之间传送一个数据,占用〔窃取〕一个CPU周期,即CPU暂停工作一个周期,然后继续执行程序。3.直接访问存储器工作方式这是标准的DMA工作方式,如传送数据时CPU正好不占用存储总线,那么对CPU不产主任何影响。如DMA和CPU同时需要访问存储总线,那么DMA的优先级高于CPU。8.3.2DMA的数据传送过程DMA的数据传送过程可分为三个阶段:1〕DMA传送前预处理2〕数据传送3〕传送后处理内存起始地址→DMA主存地址存放器设备地址→外围设备地址存放器传送数据个数→字数计数器启动设备继续执行主程序DMA控制器控制数据传送直到WC为零执行中断效劳程序处理DMA结束操作如需要,停止外设,否那么进行下一次DMA预处理数据传送后处理几种传送方式的比较查询传送接口简单,传送过程中,假设外设数据没有准备好,那么CPU一直在查询、等待,而不能做其他事情。CPU的效率低下。中断传送只有当外设数据准备好时(向CPU发出请求〕,CPU才进行数据传送〔在中断效劳程序中〕,其余时间CPU可以做其他事情。CPU效率大大提高。每传送一次数据,CPU都要执行一次中断效劳程序,在中断效劳程序中,除执行IN和OUT指令外,还要进行以下工作:保护断点、现场保护、恢复等工作,传送效率并不高。DMA传送在DMAC的控制下,外设直接和存储器进行数据传送,而不必经过CPU;传送速度根本取决于外设与存储器的速度,从而传送效率大大提高。练习题一、填空题

1、输入输出设备寻址方式有____1____和____2____两种。

答案:1、统一编址 2、单独编址

2、统一编址方式下,访问输入输出设备使用的是____1____指令,访问输入输出设备和内存将使用____2____的控制总线。

答案:1、访问内存 2、相同

3、单独编址方式下,输入输出操作使用____1____指令实现,输入输出设备和内存的访问将使用____2____的控制总线。

答案:1、专门的输入输出 2、不同

4、输入输出设备中的根本存放器包括控制存放器__1__、__2__。

答案:1、状态存放器 2、数据存放器

5、CPU响应中断时最先完成的两个步骤是____1__和___2__。

答案:1、关中断 2、保存现场信息

6、CPU响应中断后需要保存____1____,即保存程序计数器PC和相关存放器的内容。保存的方法一般是将其放入____2____。

答案:1、现场信息 2、堆栈

7、堆栈结构往往用于中段处理中现场保护,它的存取方式是__1___。

答案:先进后出

8、DMA的含义是____1____,用于解决____2____问题。

答案:1、直接存放器访问 2、数据块传送

9、DMA数据传送过程可以分为____1____、数据块传送和____2____三个阶段。

答案:1、传输前预处理 2、传送后处理

10、DMA控制器中的内存地址计数器存放内存中要交换数据的____1____,每传输一个数据后____2____。

答案:1、起始地址 2、自动加1

11、内部中断允许触发器对________中断不起作用,如掉电就属于此类中断。

答案:不可屏蔽

12、在中断效劳中,开中断的目的是允许________.

答案:多级中断

13、一个中断向量对应于一个________.

答案:中断效劳程序的入口地址

14、按照产生中断的机制,可将中断分为____1____、____2____和____3____。

答案:1、内部中断 2、外部中断 3、软件中断

15、多个中断源在轮询方式中________最先被访问。

答案:优先级高的

17、CPU与外部设备交换数据时采用___1____、____2____和___3____等方式来协调它们之间的速度不同步。

答案:1、程序查询2、中断3、DMA

18、DMA技术的出现使得〔〕可以通过〔〕直接访问〔〕,与此同时,CPU可以继续执行程序

答案:外围设备、DMA控制器、内存

二、选择题

1.

主机、外设不能并行工作的方式是〔〕

A程序查询方式B中断方式C通道方式

2.

在独立编址方式下,下面的说法〔〕是正确的

A一个具体地

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论