第4章输入输出系统_第1页
第4章输入输出系统_第2页
第4章输入输出系统_第3页
第4章输入输出系统_第4页
第4章输入输出系统_第5页
已阅读5页,还剩96页未读 继续免费阅读

下载本文档

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

文档简介

1、 计算机科学与技术计算机科学与技术1输入输出系统输入输出系统 简称I/O系统,包括I/O设备以及I/O设备与处理机的连接。 I/O设备是计算机系统中的一个重要组成部分,负责完成计算机与外界的信息交换,或者给计算机提供大容量的外部存储器。 掌握重点:中断系统功能的软硬件分配和中断屏蔽的原理与方法;输入输出通道的功能;通道中数据传输过程与流量分析。第四章第四章 输入输出系统输入输出系统 4.1 输入输出原理 4.2 中断系统 4.3 通道处理机 4.4 输入输出处理机 计算机科学与技术计算机科学与技术3一些概念一些概念qI/O系统的性能对CPU的性能有很大的影响,若两者的性能不匹配,I/O系统就有

2、可能成为整个系统的瓶颈。q采用系统响应时间作为作为计算机系统的衡量指标。m从用户输入命令开始,到得到结果所花费的时间。m由两部分构成:I/O系统的响应时间与CPU的处理时间 计算机科学与技术计算机科学与技术4q对于分时操作系统可以使计算机内部同时存在多个进程。多进程技术只能够提高系统吞吐率,并不能够减少系统响应时间。 计算机科学与技术计算机科学与技术5评价评价I/O性能的参数性能的参数q连接特性(哪些I/O设备可以和计算机系统相连接)qI/O系统的容量(I/O系统可以容纳的I/O设备数)q响应时间和吞吐率等 计算机科学与技术计算机科学与技术6存储外设存储外设q磁盘阵列DA(Disk Array

3、):使用多个磁盘(包括驱动器)的组合来代替一个大容量的磁盘。m多个磁盘并行工作。m以条带(strip)为单位把数据均匀地分布到多个磁盘上。(交叉存放)m条带存放可以使多个数据读/写请求并行地被处理,从而提高总的I/O性能。 计算机科学与技术计算机科学与技术7磁盘阵列中的并行磁盘阵列中的并行q多个独立的请求可以由多个盘来并行地处理。m 减少了I/O请求的排队等待时间 q如果一个请求访问多个块,就可以由多个盘合作来并行处理。m 提高了单个请求的数据传输率qRAIDmRedundant Arrays of Inexpensive DisksmRedundant Arrays of Independe

4、nt Disks 计算机科学与技术计算机科学与技术8q实现盘阵列的方式主要有三种:m软件方式:阵列管理软件由主机来实现。p优点:成本低p缺点:过多地占用主机时间,且带宽指标上不去。m阵列卡方式:把RAID管理软件固化在I/O控制卡上,从而可不占用主机时间,一般用于工作站和PC机。m子系统方式:一种基于通用接口总线的开放式平台,可用于各种主机平台和网络系统。RAID的实现与发展4.1 输入输出原理输入输出原理4.1.1 输入输出系统的特点4.1.2 基本输入输出方式 计算机科学与技术计算机科学与技术10系统操作员处理机本地或远程用户实时输入输出输入输出设备虚拟现实系统其它处理机本身出错处理程序请

5、求处理机与外部的关系处理机与外部的关系 计算机科学与技术计算机科学与技术114.1.1 输入输出系统的特点输入输出系统的特点q异步性q实时性q与设备无关性 计算机科学与技术计算机科学与技术121 异步性异步性q输入输出设备在很大程度上独立于处理机之外,输入输出设备在很大程度上独立于处理机之外,通常不使用统一的中央时钟,通常不使用统一的中央时钟,各个设备按照自己各个设备按照自己的时钟工作的时钟工作,但又要在某些时刻接受处理机的控,但又要在某些时刻接受处理机的控制。制。q处理机与外围设备之间,外围设备与外围设备之处理机与外围设备之间,外围设备与外围设备之间能并行工作间能并行工作 计算机科学与技术计

6、算机科学与技术132 实时性实时性q对于一般输入输出设备,如果处理机提供的服务不及时,可能丢失数据,或造成外围设备工作的错误。q对于实时控制计算机系统,如果处理机提供的服务不及时,可能造成巨大的损失,甚至造成人身伤害。q对于处理机本身的硬件或软件错误:如电源故障、数据校验错、页面失效、非法指令、地址越界等,处理机必须及时处理。q对不同类型的设备,必须具有与设备相配合的多种工作方式。 计算机科学与技术计算机科学与技术143 与设备无关性与设备无关性q独立于具体设备的标准接口独立于具体设备的标准接口。例如,串行接口、并行接口、SCSI(Small Computer System Interface

7、)接口等q计算机系统的使用者,在需要更换外围设备时,各种不同型号,不同生产厂家的设备都可以直接通过标准接口通过标准接口与计算机系统连接。q处理机采用统一的硬件和软件对品种繁多的设备采用统一的硬件和软件对品种繁多的设备进行管理。进行管理。q即插即用技术即插即用技术。 计算机科学与技术计算机科学与技术154.1.2 基本输入输出方式基本输入输出方式q程序控制方式q中断方式qDMA方式 计算机科学与技术计算机科学与技术161 程序控制方式程序控制方式q状态驱动输入输出方式、应答输入输出方式、查询输入输出方式、条件驱动输入输出方式(1)何时对何设备进行输入输出操作受何时对何设备进行输入输出操作受CPU

8、控制控制(2)CPU要通过指令对设备进行测试才能知道设备的要通过指令对设备进行测试才能知道设备的工作状态。工作状态。空闲、准备就绪、忙碌等(3)数据的输入和输出都要经过CPU(4)用于连接低速外围设备,如终端、打印机等 计算机科学与技术计算机科学与技术17m一个处理机管理多台外围设备。处理机采用轮流循环测试方法,分时为各台外围设备服务输入设备ID输出设备OD处理机CPU主存储器MM程序控制方式的数据传送过程 计算机科学与技术计算机科学与技术18程序控制方式的特点:程序控制方式的特点:m程序控制输入输出方式的优点:灵活性很好。可以很容易地改变各台外围设备的优先级m程序控制输入输出方式的缺点:实现

9、处理机与外围设备并行工作困难 计算机科学与技术计算机科学与技术192 中断输入输出方式中断输入输出方式q定义:定义:当出现来自系统外部,机器内部,甚至处理机本身的任何例外的,或者虽然是事先安排的,但出现在现行程序的什么地方是事先不知道的事件时,CPU暂停执行现行程序,转去处理这些事件,等处理完成后再返回来继续执行原先的程序q特点:特点: (1)CPU与外围设备能够并行工作。 (2)能够处理异常事件。 (3)数据的输入和输出都要经过CPU。 (4)用于连接低速外围设备。 计算机科学与技术计算机科学与技术3.直接存储器访问方式直接存储器访问方式 直接存储器访问方式(DMA:Direct Memor

10、y Access),主要用来连接高速外围设备。如磁盘存储器,磁带存储器、光盘辅助存储器,行式打印机等。输输入入设设备备I ID D主主存存储储器器M MM M存存储储器器总总线线处处理理机机C CP PU U输输出出设设备备O OD D I IO O 总总线线D DM MA A 方方式式的的数数据据传传送送过过程程 计算机科学与技术计算机科学与技术21CPU内存内存外设外设数据通道数据通道数据通道数据通道非非DMA方式方式(包括程序控制方式和中断方式包括程序控制方式和中断方式)DMAC内存内存外设外设数据通道数据通道DMA方式方式 计算机科学与技术计算机科学与技术22DMAC具有独立的具有独立

11、的控制三大总线控制三大总线来访问存储器来访问存储器和和I/O端口的能力,它能像端口的能力,它能像CPU一样提供数据传一样提供数据传送所需的地址信息和读写控制信息送所需的地址信息和读写控制信息。DMAC和和CPU都挂在系统总线上,当进入都挂在系统总线上,当进入DMA方式时,方式时,DMAC成为成为总线主控总线主控。在总线上,可以控制其他部件的部件称为总线主在总线上,可以控制其他部件的部件称为总线主控或控或主控主控(bus master),被控部件称为,被控部件称为从控从控(slave)。任意时刻,总线上只有一个主控。任意时刻,总线上只有一个主控。 计算机科学与技术计算机科学与技术23DMA操作之

12、前,应先对操作之前,应先对DMAC编程,把要传送的编程,把要传送的数据块长度、数据块在存储器中的起始地址,数数据块长度、数据块在存储器中的起始地址,数据传送方向等信息发送给据传送方向等信息发送给DMACDMA操作过程包括三个阶段:操作过程包括三个阶段:DMA请求请求DMA响应和数据传送响应和数据传送传送结束传送结束 计算机科学与技术计算机科学与技术24当外设要求以当外设要求以DMA方式为它服务时,发方式为它服务时,发DMA请求信请求信号号DREQ到到DMACDMAC检查该信号是否被屏蔽及其优先权,如确认该检查该信号是否被屏蔽及其优先权,如确认该信号有效则向信号有效则向CPU发送总线请求信号发送

13、总线请求信号HRQ(连到连到CPU的的HOLD)DMA请求阶段请求阶段CPUDMACHRQ外设外设DREQ地址总线地址总线数据总线数据总线存储器存储器 计算机科学与技术计算机科学与技术25每个总线周期结束时每个总线周期结束时CPU检测检测HOLD,如为高电平,如为高电平,则响应则响应HOLD请求进入保持态,使三态总线请求进入保持态,使三态总线CPU侧侧呈高阻状态,并以总线保持响应信号呈高阻状态,并以总线保持响应信号HLDA通知通知DMACDMAC接管总线,并以接管总线,并以DACK信号信号通知外设,使之通知外设,使之成为成为DMA传送时被选中的设备,同时传送时被选中的设备,同时DMAC给出给出

