资源描述
第二章7.(1)浮点数系统使用的阶基rp=2,阶值位数 p=2,尾数基值 rm=10,以 rm 为基的尾数位数m=1,按照使用的倍数来说,等价于m=4,试计算在非负阶、正尾数、规格化情况下的最小尾数值、最大尾数值、最大阶值、可表示的最小值和最大值及可表示数的个数。(2)对于 rp=2,p=2,rm=4,m=2,重复以上计算。解:依题意列下表:最小尾数值p=2,rm=10,m=110-1=p=2,rm=4,m=24-1=1-10-1=1-4-2=15/16最大尾数值最大阶值可表示的最小值2p-1=33可表示的最大值可表示数的个数103*=9003643*15/16=6048题中“按照使用的倍数来说,等价于 m=4,”这个 m=4,因为 231024,等价为实际要 4 个二进制位,表示 RM=10 为基的一位12.经统计,某机器 14 条指令的使用频度分别为:,。分别求出用等长码、Huffman 码、只有两种码长的扩展操作码3 种编码方式的操作码平均码长。解:等长操作码的平均码长=4 位;Huffman 编码的平均码长=位;只有两种码长的扩展操作码的平均码长=位。14.若某机要求:三地址指令4 条,单地址指令 255 条,零地址指令 16 条。设指令字长为12 位每个地址码长为3 位。问能否以扩展操作码为其编码如果其中单地址指令为254 条呢说明其理由。答:不能用扩展码为其编码。指令字长 12 位,每个地址码占3 位;三地址指令最多是2(12-3-3-3)=8 条,现三地址指令需 4 条,可有 4 条编码作为扩展码,单地址指令最多为42323=28=256 条,现要求单地址指令255 条,可有一条编码作扩展码零地址指令最多为1238 条不满足题目要求不可能以扩展码为其编码。若单地址指令 254 条,可以用扩展码为其编码。依据中推导,单地址指令中可用2 条编码作为扩展码零地址指令为 22316 条,满足题目要求note:三地址指令格式:操作码地址码地址码地址码3 位3 位3 位3 位单地址指令格式:操作码地址码)9 位3 位所以前面 9 位由于三地址指令用了最前面3 位,还有中间 6 位可作为编码(也就是总共可以有 9 位作为单地址指令的指令操作码的编码)。减去3 地址指令的 4 条,有 4*26=256条,但由于韪目要求要有255 条,所以剩下一个编码,已经用了 9 位的全部编码,最后零地址指令(全部 12 位都可作为操作码的编码)还有1*23=8(这是 12 位编码中最后三位的)若只要求 254 种,则可以有(256-254)*23=16 条15.某机指令字长 16 位。设有单地址指令和双地址指令两类。若每个地址字段为6 位.且双地址指令有 X 条。问单地址指令最多可以有多少条答:单地址指令最多为(16-X)26.双地址指令最多是 2(16-6-6)=24=16 条,现双地址指令有 X 条,可有(16-X)条编码作为扩展码,单地址指令最多为(16-X)26=256 条第三章4.设中断级屏蔽位“1”对应于开放,“0”对应于屏蔽,各级中断处理程序的中断级屏蔽位设置如下:中断处理程序级别1 级 2 级3 级第 1 级000!中断级屏蔽位,4 级0第 2 级1010第 3 级10001010第 4 级 (1)当中断响应优先次序为1234 时,其中断处理次序是什么 (2)如果所有的中断处理都各需3 个单位时间,中断响应和中断返回时间相对中断处理时间少得多。当机器正在运行用户程序时,同时发生第2,3 级中断请求,过两个单位时间,又同时发生第 1,4 级中断请求,试画出程序运行过程示意图。答:(1)当中断响应优先次序为1234 时,其中断处理次序为1342。(2)5.若机器共有5 级中断,中断响应优先次序为12345,现要求其实际的中断处理次求序14523。(1)设计各级中断处理程序的中断级屏蔽位(令“1”对应于开放,“0”对应于屏蔽);(2)若在运行用户程序时,同时出现第4,2 级中断请求,而在处理第2 级中断未完成时,又同时出现第 1,3,5 级中断请求,请画出此程序运行过程示意图。答:(1)中断级屏蔽位设置如下图:中断级屏蔽位中断处理程序级1级 2级 3级 4级5级别1第 1 级1111011.00第 2 级0110111100第 3 级0第 4 级00第 5 级1*1 (2)中断过程示意图:如图 2、4 中断同时出现,进行排队器。首先响应第 2 级中断请求,屏蔽字为 01100,表明其对第 4 级中断请求开放,所以转去响应第4 级中断请求并进行处理。响应 4,中断 4 运行结束,回 2。1、3、5 进入排队器。第 2 级中断请求的处理请求被中断,转去响应第 1 级中断请求并进行处理。响应第5 级中断请求并进行处理。继续响应并处理第2 级中断处理请求,结束后返回用户程序。最后处理第 3 级中断请求。;10.通道型 I/O 系统由一个字节多路通道A(其中包括两个子通道Al 和 A2),两个数组多路通道 B1 和 B2 及一个选择通道 C 构成,各通道所接设备和设备的数据传送速率如表所示。(1)分别求出各通道应具有多大设计流量才不会丢失信息;(2)设 I/O 系统流量占主存流量的1/2 时才算流量平衡,则主存流量应达到多少通道号所接设备的数据传送速率(KB/s)?子通道 A1子通道 A250 35 20 20 50 35 20 2050 35 20 20 50 35 20 20字节多路通道数组多路通道 B1:500 400 350 250数组多路通道 B2选择通道 C500 400 350 250500 400 350 250解:(1)要不丢失信息,各通道需要达到的流量:字节多路通道子通道 A1:S;字节多路通道子通道 A2:S;数组多路通道 B1:500KB/s;数组多路通道 B2:500KB/s;选择通道 C:500KB/s。(2)主存流量应达到 4MB/S。剖析:(1)设备要求字节多路通道或其子通道的实际最大流量,是该通道所接各设备的字节传送速率之和;设备要求数组多路通道或选择通道的实际最大流量,是该通道所接各设备的字节传送速率中的最大者。(2)I/O 系统中,各种通道和子通道可以并行工作,因此,I/O 系统的最大流量应等于各通道最大流量之和。第 4 章4.某虚拟存储器共 8 个页面,每页1024 个字,实际主存为4096 个字,采用页表法进行地址映象。映象表的内容如下表所示。4567虚页号0123223)实页号31100。11装入位注:我把虚页号加上了。001010(1)列出会发生页面失效的全部虚页号;(2)按以下虚地址计算主存实地址:0,3728,1023,1024,2055,7800,4096,6800。解:(1)会发生页面失效的全部虚页号为:2,3,5,7。(2)虚地址虚页号0001页内位移装入位实页号%【页内位移实地址030723327836560页面失效无页面失效1023010231&1023409531024101110240,无2055270页面失效页面失效无780076320页面失效页面失效44096680066561001220480656656剖析:(1)根据页表法列出表 2,当装入位为 0 时,即为页面失效,再找出相对应的虚页号即可。(2)虚页号=虚地址/页面大小页内位移量=虚地址虚页号*页面大小实地址实页号*页面大小页内位移量由于可以用替换算法解决页面失效的问题,所以,发生页面失效的虚页 2,3,5,7 仍然可以有相应的实地址,但这样要在页表中建立新的虚实地址对应关系,新的虚实地址对应关系和原来的对应关系相同的可能性就很小了。6.设某程序包含 5 个虚页,其页地址为4,5,3,2,5,1,3,2,2,5,1,3。当使用LRU算法替换时,为获得最高命中率,至少应分配给该程序几个实页其可能的最高命中率为多少12.有一个 Cache 存储器。主存共分8 个块(07),Cache 为 4 个块(03),采用组相联映象,组内块数为 2 块,替换算法为近期最少使用算法(LRU)。(1)画出主存、Cache 地址的各字段对应关系(标出位数)图;(2)画出主存、Cache 空间块的映象对应关系示意图;(3)对于如下主存块地址流:1,2,4,1,3,7,0,1,2,5,4,6,4,7,2,如主存中内容一开始未装入Cache 中,请列出 Cache 中各块随时间的使用状况;(4)对于(3),指出块失效又发生块争用的时刻;(5)对于(3),求出此期间 Cache 的命中率。解答:(1)主存地址、Cache 地址的各字段的位数及其对应关系如下图所示 (2)主存块、Cache 块的映象对应关系如下图所示 (3)Cache 中各块随时间的使用状况如下图所示。图中标*号的是候选替换块的块号,H:命中;R:替换;L:失效。(4)发生块失效又发生块争用的时刻有6、7、9、10、11、12、14、15。(5)Cache 的块命中率 Hc=3/15=。剖析:由于主存块、Cache 块之间存在上述的映象对应关系,主存的第 0、1、4、5 块只能映象装入或替换物理 Cache 的第 0、1 块;主存的第 2、3、6、7 块只能映象装入或替换物理Cache的第 2、3 块。第 5 章3.假设指令的解释分取指、分析与执行3 步,每步的时间相应为t 取指、t 分析、t 执行,(1)分别计算下列几种情况下,执行完100 条指令所需时间的一般关系式:a.顺序方式;b.仅“执行 k”与“取指 k+1”重叠;c.仅“执行 k”、“分析 k+1”、“取指 k+2”重叠;(2)分别在 t 取指=t 分析=2、t 执行=1 及 t 取指=t 执行=5、t 分析=2 两种情况下,计算出上述各结果。解:(1)执行完 100 条指令所需时间:*(t 取指+t 分析+t 执行);取指+100*t 分析+99*max(t 取指+t 执行)+t 执行;取指+max(t 取指+t 分析)+98*max(t 取指+t 分析+t 执行)+max(t 分析+t 执行)+t 执行。(2)在 t 取指=t 分析=2、t 执行=1 的情况下,执行完 100 条指令所需时间:在 t 取指=t 执行=5、t 分析=2 的情况下,执行完 100 条指令所需时间:5.流水线有 4 个功能部件组成,每个功能部件的延迟时间为t,当输入 10 个数据后间歇 5t 又输入 10 个数据,如此周期性地工作,求此时流水线的吞吐率,并画出时空图。解:TP=10/14t=5/7t时空图:6.有一个浮点乘流水线如图(a)所示,其乘积可直接返回输入端或暂存于相应缓冲寄存器中,画出实现 A*B*C*D 的时空图以及输入端的变化,并求出该流水线的吞吐率和效率;当流水线改为图(b)形式实现同一计算时,求该流水线的效率及吞吐率。图(a)图(b)解:按图(a)组织的流水线时,TP=3/13t;=3/11。实现 A*B*C*D 的时空图如图 0504 所示:图 0504按图(a)组织的流水线时,TP=3/13t;=3/11。实现 A*B*C*D 的时空图如图 0504 所示:图 0505剖析:为了减少运算过程中的操作数相关,A*B*C*D 应改为(A*B)*(C*D)进行运算。8.一个 4 段的双输入端规格化浮点加法流水线,每段经过时间10ns,输出可直接返回输入或将结果暂存于相应缓冲器中,问最少需经多少时间能求(10)(i=1)Ai,并画出时空图。答:时空图如下:求(10)(i=1)Ai 需要的最知时间是170ns。剖析:为了避免先写后读相关,使流水线性能尽可能高,需将(10)(i=1)Ai 调整成(A1+A2)+(A3+A4)+(A9+A10)+(A5+A6)+(A7+A8)。14.在一个 5 段的流水线处理机上需经9 拍才能完成一个任务,其预约表为:.t0t1t2t3t4t5$t7t8t6s1!s2s3|s4s5分别写出延迟禁止表 F、冲突向量 C;画出流水线状态转移图;求出最小平均延迟及流水线的最大吞吐率及其高度方案。按此流水高度方案输入6 个任务,求实际吞吐率。解:根据预约表,延迟禁止表F=1,3,4,8冲突向量为 C:状态转移图如图 0514 所示图 0514各种方案的平均延迟表:调度方案平均延迟最小延迟为拍,其调度方案为(2,5)。按调度方案(2,5)输入 6 个任务时的时空图如图0515 所示:图 0515(2,5)(2,7)55(5,6)(6)6(6,7)(7)7实际吞吐率 TP=6/25(任务/拍)。剖析:求延迟禁止表 F=1,3,4,8,第一行间隔8,第二行间隔1,第三行间隔1,3,4,然后间隔都为 1,合并。求冲突向量,写一个8 位两进制数,根据禁止表倒着写。由于初始冲突向量的 c2,c5,c6,c7 为 0,所以第二个任务可以距第一个任务2,5,6 或 7 拍流入流水线。17.设向量长度为 64,以 CRAY-1 机上所用浮点功能部件的执行时间分别为:相加 6 拍,相乘7 拍,求倒数近似值14 拍;从存储器读数 6 拍,打入寄存器及启动功能部件各1 拍。问下列各指令组内的哪些指令可以链接哪些指令不能链接不能链接的原因是什么分别计算出各指令组全部完成所需的拍数。(1)(2)(3)V0存储器V2V0*V1V3存储器V4V2+V3V3V2+V0V5V3+V4(4)V0存储器V11/V0V3V1*V2V5V3+V4V0存储器V1V2+V3V4V5*V6V2V0*V1解:(1)3 条向量指令之间既没有发生源 Vi 冲突,也没有 Vi 的先写后读相关,又不存在功能部件的使用冲突,所以这 3 条向量指令可以同时并行流水。max(1+6(访存)+1+64-1),(1+6(浮加)+1+64-1),(1+(7 浮乘)+1+64-1)=72 拍。所以向量指令组全部完成需要72(拍)。(2)3 条向量指令之间没有功能部件的使用冲突,但是在第1、2 两条向量指令与第 3 条向量指令之间有 V2 及 V3 的先写后读相关。只要让第 1 条向量指令较第 2 条向量指令提前 1拍启动,则第 1,2 两条向量指令的第 1 个结果元素就可以被同时链接到第3 条向量指令中。max(1+(7 浮乘)+1+64-1),(1+6(访存)+1+64-1)+(1+6(浮加)+1+64-1)=80(拍)。(3)第 1 条向量指令与第 2 条向量指令之间有 V0 的先写后读相关,两者可以链接。第3 条向量指令与第 2 条向量指令之间有源向量寄存器V0 的冲突,它们之间只能串行。第3 条向量指令与第 4 条向量指令之间有加法功能部件的使用冲突,它们之间也只能串行。(1+6(访存)+1+1+(7 浮乘)+1+64-1)+(1+6(访存)+1+64-1)(1+6(浮加)+1+64-1)=222(拍)。(4)4 条向量指令均依次有 Vi 的先写后读相关,但无源 Vi 冲突,也无功能部件的使用冲突,所以,这 4 条向量指令可以全部链接在一直,进行流水。(1+6(访存)+1)+(1+14(求倒数)+1)+(1+(7浮乘)+1)+(1+6(浮加)+1)+64-1=104 拍。第 6 章3.编号为 0、1、.、15 的 16 个处理器,用单级互连网互连。当互连函数分别为(1)Cube3(2)PM2+3(3)PM2-0(4)Shuffle(5)Shuffle(Shuffle)时,第 13 号处理器各连至哪一个处理器解答:(1)5 号处理器 (2)5 号处理器 (3)12 号处理器 (4)11 号处理器 (5)7 号处理器剖析:由题意知,有 16 个处理器,即 N=16,n=log2(N)=log2(16)=4。Cube3(13)=Cube3(1101)=0101=5 PM2+3(13)=(13+23)mod16=5 PM2-0(13)=(13-20)mod16=12 Shuffle(13)=Shuffle(1101)=1011=11 Shuffle(Shuffle)=Shuffle(11)=Shuffle(1011)=0111=78.画出 07 号共 8 个处理器的三级混洗交换网络,在该图上实现将 6 号处理器数据播送给04 号,同时将 3 号处理器数据播送给其余3 个处理器时的各有关交换开关的控制状态。解答:8 个处理器的三级混洗交换网络及其交换开关控制状态设置如下图所示:
展开阅读全文