收藏 分享(赏)

第七章1 IO接口(要用).ppt

上传人:scg750829 文档编号:8271301 上传时间:2019-06-17 格式:PPT 页数:53 大小:243KB
下载 相关 举报
第七章1 IO接口(要用).ppt_第1页
第1页 / 共53页
第七章1 IO接口(要用).ppt_第2页
第2页 / 共53页
第七章1 IO接口(要用).ppt_第3页
第3页 / 共53页
第七章1 IO接口(要用).ppt_第4页
第4页 / 共53页
第七章1 IO接口(要用).ppt_第5页
第5页 / 共53页
点击查看更多>>
资源描述

1、第七章 计算机输入输出接口,7.1接口的功能与组成,程序、原始数据和信息,要通过输入设备送入计算机;处理的结果或给出的信号,要通过输出设备显示、打印。输入输出设备是计算机系统的重要组成。输入输出设备统称外部设备,简称“外设”或“I/O”设备。与主机配合工作时,必须通过相应的部件。协调、匹配外设与主机正常工作的逻辑部件及相应的控制软件就是计算机输入输出接口。,7.1 输入输出接口基本知识,7.1.1 输入输出接口的功能外设是机械、电子或机电、磁电结合的设备,信息传送的速度有快有慢,有并行、串行,为使计算机能够适应各种外设不同编码方式和不同传送速度的要求,计算机的输入输出接口应有以下四项重要功能。

2、,1.能进行地址译码及设备选择,2.能实现数据缓冲与数据锁存数据总线是公用的传输线,设备分时使用,被选中的设备在读/写周期内使用总线,未选中的对总线呈高阻抗。外设和CPU工作速度差异大,解决方法是在接口电路中实现数据锁存。,有多个外设,主机和不同的外设交换信息,就要用地址码来选择不同的外部设备。接口须进行地址译码,产生选择信号,使主机和指定的外设交换信息。,3. 能完成信息格式和电平的转换,计算机系统中的信息采用并行二进制,而一些外设如CRT显示器,采用一位接一位的串行传送,就要求接口具有并行/串行或串行/并行格式转换功能。 有些外设的输入或输出不是计算机能处理的,要处理必须进行数字量/模拟量

3、或模拟量/数字量的转换。 外设信号电平并不都与计算机信号电平兼容,接口还要具有对信号电平的转换功能。,4. 能保证数据传送的定时与协调,接口还应为CPU和外设之间在时间上的协调者,保证数据连续不断地在二者之间正确传输。图7-1表示联络方式,(A)是输出时的,(B)是输入时的联络方式。接口与外设之间的联络信号只有两个:一是“数据准备好”信号,由送出数据方通知接收数据方;另一是“数据接收完毕”的响应信号,当接收方正确接收后回送的响应信号,表示允许新的数据传输。,图7-1 接口与外设之间的联络方式:,7.1.2 输入输出接口的基本结构与组成,接口中传递三种信息: 数据来自外设或送往外设的各种各样数据

4、信息;状态反映外设当前工作状态的信息;控制CPU发向外设的启动或停止的控制信息。是完全不同的三种信息,但都是通过数据总线传送的。使CPU分清与哪个外设交换哪种信息。,接口电路中用设置存放数据、状态和控制信息的寄存器解决。当CPU与外设交换信息时,使用不同的地址来选择接口电路中的某个寄存器,就可将不同的信息分别传送。接口电路中不同地址、可由CPU进行读/写操作的寄存器称为端口。,图7-2 接口的基本结构,图7-2 接口的基本结构,7.1.3 输入输出接口的分类,有多种分类法:按数据传送方式分为串行接口与并行接口;按数据收发双方配合方式分为同步接口与异步接口;按通信的协调控制方式分为程序传送接口、

5、中断传送接口和DMA接口;按电路规模分为简单普通接口、可编程接口及外设接口适配器等。,1. 串行接口与并行接口,串行接口:接口与外设间以串行方式传送数据,而接口与主机之间仍是并行方式。要求串行接口实现数据格式的并串转换;统一收发双方数据传送的速率及将串行数码分离成字。INTEL8250、8251和MC6850、6852等是典型的串行接口组件。,并行接口:主机与接口、接口与外设间以并行方式传送数据,数据通路宽度是按字或字节设置的,有较高的传送速率。当外部设备采用并行工作方式、且与主机距离较近(几米内)时,选用并行接口。INTEL8255、MOTOROLA公司的MC6820、ZILOG公司的Z80

