收藏 分享(赏)

计算机系统的体系结构_第3章存储、总线、中断3.ppt

上传人:weiwoduzun 文档编号:5300856 上传时间:2019-02-19 格式:PPT 页数:51 大小:443.50KB
下载 相关 举报
计算机系统的体系结构_第3章存储、总线、中断3.ppt_第1页
第1页 / 共51页
计算机系统的体系结构_第3章存储、总线、中断3.ppt_第2页
第2页 / 共51页
计算机系统的体系结构_第3章存储、总线、中断3.ppt_第3页
第3页 / 共51页
计算机系统的体系结构_第3章存储、总线、中断3.ppt_第4页
第4页 / 共51页
计算机系统的体系结构_第3章存储、总线、中断3.ppt_第5页
第5页 / 共51页
点击查看更多>>
资源描述

1、第3章 总线、中断与I/O系统,3.1 输入输出系统概述 3.2 总线设计 3.3 中断系统 3.4 输入/输出通道 3.5 外围处理机,本章重点:非专用总线的总线控制方式;中断为什么要分类 和分级;中断处理次序的安排和实现;通道流量的 计算。 本章难点:如何按中断处理优先次序的要求,设置各中断 处理程序中中断级屏蔽位的状态,正确画出中断处 理过程的示意图;通道为各外设分时服务的时间关 系图。,1.包括内容:I/O设备、设备控制器及与I/O操作有关的软硬件等。 2.I/O系统的发展:1)早期及目前低性能单用户计算机的I/O操作由程序员 直接安排。主要解决CPU、主存和I/O设备之间的速度差距。

2、2)现在改由用户向系统发出I/O请求,经OS来分配调度 设备并进行具体的I/O处理。主要解决面向OS,在OS与I/O系 统间进行合理的软、硬件功能分配。 3.I/O的三种方式,3.1 输入/输出系统概述,1)程序控制I/Oa)全软的b)程序查询状态驱动的c)中断驱动的2)直接存贮器访问(DMA)3)I/O处理机a)通道方式(Channel)可看作是“处理机”,有自己的指令系统(通道指令)和程序(通道程序),通道与CPU并行工作。通道指令功能简单,使用面窄。通道不是独立处理机。 b)外围处理机方式(PPU)独立性、通用性和功能较强。,3.2 总线设计,总线是计算机中连接各个功能部件的纽带。 3.

3、2.1总线的分类1.按信息传送方向分1)单向传输2)双向传输a)半双向:在同一时刻,信息只能向其中的一个方向传送。b)全双向:在同一时刻,允许信息在两个方向传送。全双向 速度快,但是造价高,结构复杂。,2.按用途分1)专用总线a)定义:只连接一对物理部件的总线。,所有部件用 专用总线互连,b)优点:多个部件可以同时发送和接收信息,几乎不 必争用总线,系统流量高。,控制简单,不用指明信息源和目的。任何总线的失效只影响相连的两个部件不能直接通信,但可以间接通信,系统可靠性高。 c)缺点:总线数目多,N个部件全部互连需N(N-1)/2组总线。难以小型化、集成电路化,总线长时成本高。时间利用率低不利于

4、模块化,增加一个部件要增加许多新 的接口和连线。,2)非专用总线a)定义:可以被多种功能或多个部件分时共享, 同一时刻只有一对部件使用总线进行通信。b)优点:总线少,造价低。接口标准化、模块性强,易于简化接口设计。扩充能力强,多重总线提高带宽和可靠性。c)缺点:系统流量小,经常出现总线争用。可能成为系统速度瓶颈,导致系统瘫痪。I/O系统中,I/O总线宜采用非专用总线;,3.2.2总线的控制方式1.产生原因采用非专用总线时,可能出现多个设备或部件同时 使用总线而发生争用,就得有总线控制机构来按照某 种方式裁决,保证同一时间只能有一个高优先级的申 请者取得总线使用权。 2.控制方式1)集中式控制总

5、线控制逻辑基本上集中放在一起,或者放在连 接总线的一个部件中,或者是放在单独的硬件中。我 们主要讲述这一控制方式 。2)分布式控制总线控制逻辑分散于连到总线的各个部件中。,3.优先次序的三种确定方式1)集中式串行链接方式:,部件0,部件1,部件N-1,总线控制器,总线可用,总线请求,总线忙,集中式串行链接,a)电路特点: 并联总线请求,串联总线响应,并联总线状态。,b)次序确定完全由“总线可用”线所接部件的物理位置来决定,离总 线控制器越近的部件其优先级越高。 C)优点:算法简单,线数少,且不取决于部件的数量。部件增加容易,可扩充性好。逻辑简单,容易通过重复设置来提高其可靠性。 d)缺点:对“