14、内内存地址存地址以及以及I/O读写读写和和存储器读写存储器读写控制信号,在控制信号,在外设外设和存储器之间完成数据传送和存储器之间完成数据传送DMA响应和数据传送阶段响应和数据传送阶段 计算机科学与技术计算机科学与技术26DMA响应和数据传送阶段响应和数据传送阶段CPUDMACHLDA外设外设DACK存储器存储器地址总线地址总线数据总线数据总线IOR/IOWMEMR/MEMW 计算机科学与技术计算机科学与技术27传送结束阶段传送结束阶段传送完成后,传送完成后,DMAC放弃总线,撤消总线请求放弃总线,撤消总线请求(HRQ为为低低),CPU检测到检测到HRQ(HOLD)为低后,撤消为低后,撤消HL

15、DA,CPU重新获得总线控制权重新获得总线控制权CPUDMACHRQ外设外设EOP地址总线地址总线数据总线数据总线存储器存储器DMA请求和响应过程 计算机科学与技术计算机科学与技术28DMA方式的特点方式的特点 (1)外围设备的访问请求直接发往主存储器,数据的传送外围设备的访问请求直接发往主存储器,数据的传送过程不需要过程不需要CPUCPU的干预的干预。(2)全部用硬件实现,不需要做保存现场和恢复现场等工全部用硬件实现,不需要做保存现场和恢复现场等工作。作。(3)DMA控制器复杂,需要设置数据寄存器、设备状态控制寄存器、主存地址寄存器、设备地址寄存器和数据交换个数计数器及控制逻辑等。(4)在D

16、MA方式开始和结束时,需要处理机进行管理。 计算机科学与技术计算机科学与技术 DMA DMA输入设备输入设备的工作流程如下:的工作流程如下:1.从设备读一个字节到DMA控制器中的数据缓冲寄存器中。2.若一个字没有装配满,则返回到上面;若校验出错,则发中断申请;若一个字已装配满,则将数据送主存数据寄存器。3.把主存地址送主存地址寄存器,并将主存地址增值。4.把DMA控制器内的数据交换个数计数器减。5.若交换个数为0,则DMA数据传送过程结束,否则回到上面。 计算机科学与技术计算机科学与技术 DMADMA输出设备输出设备的工作流程如下:的工作流程如下:1.把主存地址送入主存地址寄存器,并启动主存储

17、器,同时将主存地址增值。2.将主存数据寄存器中的数据送DMA控制器的数据寄存器。3.把数据写到输出介质上(可能要逐个字符输出)。4.把DMA控制器内的数据交换个数计数器中的内容减。5.若交换个数为0,则DMA数据传送过程结束,否则回到上面。4.2 中断系统中断系统4.2.1 中断系统的软硬件功能分配4.2.2 中断屏蔽 计算机科学与技术计算机科学与技术32q从中断源发出中断请求到中断服务结束其过程很复杂。其中有些功能必须用硬件实现,有的功能必须用软件实现,而大部分功能既可以用硬件实现,也可以用软件实现。q恰当分配中断系统的软硬件功能,是中断系统最恰当分配中断系统的软硬件功能,是中断系统最关键问

18、题关键问题q中断响应时间:中断响应时间:中断响应时间是一个非常重要的指标。q灵活性:灵活性:硬件实现速度快,灵活性差;软件实现正好相反 计算机科学与技术计算机科学与技术33中断处理过程软硬件功能分配中断处理过程软硬件功能分配l现行指令结束,且没有更紧急的服务请求现行指令结束,且没有更紧急的服务请求l关关CPUCPU中断,不再响应其它中断源的请求中断,不再响应其它中断源的请求l保存断点,主要保存保存断点,主要保存PCPC中的内容中的内容l撤消中断源的中断请求撤消中断源的中断请求l保存硬件现场,主要是保存硬件现场,主要是PSWPSW及及SPSP等等l识别中断源识别中断源l改变设备的屏蔽状态改变设备

19、的屏蔽状态l进入中断服务程序入口进入中断服务程序入口 计算机科学与技术计算机科学与技术34l保存软件现场,在中断服务程序中使用的通用寄保存软件现场,在中断服务程序中使用的通用寄存器等存器等l开开CPUCPU中断,可以响应更高级别的中断请求中断,可以响应更高级别的中断请求l中断服务,执行中断服务程序中断服务,执行中断服务程序l关关CPUCPU中断中断l恢复软件现场恢复软件现场l恢复屏蔽状态恢复屏蔽状态l恢复硬件现场恢复硬件现场l开开CPUCPU中断中断l返回到中断点返回到中断点必须用硬件实现的有:必须用硬件实现的有: 保存中断点和进入中断服务程序入口。保存中断点和进入中断服务程序入口。这两个功能

20、相当于执行一条转子程序指令,因为中断发生在现行程序的什么地方是不确定的,不能由程序员来安排。必须用软件实现的有:必须用软件实现的有: 中断服务和返回到中断点。中断服务和返回到中断点。返回到中断点,通过执行一条中断返回指令来实现。 计算机科学与技术计算机科学与技术364.2.2 中断屏蔽中断屏蔽设置中断屏蔽有三个用处:(1)在中断优先级由硬件确定了的情况下,改变中断在中断优先级由硬件确定了的情况下,改变中断源的中断服务顺序。源的中断服务顺序。(2)决定设备是否采用中断方式工作。(3)在多处理机系统中,把外围设备的服务工作分配到不同的处理机中。中断屏蔽的实现方法主要有两种:方法一:每级中断源设置一

21、个中断屏蔽位。方法一:每级中断源设置一个中断屏蔽位。方法二:改变处理机优先级方法二:改变处理机优先级 计算机科学与技术计算机科学与技术37例例4.34.3:有四个中断源D1、D2、D3和D4,它们的中断优先级从高到低分别是1级、2级、3级和4级。这些中断源的正常中断屏蔽码和改变后的中断屏蔽码见下表。每个中断源一位,共4位屏蔽码。中中断断源源名名称称中中断断优优先先级级正正常常中中断断屏屏蔽蔽码码D1 D2 D3 D4改改变变后后的的中中断断屏屏蔽蔽码码D1 D2 D3 D4D D1 1D D2 2D D3 3D D4 41 12 23 34 41 1 1 1 1 1 1 10 0 1 1 1

22、1 1 10 0 0 0 1 1 1 10 0 0 0 0 0 1 11 1 0 0 0 0 0 01 1 1 1 0 0 0 01 1 1 1 1 1 0 01 1 1 1 1 1 1 1 计算机科学与技术计算机科学与技术38解:解:q如果4个中断源都使用正常的中断屏蔽码,处理机的中断服务顺序将严格按照中断源的中断优先级进行。q如果改变中断屏蔽码,当D1、D2、D3和D4这4个中断源同时请求中断服务时,处理机实际为各个中断源服务的先后次序就会改变。q处理机响应的顺序是D1、D2、D3、D4q实际服务的顺序是实际服务的顺序是D4、D3、D2、D1 计算机科学与技术计算机科学与技术39中中断断请

23、请求求 主主程程序序 中中断断服服务务程程序序 D D1 1 D D2 2 D D3 3 D D4 4D D1 1, ,D D2 2, ,D D3 3, ,D D4 4时时间间 t t按照改变后的中断屏蔽码,处理机响应中断源的中断服务按照改变后的中断屏蔽码,处理机响应中断源的中断服务请求和实际中断服务的顺序请求和实际中断服务的顺序 计算机科学与技术计算机科学与技术40改变处理机的优先级改变处理机的优先级q中断优先级不仅在处理机响应中断源的中断服务请求时使用,而且为每个中断源的中断服务程序也赋予同样的中断优先级。q若系统中有n个中断源,则处理机的状态字需要设置log2(n+1)位来表示系统中每个

24、中断源的优先级。处理机本身的优先级最低。q为每一个中断源分别设置处理机状态字,通常将其存放在主存的一个固定区域中。中断源的处理机状态字中有一个中断优先级字段,该字段一般都可以由程序员通过软件来修改。 计算机科学与技术计算机科学与技术41q处理机在响应某一个中断源的中断服务请求之后,就把属于这个中断源的处理机状态字作为当前处理机的状态字。q正常工作情况下,在各个中断源的处理机状态字中设置的中断优先级应该与这个中断源本身的硬件中断优先级相同。此时处理机响应中断源的中断服务请求和完成中断服务的过程将严格按照中断源的硬件中断优先级进行。q若软件改变了中断源处理机状态字中的优先级字段,就会使处理机的优先

25、级改变,变成了程序员为这个中断源设置的中断优先级。 计算机科学与技术计算机科学与技术42例例4.4:某处理机共有4个中断源D1、D2、D3和D4,它们的硬件中断优先级从低到高分别为1级、2级、3级和4级。处理机本身的优先级最低,为0级。在中断源D1、D2、D3、D4的中断向量中,程序员为它们设置的优先级分别为4级、3级、2级、1级。解:解:在处理机状态字中设置3个中断屏蔽位。 000为处理机本身的优先级, 001100分别表示4个中断源的中断优先级。 当4个中断源同时请求中断服务时,改变处理机的中断优先级改变处理机的中断优先级解:解:处理机实际完成中断服务的过程 是是 D3、D2、D4、D1

26、计算机科学与技术计算机科学与技术44(1)(1)两者使用的概念不同。两者使用的概念不同。 前者使用中断屏蔽 后者使用中断优先级(2)(2)需要屏蔽码的位数不同。需要屏蔽码的位数不同。 前者所需要的屏蔽位数比较多 n:log2(n+1)(3)(3)可屏蔽的中断源数量和种类不同。可屏蔽的中断源数量和种类不同。 前者可以任意屏蔽掉一个或几个中断源, 后者只能屏蔽掉比某一个优先级低的中断源。两种方法的不同两种方法的不同4.3 通道处理机通道处理机4.3.1 通道的作用和功能4.3.2 通道的工作过程4.3.3 通道种类4.3.4 通道中的数据传送过程4.3.5 通道流量分析 计算机科学与技术计算机科学

27、与技术464.3.1 通道的作用和功能通道的作用和功能q程序控制、中断和DMA方式管理外围设备会引起两个问题:m所有外设的输入/输出工作均由CPUCPU承担,CPU的计算工作经常被打断而去处理输入/输出的事务,不能充分发挥CPUCPU的计算能力。 m大型计算机系统的外设虽然很多,但同时工作的机会不是很多。如果为每一台设备都配置一个接口,必然是一种浪费。特别是DMA接口,它的硬件代价很高。 计算机科学与技术计算机科学与技术解决问题的思路:解决问题的思路:q设置专门的I/O处理机处理机来分担全部或大部分的I/O工作。例如,管理所有低速外围设备的I/O工作,对DMA接口的初始化工作,控制DMA的数据

28、传送、数据格式的变换、设备状态的检测等。这样,就能进一步提高整个计算机系统功能分散化的程度,充分发挥CPU的计算潜力。 47 计算机科学与技术计算机科学与技术482 通道方式通道方式q通道处理机通道处理机能够负担外围设备的大部分输入输出工作,包括管理外设、初始化DMA、设备故障的检测和处理。q通道处理机不是一台具有完整指令系统的处理机,但是可以把它看作是一台能够执行有限输入输出能够执行有限输入输出指令指令,并且能够被多台外围设备共享能够被多台外围设备共享的小型DMA专用处理机。 计算机科学与技术计算机科学与技术493 输入输出系统的四级层次结构输入输出系统的四级层次结构q一台大型机系统中由CP

29、U、通道、设备控制器、外设构成4级层次结构的输入/输出系统。CPU 通道 1 通道 2 通道 i 主存 设备 控制器 磁盘 内部总线 设备 控制器 磁盘 磁盘 设备 控制器 设备 控制器 通道总线 设备 控制器 设备 控制器 设备 设备 设备 设备 设备 设备 通道总线 通道总线 计算机科学与技术计算机科学与技术504 通道的主要功能1 接收接收CPUCPU发来的发来的I/OI/O指令,并根据指令要求选择指指令,并根据指令要求选择指定的外设与通道相连接定的外设与通道相连接。2 执行执行CPUCPU为通道组织的通道程序。为通道组织的通道程序。从主存中取出通道指令,对通道指令进行译码,并根据需要向

30、被选中的设备控制器发出各种操作命令。3 给出外设中要进行读给出外设中要进行读/ /写操作的数据所在的地址。写操作的数据所在的地址。如磁盘存储器的柱面号、磁头号、扇区号等。 计算机科学与技术计算机科学与技术514、给出主存缓冲区的首地址。给出主存缓冲区的首地址。该缓冲区用来暂存从外设输入的数据,或者将要输出到外设中的数据。5、控制外设与主存缓冲区之间的数据传送的长度,控制外设与主存缓冲区之间的数据传送的长度,并判断传输是否结束。并判断传输是否结束。6、指定传送工作结束时要进行的操作。指定传送工作结束时要进行的操作。例如将外设的中断请求及通道的中断请求送往CPU。7、检查外设的工作状态是否正常,并

31、将该状态信息检查外设的工作状态是否正常,并将该状态信息送往主存指定单元保存。送往主存指定单元保存。8、在数据传输过程中完成必要的格式变换。在数据传输过程中完成必要的格式变换。如字拆为字节或者字节装配为字。 计算机科学与技术计算机科学与技术525 通道的硬件构成通道的硬件构成q寄存器寄存器m数据缓冲寄存器m主存地址计数器m传输字节数计数器m通道命令字寄存器m通道状态字寄存器q控制逻辑控制逻辑m分时控制m地址分配m数据传送、装配和拆分等 计算机科学与技术计算机科学与技术53q通道与设备控制器之间一般采用标准的输入/输出接口来连接。q通道通过标准接口把操作命令送到设备控制器,设备控制器解释并执行这些

32、通道命令,完成命令指定的操作。q设备控制器能够记录外设的状态,并把状态信息送往通道和CPUCPU。6 6 通道对外设的控制通过输入通道对外设的控制通过输入/ /输出接口和设备输出接口和设备控制器进行控制器进行 计算机科学与技术计算机科学与技术54通道完成一次数据输入输出的过程分为三步:1.在用户程序中使用访管指令进入管理程序,由CPU通过管理程序组织一个通道程序,并启动通道。2.通道处理机执行通道程序,完成指定的数据输入输出工作。通道处理机执行通道程序与CPU执行用户程序是并行的。 3.通道程序结束后向CPU发出中断请求,CPU响应后第二次进入操作系统,调用管理程序对输入输出请求进行处理。是正

33、常结束,管理程序进行必要的登记等工作;如果是故障、错误等异常情况,则进行异常处理。然后返回用户程序继续执行。 每完成一次输入输出工作,CPU只需要两次调用管理程序。4.3.2 通道的工作过程通道的工作过程 计算机科学与技术计算机科学与技术55q通道完成一次数据输入/输出的工作过程1.在用户程序中使用访管指令进入管理程序,由管理程序生成一个通道程序,并启动通道。p用户在目标程序中设置一条广义指令,通过调用操作系统的管理程序来实现。p管理程序根据广义指令提供的参数来编制通道程序。 p启动输入/输出设备指令是一条主要的输入/输出指令,属于特权指令。4.3.2 通道的工作过程通道的工作过程 计算机科学

34、与技术计算机科学与技术562.通道处理机执行通道程序,完成指定的数据输入/输出工作。 m通道处理机执行通道程序与CPU执行用户程序是并行的。 3.通道程序结束后向CPU发中断请求。qCPU执行程序和通道执行通道程序的时间关系 通道的工作过程通道的工作过程通道处理机访管访管 入口入口 OC 设备号设备号 交换长度交换长度 OC OC 主存起始地址主存起始地址 编写通道程序编写通道程序 入口入口 置通道地址字置通道地址字 启动启动 I/O 返回返回 断开通道指令断开通道指令 通道程序通道程序 中断处理程序中断处理程序 I/O 中断请求中断请求 I/O 中断响应中断响应 I/O 中断返回中断返回 管

35、理程序管理程序 用户程序用户程序 通道程序通道程序 广义广义 指令指令 参数参数 和和 计算机科学与技术计算机科学与技术58CPU执行程序和通道执行通道程序的时间关系执行程序和通道执行通道程序的时间关系 CPUCPU 运行用户程序运行用户程序 时间时间 请求请求 I/OI/O 访管指令访管指令 响应响应 I/OI/O 中断请求中断请求 CPUCPU 运行运行 I/OI/O 管理程序管理程序 通道运行存放在主存中的通道程序通道运行存放在主存中的通道程序 编制通道程序编制通道程序 启动启动 I/OI/O 操作操作 组织组织 I/OI/O 操作操作 向向 CPUCPU 发中断请求发中断请求 登记或处

36、理登记或处理 计算机科学与技术计算机科学与技术59 计算机科学与技术计算机科学与技术605 通道的硬件构成通道的硬件构成q寄存器寄存器m数据缓冲寄存器m主存地址计数器m传输字节数计数器m通道命令字寄存器m通道状态字寄存器q控制逻辑控制逻辑m分时控制m地址分配m数据传送、装配和拆分等 计算机科学与技术计算机科学与技术61q通道与设备控制器之间一般采用标准的输入/输出接口来连接。q通道通过标准接口把操作命令送到设备控制器,设备控制器解释并执行这些通道命令,完成命令指定的操作。q设备控制器能够记录外设的状态,并把状态信息送往通道和CPUCPU。6 6 通道对外设的控制通过输入通道对外设的控制通过输入

37、/ /输出接口和设备输出接口和设备控制器进行控制器进行 计算机科学与技术计算机科学与技术624.3.3 通道的种类通道的种类 根据多台外围设备共享通道的不同情况,将通道分为:q字节多路通道q选择通道q数组多路通道 计算机科学与技术计算机科学与技术63通道与通道与CPU、设备控制器和外设的连接关系、设备控制器和外设的连接关系CPU 选择 通道 字节多 路通道 数组多 路通道 主存 磁盘 控制器 磁盘 内部总线 磁盘 控制器 磁盘 磁盘 设备 控制器 设备 控制器 通道总线 设备 控制器 设备 控制器 设备 设备 设备 设备 设备 设备 通道总线 通道总线 计算机科学与技术计算机科学与技术641

38、字节多路通道字节多路通道q为多台低速低速或中速中速的外设服务q字节多路通道采用分时方式工作,依靠它与CPU之间的高速数据通路分时为多台设备服务。q字节多路通道可以包含多个子通道,每个子通道连接一台设备控制器。字节缓冲字节缓冲状态状态/控制控制固定地址固定地址子通道子通道1子通道子通道2子通道子通道3数据缓冲数据缓冲通道控制通道控制字节多路通道字节多路通道至主存储器至主存储器字节多路通道的结构字节多路通道的结构 计算机科学与技术计算机科学与技术662 选择通道选择通道q为多台高速外围设备服务。 q在一段时间内只为一台高速外设独占使用。q选择通道的只有一套完整的硬件,逐个为物理上连接的几台高速外设

39、服务。 通道控制部分通道控制部分状态状态/控制控制主存地址主存地址至主存储器至主存储器选择通道的结构选择通道的结构字节计数字节计数设备地址设备地址数据缓冲数据缓冲数据格数据格式变换式变换字字字节字节至设备控制器至设备控制器 计算机科学与技术计算机科学与技术683 数组多路通道数组多路通道m适用于高速设备。m每次选择一个高速设备后传送一个数据块,轮流为多台外围设备服务。m为了充分利用通道,尽量使各台高速设备重叠操作。 计算机科学与技术计算机科学与技术69m以从磁盘存储器读出一个文件的过程为例:(1)定位:把读写磁头移动到记录该文件的磁道上,这要依靠机械动作来完成。完成该操作所需的时间称为定位时间

40、或寻道时间,一般需要几十毫秒。(2) 找扇区:等待读写磁头转动到记录该文件的起始扇区位置。完成该操作所需的时间称为等待时间。等待时间的长短主要与两个因素有关,一是磁盘的转速,二是磁头定位到所需要的磁道时,磁头所处位置与记录该文件的起始扇区位置的相对距离。因此,等待时间的长短是随机的,最长为磁盘转一周所需的时间,最短为零。取平均值,通常称为平均等待时间。因此,磁盘存储器的平均等待时间一般小于10ms。 计算机科学与技术计算机科学与技术70m以从磁盘存储器读出一个文件的过程为例:(3) 读出数据。目前,高速磁盘存储器的数据传输率已经达到33MB/s以上,因此,读出一个扇区(512个字节)只需要十几