6、-PIO等都是典型的并行接口组件。,2. 同步接口与异步接口,同步接口:操作在主机系统时钟控制下进行,I/O操作周期只能取系统时钟周期的整数倍。异步接口:主机与I/O设备之间采用“应答方式” 传送信息,接口操作不由系统时钟控制。双方的信息交换过程一问一答地进行。“请求”到“应答”的时间由操作的实际时间决定,不由CPU的时钟周期确定。,3. 程序传送接口、中断传送接口与DMA接口,程序传送接口:CPU用程序传送方式与I/O设备交换数据。分为无条件程序传送和程序查询方式接口。前者适用于简单的同步外设,后者用于低速外设。工作协调主要靠软件解决。,中断传送接口,中断是CPU处理紧急或突发事件的重要功能

7、。有紧急或突发事件要处理时,CPU暂停当前工作转去处理,完毕后继续原来工作。 CPU用中断传送方式与外设交换数据,必须配有中断控制逻辑的接口电路,即中断传送接口。在计算机系统中,用这种接口与速度低的外设通信。,DMA接口,程序传送和中断传送接口在数据的传送过程中,都要CPU参与。数据量较大,如从磁盘向内存中读取程序时,耗用CPU许多时间。 DMA接口可以实现直接存储器存取,在存储器与外设之间直接传送数据,不需CPU介入。,4. 简单普通接口、可编程接口以及外设接口适配器,简单接口:中、小规模集成电路制成的功能单一接口,满足某一外设的需要而专门设计。 可编程接口:大规模集成电路制成的通用接口,有

8、多种功能且能编程灵活设定,可满足多种外设的需要。早期微型机系统中大量使用。 超大规模集成电路的发展,一块集成电路芯片中能集成多种功能的接口电路,包含一个微型机系统常用的几种接口。,外设接口适配器,复杂外部设备如CRT等,有多种控制信号、时序逻辑、数据格式变换等,单一接口芯片难以满足,须用一块由各种功能的芯片和电路组成的插件板,叫作外设接口适配器。只为某一外设专用,又简称设备卡。如显卡、语音卡等。 微型机中,外设接口适配器通过系统总线与主机组成系统。备有多个I/O插座,俗称扩展槽,供用户插入某种外设接口适配器。,7.1.4 输入输出接口的编址方式,接口电路中,具有多个可由CPU进行读或写的寄存器

9、,也叫端口。不同型号的CPU对端口的编址方式不同:(1)与存储器统一的编址方式,叫存储器统一编址;(2)采用单独编址方式,叫端口独立编址。,1. 存储器统一编址,将接口电路中的端口地址与存储器的存储单元统一编址,即一个端口占用一存储单元地址。CPU用对存储器操作的同样方法对端口读/写操作。 统一编址优点:一是CPU指令类型多,功能齐全,使用方便;二是端口的地址空间较大。 存在占用存储器空间和执行速度慢的不足。现在微型机很少采用。,2. I/O端口独立编址,CPU给I/O接口中的各端口提供完全独立的I/O地址空间。用专用指令(IN和OUT)对端口进行读/写操作。 独立编址方式优点:一是专门的I/

10、O指令,与访问内存完全分开;二是执行速度快;三是不占用内存地址空间。 缺点是端口地址范围较小,一般为256至1024个,间接寻址最多达64K个。现各种系列微型机大都用这种方式。,7.2 主机与外设之间的数据传送控制方式,分为:程序直接传送控制、中断传送控制、直接存储器存取控制和输入输出处理机传送控制等几种方式。7.2.1 程序直接传送控制方式分为无条件传送控制和有条件传送控制两种方式,有条件传送控制方式也称程序查询传送控制方式。,1. 无条件传送控制方式,外设随时处于准备好状态,通信可采取无条件方式传送。CPU可在任意时刻直接进行数据传送,不需要询问和应答。比如显示器可根据输入数据随时改变显示

11、内容,因而CPU可直接向其发送数据,无需查询。又如温度传感器,任何时有一温度值,CPU要读温度值也不需要预先进行联系。,2. 程序查询传送控制方式,即有条件的传送控制方式。CPU传送数据前,对外设状态检测,满足条件时才传送,否则等待。微机系统常用的方式,分查询输入和查询输出两种。一次数据传送的过程是: CPU执行一条输入指令,从状态端口读入外设的 现行状态; 检查状态是否满足条件; 状态不满足,则重复执行过程,直到条件满足; 状态满足,CPU从I/O端口读入或写出数据,同时使I/O端口状态复位。,图7-3 查询输入方式接口电路,图7-4 查询输入的信息格式及程序流程,LOOP: IN AL,S