6、总线可用”线敏感。优先级固定,不可被程序更改,灵活性差。遥远部件难以获得总线使用权。“总线可用”信号顺序、脉动地通过每一部件,限制了总 线分配的速度。受总线长度影响,增、减及移动部件也受限。,2)集中式定时查询方式:,部件0,部件1,总线控制器,总线请求,总线忙,部件0,部件1,部件N-1,总线控制器,总线请求,总线忙,集中式定时查询,定时查询计数,a)总线分配过程: 部件发送请求。 总线不忙时,总线控制器的查询计数器开始记数。 定时查询各部件。 部件接收计数值,并判断,若与部件号一致,则发总线忙,撤消请求,开始占用总线。 总线控制器收到总线忙,停止计数,停止查询。 传送结束撤消总线忙,b)次

7、序确定总线分配前计数器清“0”,从“0”开始查询,优先级排序类似串行链接。总线分配前不清“0”,从中止点继续查询,是循环优先级,部件使用总线机会均等。总线分配前将计数器设置初值,可以指定某个部件为最高优先级。总线分配前将部件号重新设置,可以为各部件指定任意希望的优先级。,c)优点:优先级可由程序控制,灵活性强。某一部件的失效不影响其它部件,可靠 性高。 d)缺点:线数多,扩展性差,控制复杂。速度取决于计数器信号的频率和部件数, 不是很高。,3)集中式独立请求方式:,部件0,总线控制器,部件0,部件N-1,总线控制器,总线请求0,集中式独立请求,总线准许0,总线请求N-1,总线准许N-1,总线已

8、被分配,a)次序确定总线控制器根据某种算法来仲裁。,b)优点:总线分配速度快。可以灵活确定下一个使用总线的部件。可以方便的隔离失效的部件发出的总线请求。 c)缺点:控制线多,N个部件要2N+1根控制线。总线控制器复杂。,3.3.1中断的分类和分级1.基本概念1)中断源:引起中断的各种事件。2)中断请求:中断源向中断系统发出请求中断的申请 。同时可以有多个中断请求,这时中断系统要根据中 断响应优先次序对优先级高的中断请求予以相应。3)中断响应:就是允许其中断CPU现行程序的运行而 转去对该请求进行预处理,包括保存断点现场,调出 相应中断处理程序,准备运行。也可以屏蔽这一请求 使其暂时得不到响应。

9、,3.3 中断系统,2.中断分类细分为中断(Interrupt)和异常(Exception)。1)中断专指那些与当前进程运行无关的请求暂停的事件,如机器故障中断请求、外设中断请求、定时中断请求等。中断可以被屏蔽,暂时保存在中断寄存器,屏蔽解除后继续得到响应和处理。2)异常由现行指令引起的暂停事件,如页面失效、溢出等,一般不能屏蔽,立即得到响应和处理。,异常可以分为自陷(Trap)、故障(Fault)、失败(Abort)三种。a)自陷发生在引起异常的指令执行的末尾,处理后返回原先正常程序的下一条指令继续执行。b)故障发生在执行指令的过程中,处理后返回原先发生故障的那条指令处重复执行。c)失败也发

10、生在指令执行过程中,需强制干预或系统复位才可以使指令再正确执行下去。,3.中断分级1)依据:根据中断的性质、紧迫性、重要性以及软 件处理的方便性把中断源分级。 2)次序:中断系统按照中断源的级别高低来响应。 优先级高低的划分,不同机器有所差异,IBM370中 机器校验安排为第一级,程序性和管理程序调用为 第二级,外部为第三级,I/O为第四级,重新启动为 最低级。 3)原则:局部性中断优先级低,以IBM370为例紧急机器校验 1 全局,掉电,CPU地址错等管理程序调用 2 高于I/O与外部,防止混乱可抑止机器校验 3 局部的外部中断 4 多机联系、人机干预等I/O中断 5 局部性外设请求重新启动

11、 6 时间不紧迫,3.3.2.中断响应次序与处理次序 1.中断响应次序与处理次序1)中断响应次序同时发生多个中断请求时,由中断响应硬件的排队 器所决定的响应次序,次序是固定的。2)中断处理次序一个中断处理程序执行前或中再有其它中断产生时 中断处理完的次序,可以不同于响应次序。3)处理原则在处理某级中断时,只有更高级的请求到来才转去 响应和处理,完成后返回原中断继续处理。,2.中断处理次序改变1)方法:a)设置中断级屏蔽位寄存器硬件以决定是否让某级中断请求进入中断响应排队器,只要进入排队器中断请求,就让级别高的优先得到响应。b)OS对每类中断处理程序的现行PSW中的中断级屏蔽位进行设置,可以实现

12、希望的处理次序。2)优点:改变响应次序中用排队器硬件实现的固定次序 为OS软件实现的灵活性。,例1:系统有4个中断级,每级现行PSW有4位屏蔽位 “1” 表示对该级的请求都开放,允许其进入排队器。“0” 表示屏蔽各个请求,不允许进入排队器, 现要求各级 中断处理次序和响应次序都是1 2 3 4,请设计屏 蔽位状态。,中断处理 程序级别,中断级屏蔽位,第1级,第2级,第3级,第4级,1级,2级,3级,4级,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,中断级屏蔽位举例1(1 2 3 4),不高于 本级的 屏蔽掉即“0”,用户程序,中 断 处 理 程 序,中断 请求,t,2,3,

13、4,2,1,1,2,3,4,中断处理次序为1 2 3 4的例子,中断处理 程序级别,中断级屏蔽位,第1级,第2级,第3级,第4级,1级,2级,3级,4级,0,0,0,0,0,1,1,0,1,0,1,1,1,0,0,0,中断级屏蔽位举例2(1 4 3 2),响应次序和处理次序不一样,用户程序,中 断 处 理 程 序,中断 请求,t,3,4,2,1,1,2,3,4,中断处理次序为1 4 3 2的例子,用户程序,中 断 处 理 程 序,中断 请求,t,1,2,3,4,中断处理次序为1 4 3 2的例子,机器有5级中断,中断响应次序为1 2 3 4 5,现要求中断处理次序为3 5 2 4 1。(1)设

14、计各级中断处理程序的中断级屏蔽位的状态,令“0”表示屏蔽,“1”表示开放。(2)若在运行用户程序时,同时发生第4、5级中断请求,而在第5级中断未完成时,又发生1、2、3级中断,请画出处理机执行程序的全过程示意图(标出交换PSW的时间)。,3.3.3 中断系统的软硬件功能分配1)中断系统的功能(1)中断请求的保存和清除(2)优先级的确定(3)中断断点及现场的保存(4)对中断请求的分析和处理(5)中断返回中断系统的软硬件功能分配实质就是中断响应硬 件和处理程序软件的功能分配。,2)功能的实现(1)早期大部分功能是由软件完成的,中断响应和中断处理时间长。(2)后来中断响应及其次序由程序查询软件的 方

15、法改为中断响应排队器硬件实现;中断源的分 析也由程序查询改为硬件编码,直接或经中断向 量表形成入口地址,并把中断源的状况以中断码 的方式经旧PSW告知中断处理程序。,1.目的1)防止用户自行输入而破坏其他用户程序或系统程 序及用户窃取系统不该让其读出的内容。 2)将CPU进一步从I/O事务中脱离出来,使之具有更 多的时间从事计算工作 2.通道处理机的作用 1)通道处理机将负担外围设备的大部分I/O工作 2)是一台同时能够被多台外围设备共享的小型DMA处理机,3.4 通道处理机,3.通道的工作原理,管态指令是中央处理机用来控制外部设备操作用的输入输出指 令。目态指令(访管指令)是用户态应用程序的

16、指令。 广义指令是由访管指令和若干参数组成,它的操作码实质上是 对应于此广义指令的管理程序入口。在一般用户程序中,通过调用通道来完成一次I/O的过程主 要有四个阶段,如图所示 。 1)通道程序编制期 2)通道开始选择设备期 3)通道数据传送期 4)通道数据传送结束期,4.通道的种类: 1)字节多路通道 目的:为多台低速或中速的外围设备服务;如键盘、打印机等等 工作方式:分时机制。 字节交叉方式(byte-interleave mode): 结构:包含有多个子通道,每个子通道连接一个设备控制器,多个子通道独立并行工作。,2)选择通道 目的:针对高速外围设备,设置专门通道在一 段时间内单独为一台外

17、围设备服务,在不同的 时间内仍可以选择其它设备;工作方式:一旦选中某设备,就一直到数据 传输结束为止。选择通道主要用于连接高速外围设备,如磁 盘、磁带等,信息以成组方式高速传输。,3)数组多路通道 目的:前两种方式的结合,并发地为多台高 速设备服务;工作方式:成组交叉方式工作,每次选择一 个高速设备,轮流为多台I/O设备服务;,5 通道中的数据传送过程,Ts, Td,D11,D21,Di,j,Ts, Td,Ts, Td,Ts, Td,Dp, n,Ts:设备选择时间,即:从通道响应设备发出数据传送请求开始,到通道实际为这台设备传送数据所需的时间。 Td:传送一个字节所需要的时间; P:在一个通道

18、上连接的设备台数,n:每一个设备传送的字节数,这里,假设每一台设备的传输字节数都一样。 Dij:连接在通道上的第i台设备传输的第j个数据,i=1p, j=1n; T:通道完成全部数据传输工作所需要的时间。 1)字节多路通道 当一个字节多路通道上连接有p台外围设备,每一台外围设备都传输n个字节时,总共需要的时间T为:T byte = (Ts + Td)* P * n,2)选择通道:在选择通道之中,通道每连接一个外围设备,就把这个设备的n个字节全部传送完毕,然后再与下一个设备连接。当一个字节多路通道上连接有p台外围设备,每一台外围设备都传输n个字节时,总共需要的时间T为:T selector =

19、(Ts/n + Td)* P * n,3)数组通道: 数组通道在一段时间内只能为一台外围设备传送数据,但同时有多台设备在寻址。当一个字节多路通道上连接有p台外围设备,数据块长度为k个字节。每一台外围设备都传输n个字节时,总共需要的时间T为:T selector = (Ts/k + Td)* P * n,6.通道流量分析 通道流量:单位时间内能够传送的最大数据量。 又称为通道吞吐率,通道数据传输率等。 通道最大流量:通道在满负荷工作状态下的流 量。 三种通道的最大流量计算公式如下:,通道流量与连接在这个通道上的所有设备的数据传输率的关系如下:为了保证通道能够正常工作,不丢失数据,各种通道实际流量

20、应该不大于通道最大流量,即满足下列不等式关系: fBYTEfMAXBYTEfSELETE fMAXSELETE, fBLOCK fMAXBLOCK,例如: 一个字节多路通道连接D1、D2、D3、D4、D5共5台 设备,这些设备分别每10us、30us、30us、50us和 75us向通道发出一次数据传送的服务请求,请回答下 列问题:(1) 计算这个字节多路通道的实际流量和工作周期。(2)画出通道分时为各个设备服务的时间关系图。(高速设备请求的响应优先级高) (3)从时间关系图上发现什么问题?如何解决?,解:,(1)该通道的实际流量为:,该通道的工作周期为:,通道处理完各设备这个第一次请求的时间

21、如下: D1: 5us; D2: 10us; D3: 20us; D4: 30us 设备D5的第一次请求没有得到响应,数据丢失,直到 85us才对设备D5的服务请求进行响应 。,0,10,20,30,40,50,60,70,D1,D2,D3,D4,D5,(2),(3)问题分析: 当字节多路通道的最大流量与实际很接近时,虽然在宏观上保证通道流量平衡,不会丢失数据,但传输速度高的设备将因频繁发出请求而影响低速设备的请求服务。如:D5设备。 原则上,如果对所有设备的请求时间间隔取最小公倍数,则在这段时间内,通道的流量是平衡的,即:所有设备的请求都能得到一次响应服务。但是,这并不能保证在任意设备的任意

22、两次时间传输请求之间的请求都能得到响应。例如:D5,为了保证字节多路通道能够正常工作,可以采取 下列几种方法: 方法一:增加通道的最大流量。保证连接在通道上的 所有设备的数据传送请求能够及时得到通道的响应。 方法二:动态改变设备的优先级。例如,在30us至 70us之间临时提高设备D5的优先级, 方法三:增加缓冲存储器。特别是对优先级比较低 的设备。例如,只要为设备D5增加一个数据缓冲寄 存器,它的第一次请求可以在第85us处得到响应, 第二次请求可以在第145us处得到响应。,练习、一个字节多路通道连接有4台外围设备,每台设备 发出输入输出服务请求的时间间隔,他们的服务优先 级和发出第一次服

23、务请求的时刻如下表所示: 设备名称 D1 D2 D3 D4 发服务请求间隔 10s 75 s 15 s 50 s 服务优先级 1 4 2 3 发第一次请求时刻 0 s 70 s 10 s 20 s (1)计算这个字节多路通道的实际流量和工作周期 (2)在数据传送期间,如果通道选择一次设备的时间 为3 s,传送一个字节的时间为2 s,画出这个字节多 路通道响应各设备请求和为设备服务的时间关系图。,1.机器有5级中断,中断响应次序为1 2 3 4 5,现要求中断处理次序为2 3 1 5 4。(1)设计各级中断处理程序的中断级屏蔽位的状态,令“0”表示开放,“1”表示屏蔽。(2)若在运行用户程序时,同时发生第1、3级中断请求,而在第1级中断未完成时,又发生2、3、4、5级中断,请画出处理机执行程序的全过程示意图(标出交换PSW的时间)。 2.通道分为哪3种类型?各适合连接什么类型的设备?满负荷时,设备对通道要求的实际流量与所连的设备有什么关系?,补充作业,

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

当前位置:首页 > 网络科技 > 计算机原理

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


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

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

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