41、微秒时间。m 通常把前两部分时间加起来称为磁盘存储器的寻盘存储器的寻址时间址时间,第三部分时间称为数据传输时间数据传输时间。从上面的分析可以看出,磁盘存储器的寻址时间一般要比数据传输时间长两个数量级以上。 计算机科学与技术计算机科学与技术71m因此,像选择通道那样,一个高速通道始终只为一台高速外围设备服务存在很大的浪费,并没有能够充分发挥高速通道的数据传输潜力,数组多路通道正是为了解决这一问题而提出来的。m数组多路通道在向一台高速设备发出定位命令后就立即从逻辑上与该设备断开,直到定位完成时再进行连接,发出找扇区命令后再一次断开,直到开始数据传送。m因此,数组多路通道的实际工作方式是:通道在为一

42、台高速设备传送数据时,有多台高速设备可以在定位或者在找扇区。 计算机科学与技术计算机科学与技术724.3.4 通道中的数据传输过程与通道流量分析通道中的数据传输过程与通道流量分析通道流量m一个通道在数据传送期间,单位时间内能够传送的数据量。所用单位一般为B/s。 m又称为通道吞吐率、通道数据传输率等。m通道最大流量 一个通道在满负荷工作状态下的流量 。 计算机科学与技术计算机科学与技术731 字节多路通道字节多路通道m通道每连接一台个外设,只传送一个字节,然后又与另一台设备连接,并传送一个字节。mP:在一个通道上连接的设备台数,且这些设备在同时工作mn:每一个设备传输的字节个数。假设每台设备传

43、送的字节个数相同mDij:连接在通道上的第i台设备传送的第j个数据 TS TD TS TD TS TD D11 D21 Dp1 TBYTE 传输各设备的第传输各设备的第 1 个字节个字节 TS TD TS TD TS TD D12 D22 Dp2 传输各设备的第传输各设备的第 2个字节个字节 TS TD TS TD TS TD D1n D2n Dpn 传输各设备的第传输各设备的第 n 个字节个字节 计算机科学与技术计算机科学与技术741 字节多路通道字节多路通道m通道每连接一台个外设,只传送一个字节,然后又与另一台设备连接,并传送一个字节。mp p台设备每台传送n n个数据总共所需的时间为T:

44、np)T(TTDSBYTE TS TD TS TD TS TD D11 D21 Dp1 TBYTE 传输各设备的第传输各设备的第 1 个字节个字节 TS TD TS TD TS TD D12 D22 Dp2 传输各设备的第传输各设备的第 2个字节个字节 TS TD TS TD TS TD D1n D2n Dpn 传输各设备的第传输各设备的第 n 个字节个字节 计算机科学与技术计算机科学与技术75m最大流量m实际流量是连接在这个通道上的所有设备的数据传输率之和。pfi:第i台设备的实际数据传输率 DSDSBYTE-MAXTT1)pnT(Tpnfp1iiBYTEff 计算机科学与技术计算机科学与技

45、术762 选择通道选择通道 q在一段时间内只能单独为一台高速外设服务,当这台设备的数据传送工作全部完成后,通道才能为另一台设备服务。 其中:D Di i表示通道正在为第i台设备服务 T TDiDi表示通道传送第i个数据所用的时间 TS TD1 TD2TDn D1 T TS TD1 TD2TDn D2 TS TD1 TD2TDn Dp np)TnT(TDSSELECTP台设备传送台设备传送n个数据需要的时间:个数据需要的时间: 计算机科学与技术计算机科学与技术77mp台设备每台传送n个数据总共所需的时间 m最大流量m实际流量 np)TnT(TDSSELECTDSDSSELECT-MAXTnT1)

46、pnTnT(pnfipifMaxfSELETE1 计算机科学与技术计算机科学与技术783 数组多路通道数组多路通道 TS TD1 TD2TDk D1 T TS TD1 TD2TDk D2 TS TDk+1 TD2k D1 TS TDn-k TDn Dp np)TkT(TDSBLOCKk:一个数据块中的字节个数,:一个数据块中的字节个数,kn数组多路通道每连接一台高速设备,传送一个数据块。所以数组多路通道每连接一台高速设备,传送一个数据块。所以在一次设备寻址时间在一次设备寻址时间Ts之后,又连续之后,又连续k个数据传送时间个数据传送时间TDP台外围设备,每台外设都传送台外围设备,每台外设都传送n

47、个字节,需要的总时间个字节,需要的总时间T: 计算机科学与技术计算机科学与技术79m最大流量m实际流量DSDSBLOCK-MAXTkT1)pnTkT(pnffiMaxfpiBLOCK1 计算机科学与技术计算机科学与技术80m各种通道的实际流量应该不大于不大于通道的最大流量p两边的差值越小,通道的利用率就越高。p当两边相等时,通道处于满负荷工作状态。 BYTEMAXBYTEffBLOCKMAXBLOCKffSELECTMAXSELECTff 计算机科学与技术计算机科学与技术81例例4.5:一个字节多路通道字节多路通道连接D1、D2、D3、D4、D5共5台设备,这些设备分别每10us、30us、3

48、0us、50us和75us发出一次数据传送请求。(1)计算这个通道的实际流量和工作周期。(2)如果这个字节多路通道的最大流量正好等于通道最大流量正好等于通道实际流量实际流量,并假设数据传输率高的设备,其优先级也高。5台设备在0时刻同时向通道发出第一次传送数据的请求,并在以后的时间里按照各自的数据传输率连续工作。画出通道分时为各台设备服务的时间图,并计算处理完各设备的第一次请求的时刻。 (3)从时间图中发现什么问题?如何解决? 计算机科学与技术计算机科学与技术82解:(1) 通道的实际流量为: fBYTE(1/10+1/30+1/30+1/50+1/75)MB/S 0.2MB/S 通道的工作周期

49、为: t1/fBYTE 5us 计算机科学与技术计算机科学与技术83通道处理完各设备这个第一次请求的时间如下:D1: 5us;D2: 10us;D3: 20us;D4: 30us设备D5的第一次请求没有得到响应,数据丢失。设备D5第一次请求未得到响应的原因分析:D1D2D3D4D5ttttt0 10 20 30 40 50 60 70 80 计算机科学与技术计算机科学与技术84 方法一:增加通道的最大工作流量。方法一:增加通道的最大工作流量。例如,把通道的工作流量增加到0.25MB/S(工作周期为4us)。方法二:动态改变设备的优先级。方法二:动态改变设备的优先级。例如,在30us至70us之

50、间临时提高设备D5的优先级。方法三:增加缓冲存储器。方法三:增加缓冲存储器。例如,只要为设备D5增加一个数据缓冲寄存器,它的第一次请求可以在第85us处得到响应,第二次请求可以在第145us处得到响应。 计算机科学与技术计算机科学与技术854.4 输入输出处理机输入输出处理机通道处理机仍依赖CPU来完成部分工作1. 每调用一次输入输出操作的前处理和后处理仍要CPU来完成,需要两次中断方式中断CPU的现行程序,调用操作系统的管理程序为输入输出操作服务。2. 当外围设备或者通道处理机出现异常情况时,通道处理机本身不能处理,需要中断方式请求CPU来处理。3. 对所传送数据的格式转换、码制转换、数据块

51、整体的正确性检验工作仍需要CPU完成。4. 文件的管理设备的管理等操作系统工作,通道处理机无法完成,需要CPU来实现 计算机科学与技术计算机科学与技术86q输入输出处理机通常是一个独立的处理机,具有一定的运算功能,可以承担一般的外围处理机的输入输出、控制操作和运算处理任务。另外,输入输出处理机可以具有自己的存储器,不必通过主存储器就能完成与外围设备的数据交换。 计算机科学与技术计算机科学与技术87典型的输入输出处理机典型的输入输出处理机 CPU CPU CPU 主主存存 主主存存 内内部部总总线线 I/O处处理理机机 I/O处处理理机机 设设 备备 控控制制器器 设设 备备 控控制制器器 设设

52、 备备 控控制制器器 设设 备备 控控制制器器 设设 备备 控控制制器器 设设备备 设设备备 设设备备 设设备备 设设备备 设设备备 设设备备 设设备备 计算机科学与技术计算机科学与技术88q除了通道所具备的所有功能,输入输出处理机还具备: (1) 码制转换。(2)进行数据传输过程中的数据校验和校正。(3)利用自己的算术逻辑指令来完成故障处理。(4)代替CPU完成大部分文件管理工作。(5)定时运行诊断程序,可以诊断外围设备和输入输出处理机是否正常并显示系统状态。(6) 处理人机对话。(7)网络或远程终端直接连在I/O处理机上,由输入输出处理机完成远程用户服务工作。 计算机科学与技术计算机科学与

53、技术89q输入输出处理机可以与中央处理机共享主存储器,可以有自己的存储器。每台输入输出处理机可以有自己独立的运算部件和指令控制部件,也可以由多个处理机共享一个运算部件和指令控制部件。 计算机科学与技术计算机科学与技术90q根据是否共享主存m共享主存储器的输入输出处理机。m不共享主存储器的输入输出处理机。q根据运算部件和指令控制部件是否共享分为:m合用同一个运算部件和指令控制部件。造价低,控制复杂。m独立运算部件和指令控制部件。qP182 CYBER1700大型机的输入输出处理机 计算机科学与技术计算机科学与技术91q操作系统的作用之一是在多进程之间进行进程保护,这种保护包括存储器访问和I/O操作两个方面。 qI/O操作主要是在外设和存储器之间进行,所以操作系统必须保证这些I/O操作的安全性。 I/O与操作系统 计算机科学与技术计算机科学与技术92I/OI/O与操作系统与操作系统DMA是使用虚拟地址还是物理地址?q使用物理地址进行DMA传输,存在以下两个问题:m对于超过

温馨提示

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

评论

0/150

提交评论