12、TATUS-PORT; 读入RDYAND AL,80H; 检查RDYJZ LOOP; RDY=0等待IN AL,DATA-PORT; 读入数据可见,CPU与外设的这种传送控制方式中,状态信号起到了“联络”的作用。,图7-5 查询输出方式接口电路,图7-6 查询输出的信息格式及程序流程,LOOP: IN AL,S-PORT; 读入BUSYAND AL,80H; 检测BUSY=0?JNZ LOOP; BUSY=1,等待MOV AL,BUFFER; BUSY=0,不忙OUT D-PORT,AL; 输出数据程序中,S-PORT是状态端口的符号地址,DPORT是数据端口的符号地址,内存单元地址为BUFF

13、ER。,查询传送方式优点是:能协调外设与主机之间的时间差异,所用的硬件较少。缺点:其一是主机与外设只能串行工作。外设未准备好主机一直不断循环等待,CPU工作效率大大降低。其二是主机在一时段内只能和一台外设交换数据信息,外设不能同时工作。仅适用于对速度要求不高,外设数量不多的情况。,7.2.2 中断传送控制方式,主机在启动外设开始某一操作之后并不等待查询,继续执行原程序;当外设完成准备后,向主机发中断请求信号;CPU响应请求暂时中断原正执行的工作(程序)而转去执行外设请求进行处理的服务程序,数据交换完后主机仍返回执行原来程序。,7.2.3 直接存储器存取控制方式,CPU执行中断服务程序总要占用一

14、段时间,对于快速数据传输来说,中断方式也不能满意,例如读写磁盘。提出一种没有CPU参与、在外设与存储器之间直接进行数据传输的控制方式-直接存储器存取控制方式,也叫DMA(Direct Memory Access)方式。,硬件电路(DMA控制器)向CPU请求并接管系统总线的控制权,使存储器与外部设备之间直接进行数据交换,不需CPU干预,解决了通过CPU传送的“瓶颈”问题,加快了数据传送速度,满足了高速外设传送的要求。DMA方式是高速外设与主机成批交换数据的有效方式。DMA方式也有局限性,DMA控制器只能对同类外设控制,适合于外设不多的微小型计算机系统。,7.3 中断控制技术,中断是计算机主机处理

15、突发事件的重要功能,也是大部分输入/输出接口的必备功能之一。7.3.1 中断的概念 计算机暂时终止现行程序而转去处理随机出现或有意安排的紧迫任务、处理完毕后能自动恢复原程序执行的过程叫“中断”。通常把这些处理紧迫任务而编制的程序叫做中断服务程序。各种硬件、软件所构成的中断系统已成为现代计算机不可缺少的组成部分。,机器中引起中断产生的事件或发生中断请求的来源统称为中断源。分为I/O中断、数据通道中断、时钟中断、故障中断和程序中断五种。由机器内部产生的中断统称为内部中断,如电源故障中断、主机设备故障中断、由运算产生的中断、由控制器产生的中断和定时时钟中断等;由外部设备引起的中断叫作外部中断,如键盘

16、中断、磁盘存储器申请中断、打印机中断及生产过程发出的中断等。,CPU响应可屏蔽中断须满足三个条件: 中断源有中断请求; CPU允许接受中断请求; 一条指令执行完毕后才能响应中断。中断响应如图。其工作过程包括:,图7-10 中断响应过程,7.3.2 中断系统的功能,中断系统指为了完成一次中断操作的全过程需要的各种部件及相互关系。一个完整的中断系统是相当复杂的,只从原则上了解系统中应包括的内容,以及它们在中断过程中所起的作用。,1.中断请求的检测与屏蔽,检测:外设送来的中断请求信号由CPU检测。由于CUP总是不断执行指令,所以对中断请求线上的状态检测,只能定时进行。检测时间安排在一指令周期的最后一

17、个机器周期,以确定下一机器周期是继续执行指令还是进入中断处理。CPU对中断事件的处理是在指令之间进行,不能在一条指令执行之中进行。要求送CPU的请求信号保持一足够长时间,到CPU响应中断后才撤除。,屏 蔽:有时不希望打断主程序的执行,即屏蔽(不响应)外部的中断请求。在CPU中设置一中断允许寄存器IF:=1时允许中断,=0时禁止中断-屏蔽中断。CPU响应一次外中断后, IF自动复位,不允许再发生中断。这个寄存器受软件控制,可用指令使之复位或置位。CPU对中断响应与否就能由程序方便地控制。,2.堆栈与断点保护,为处理外设提出的服务请求,CPU暂时终止当前程序,转而执行一个处理中断用的专用程序,即中

