文档详情

计算机系统结构习题解答

仙***
实名认证
店铺
DOC
182.50KB
约15页
文档ID:160897448
计算机系统结构习题解答_第1页
1/15

《计算机系统结构》部分习题参考答案1.2 解:这儿要注意的是第一级是最低的级别,而不是最高的级别 第二级:NKns 第三级:N2Kns 第四级:N3Kns1.4 解:第二级:N/M ks 第三级:(N/M)2 ks 第四级:(N/M)3 ks1.6 解:计算机系统结构:是从系统结构设计者的角度看到的系统特性及功能视图,它对计算机组成提出了明确的功能需求和设计目标 计算机组成:计算机系统结构的逻辑实现 计算机实现:计算机组成的物理实现例:对于同样系统结构的IBM系列机,人们为了提高性能,加入了通道、外围处理机、先行控制、流水线等而对于组成相仿的两类计算机,器件的集成度、布局等物理实现又可能不同1.8 解:对汇编语言程序员而言透明的有: 指令缓冲器、时标发生器、乘法器、先行进位链、移位器1.11 解:系列机是指由同一厂家生产并具有相同系统结构的计算机,但具有不同的计算机组成与实现 可行:(1) (3) (4) (6) (7) 不可行:(2) (5) (8)1.17 解:Sn = 1/((1 – Fe) + Fe/Se) = 1/((1 – 0.9) + 0.9/5) = 3.571.19 解:CPI=∑CPIi×[Ii/Ic]=45000/105+(32000×2)/105+(15000×2)/105+(8000×2)/105=1.55 MIPS = (40 × 106)/(1.55 × 106) = 25.8MIPS Te = 105/(25.8 × 106) = 3.88ms1.24 解:CPI = 1,则有:T未 = IC × CPI × T(1 - 5%) = 0.95 IC×TT优=IC×CPI×T(1 - 30%)+IC×CPI×T×30%(1-1/3)=0.9 IC×T由于T优/T未 = 0.9/0.95 = 0.947所以,优化后的方案使计算机工作速度更快。

1.28 解:原始MFLOPS = 195578/(10.8×106)=0.018 正则化后MFLOPS =195578/(13.6×106)=0.014 指令正则化后的具体值 = f/CPI = 16.6M/(6×106)= 2.772.2 解: 1) 最大尾数:1-16 - 6 2) 最小正尾数:16-1 3) 最小尾数:-(1-16 - 6) 4) 最大负尾数:-16 -1 5) 最大阶码:26-1 6) 最小阶码: -2 6 7) 最大正数: (1-16-6)* 16 64 8) 最小正数:16-1 * 16-64 9) 最大负数:-16-1*16-64 10) 最小负数:-(1-16 - 6)*1664+1 11) 浮点零:0 12) 表数精度:1/2×16-(6-1) 13) 表数效率:15/16 14) 能表示的规格数浮点数个数:2×15×165×2×26+12.3 解:1) 最大正数:2127(2-2-23)2)2) 最小正数:2-126.2-23=2-1493) 最大负数:-2-1494) 最小负数:-2128(1-2-24)5) 表数精度:2-236) 表数效率:99.6%2.5 解:1) 设计浮点数的格式:2-P=10-7..2 P=-log2 10 -7.2=7.2×log2 10尾数为24位,阶码为7+1位。

2) 计算:① ①    最大正数:2128 = 3.4×1038 ② ②    最大负数:-2-127×224=-3.5×10-46③ ③    表数精度:1/2×2-23=2-24=10-7..22④ ④    表数效率:50%2.6 解:1)    0.2的两种表示:IBM: 0 000 0000 0011 0011 0011 0011 0011 0011IEEE: 0 01111101 <1>10011001100110011001100 2) 转换规则:① ①          找出尾数中首位为1的第K位(二进制,尾数);② ②          尾数左移k位,移出部分丢掉,右边添加0;③ ③          e2=4e1-125-k④ ④          s2=s13)转换规则:① ①  e1=(e2-127)/4;② ②  e1=e1+63;③ ③  k=4e1-e2+127;④ ④  右移K位,将0.m1转化为16进制2.9 解:1) 舍入方法为:上舍下入2) 警戒位位数:1位3) 在正数区的误差范围:-2-p-1(1-2-q+1) ~ 2-p-1 2.10 解:要点:指令数由256减少到64,减少了两位指令码。

在A处理机中所占的空间为: MA = 1000*32 + (1000*2*32)/8 = 40000bit 在B处理机中所占的空间:39000bit MB = 1000*30 + (1000*2*36)/8 = 39000bit 2.13 解:指令序号出现的概率Huffman编码法2/8扩展编码法3/7扩展编码法I10.25000000I20.20100101I30.15010100010I40.10110100111000I50.080110101011001I60.081110101111010I70.051111110011011I80.0401110110111100I90.03011110111011101I100.02011111111111101操作码平均长度2.993.13.2操作码冗余信息0.7%4.2%7.2%2.14 解:1) 操作码编码:I1 35% 0I2 25% 10I3 20% 110I4 10% 1110I5 5% 11110I6 3% 111110I7 2% 111111操作码平均长度:H=ΣPiLi=2.351) 2)    指令格式、各字段长度和操作码编码:可采用2/4扩展法编码,3条RR指令(I1,I2,I3)的操作码为2位,四条指令(I4 I5 I6 I7)的操作码长为4位,则:8位操作码的指令格式OpR1R2233其中:Op为00,01,1016位操作码的指令格式OpR1MR24381其中,Op为1100,1101,1110,1111 2.15 解:1) 单地址指令条数为63 零地址指令条数64 操作码分别为: 双址:0000 ~1110 单地址:1111 000000 。

1111 111110 零地址:1111 111111 000000 1111 111111 1111112) 3)    首先,从题意可得:(16-x) :63x = 1 :9所以,x = 2 操作码分别为: 双址:0000-1110(共14条) 单地址:1110 0000000 …….. 1111111 1111 0000000 …….. 1111111 (共126条) 零地址:1110 111111 000000 111111 1111 111111 000000 111111(共126条)2.16 解:2) 处理器1:条数最少,但指令字最长,存储空间较大,速度最慢。

处理器2:条数比上多一些,但字长稍短,空间占用差不多速度较慢处理器3:条数最多,但指令字长较短,但总空间占用可能最大, 速度高处理器4:条数与一地址相当,虽指令字长短,但总的空间占用可能最大,速度最慢处理器5:指令条数较少,字长比一般二地址系统短的多存储空间少,速度高3) 2地址、3地址、1地址、二地址多累加器指令系统、堆栈4) 二地址多累加器指令系统、1地址、3地址、2地址、堆栈 2.20 解:1) 1)      Start: Move AS,R1Move Num ,R2Move (R1),AD-AS(R1)Loop: INC R1 DEC R2 BGT Loop Move (R1)1AD-AS(R1)HALT NUM: N2) 2)      可节省的指令周期:99个3) 3)      Start:Move AS1,R1 Move NUM,R2 Move (R1),AD-AS(R1) INC R1 Loop: DEC R2 BGT Loop Move (R1), AD-AS(R1) INC R13.1题:(1) (1)   当S2>>S1时,平均价格接近C2。

2) (2)   ta = h*t1+(1-h)*t2(3) (3)   e = 1/[h+(1-h)r](4) (4)    (5) (5)   当r = 100时,h>0.99947(6) (6)   P134公式,H’ = (H+n-1)/n=(0.96+5D-1)/5D=0.99947计算得:D>15.05,取D=163.2题:(1) (1)   T=H1T1+(1-H1)H2T2+(1-H1)(1-H2)T3;(2) (2)   当s3>>s1且s3>>s2时,平均价格c约等于c33.3题:(1) (1)   t = ht1 + (1 – h)t2, 当cache为64k时,t = 0.7*20ns + (1-0.7)*200ns = 74ns;当cache=128k 时,t = 38ns;当cache=256k时,t=23.6ns(2) (2)   按照公式: cache=64k, c=0.2585美元/k字节; cache=128k, c=0.3152美元/k字节;cache=256k,c=0.4235美元/k字节(3) (3)   按等效访问时间由小到大排序,容量分别为: 256k,128k,64k按每字节平均价格由小到大排序,分别为:64k, 128k, 256k(4) (4)   ①19.129 ns.美元/k字节;②11.9776 ns.美元/k字节;③ 9.9946 ns.美元/k字节;选256k的cache最优3.7题: 第(1)小题解答: 方式一、体号:4位;体内地址:20位; 方式二、存贮地址:20位;多路选择器:4位; 方式三、体内地址:20位;存储器体号:4位; 方式四、高位体号:1位;低位体号:3位;体内地址:20位; 方式五、高位体号:2位;低位体号:2位;体内地址:20位; 方式六、体内地址:20位;多路选择器:2位;低位体号:2位;  第(2)小题 ①扩大容量; ②比较简单; ③速度比较快; ④速度快,容量大; ⑤速度快,容量大; ⑥提高速度 第(3)小题 ① 1; ② 16; ③ 接近16; ④ 接近8; ⑤ 接近4; ⑥ 接近163.9题:(1) (1)  两级页表g=[log2(Nv/Np)/log2(Np/4)]=[20/10]=2(参考P157的公式)(2) (2)  一级页表:1个;二级页表:1024个;(3) (3)  一级页表在主存当中,二级页表只有部分在主存,大部分在辅存当中;3.11题:(1) (1)       页面失效地址:[2048,3071],[4096,5119],[6144,7167]。

故页面失效的操作为:2,3,6,10(2) (2)       访问主存的物理地址为:1:2252(=2*1024+124+30+50);4:740;5:1692;7:3728;8:2508;9:1152 (3)       无(注意RW标志位)(4)       非法操作为:3(Page Fault),4(Access mode),5(Access Mode),7(Access Mode),10(Access mode) 3.12题:(1) (1)     用户号:6位,虚页号:10位,页内偏移地址:12位(2) (2)     实页号:11位,页内偏移地址:12位;(3) (3)     快表字长:27位;其中,多用户虚页号:16位,实页号:11位(4) (4)     慢表容量:64k个存储字(26+10),每个字长:装入位1位+实页号11位=12  3.13题:(1)     多用户虚地址:用户号-8位;虚页号-12位;页内偏移地址-10位;实地址格式:实页号-14位;页内偏移-10位;问题实质:(用户号-8位;虚页号-12位)->(实页号:14位)(2)  输入位:20(8+12);输出位:5;(3)  相等比较电路的位数:20;(4)  快表存储字长度:68位,每组分为:多用户虚页号:20位;实页号:14位;注意:有2套独立的比较电路。

5)  画图3.15题:(1)  最高页面命中率为:58.3%(OPT方法,7/12)(2)  最少分配4个页面(3)  存储单元命中率为:H=(1024*12-5)/(1024*12)= 99.96% 3.16题:(1) (1)       2个主存页面,页面大小为1024;实际字节地址流为:48,160,1040,1120,3200,2000,2240,2400,4400,4800,4000对应的页流:p1 p1 p2 p2 p1 p4 p2 p3 p3 p5 p5 p4页地址流为:p1 p1 p2 p2 p1 p4 p2 p3 p3 p5 p5 p4 入 中 入 中 中 替 中 替 中 替 中 替命中率:6/12=50%(2) 页面大小为512字节时,共有4个页面页地址流为:p1 p1 p2 p3 p2 p7 p4 p5 p5 p9 p10 p8变化过程: p1 p1 p1 p1 p1 p1 p2 p3 p3 p7 p4 p5 p2 p2 p2 p2 p3 p7 p7 p4 p5 p9 p3 p3 p3 p7 p4 p4 p5 p9 p10 p7 p4 p5 p5 p9 p10 p8命中情况: x 中 x x 中 x x x 中 x x x 命中率:3/12=25% (3)主页面=1,页面大小为2048页地址流: p1 p1 p1 p1 p1 p2 p1 p2 p2 p3 p3 p2命中情况: x x x x x x命中率:50%(1) (4)     当页面大小不大时,随着页面大小的增大,命中率升高,当页面大小继续增加时,命中率反而降低。

2) (5)     页面大小:1024,主存容量:4096 ;分配4个页面页地址流:p1 p1 p2 p2 p2 p4 p4 p3 p3 p5 p5 p4变换过程:p1 p1 p1 p1 p2 p2 p2 p2 p4 p4 p4 p3 p3 p5 x x x x x命中率:7/12=58.5% 3.19 解:(1) 主存地址格式:区号E区内组号G组内块号B块内地址W1114(2) Cache地址格式:组号组内块号块内地址114 (3) 主存与Cache中各个块的映象对应关系:(4) Cache的块地址流情况:B6 B2 B4 B1 B4 B6 B3 B0 B4 B5 B7 B3C2 C3 C0 C1 C0 C2 C3 C1 C0 C1 C2 C3(5) FIFO中Cache的块命中率:3/12=25%(6) LFU中Cache的块命中率:4/12=33.3%(7) 改为全相联映象后:FIFO中块命中率: 4/12=33.3% LFU中块命中率: 3/12=25%(8) 这时Cache的命中率:1-8/(16×12)=95.8% 3.20 解:(1) 主存 8×8=64MB,每个存储体为8M/16K=512区,每区16K/(32×4)=128组。

区号:9位,组号:7位,组内块号:2位,偏移地址:5位,存储体号:3位(2) Cache中每块32Byte,共16K/32=512块,512/4=128组组号:7位,组内块号:2位,块内偏移:5位3) 相联目录表共有128行4) 相联目录表如下:19 2 1 19 2 1 19 2 1E,B1beE,B2be……E,B8be其中,(E,B)表示区号和区内组号,b表示组内块号,e表示有效位5) 比较电路的位数:19(其中1为为有效位标志)(6) P181 图3.46 3.23 解: Cache等效访问时间 T = H×Tc + (1 – H) Tm(1) 增大主存容量,不影响T;(2) 提高主存速度,将减小Tm,从而将减小Cache等效访问时间T,提高Cache系统的加速比;(3) 增大Cache容量,将提高命中率H,在Cache容量较小时,H提高较快,从而将减小Cache等效访问时间T;在Cache容量较大后,H的提高将减慢,对T的影响也随之减弱;(4) 提高Cache速度将减小Tc,从而减小等效访问时间T;(5) H与块大小B的关系是:开始时将随着B的增大而使H增大,当达到峰值后,又随着B的增大而使H减小。

因此,当B较小时,随着B的增大而使T减小;当B增大到一定数值时,随着B的增大而使T也增大6) 增大组的大小(即减少组数),对组相联映象来说,将提高H当组数不大时,减少组数,H的提高不明显,对T的影响也不大;当组数超过一定数量后,H的上升很快,将使T减小;(7) 增加组数,将使H降低,从而使T增大;(8) 由于LFU比FIFO更有效,因而H相对会提高,从而使T减小4.4 解:原题表述有错1”表示被屏蔽,“0”表示开放1) 正常中断屏蔽码:响应:D1 D2 D3 D4 D5处理:D1 D2 D3 D4 D5(2) 修改后:响应:D1 D2 D3 D4 D5处理:D4 D5 D3 D2 D1(3) 处理示意图:中断请求:D1 D2 D3 D4 D5(4) 处理示意图:中断请求:D3 D4 D5 D1 D24.6 解:(1) (1) 至少需要3位中断屏蔽码(2) (2) 中断响应次序:D1 D2 D3 D4 D5中断处理次序:D3 D4 D2 D5 D1(3) (3) 中断处理示意图: 4.8 解:(1) (1)  fByte = (1/10 + 1/75 + 1/15 + 1/50) MB/S = 0.2 MB/St = 1/fByte = 5us/Byte(2) (2)  图示如下:(3) (3)  DEV1第一次完成服务请求的时刻为5us;DEV2第一次完成服务请求的时刻大于145us;DEV3第一次完成服务请求的时刻为20us;DEV4第一次完成服务请求的时刻为40us;(4) (4)  不能。

5) (5)  有三种方法:① ①  增加通道的最大流量;② ②  动态改变设备的优先级;③ ③  增加一定数量的数据缓冲器 第五章 作业标准答案5.3(1) (1)              6n*Δt(2) (2)              6t + (n-1)5t = (5n+1)Δt(3) (3)              6t + (n-1)3t = 3(n+1)Δt(4) (4)              3*(n+1)Δt, 约为3nΔt5.5解:会发生WR操作数相关,WW操作数相关,且都为通用寄存器数据相关WR: k: ADD R1, R2; R1←(R1)+(R2) K+1: ADD R3, R1; R3←(R3)+(R1) 相关发生原因:设每段时间长度都为1, 假设n时刻开始取k指令,则n+3时刻开始将数据写回到R1;在n+1时刻,开始取k+1指令,此时需要读取R1中数据,因此将产生“先写后读”数据相关WW:k: MUL R1, R2; R1←(R1)×(R2) K+1: ADD R1, R3; R1←(R2)+(R1) 相关发生原因:假设n时刻开始取k指令,则n+5时刻开始将数据写回到R1;在n+1时刻,开始取k+1指令,在n+4时刻就开始将数据写回R1,产生“写-写”数据相关。

