[IT认证]第5章输入输出系统V12.ppt
《[IT认证]第5章输入输出系统V12.ppt》由会员分享,可在线阅读,更多相关《[IT认证]第5章输入输出系统V12.ppt(131页珍藏版)》请在三一办公上搜索。
1、计 算 机 组 成 原 理,2013年3月6日,第五章 输入输出系统,5.1 I/O系统概述,I/O系统功能为数据传输操作选择I/O设备连接I/O设备与主机,完成数据交换I/O系统组成软件:可由系统软件(OS)或应用软件承担输入输出过程控制:发送读写指令,检查设备状态等用户界面硬件:I/O接口主机与外设之间通信:速度匹配、同步、指令、状态、差错控制.数据缓存“接口(interface)”vs.“端口(port)”端口寄存器组(数据、控制、状态)接口N个端口控制逻辑,5.1.1 I/O接口组成,速度匹配、同步、指令、状态、差错控制、数据格式转换,5.1.2 I/O编址方式,计算机系统中I/O端口
2、的编址方式独立编址方式(direct I/O)专用I/O端口地址,与存储器地址空间分开采用专用I/O指令Intel处理器所使用的方式8086:存储空间1M(20条地址线),I/O空间64K(16条地址线)存储器映射编址方式(Memory Mapped I/O)I/O端口占用一部分存储空间使用统一的访存指令对I/O端口进行读写某些嵌入式处理器(Embedded Processor)采用的方式利弊:编程,指令译码,存储器映射I/O编址,5.1.3 数据传输方式,数据传输方式串行并行,并行,串行,5.1.4 外围设备的定时方式,外围设备种类繁多,不同设备在速度上差异甚远,信号格式也不尽相同,如何将不
3、同速度的设备与高速运转的主机相连?如何同步?输入输出设备与CPU交换数据的基本过程 输入过程 输出过程,不同设备的定时,如何判断数据有效是外设定时的关键;速度不同的外围设备共有三种定时;速度极慢或简单的外围设备 慢速或中速的外围设备(异步定时)高速的外围设备(同步定时),同步方式,主机较外设速度快,必须同步异步方式:Handshaking protocol应答式(acknowledge)Ready:就绪Strobe:选通串行,速度慢同步式:主机与外设采用同步时标并行,速度快,5.1.5 数据传输控制方式,程序查询方式程序中断方式直接内存访问方式(Direct memory access)I/O
4、通道方式I/O处理机方式,CPU控制传递过程,1、程序查询方式,由CPU控制数据传输的过程一次传输一个字节多个设备优先级:查询的顺序处理器等待,效率低,程序查询方式,数据传输完全依赖于程序控制 CPU与外设之间的操作能够同步 硬件结构简单 频繁的查询动作浪费了大量宝贵的CPU时间 最古老的一种方式,目前很少使用,单片系统仍有使用。,2、程序中断方式,中断的概念暂停当前程序的执行,转而执行其他程序,在它们执行完成后再恢复被中断程序的执行。允许一个处理器“同时”执行多个任务中断服务程序中断方式I/O处理器继续执行自己的任务外设Ready后,通过接口向CPU发中断请求CPU在当前指令执行完成后响应中
5、断完成数据传输后,恢复被中断程序的执行并行,效率高,但仍然占用CPU应用:数据采集,键盘接口,打印程序,程序中断方式,外围设备主动通知CPU,准备数据传输 当中断发生时,CPU中断当前的工作,转向中断处理子程序,该程序用于数据传输。提高了CPU的使用效率。适合随机出现的服务 硬件结构相对复杂,服务开销时间大,3、DMA方式,进一步提高效率,避免在I/O时占用CPU需要解决访存时总线冲突问题CPU在总线周期结束时让出总线时钟周期总线周期指令周期批量数据传输,直接内存访问DMA方式,用于成组交换数据的场合 中断方式不适合于成组数据交换 由硬件执行I/O交换的工作方式 DMA控制器从CPU接管总线控
6、制,数据交换无须CPU干预,直接在内存以及外围设备之间进行,节约了中断开销 需要更多硬件。,4、I/O通道方式,对大型系统,设备多,数据传输频繁,DMA造成的总线冲突仍然影响CPU的效率。I/O通道方式执行专用指令,完成数据交换专用处理器,受主CPU控制(启停等)应用:网络控制器?,通道方式,分担CPU的I/O 处理的功能;通道是一个具有特殊功能的处理器IOP;可以实现外围设备的统一管理和DMA操作 大大提高了CPU工作效率;花费更多的硬件代价;,小 结,内容外设原理I/O系统组成I/O接口的基本特征编址方式同步方式控制方式要求基本工作原理、流程、结构框图,1.在统一编址方式下,下面哪一个说法
7、正确()。A.一个具体地址只能对应输入输出设备 B.一个具体地址只能对应内存单元C.一个具体地址既可对应内存单元又可对应输入输出设备D.一个具体地址只对应I/O设备或者只对应内存单元。,课堂练习,2.在独立编址方式下,存储单元和I/O设备是靠()来区别的。A.不同的地址代码 B.不同的地址总线 C.不同的指令或不同的控制信号 D.上述都不对,课堂练习与思考:,D,C,课堂练习(续),3.数据格式的串并转换是()功能。A 并行接口 B 串行接口 C 同步接口 D 异步接口,4.I/O接口中数据缓冲器的作用是()。A 暂存外设和CPU之间传送的数据 B 暂存外设的状态 C 暂存外设的地址 D 上述
8、都不对,课堂练习与思考:,B,A,5.2 程序查询方式及其接口,一 程序查询方式,基本思想:由CPU执行一段输入输出程序来实现主机与外设间数据传送。根据CPU与外设之间传送数据的时机是由CPU决定还是由外设决定,可分为无条件传送和有条件传送方式。,1 无条件传送方式 CPU无需询问I/O接口的状态,可随时直接输入或输出数据。该方式一般用于简单外设,且无需了解外设工作状态的情况。,程序查询方式及其接口,1 无条件传送方式(续),(1)简单输入举例【例】从开关寄存器(8位)输入数据,输入端口地址为FEH.假定:I/O设备独立编址,I/O地址为位(A7-0)输入指令为IN A,(设备地址);A为CP
9、U中的累加器 输入指令对应总线上的控制信号为:(对I/O接口操作),(读),程序查询方式及其接口,(2)简单输出举例【例】向端口FEH输出数据,显示在发光二极管上。假定:I/O设备独立编址,I/O地址为位 输出指令为 OUT(设备地址),A;输出指令对应总线上控制信号:,程序查询方式及其接口,程序查询方式的工作流程,CPU需要根据外设的工作状态来决定是否进行数据传送,随时对接口状态进行查询。,特点:简单,不需要复杂的硬件接口。但CPU完全被外设占有,不能做其他任何事情,效率低,浪费了许多CPU时间。,查询传送流程,课堂练习与思考:,1.不同工作速度的设备之间进行信息交换()A.必须采用异步控制
10、B.必须采用同步控制C.即可以采用同步控制,也可以采用异步控制D.不能用时钟周期提供时间划分基准,2.外部接口是()的逻辑部件A.CPU与系统总线之间 B.系统总线与外部设备之间C.主存与外围设备之间 D.运算器与外围设备之间,3.串行接口是指()A.接口与系统总线之间采取串行传送B.接口与外围设备之间采取串行传送C,接口与两侧采取串行传送D.接口内部只能串行传送,D,B,B,4.并行接口是指()A.接口与系统总线之间采取B.接口与外围设备之间采取并行传送C.系统总线采用并行传送 D.接口采用中断方式,5.在磁盘存储器中()A.只采取查询等待方式B.只采取程序中断方式C.采取方式D.既有方式,
11、也有中断方式,B,C,5.3 程序中断方式,外围设备主动通知CPU,准备数据传输 当中断发生时,CPU中断当前的工作,转向中断处理子程序,该程序用于数据传输。提高了CPU的使用效率。适合随机出现的服务 硬件结构相对复杂,服务开销时间大,5.3.1 中断基本概念,CPU暂时中止现行程序的执行,转去执行为某个随机事件服务的中断处理子程序,处理完毕后自动恢复原程序的执行 保存断点,保护现场;恢复现场,返回断点。一条指令结束时切换。保证程序的完整性。,1、中断基本概念,计算机在运行过程中,可能会发生运算溢出、除数为零、无休止循环或电压下降等事先无法预料的故障,这些都是运行中非正常的现象。外部设备要求传
12、送信息,尽管是系统运行的正常现象,但是对CPU来说是随机的,不可能预先规定传送的时刻。中断技术赋于计算机应变能力,将有序的运行和无序的事件统一起来,大大增强了系统的处理能力,2、程序中断处理示意图,主程序,A请求中断,B请求中断,C请求中断,A中断服务子程序,B中断服务子程序,C中断服务子程序,3、中断程序与子程序,中断程序转移类似于子程序调用 子程序调用是由主程序安排在特定位置上的,通常是完成主程序的特定功能,与主程序存在必然联系。而中断是随机发生的,可以在程序任何一个位置切换,而这没有直接联系。,4、中断作用,实现主机和外部设备准备阶段的并行工作 使用中断技术后,CPU原来用于查询外设状态
13、的时间被充分地利用起来了,其工作效率得到了显著的提高。,主程序,启动设备,设备请求中断,设备准备,中断服务,两种控制方式中CPU运行轨迹,中断作用,故障处理 系统能在故障出现时发出中断信号,调用相应的处理程序,将故障的危害降到最低程度,并请求系统管理员排除故障。实时处理 计算机在现场测试和控制、网络通讯、人机对话时都具有强烈的实时性,中断技术能确保实时信号的处理。,5、中断的类型,中断,内中断,外中断,(,强迫中断,),自愿中断,指令中断,强迫中断,硬件故障,软件出错,不可屏蔽中断,可屏蔽中断,6、中断优先级,当多个设备同时产生中断请求时,CPU就必须采用一定的策略进行响应,通常采用优先级的策
14、略。优先级是CPU响应并处理中断请求的先后次序 当多个设备同时有中断请求时,优先级高的先响应,优先级低的后响应。当CPU正在为某设备服务时,优先级高的中断请求可以中断CPU当前所服务的程序。,中断优先级,CPU优先级随不同中断服务程序而改变,如执行某设备服务程序,CPU优先级就与该设备的优先级一样。低于或者等于当前优先级的设备请求均要屏蔽。CPU在程序开始执行时,就设置设备接口中的中断屏蔽触发器(INM)状态。如CPU当前优先级是3级(0为最高级),则将3级以上的低优先级设备接口中的INM置“1”即屏蔽,其他置“0”。,划分优先级的一般规律,硬件故障中断属于最高级,其次是程序错误中断。非屏蔽中
15、断优于可屏蔽中断。DMA请求优先于I/O设备传送的中断请求。高速设备优于低速设备,输入设备的中断优于输出设备,实时设备优先于普通设备。同一优先等级中可以包括多台设备,这些设备中离计算机近的优先,形成了二维优先等级。,二维优先级示意图,7、中断屏蔽,中断屏蔽技术可动态改变各设备的优先级。响应优先级 CPU对各设备中断请求进行响应,并准备好处理的先后次序,这种次序往往在硬件线路上已固定,不便于变动。处理优先级 CPU实际对各中断请求处理的先后次序。如果不使用屏蔽技术,响应的优先次序就是处理的优先次序。,中断屏蔽方式,1,1,0,0,中断屏蔽位,CPU响应中断后,正在执行中断服务子程序时,可能有另外
16、一个设备也发出中断请求,为了不发生混乱,中断管理部件中必须有一个中断屏蔽寄存器。设置1为设置屏蔽,否则取消屏蔽。,屏蔽码,通过控制各设备接口的屏蔽触发器状态,达到改变处理次序的目的。CPU送往各设备接口屏蔽触发器状态信息的集合,称为屏蔽码,8、单级中断与多级中断,当几个设备同时产生中断请求时,CPU响应即优先级高的中断请求。但当CPU正在处理低优先级设备时,出现了高优先级设备的中断请求,那是不是一定要中断运行中的程序呢?出于对系统硬件、软件开销的权衡,有两种解决方式,即单级中断处理和多重中断处理。,多级中断,优先级高的中断级可以打断优先级低的中断服务程序,以实现中断程序的嵌套。,主程序 A B
17、 C,同时中断请求的处理方法,9、信息交换的中断过程,外围设备在数据准备就绪后,发出请求中断信号,请求CPU中断目前正在执行的程序而进行数据交换。CPU响应这个中断,暂停当前执行的主程序,并自动转移到该设备的中断服务子程序。(该程序用于数据交换)中断服务子程序结束以后,CPU又回到原来的主程序。,10、I/O 中断处理过程,(1)CPU 响应中断的条件和时间,条件,时间,允许中断触发器 EINT=1,用 开中断 指令置“1”EINT,用 关中断 指令置“0”EINT 或硬件 自动复位,当 D=1(随机)且 MASK=0 时,在每条指令执行阶段的结束前,CPU 发 中断查询信号(将 INTR 置
18、“1”),(2)中断处理过程,中断服务程序的流程,(1)保护现场,(2)中断服务,(3)恢复现场,(4)中断返回,对不同的 I/O 设备具有不同内容的设备服务,中断返回指令,中断隐指令完成,进栈指令,出栈指令,中断处理中的问题,中断时机 保存现场 中断屏蔽 中断过程由软硬件结合完成,中断识别,非向量中断 将服务程序入口组织在查询程序中;响应时执行查询程序查询中断源,转入相应服务程序。向量中断 将服务程序入口(中断向量)组织在中断向量表中;响应时由硬件直接产生相应向量地址,按地址查表,取得服务程序入口,转入相应服务程序。,中断识别,程序识别 单线查询法 中断向量法,程序识别(软件查询),单线查询
19、法,链式查询的中断排队电路,中断请求信号有效(IR=1)响应中断(INTA=1)送排队电路 若设备i无请求(IRi=0)经反向器开放与门2 继续下传INTA信号;设备i有请求(IRi=1)经反向器关闭与门2 截取INTA(阻止下传)。同时开放与门1 送出本设备中断向量。,中断向量法,5.3.2 中断仲裁方式,同一时刻可能有多个设备同时发出中断请求,如何选择适当的设备进行中断响应?(与总线仲裁方式类似)链式查询 独立请求 分组链式结构,1、链式查询方式,IG,IR,IR:,中断请求,IG:,中断许可,CPU,设备,n,设备,1,2、独立请求方式,3、分组链式,4、中断方式接口,中断传送流程,4、
20、工作过程,主机启动设备 设备准备传送 发中断请求信号 主机响应中断 数据传送,例:设原有中断优先级顺序为0123,试设置中断屏蔽字,将中断优先级改为1203。解:根据要求:3级中断的优先级最低,因此3级中断的屏蔽字应设置为允许0级、1级和2级中断,但屏蔽3级中断,屏蔽字为:0001(0级,1级,2级,3级中断屏蔽位)1级中断为最高,其屏蔽寄存器应设置为全1,以屏蔽所有其它中断。即这时的中断屏蔽字为:1111 2级中断的优先级高于0级、3级中断,但低于1级中断。其屏蔽字应设置为:1011 0级中断的优先级高于3级中断,但低于1级、2级中断。其屏蔽字应设置为:1001,下图为4级中断请求同时到达时
21、CPU的响应顺序。图中用向下的箭头表示程序执行过程,从上到下是时间轴,从左到右则表示系统处于原程序和各种不同中断处理程序的状态。,例:A、B、C是与主机连接的3台设备,在硬件排队线路中,它们的响应优先级是ABCCPU,为改变中断处理的次序,将它们的中断屏蔽字设为:,请按下图所示时间轴给出的设备中断请求时刻,画出CPU执行程序的轨迹。A、B、C中断服务程序的时间宽度均为20 s。,解:从中断屏蔽字看出,其处理优先级为:ACB 故CPU运行轨迹如下:,A服务,B服务,C服务,CPU,A,B,C,20 40 60 80,5.4 DMA方式,5.4.1 DMA方式的基本概念 1 DMA方式的特点及应用
22、场合,DMA方式是在外设和主存间开辟一条“直接数据通道”,在不需要CPU干预也不需要软件介入的情况下在两者间进行的高速数据传送方式。,一般用在主存与高速外设间的简单数据传送。应用场合包括磁盘、光盘等外设接口;网络通信接口;动态存储器的刷新;高速数据采集接口。,DMA方式中,对数据传送过程进行控制的硬件称为DMA控制器。,2、DMA基本概念,中断方式提高了主机和外设并行工作的效率,但是每传送一个字或一个字节的数据就要执行一次中断服务程序,数据传送时仍然要占用CPU的时间,不适合于高速传输的系统。DMA在外设与主存之间建立一个由硬件管理的数据通路,如图所示,使CPU不介入传送时的操作,数据也不经过
23、CPU。这样就减少了CPU的开销,系统效率得到了提高。,CPU,主存,DMA,接口,接口,内存争用,DMA方式进行数据传送时,CPU仍执行主程序,此时DMA控制逻辑与CPU可能同时要访问主存,引起主存使用权的冲突。如何处理这种冲突呢?停止CPU使用主存 DMA与CPU交替使用主存 周期挪用法,3、停止CPU访内,由于外设传送两个数据间的时间间隔大于存储周期,所以在DMA控制内存期间,内存没有得到充分利用。,内存工作,CPU访内,DMA访内,4、DMA与CPU交替使用主存,每个CPU工作周期分成两个时间段,一段用于 DMA访问主存,一段用于CPU访问主存。CPU和DMA都能访问主存,没有主存使用
24、权移交过程,所以这种方式的效率较高,但是硬件投资较大,而且要求 CPU工作周期比存储周期长很多。,5、周期挪用法,DMA要求访问主存时,CPU暂停一个或多个存储周期。一个数据传送结束后,CPU继续运行。CPU现场并没有变动,只是延缓了对指令的执行,这种技术称为周期挪用,或称周期窃取。如发生访存冲突,则DMA优先访问。,5.4.2 DMA主要操作过程,主机通过指令向DMA接口发送必要的传送参数,并启动 DMA工作。这些参数的作用是 指出数据传送的方向,即指出是主机将数据传送给设备,还是由设备传给主机。指出数据块在主存的首地址。指出数据在外设存储介质上的地址。指出数据的传送量。,1、预处理阶段,2
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- IT认证 IT 认证 输入输出 系统 V12
链接地址:https://www.31ppt.com/p-4594020.html