18、断处理子程序。当前程序被暂时中断的那个地址称为断点,断点地址必须保存,才能恢复原程序的正确执行。保存断点地址以及一些寄存器内容的地方叫堆栈。可以由一些专用寄存器组成,但在微机中将内存的一个区辟出作为堆栈,用一专门寄存器指明堆栈顶部地址,该寄存器称为堆栈指针。这样保存断点或恢复断点的操作,成了特殊寻址的存储器读、写过程。,设主程序放在0100H开始的地址段中,中断处理子程序放在1800H开始的地址中,堆栈指针指向FFF0H。设当程序执行到0180H所存的指令时,外部送来一个中断请求,CPU执行该指令的最后一个机器周期中检测到请求,执行完毕后响应此中断。如这条已执行的指令是两字节长,那么断点就是0

19、182H,即把PC=0182H自动压入堆栈保存。压入的两个单元地址是FFF0H和FFEFH。而将程序计数器PC的内容改为1800H,开始执行中断处理子程序。,3.矢量中断与中断矢量,根据发生中断时CPU取得中断处理子程序地址的方式而得名。提供一个矢量,指向中断处理子程序的起始址。这种方式的主要优点是从主程序转到中断处理子程序的速度快。中断矢量是一个指针,它总是指向中断处理子程序的起始地址。微机是把全部中断矢量放在内存的某一区域,形成一中断矢量表。发生中断时,根据中断源不同,从表中取出对应的中断矢量送给CPU,成为新的PC值,CPU开始对中断处理子程序的执行。,4.多重中断与中断优先级,多重中断

20、: CPU响应一中断、执行中断处理子程序后,如果令中断允许寄存器IF=1,CPU还可以接受别的中断请求。又一个中断请求到来时,会使正在执行的中断处理子程序再次中断,形成多重中断。有点类似子程序的“嵌套”。 是否允许多重中断,取决于CPU是否开放中断。如果关中断,IF=0,后到的中断请求只能挂起,直到前一中断处理完后,才能响应后一中断。,中断优先级:CPU上往往连接多个中断源,互相之间不同步工作。CPU对中断请求的检测时可能出现几个中断请求同时存在的现象。每次只能响应一个中断,要对中断源作优先级划分,同时请求的中断中,优先级高的先响应,待高优先级中断处理完后,再按同样原则进行后续处理。 优先级安

21、排根据处理事件的重要、紧急程度预先确定,中断系统须能作优先级判断。可用软件的方法,也可用硬件方法实现。,8086CPU中断处理的优先顺序确定为:内部中断优先于外部中断(单步操作中断除外),内部中断的具体顺序为:除法错、INT 类型号、INTO、单步中断。,(2)硬件中断,外部事件触发引起的中断称硬件中断或外部中断。 8086有两个中断请求输入端,INTR是可屏蔽中断请求, NMI是不可屏蔽中断。 INTR是电平信号输入端,CPU无法缓存锁定。中断请求信号要一直保持到这个中断被检测且开始响应才能撤消。能否为CPU响应,受CPU内IF的控制,IF=1,才允许响应中断。 可定义为0255间任意一个中

22、断类型,与中断控制器8259A结合,8259A提供中断类型号。,NMI端是边沿触发输入端。只要输入脉冲有效,高电平宽度大于两个CPU时钟周期,CPU就会锁存。CPU对NMI的响应不受中断允许寄存器IF控制,总是能被响应的,优先级比INTR要高。中断类型码为2。有NMI请求时,CPU直接查中断矢量表转去执行中断服务程序,不需从外设取回中断类型码,不需产生中断响应周期,不必发中断响应信号,迅速响应。用来处理一些紧急事件,如电源故障、奇偶校验错等。,3. 8086的中断响应过程,8086中各种中断响应和处理过程不相同,但区别在于如何获取中断类型码。CPU在每条指令执行完毕,都检测有无中断请求,根据优

23、先级确定响应次序。若检测到内部中断,自动形成中断类型码;测到NMI中断请求,内部自动产生中断类型码2;若有INTR中断请求,且CPU处于开中断状态,由数据总线获取外设的中断类型码,关中断时不响应。,中断响应后,各类中断处理过程相同:(1)类型码乘4作为中断向量表的首址; (2)标志寄存器入栈,保护各个标志位; (3)屏蔽新的INTR和单步中断; (4)把主程序断点处的IP和CS值压入堆栈; (5)从中断向量表取中断服务程序的入口地址,分别送入IP和CS中; (6)按新地址执行中断服务程序; (7)中断服务程序中,要保护CPU内部寄存器的内容-保护现场,开中断(若允许中断嵌套);,(8)中断服务程序执行完后,恢复现场,IP、CS值和标志寄存器数值出栈,返回被中断的程序继续执行。256个中断中,类型号越小的,优先级越高,软件优先级高于硬件。80286及以后升级的CPU对中断功能进行了扩充,增强了中断处理功能。,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报