解决方法:(1)延迟执行; (2)建立专用路径5.6 (1) (1) 可能有:先写后读(RAW)相关;写-写(WAW)相关(2) (2) 会引起流水线停顿的相关有:先写后读相关; (3) (3) 时空图:(共用了9 个时钟周期)部件:ADD3        ADD3ADD2     ADD2   ADD1    ADD1    MUL4       MUL4 MUL3      MUL3  MUL2     MUL2   MUL1    MUL1    MOV2   MOV2     MOV1  MOV1      译码 译码K译码K+1译码K+2     取指取指K取指K+1取指K+2      1 2 3 4 5 6 7 8 95.7解:时空图如下通过时空图可分析得,完成5n个任务需要的时间为 (7n+1)Δt,所以实际吞吐率为: 如果不使用流水线,完成5n个任务需要的时间为 5n*4*Δt,即20nΔt,所以加速比为:效率为: n→∞时:5.8浮点数加法的流水线分为5段:输入,求阶差,对阶,尾数加,规格化。

可将原来的求和算式分为以下9步:1:A1+A2; 2:A3+A4; 3:A5+A6; 4:A7+A8; 5:A9+A10;6:(A1+A2)+( A3+A4); 7:(A5+A6)+( A7+A8);8:[(A1+A2)+( A3+A4)]+( A9+A10);9:[(A1+A2)+( A3+A4)+( A9+A10)]+[ (A5+A6)+( A7+A8)];时空图:规格化    12345 6 7  8    9尾数加   12345 6 7  8    9 对阶  12345 6 7  8    9  求阶差 12345 6 7  8    9   输入12345 6 7  8    9    1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21流水线性能分析:吞吐量: TP=9/21Δt =0.429/Δt加速比: S=9*5*Δt/(21Δt)=2.143效 率:E=S/5=0.4295.9可将原来的求和算式分为以下11步:1、A1*B1; 2、A2*B2; 3、A3*B3; 4、A4*B4; 5、A5*B5; 6、A6*B6;7、(A1*B1)+( A2*B2); 8、 (A3*B3)+( A4*B4);9、(A5*B5)+( A6*B6);10、[(A1*B1)+( A2*B2)]+[ (A3*B3)+( A4*B4)];11、{[(A1*B1)+( A2*B2)]+[ (A3*B3)+( A4*B4)]}+[ (A5*B5)+( A6*B6)];时空图:S6   123456   789  10   11S5  123456              S4 123456               S3           789  10   11 S2          789  10   11  S1123456   789  10   11   1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22流水线性能分析:吞吐量: TP=11/22t =0.5/Δt加速比: S=11*4*Δt/(22Δt)=2效率:E=S/6=1/35.10(1)、冲突(2)、TP=1/2△t, S = 2 , Emax=2/3;(3)、变成S1S2aS2bS3 改进后:Tp=1/△t, S = 4, Emax=15.12(1)、答:禁止向量是(1,2,4),(注:禁止向量是由所有禁止启动距离组合构成的一个数列)初始冲突向量是:1011 调度状态图:(2)、由状态图可知,最小启动循环为3,最小平均启动距离为3(3)、由预约表可知,每行均对应2个’x’,则最小平均启动距离为2,最佳启动循环为2(4)、插入非计算延迟功能段后的流水线连接图为预约表为:时间123456功能段S1X   ○XS2 X ○X S3  XX  延迟D1   X  D2    X (5)、答:禁止向量是(1,3,5)初始冲突向量是:10101调度状态图:(6)、改进前:TPmax =改进后:TPmax =改进的百分比:= 50%5.14(1)、线性流水线一一对应,非线性流水线不是一一对应,只要S1、S2和S3都通过至少两次以上。

3)、 12345S1×   ×S2 ××  S3 × × 5.15(有问题)(1)、禁止向量:(1,2,5) 初始冲突向量:10011(2)、调度流水线状态图:(3)、最小启动循环:3; 最小平均启动距离:3;(4)、最佳启动循环:(1,3); 最小平均启动距离:2;(5)、插入后的流水线预约表: 时间功能段1234567S1Χ    ΧΧS2 Χ ①Χ  S3  Χ    S4   ΧΧ  D1   Χ   (6)、(7)、插入前:1/(3*Δt); 插入后:1/(2*Δt)(8)、插入前:10/(33*Δt); 插入后:10/(24*Δt)15。

下载提示
相关文档
正为您匹配相似的精品文档