【文档说明】计算机系统结构chap4课件.ppt,共(75)页,667.000 KB,由小橙橙上传
转载请保留链接:https://www.ichengzhen.cn/view-5254.html
以下为本文档部分文字说明:
第四章输入输出系统本章内容:I/O方式和特点;中断系统;I/O通道处理机。本章重点:中断系统的软硬件功能分配及中断屏蔽的原理及方法;I/O通道和I/O处理机;通道中的数据传送过程与流量分析1第1页,共75页。4.1输入输出原理输入输出系统的作用:输入
输出系统能够提供处理机与外部世界进行交往或通信的各种手段。因为,处理机在运行过程中所需要的程序和数据要从外部输入,运算结果要输出到外部去。处理机通常还要与其他处理机发生关系,甚至处理机必须在人的操作下才能完成人们所希望做的工作。所谓外部世界:是指处理机以外的需要与处理机交换信息的人和物
,主要包括本地和远程用户、系统操服、操作控制台、输入输出设备、辅助存储器、其他处理机、各种通信设备和虚拟现实系统。输入输出设备:把人以外的各种设备统称为输入输出设备,或者称为外围设备.2第2页,共75页。本节内容输入输出系统的特点基本输入输出方式3第3页,共75页。4.1.1I/
O系统的特点一、I/O系统具有多样性和复杂性。多样性:设备的品种、功能、技术指标,及机、光、电、磁、声、控制等多种学科,典型的软硬件相互结合。复杂性:隐藏在操作系统之中,对于应用程序员是透明的;还表现在处理机
本身和操作系统所产生的一系列随机事件也要调用输入输出系统来进行处理,例如,中断和自陷等。二、I/O系统的功能对指定外设进行输入输出操作,及相应的管理和控制。包括:给指定外设信息编址;连接信息通路
;完成信息传送;还能对传送的信息进行格式变换;形成和产生I/O操作状态控制信息;4第4页,共75页。三、I/O系统设计的好坏直接影响到计算机系统的性能•影响I/O的速度;•影响CPU和主存的利用率;•影响I/O
系统的兼容能力,可扩展能力,性能价格比。四、I/O系统的特点集中反映在异步性、实时性、设备无关性•异步性:外设与处理机通常是异步工作的;•实时性:处理机必须按照不同设备所要求的传送方式和传输速率及时地为设备提供服务,包括从设备接收数据、向设备发送数据、对设备进行控
制等。•设备无关性:系统为了能够适应各种外围设备的不同要求,规定了一些独立于具体设备的标准接口。5第5页,共75页。4.1.2基本输入输出方式一、程序控制输入输出方式特点:何时何设备进行输入输出操作完全受CPU控制;外设和CPU是异步工作关系;数据的输入输出都要经过CPU,用于连接低速
外围设备;灵活性好;不能实现处理机与外设的并行工作。二、中断输入输出方式特点:CPU与外设并行工作;能处理例外事件;灵活性好;用于连接低速外设。6第6页,共75页。三、DMA方式特点:•主存即可被CPU访问,又可被外设访问;在主存储器中通常要有一个存储管理部件来为
各种访问主存储器的申请排队,一般计算机系统把外围设备的访问申请安排在最高优先级。•工作速度快;由于在外围设备与主存储器之间传送数据不需要执行程序,也不动用CPU中的数据寄存器和指令计数器等,因此,不需要做保存现场和恢复现场等工作,从而使DMA方式的工作速度大大加快。•CP
U能够与外设并行工作,数据传送不需CPU干预。如果主存储器的频带宽度足够的话,外围设备的工作可以丝毫不影响CPU运行它自身的程序。•在DMA控制器中,除了需要设置数据缓冲寄存器、设备状态寄存器或控制寄存器之外,还要设置主存储器地址寄存器、设备地址寄存器和数据交换个数计数
器。外围设备与主存储器之间的整个数据交换过程全部要在硬件控制下完成。另外,由于外围设备一般是以字节为单位传送的,而主存储器是以字为单位访问的,因此,在DMA控制器中还要有从字节装配成字和从字拆卸成字节的硬
件。•在DMA方式开始之前要对DMA控制器进行初始化,包括向DMA控制器传送主存缓冲区首地址、设备地址、交换的数据块的长度等,并启动设备开始工作。在DMA方式结束之后,要向CPU申请中断,在中断服务程序中对主存储器的数据缓
冲区进行后处理。如果需要继续传送数据的话,要再次对DMA控制器进行初始化。7第7页,共75页。4.2中断系统在现代计算机系统中,中断系统已经不仅仅是属于输入输出系统。它可以应用于:管理外设、人机联系、故障处理、实时
处理、多任务操作系统、分时操作系统、程序的跟踪调试、程序的监测、用户程序与操作系统的联系、多处理机系统中各处理机之间的联系机任务分配等。本节主要介绍中断系统软硬件功能分配问题.8第8页,共75页。4.2.1中断系统的软硬件功能分配从中断源发出中断服务请求,到这个中断服务请求被处理机响应并全
部处理完成,其过程相当复杂。其中,有些功能必须用硬件来实现,有的功能必须用软件来实现,而中间的大部分功能既可以用硬件实现,也可以用软件实现。因此,在设计一台计算机的中断系统时,如何恰当地分配中断系统的软件与硬件功能,是设计好中断系统最关键的一个问题。9第9页,共75页。1.中
断系统软硬件功能分配主要考虑以下两个因素(1)中断响应时间从某一个中断源发出中断服务请求到处理机响应这个中断源的中断服务请求,并开始执行这个中断源的中断服务程序所用的这一段时间称为中断响应时间。在中断系统中,中断响应时间是一个非常重要的指标。特别是在实时计算机系统中,
中断响应时间是整个计算机系统的一个关键性指标。(2)灵活性一般情况下,用硬件实现速度快,但灵活性差。用软件实现正好相反,灵活性好,但速度低。10第10页,共75页。述这两个要求实际上是互相矛盾的。
如果要减小中断响应时间,那么,中断处理过程中那些既能用硬件实现,也能用软件实现的功能,要尽量用硬件来实现,但是这样必然失去了灵活性。相反,如果用软件实现的功能多了,灵活性虽然好了,但中断响时间就必然要增加。11第11页,共75页。中断处理过程开始现行指令执行结束,且没有更紧急的服务请求关
CPU中断,CPU不能再响应其他任何中断源的中断复请求保存中断点,是指保存程序计数器PC中的内容,在中断服务完成之后返回到原来的程序中去撤消设备的中断服务请求,如果这个中断源的中断请求不撤消的话,那么在开CPU中断后,它必然将再次请并中断服务保存硬件现场,主要指保存处理机状态字PS
W及堆栈指针SP中的内容识别中断源改变设备的屏蔽状态转向中断服务程序入口,一般还要在中断服务程序中通过软件才能找到具体中断源的中断服务程序人口保存软件现场,主要指保存将要被中断服务程序破坏的通用寄存器
中的内容等开CPU中断,CPU可以响应其他更高级中断源的中断服务请求,中断源之间可以实现中断嵌套中断服务,CPU执行中断服务程序关CPU中断,CPU不响应任何中断海的中断服务请求。在下一次开CPU中断之前,正在运行的程序不力夺被中断恢复软件现场
,恢复被中断服务程序破坏的通用寄存器中的内容等恢复屏蔽状态恢复硬件现场,主要指恢复处理机状态字PSW及堆栈指针SP等中的内容,准备返回中断点开CPU中断,如果用软件实现,这条指令必须延迟执行,要在
程序回到中断点之后才能实际打开CPU的户返回到中断点.中断处理过程全部结束注:表示本行的功能一般用硬件来实现。表示本行的功能一般用软件来实现。表示本行的功能既可以用硬件来实现,也可以用软件来实现。12第12页,共75页。2.影响中断响应
时间的因素(1)最长指令执行时间;(2)一条指令执行完后,处理其它更紧急的任务所用时间;(3)第一次关CPU中断到第一次开CPU中断所经历的时间;(4)多中断源同时请求中断服务时,通过软件找到相关中断源的中服程序入口
时间.13第13页,共75页。4.2.2中断屏蔽1.作用(1)在中断优先级已经确定的情况下,改变中断服务程序顺序;(2)决定设备是否采用中断方式工作;(3)在多处理机系统中可以通过中断屏蔽把对外设的I/O服务工作分配到各个处理机中。
2.方法(1)每个或每级中断源设置一个中断屏蔽位(2)改变处理机的优先级14第14页,共75页。例4.1有四个中断源D1、D2、D3和D4,它们的中断优先级从高到低分别是1级、2级、3级和4级。这些中断源的正常中断屏蔽码和改变后的中断屏蔽码见表4.
1,每个中断源一位,共4位屏蔽码表4.1四个中断源的中断优先级和屏蔽码中断源名称中断优先级正常中断屏蔽码改变后的中断屏蔽码D1D2D3D4D1D2D3D4D1111111000D2201111100D3300111110D4400011111
15第15页,共75页。中断请求用户程序中断服务程序D1D2D3D4D1,D2,D3,D4t图4.7按照改变后的中断屏蔽码,处理机响应中断请求和实际中断处理的次序16第16页,共75页。例4.2某处理机有四个中断源D1、D2、
D3和D4,它们在串行排队链硬件中断优先级从低到高分别是1级、2级、3级和4级。处理机本身的优先级最低,为0级。在中断源D1、D2、D3和D4的处理机状态字中,程序员为它们设置的优先级分别为4级、3级、2级、1级。17第17页,共75页。t图4.8采用处理机优先级,处理机响应中断请求
和实际中断处理的次序中断请求用户程序中断服务程序D4D3D2D1D1,D2,D3,D418第18页,共75页。4.3通道处理机通道的作用和功能通道的工作过程通道种类通道中的数据传送过程通道的流量分析19第19页,共75页。4.3.1通道的作用和功能在大型计算机系统中,外围设备的台数
一般比较多,设备的种类、工作方式和工作速度的差别也比较大。为了把对外围设备的管理工作从CPU中分离出来,从IBM360系列机开始,普遍采用通道处理机技术。目前,在IBM370系列机等几乎所有的IBM公司研制的计算机系统中都采用了通道处理机技术。
在IBM公司研制的微型机和工作站等计算机系统中还采用了微通道技术。20第20页,共75页。1.在大型计算机系统中,如果仅仅采用程序控制、中断和DMA这三种基本的输入输出方式来管理外围设备,会引起如下两
个问题:(1)所有外围设备的输入输出工作全部都要由CPU来承担,CPU的输入输出负担很重,不能专心执行用户程序。低速外围设备,每传送一个字符都要由CPU通过执行一段程序来完成,而高速外围设备虽然使用DMA方式减少了CPU的干预,但初始化等工作仍然需要CPU用程序来完成。在大型计算机系统中,这种
输入输出工作对CPU的时间占用实际上是一种浪费。避免这种浪费的方法之一就是设置专门的输入输出处理机来分担全部或大部分的输入输出工作,例如,管理所有低速外围设备的输入输出工作,对DMA接口的初始化工作,控制DMA的数据传送,数据格式的变换,设备状态的检测等。这样,
就能进一步提高整个计算机系统功能分散化的程度,充分发挥CPU的计算潜力。21第21页,共75页。(2)大型计算机系统中的外围设备台数虽然很多,但是一般并不同时工作。如果为每一台设备都配置一个接口,必然是一种浪费。特别是DMA接口,它的硬
件代价很高。采用DMA方式传送数据,提高了输入输出数据的速度,节省了CPU的时间,但这是以对每一台快速外围设备都配备一个专用的DMA控制器作为代价的。在微型和小型计算机系统中,由于快速外围设备的台数很少,所使用的
DMA控制器的数量有限。而在大型计算机系统中,快速外围设备的数量显著增加,就存在一个如何让DMA控制器能被多台设备共享的问题,以提高硬件的利用率。22第22页,共75页。总之,为了使CPU摆脱繁重的输入输出负担和共享输入输出接口,在大型计算机系统中采用通道处理机是一种
比较好的选择。通道处理机能够负担外围设备的大部分输入输出工作,包括管理所有按字节传输方式工作的低速和中速外围设备,按数据块传输方式工作的高速外围设备,对DMA接口的初始化,设备故障的检测和处理等。通道处理机虽然不是一台具有完整指令系统的处理机,但是可以把它看作是一台能够执行
有限输入输出指令,并且能够被多台外围设备共享的小型DMA专用处理机。在一台大型计算机系统中可以有多个通道,一个通道可以连接多个设备控制器,而一个设备控制器又可以管理一台或多台外围设备,这样就形成了一个非常典型的输入输出系统的四级层次结构。23第23页,共75页。2.一般说来,通道的功能包
括如下几个方面:接受CPU发来的输入输出指令,根据指令要求选择一台指定的外围设备与通道相连接。执行CPU为通道组织的通道程序,从生存中取出通道指令,对通道指令进行译码,并根据需要向被选中的设备控制器发出各种操作命令。给出外围设备的有关地址,即进行读/写操作的数据所在的位置。如,磁盘存储器的柱
面号、磁头号、扇区号等。给出主存缓冲区的首地址,这个缓冲区用来暂时存放从外围设备上输入的数据,或者暂时存放将要输出到外围设备中去的数据。24第24页,共75页。•控制外围设备与主存缓冲区之间数据交换的个数,对交换
的数据个数进行计数,并判断数据传送工作是否结束。•指定传送工作结束时要进行的操作。例如,将外围设备的中断请求及通道的中断请求送往CPU等。•检查外围设备的工作状态,是正常或故障。根据需要将设备的状态信息送往主存
指定单元保存。•在数据传输过程中完成必要的格式变换,例如,把字拆卸为字节或者把字节装配成字等。25第25页,共75页。通道的主要硬件包括寄存器部分和控制部分寄存器部分有:数据缓冲寄存器、主存地址计数器、传输字节数计数器
、通道命令字寄存器、通道状态字寄存器。控制部分有:分时控制、地址分配、数据传送、数据装配和拆卸等控制逻辑。通道对外围设备的控制通过输入输出接口和设备控制器进行,对于各种不同的外围设备,设备控制器的结构和功能也各不相同。然而,通道与设备控制器之间一般采用标准
的输入输出接口来连接。26第26页,共75页。4.3.2通道的工作过程在一般用户程序中,通过调用通道来完成一次数据输入输出的过程如图4.9所示27第27页,共75页。28第28页,共75页。CPU执行用户程序和管理程序,通道处理机执行通道程
序的时间关系如图4.10所示,主要过程分为如下三步进行:29第29页,共75页。30第30页,共75页。(1)在用户程序中使用访管指令进入管理程序,由CPU通过管理程序组织一个通道程序,并启动通道(2)通道处理机执行CPU为它组织的通道程序,完成指定的数据输入输出工作。从图3.
12中给出的时间关系可以看出,通道处理机执行通道程序是与CPU执行用户程序并行进行的。(3)通道程序结束后向CPU发中断请求。CPU响应这个中断请求后,第二次进入操作系统,调用管理程序对输入输出中断请求进行处理。31第31页,共75页。4.3.3通道种类字节多
路通道选择通道数组多路通道32第32页,共75页。33第33页,共75页。1.字节多路通道定义:字节多路通道是一种简单的共享通道,主要为多台低速或中速的外围设备服务。字节多路通道采用分时方式工作,依靠它与CPU之间的高速数据通路分时为多台设备服务。34第34页,共75页。35第35页,共
75页。字节多路通道可以有不同的工作方式。字节交叉方式:如果连接在通道上的各个设备轮流占用一个很短的时间片(通常小于100微秒)传输一个字节,或者说,不同的设备在它所分得的时间片内与通道在逻辑上建立不同的传输连接。成组方式:如果允许
一个设备一次占用通道比较长的时间传输一组数据,或者说,设备与通道的连接可以根据需要维持到一组数据全部传送完成36第36页,共75页。字节多路通道两种工作方式的自动转换两种工作方式之间的转换可以自动进行,它通过一个超时机制来进行控制。如果在超时机制预制的时间内,数据仍没有传送完毕,则自动转入
成组方式工作,否则,继续采用字节交叉方式工作。37第37页,共75页。2.选择通道定义:高速外围设备必须设置专门的通道在一段时间内单独为一台外围设备服务,但在不同的时间内仍可以选择不同的设备;一旦选中某一设备,通
道就进入“忙”状态,直到该设备的数据传输工作全部结束为止。工作方式:只有一个以成组方式工作的子通道,只有一套完整的硬件,它逐个为物理上连接的几台高速外围设备服务。38第38页,共75页。39第39页,共75页。选择通道的硬件组成主要包
含5个寄存器(数据缓冲寄存器、设备地址寄存器、主存地址计数器、交换字节数计数器、设备状态/控制寄存器等)、数据格式变换部件和通道控制部分等。40第40页,共75页。3.数组多路通道定义:把字节多路通道和选择通道的特性结合起来就
成为数组多路通道。它每次选择一个高速设备后传送一个数据块并轮流为多台外围设备服务。数组多路通道之所以能够并行地为多个高速外围设备服务,是因为这些高速外围设备并不能在整个数据输入输出时间内单独利用通道的全部传输能力。41第41页,共75页。
以从磁盘存储器读出一个文件的过程为例,可以分为如下三步:第一步是定位第二步是找扇区第三步是读出数据42第42页,共75页。数组多路通道在向一台高速设备发出定位命令后就立即从逻辑上与该设备断开,直到定位完成时再进行
连接,发出找扇区命令后再一次断开,直到开始数据传送。因此,数组多路通道的实际工作方式是:通道在为一台高速设备传送数据时,有多台高速设备可以在定位或者在找扇区。目前,大部分高性能计算机系统均采用数组多路通道,也有一些计算机系统采用选择通道,或这两种高速通道都采用。43第43页,共75页。数
组多路通道的实际工作方式通道在为一台高速设备传送数据时,有多台高速设备可以在定位或者在找扇区.44第44页,共75页。数组多路通道与选择通道相比与选择通道相比,数组多路通道的数据传输率和通道的硬件利用率都很高。但是,由于在一次输入输出
过程中要多次与同一台高速外围设备连接和断开,因此,增加了控制硬件的复杂性。通道在为一台高速设备传送数据时,有多台高速设备可以在定位或者在找扇区.45第45页,共75页。4.3.4通道中的数据传送过程字节多路通道的数据传送选择通道的数据传送46第46
页,共75页。1.字节多路通道的数据传送一个字节多路通道是分时为多台低速和中速外围设备服务的,在有P台设备同时连接到一个字节多路通道上时,它的数据传送过程如下示。TSTDTSTD...TSTD...TSTDD11D21...Dij...Dpn字节多路通道的数据传送过程47第47页,共75页。其
中,每一个参数的含义如下:Ts:设备选择时间。从通道响应设备发出数据传送请求开始,到通道实际为这台设备传送数据所需要的时间。TD:传送一个字节所用的时间,实际上就是通道执行一条通道指令,即数据传送指令
所用的时间。P:在一个通道上连接的设备台数,且这些设备同时都在工作。n:每一个设备传送的字节个数,这里,假设每一台设备传送的字节数都相同,都是n个字节。Dij:连接在通道上的第i台设备传送的第j个数据,其中i=1,2,…,p,j=1,2,...,n。T:通道完成全部
数据传送工作所需要的时间。48第48页,共75页。当一个字节多路通道上连接有P台外围设备,每一台外围设备都传送n个字节时,所需要的总时间T计算如下:T=(TS+TD)·P·n49第49页,共75页。2.选择通道的数据传送选择通道的工作过程如下所示,图中所用的参数与上面的字节多路通道相同,另外
还有如下参数:TDi:通道传送第i个数据所用的时间,其中i=1,2,…,n。Di:通道正在为第i台设备服务,其中i=l,2,…,p。在选择通道中,通道每连接一台外围设备,就把这个设备的n个字节全部传送完成,然后再与另一台设备相连
接,因此,在一个设备寻址时间Ts之后,有连续n个数据传送时间TD。50第50页,共75页。选择通道的数据传送过程TSTD1TD2...TDnTSTD1TD2...TDn…TSTD1TD2...TDnD1D2...Dp当一个选择通道上连接有P台外围设备
,每一台外围设备都传送n个字节时,所需要的总时间T计算如下:T=(TS/n+TD)·P·n51第51页,共75页。3.数组多路通道的数据传送数组多路通道在一段时间内只能为一台高速设备传送数据,但同时可以有多台高速设备
在寻址,包括定位和找扇区。数组多路通道的数据传送过程如下所示,图中所用的参数与上面的字节多路通道和选择通道相同,另外还有如下一个参数:k:一个数据块中的字节个数。在一般情况下,k<n。对于磁盘、磁带等磁
表面存储器,k=512。52第52页,共75页。数组多路通道的数据传送过程当一个选择通道上连接有P台外围设备,每一台外围设备都传送n个字节时,所需要的总时间T计算如下:T=(TS/k+TD)·P·nTSTD1TD2...TDkTSTD1TD2...TDk…TSTDk+1...TD2k...TS
TDn-k...TDnD1D2...D1...Dp53第53页,共75页。4.3.5通道的流量分析通道流量又称为通道吞吐率或通道数据传输率等,它是指一个通道在数据传送期间,单位时间内能够传送的最大数据量,一般用字节个数来表示。一个通道
在满负荷工作状态下的流量称为通道最大流量。通道最大流量主要与通道的工作方式(是指字节多路通道、选择通道和数组多路通道)、在数据传送期内通道选择一次设备所用的时间人和传送一个字节所用的时间TD等因素有关。54第54页,共
75页。通道的流量计算公式根据通道流量的定义和上一节中的公式,可以得到三种通道的最大流量计算公式如下:fmax.BY=1/(TS+TD)(字节/秒)fmax.SE=1/(TS/n+TD)(字节/秒)fmax.BL=1/
(TS/k+TD)(字节/秒)根据字节多路通道的工作原理可知,它的实际流量是连接在这个通道上的所有设备数据传输率之和,即fBY=∑fi55第55页,共75页。通道的基本特性对于选择通道和数组多路通道,在一段时间内,一个通道只能为一台
设备传送数据,而且,这时的通道流量就等于这台设备的数据传输率。因此,这两种通道的实际流量就是连接在这个通道上的所有设备中数据流量最大的那一个。为了保证通道能够正常工作,不丢失数据,各种通道实际流量应
该不大于通道最大流量。在实际设计最大通道流量时,应留有一定的余量。例如对于字节多路通道,通道的最大流量应略大于所有连接在这个通道上的设备的流量之和。56第56页,共75页。例4.3一个字节多路通道连接D1,D2,D3,D4,D5共5台设备,这些设备分别每10微秒,30微秒、30微秒
、50微秒和75微秒向通道发出一次数据传送服务请求,请回答下列问题:(1)计算这个字节多路通道的实际流量和工作周期。(2)如果设计字节多路通道的最大流量正好等于通道实际流量,并假设对数据传输率高的设备,通道响应它的数据传送请
求的优先级也高。5台设备在0时刻同时向通道发出第一次传送数据的请求,并在以后的时间里按照各自的数据传输率连续工作。画出通道分时为各台设备服务的时间关系图,并计算这个字节多路通道处理完各台设备的第一次数据传送请求的时刻。(3)从
时间关系图上发现什么问题?如何解决这个问题?57第57页,共75页。这个字节多路通道的实际流量为:f=(1/10+1/30+1/30+1/50+1/75)=0.2MB/秒通道的工作周期为:t=(1/f)=5微秒,包
括通道选择设备的时间和为设备传送一个字节所用的时间。字节多路通道响应设备请求和为设备服务的时间关系图58第58页,共75页。为了保证字节多路通道能够正常工作,即不丢失数据,可以采取下列几种方法第一种方法,增加通道的最大流量,保
证连接在通道上的所有设备的数据传送请求能够及时得到通道的响应。第二种方法,动态改变设备的优先级。例如,在图中,只要在30至70微秒之间临时提高设备D5的优先级,那么,设备D5的第一次数据传送请求就能及时得到通道的响应,其他设备
的数据传送请求也能正常得到通道的响应。当然,也可以采用临时降低设备优先级的办法,其效果是相同的。第三种方法,增加一定数量的数据缓冲器,特别是对优先级比较低的设备。例如,在图中,只要为设备D5增加一个数据缓冲寄存器,那
么,它的第一次数据传送请求可以在第85微秒处得到通道的响应,第二次数据传送请求可以在第145微秒处得到通道的响应。所有设备的数据都不会丢失.59第59页,共75页。4.4输入输出处理机输入输出处理机的作用输入输出处理机的种类输入输出处理机的特点60第6
0页,共75页。4.4.1输入输出处理机的作用通道处理机实际上并不能看成是独立的处理机,因为它的指令(通道指令)系统很简单,只有面向外围设备的控制和数据传送的基本指令,而且没有大容量的存储器。在数据的输人输出过程中,通道处理机还需要由CPU来承担许多工作。6
1第61页,共75页。1.在高性能的巨型和大型计算机系统中,如果仍然采用通道处理机方式,存在如下问题:(1)每调用一次输入输出操作的前处理和后处理仍然要CPU来完成,需要两次用中断方式中断CPU的现行程序,调用操作系统的管理程序为输入输出操作服务。(2)当外围设备或
通道处理机出现异常情况时,通道处理机本身不能处理,要通过中断方式请求CPU来处理。(3)对所传送数据的格式转换、码制转换、数据块整体的正确性检验等工作仍然要CPU来完成。(4)文件的管理、设备的管理等操作系统的工作,仍需要CPU来实现。62第62
页,共75页。由于上述原因,中央处理机资源往往得不到充分利用,造成很大的浪费。特别是在流水线计算机和向量计算机中,频繁的输入输出工作将使高性能的中央处理机无法充分发挥作用,运算速度严重下降。为此,采用输入输出处理机,使中央
处理机进一步摆脱输入输出操作,使两种处理机并行工作,各负其职,各自充分发挥自己的作用,这是巨型、大型计算机系统以及一些输入输出任务比较繁重的计算机系统的必然选择。下图是一种典型的采用输入输出处理机的计算机结构。63第63页,共75页。一种典型的采用输入输出处
理机的计算机结构64第64页,共75页。2.输入输出处理机与通道处理机的主要差别输入输出处理机除了能够完成通道处理机的全部功能,而且还能:码制转换。数据校验和校正。故障处理。文件管理。诊断和显示系统状态。处理人机对话。网络或远
程终端可以直接连接到输入输出处理机上,由输入输出处理机完成远程用户服务工作。除了以上工作之外,输入输出处理机还可以根据需要完成分配给它的其他任务,如数据库和知识库的管理工作等。65第65页,共75页。总之,输入输出处理机通常是一台独立的处理机,具有
一定的运算功能,可以承担一般的外围处理机的输入输出、控制操作和运算处理等任务。另外,由于输入输出处理机具有自己的存储器,因此,不必通过主存储器就能完成与外围设备的数据交换,这样,可以进一步提高整个计算机系统的性能。66第66页,共75页
。4.4.2输入输出处理机的种类1.根据是否共享主存储器,可以把输入输出处理机分为两大类(1)共享主存储器的输入输出处理机。(2)不共享主存储器的输入输出处理机。67第67页,共75页。2.根据运算部件和指令控
制部件是否为各个输入输出处理机共享也可以把输入输出处理机分为两类(1)合用同一个运算部件和指令控制部件的输入输出处理机。(2)独立运算部件和指令控制部件的输入输出处理机。68第68页,共75页。3.各种计算机系统的具体情况和不同要求,输入输出处理机的结构有多
种组织方式(1)在有些计算机系统中,有多个输入输出处理机,而且从功能上进行分工,有的专门管理外围设备,有的专门管理文件系统,有的专门管理用户的人机会话工作,有的专门管理网络和远程终端,有的专门管理数据库或知识库等。69第69页,共75页。(2)在许多并行计算机和超级并行计算机系统中,以输入输
出处理机作为主处理机,它除了担负全部输入输出任务之外,还运行操作系统,而由多个处理机或多个运算部件组成的并行处理系统仅作为运算的加速部件。(3)在有的计算机系统中,用一台与中央处理机相同型号的处理机作为输入输出处理机。70第7
0页,共75页。(4)随着集成电路技术的迅速发展,目前许多计算机系统往往采用廉价的微处理器来专门承担输入输出任务.71第71页,共75页。4.4.3输入输出处理机的特点以CYBER1700巨型计算机的输入输出处理机为例来说明输入输出处理机的特点。CYBER1
70输入输出处理机的结构如图所示。72第72页,共75页。图CYBER170计算机系统的结构框图73第73页,共75页。(1)10台输入输出处理机PPU0~PPU9通过主存一输入输出处理机总线分时共享主存储器,并且通过输入输出交叉开关网络共享12个输入输出通道。(2)每个PPU有
一个容量为4K×13位(其中一位为奇偶校验位)的局部存储器。系统的监控程序常驻在PPU0的局部存储器中,控制台显示程序常驻在PPU1的局部存储器中。另外,各PPU的局部存储器中均装有自己的常驻程序。(3)中央处理机不能直接与外围设备打交道,当
用户程序需要进行输入输出操作时,由中央处理机发出请求调用输入输出处理机,然后由输入输出处理机管理外围设备完成全部输入输出工作。74第74页,共75页。(4)每台PPU都有相同的指令系统,共有66条指令,包括算术逻辑指令
、访问存储器指令、输入输出指令及程序控制指令等。指令格式有12位的短指令和24位的长指令两种,格式如图所示:其中,OP为操作码,D为设备地址,M为存储器地址。(5)每个PPU有4个寄存器。A寄存器为累加寄存器,用于保存操
作数、主存地址、输入输出字节数等,它也是PPU与其他部件之间进行通信的接口寄存器。P寄存器为程序计数器。Q寄存器为多功能寄存器,用于保存直接地址、间接地址、通道号或转移计数值等。K寄存器为指令寄存器,用
来保存指令操作码和指令执行周期。75第75页,共75页。