中断程序运行示意图
1、【简单应用题】(总分10分)某机器共有5级中断,其中断响应次序为1→2→3→4→5,现要求其实际的处理中断次序为4→5→3→1→2,若在运行用户程序时,同时出现1、5级中新请求,而当第5级中断未处理完时,又同时出现2、3、4级中断请求,请画出机器运行程序的全过程示意图。
中断屏蔽位
1、某机器共有5级中断,其中断响应次序为1→2→3→4→5,现要求其实际的处理中断次序为3→5→2→4→1。
(1)设计各级中断处理程序的中断级屏蔽位,填入题28表中(令“1"对应屏蔽,“0"对应开放,并将题28表画在答题卡上作答)。
(2)若在运行用户程序时,同时出现4、5级中断请求,而当第5级中断未处理完时,又同时出现1、2、3级中断请求,请画出机器运行程序的全过程示意图。
解:
(1)中断级屏蔽位设置如答28表所示。(5分,错- -处扣1分,扣满为止)
(2)机器运行程序的全过程如答28图所示。(5 分,错- -处扣1分,扣满为止)
2、若计算机共有5级中断,中断响应优先次序为1→2→3→4→5,现要求实际的中断处理次序为3→1→2→4→5。设计各级中断处理程序的中断级屏蔽位(令"1”对应屏,“0”对应于开放)。
解:
3、若计算机有4级中断,中断响应的优先次序为1→2→3→4设中断级屏蔽位“1”对应于开放,“0”对应于屏蔽,各级中断处理程序的中断级屏蔽位设置如题28表所示。
(1)求中断处理次序。
(2)如果所有的中断处理各需3个单位时间,中断响应和中断返回时间相对于中断处理时间少得多。当计算机正在运行用户程序时,同时发生第3、4级中断请求,过两个单位时间后,又发生第2级中断请求再过两个单位时间后,发生第1级中断请求。画出程序运行过程示意图。
解:
(1)中断处理次序为1→2→4→3。(2分)
(2)程序运行过程示意图如答28图所示。在该图中,粗短线表示交换程序状态字的时间。(8分,每错一处扣1分,扣满8分为止)
并行存储器的无冲突访问
1、
2、
虚拟页式存储
1、某虚拟存储器共8个页面,每页为512个字,实际主存为2048个字,采用页表法进行地址映像。映 像 表的内容如题28表所示。
(1)列出会发生页面失效的全部虚页号。
(2)计算虚地址和实地址中对应页号所需的位数。
(3)按以下虚地址计算主存实地址:0,600,1024,2000,3500,4000。
解:(1)发 生页面失效的全部虚页号就是页映像表中所有装入位 的“0”的行所对应的虚页号的集合,即为0,4,5,6。(2分)
(2)虚拟存储器共8个页国,其页号所需的位数为3;(1分)实地址共4(2048/512)个页固,其页号所需的位数为2。(1分)
(3)由虚地址计算主存实地址的情况如答28表所示。按以下虚地址计算主存实地址:0,600,1024,2000,3500,4000。(6分,错1个地址扣1分,扣满为止)
流水线-向量点积
1、向量A和B长度为8,进 行 点 积 运算A·B,计算(1)、(2)两种结构处理完成全部结果的最少时钟拍数。设处理机中每个部件输出的结果均可直接送到任何部件的输入端或存人缓冲器中,其间的传输延时不计,指令和令源操作数均能连续提供。
(1)处理机有一个乘—加双功能静态流水线,乘、加均由5个流水段构成,各段经过的时间为1拍(要求面出时空图)。
(2)处理机有乘、加两条流水线,可同时工作,各由5个流水段构成,各段经过的时间为1拍(不需要画出时空图)。
解:
2、
解:
(1)解题算法为(a1×b1+a2×b2)+(a3×b3+a4×b4)(2分)
(2)完成该运算的时空图如答27图所示。(7分,每错一处扣1分,扣满7分为止)
计算时间为14Δt。(1分)
哈夫曼编码
1、经统计,某计算机的9条指令的使用频度分别为:0.01、0.06、0.24、0.03、0. 02 0.07、0.25、0.28、0.04。分别求出用等长码、哈夫曼码、只有两种码长的扩展操作码3种编码方式的操作码平均码长。
解:
9条指令的等长操作码的平均码长是[log29]=4位(2分)
哈夫曼编码可先用根据哈夫曼算法构造哈夫曼树如答26图所示,(4分,错1处扣1分,扣满为止)图中矩形下方的数字表示该频度指令所用的二进制位编码的码位数,所以哈夫曼编码操作码的平均码长为:
采用只有2-5两种码长的扩展操作码,可根据9条指令所给出的使用频率值分成两种。让使用频度较高的3条指令用2位操作码编码表示,留下一个编码作为长码的扩展标志,扩展出3位,共有6条使用低频的指令的操作码,这样,操作码的平均码长为:
2、某模型机9条指令使用频度如题28表所示。要求有两种指令码长,都按双操作数指令格式,采用扩"展操作码,并限制只能有两种操作码码长。
题28表
解:
(1)Huffman树的形式如答28图所示。(4分,错一处扣1分,扣满为止。)
(1)Huffman树的形式如答28图所示。(4分,错一处扣1分,扣满为止。)
(2)采用2-5 扩展的操作码编码为(2分,错一处扣1分,扣满为止。)
ADD(加) :00
SUB(减) :01
CLA(清加):10
STD(存):11000
JMP(转移):11001
JOM(按负转移):11010
CLI(循环左移):11011
SHR(右移):11100
STP(停机):11101
因此,操作码的平均码长为:(1分)
互联网络-多级立方网络
1、画出8个处理单元的间接二进制n方体网络(属于多级立方体网络) ,现要求1→6,3→1,4→7,5→2,7→4同时进行传送,请用虚线标出各开关的控制状态。如果是STARAN网络,上述的5对单元是否可以同时进行传送?为什么?
解:
8个处理单元的间接二进制n方体网络(4分错1处扣1分,扣满为止)和各开关的控制状态,(4分,错1处扣1分,扣满为止)如答27图所示:
如果是STARAN网络,无法实现上述的5对同时进行传送,(1分)因为STARAN网络采用的是级控制,同一级只能是一种开关状态。 (1 分)
2、阵列处理机有0~7共8个处理单元互连要求按照(0,3)、(1,2)、(4,7)、(5,6)配对通信。
(1)写出实现此功能的互连函数的一般式。
(2)画出用三级立方体网络实现该互连函数的拓扑结构图,并标出各级控制开关的状态。
解:
霍纳法则
1、有表达式Z=A (B+C (D+EF))+G H * D在多处理机上,要求利用减少树高的方法加速运算。
(1)画出并行算法的树形流程图,并确定处理机数P和树高TP。
(2)用FORK、JOIN、COTO语句写出运算表达式的多处理机并行程序段。**
(1)算法按Z=A B+GHD+A C(D+E F)安排,其并行算法的树形流程如答29图所示。(4 分,错1处扣1分,扣满为止)从图可得处理机数P=3,(1分)树高TP=4(1分)
2、由霍纳法则给定的表达式如下:E =a(bc +d(ef +g(h+ij))) 利用减少树高的办法来加速运算,要求:
(1)画出树形流程图;
(2)确定T p、P、S p、E p的值。
解:
3、表达式E=a+bc+c(d+eg+fg),利用减少树的高度的方法来给运算加速,求
(1)画出树行流程图。
(2)确定可并行处理的处理机机数P,多处理机运算的级数Tp,多处理机的加速比Sp,多处理机的设备利用率Ep。
解:
(1)利用霍纳法可得到
E=a+c((b+d)+g(e+f))
若使用单处理机,P=1,T1=6
(2)P=2
Tp=5
Sp=T1/Tp=6/5
Ep=Sp/P=6/10
4、由霍纳法则给定表达式E=(a+b+g)+c(d+ef),根据多处理机并行算法给运算加速,通过树形方法计算并行处理的处理机机数P,级数Tp、加速比Sp和设备利用率Ep。
解:
若使用单处理机,P=1,T 1=6
P=2
Tp=4
Sp=T1/Tp=6/4=3/2
Ep=Sp/P=3/4
时空图-吞吐率-效率
1、有一条4段(S1~S4)组成的数据处理流水线如题6图所示。其中,S1与S4的执行时间均为Δt,S2与S3的执行时间均为2Δt。该流水线连续处理5个数据,要求:
(1)画出处理过程的时空图。
(2)求出该流水线的实际吞吐率和效率。
解:
(2)流水线段数m=4,任务数n=5
禁止表-冲突向量-转态转移图
1、某4段的流水处理机需要7拍才能完成一个任务,其预约表如下所示。
(1)写出延迟禁止表、冲突向量。
(2)画出流水线状态转移图。
(3)求出最小平均延迟和最大吞吐率及调度方案。
解:
(1)禁止向量:(2,4,6),初始冲突向量:(101010)
(3)简单循环 平均延迟
(1,7) 4
(3,5) 4
(3,7) 5
(3,5.7) 5
(5,7) 6
(5,3) 4
(5,3.7) 5
(5) 5
(7) 7
最小平均延迟4拍
最大吞吐率1/4
最佳调度方案(1,7)、(3,5)、(5,3)
2、在一个4段的流水线处理机上需经过6拍才能完成一个 任务,其预约表如题29表所示。
(1)写出延迟禁止表,冲突向量。
(2)画出流水线状态转移图。
(3 )求出最小平均间隔拍数及其最佳调度方案。
解:
(1)延迟禁止表F={1,5},(1分)冲突向量C=(10001);(1分)
(2)流水线状态转移图如答29图;(3分,错1处扣1分,扣满为止)
2、现设流水线由5段组成,段号k分别为1~5,任务经过流水线总共需要9拍,其预约表如题28表所示。
(1)写出延迟禁止表F、冲突向量C;
(2)画出流水线状态转移图;
(3)求出最佳调度方案、最小平均延迟及流水线的最大吞吐率。
解:
(1)延迟禁止表F={1,3,4,8}(1分)
冲突向量C=(10001101)(1分)
(2)流水线状态转移如答28图所示。(5分,错1处扣1分,扣满为止)
(3)从状态转移图可看出,最佳调度方案为(2,5)(1分)
则,最小平均延迟为3.5拍(1分)
最大吞吐率为:Tpmax=1/3.5(任务/拍)(1分)
页面置换算法
1、采用LRU替换算法,为A道程序分配4页空间画出用堆栈对A道程序页地址流模拟处理过程图,地址流为:1、2、3、1、4、5、2、1、3、5,并统计命中率H。
解:
经统计得知,命中率H=3/10
2、设某虚拟存储器上运行的程序含5个虚页,其页地址流依次为4,5,3,2,5,1,3,2,5,1,3。
用LRU替换。
(1)用堆栈对该页地址流模拟- -次,画出此模拟过程,并标出实页数为3 ,4 ,5时的命中情况。
(2)为获得最高的命中率,至少应分配给该程序几个实页?其可能的最高命中率是多少?
解:
(1)模拟过程及命中情况如答26表所示。(7分,错一列扣1分,扣满为止。)
(2)为获得最高的命中率,至少应分配给该程序4个实页。(1 分)
最高命中率为H=6/11=54. 55%(2分)
3、某 Cache主存存储层次,主存有8块(0~7, Cache有4块(0~3),采用组相联映像,组内块数是2块,使用LRU替换算法。
(1)画出主存、 Cache块的影响对应关系示意图。
(2)对于如下主存块地址流:0、1、3、2、7、3、5、7、4、6,画出 Cache内各块的实际替换过程图,并计算此期间 Cache的命中率H。
解:
1、
主存的第0、1、4、5块只能映像装入或替换Cache块中的0、1块的内容,主存的第2、3、6、7块只能映像 Cache装入或替换块中的2、3块的内容。
2、
CRAY-1向量流水处理机
1、在CRAY-1向量流水处理机中,如果向量长度为64 ,各功能部件执行时间分别为:浮加为6拍,浮乘为7拍,存储器读数为6拍,送人寄存器及启动功能部件各1拍。
(1)如题27图向量指令之间哪些可以并行?哪些可以链接执行?
(2)计算向量指令执行完所需最少拍数。
①V0←存储器
②V2←V0XV1
③V3←V0+V2
④V4←V5XV6
题27图
解:
(1)指令①②之间只存在先写后读的V0。冲突,可以链接执行;(1分)指令③和指令②存在V2和V0。冲突无法链接和并行;(1分)指令③④不存在Vi,冲突和功能部件冲突可以并行执行。(1分)所以这四条指令①②链接执行结束后,再进行③④并行执行。(2分)
(2)按照上面的分析执行完这四条指令最少拍数为:
指令①②链接执行所需时间
I启动访存+6访存+1存V0+1送乘法部件+7浮乘+1存V2+64-1 =80(拍)(2分)
指令③④并行执行所需时间
2、求向量D=A×(B+C),各向量元素数为N,照CRAY-1方式分解为3条向量指令:
①v3←一存储器;访存取A送入V3寄存器
②v2←v0+v1;B+C→K
③v4←v2×v3; K×A→d
当采用下列3种工作方式时,各需多少拍才能得到全部结果?
(1)①、②和③串行执行
(2)①和②并行执行后,再执行③;
(3)采用链接技术。
解:
CARY-1为向量运算提供了6个流水线单功能部件,浮点加的流水时间为6拍,(1分)浮点乘流水时间为7拍,(1分)存取数据用时为1拍。(2分)
(1)①、②、③串行执行的时间为 7+N+7+N+8+N=22+3N(拍)(2分)
并行FORK-JOIN
1、求A1,A2,…, A8的累加和,有如下程序;
S1 A1=A1+A2
S2 A3=A3+A4
S3 A5=A5+A6
S4 A7=A7+A8
S5 A1=A1+A3
S6 A5=A5+A7
S7 A1=A1+A5
写出用 FORK,JOIN语句表示其并行任务的派生和汇合关系的程序,以假想使此程序能在多处理机上运行。
解:
2、若有下述程序:
C=AB
D=A+B
G=EC
H=F+D
I=G+H
(1)利用FORK、JOIN语句将其改写成可在多处理机上并行执行的程序。
(2)假设乘法运算时间比加法运算时间长画出该程序在有两台处理机的系统上运行的时间关系图。
解:
(1)改写后的程序为:(5分,每错一处扣1分,扣满5分为止)
(2)在两台处理机的系统上运行的时间关系图如答29图所示。(5分,每错一处扣1分,扣满5分为止)
通道流量设计
1、通道型I/O系统由一个字节多路通道A(其中包括两个子通道A1和A2)、两个数组多路通道B1和B2及一个选择通通C构成,各通通所接设备和设备的数据传送速率如题27表所示。
(1)分别求出各通道应具有多大设计流量,才不丢失信息。
(2)设I/O系统流量占主存流量的1/3时才算流量平衡,则主存流量应达到多少?
解:
(1)为了使设备信息不会丢失,各通道设计的极限流量至少应分别是:
字节多路子通道A1:
浮点尾数表示
1、设某计算机阶值4位、尾数15位,阶符和数符不在其内,当尾数以8为基时,在非负阶、正尾数、规格化情况下,试计算:
(1)最小阶值;
(2)最大阶值;
(3)阶的个数;
(4)最小尾数值;
(5)最大尾数值;
(6)可表示的最小值;
(7)可表示的最大值;
(8)可表示数的个数。
解: