整理清华第2版《计算机系统结构》习题解答.docx
- 文档编号:27262584
- 上传时间:2023-06-28
- 格式:DOCX
- 页数:34
- 大小:300.51KB
整理清华第2版《计算机系统结构》习题解答.docx
《整理清华第2版《计算机系统结构》习题解答.docx》由会员分享,可在线阅读,更多相关《整理清华第2版《计算机系统结构》习题解答.docx(34页珍藏版)》请在冰豆网上搜索。
整理清华第2版《计算机系统结构》习题解答
《计算机系统结构》习题解答
第一章(P33)
1.7-1.9(透明性概念),1.12-1.18(Amdahl定律),1.19、1.21、1.24(CPI/MIPS)
第二章(P124)
2.3、2.5、2.6(浮点数性能),2.13、2.15(指令编码)
第三章(P202)
3.3(存储层次性能),3.5(并行主存系统),3.15-3.15加1题(堆栈模拟),3.19中(3)(4)(6)(8)问(地址映象/替换算法--实存状况图)
第四章(P250)
4.5(中断屏蔽字表/中断过程示意图),4.8(通道流量计算/通道时间图)
第五章(P343)
5.9(流水线性能/时空图),5.15(2种调度算法)
第六章(P391)
6.6(向量流水时间计算),6.10(Amdahl定律/MFLOPS)
第七章(P446)
7.3、7.29(互连函数计算),7.6-7.14(互连网性质),7.4、7.5、7.26(多级网寻径算法),7.27(寻径/选播算法)
第八章(P498)
8.12(SISD/SIMD算法)
第九章(P562)
9.18(SISD/多功能部件/SIMD/MIMD算法)
(注:
每章可选1-2个主要知识点,每个知识点可只选1题。
有下划线者为推荐的主要知识点。
)
第一章(P33)
1.7
(1)从指定角度来看,不必要了解的知识称为透明性概念。
(2)见下表,“√”为透明性概念,“P”表示相关课文页数。
模m交叉,√,
浮点数据,×,P4
通道与I/O处理机,×,P4
总线宽度,√,
阵列运算部件,√,
结合型与独立型通道,√,
单总线,√,
访问保护,×,
中断,×,
指令控制方式,√,
堆栈指令,×,
最小编址单位,×,
Cache存储器,√,
1.8见下表,“√”为透明性概念,“P”表示相关课文页数。
指令地址寄存器,×,
指令缓冲器,√,
时标发生器,√,
条件码寄存器,×,
乘法器,√,
主存地址寄存器,√,
磁盘,×,
先行进位链,√,
移位器,√,
通用寄存器,×,
中断字寄存器,×,
1.9见下表,“√”表示都透明,“应”表示仅对应用程序员透明,“×”表示都不透明。
数据通路宽度,√,
虚拟存储器,应,
Cache存储器,√,
程序状态字,×,
“启动I/O”指令,应,
“执行”指令,×,
指令缓冲寄存器,√,
Sn
20
1
01Fe
1.12已知Se=20,求作Fe-Sn关系曲线。
将Se代入Amdahl定律得
1.13上式中令Sn=2,解出Fe=10/19≈0.526
1.14上式中令Sn=10,解出Fe=18/19≈0.947
1.15已知两种方法可使性能得到相同的提高,问哪一种方法更好。
(1)用硬件组方法,已知Se=40,Fe=0.7,解出Sn=40/12.7≈3.1496(两种方法得到的相同性能)
(2)用软件组方法,已知Se=20,Sn=40/12.7,解出Fe=27.3/38≈0.7184(第二种方法的百分比)
(3)结论:
软件组方法更好。
因为硬件组需要将Se再提高100%(20→40),而软件组只需将Fe再提高1.84%(0.7→0.7184)。
1.17
1.18记f──时钟频率,T=1/f──时钟周期,B──带宽(Byte/s)。
方案一:
方案二:
1.19由各种指令条数可以得到总条数,以及各百分比,然后代公式计算。
(1)
(2)
(3)
1.21
(1)
(2)
1.24记Tc──新方案时钟周期,已知CPI=CPIi=1
原时间=CPI×IC×0.95Tc=0.95IC×Tc
新时间=(0.3×2/3+0.7)×IC×Tc=0.9IC×Tc
二者比较,新时间较短。
第二章(P124)
2.3(忽略P124倒1行~P125第8行文字,以简化题意)已知2种浮点数,求性能指标。
此题关键是分析阶码、尾数各自的最大值、最小值。
原图为数据在内存中的格式,阶码的小数点在其右端,尾数的小数点在其左端,遵守规格化要求。
由于尾数均为原码,原码的绝对值与符号位无关,所以最大正数与最小负数的绝对值相同,可用“±最大绝对值”回答;最小正数与最大负数的绝对值相同,可用“±最小绝对值”回答。
第1小问中,阶码全部位数为8,作无符号数看待真值为0~255,作移-127码看待真值为-127~+128;尾数(不计符号位)有23位小数,另加1位整数隐藏位,所以尾数绝对值为1.0~2.0–2-23,有效位数p=24;
第2小问中,阶码全部位数为11,作无符号数看待真值为0~2047,作移-1023码看待真值为-1023~+1024;尾数(不计符号位)有52位小数,另加1位整数隐藏位,所以尾数绝对值为1.0~2.0–2-52,有效位数p=53。
最大绝对值为最大阶码与最大尾数绝对值的组合,最小绝对值为最小阶码与最小尾数绝对值的组合。
代入相关公式后得最终结果如下表。
32位
64位
±最大绝对值
±(1-2-24)·2129
±(1-2-53)·21025
±最小绝对值
±2-127
±2-1023
表数精度δ
2-24
2-53
表数效率η
100%
100%
2.5
(1)rm=2,re=2,p=24(隐藏最高位),q=7。
(2)Nmax=1.7×1038,-|N|min=-1.47×10-39
δ≤5.96×10-8≈10-7.22,η=100%
2.6
1位
7位
6位
0
0111111
333333
(1)0.2=0.333333H×160
设阶码为移-63码(即-26+1,原题未指明)
0.2=0.110011001100110011001101B×2-2
1位
8位
23位
0
01111101
10011001100110011001101
(其中最高有效位需隐藏)
阶码为移-127码(即-27+1)
(2)符号位不变,(阶码–63)×4+127;尾数左规,除去最高位;
(3)符号位不变,(阶码–127)/4+63;尾数补最高位,按除法余数右移若干位,左补0。
2.13已知10条指令使用频度,求3种编码方法的平均码长与信息冗余量。
(1)此问中的“最优Huffman编码法”实际是指码长下限,即信源的平均信息量──熵,代公式得H=2.9566。
(2)Huffman编码性能如下表;
(3)2/8扩展编码是8/64/512法的变种,第一组2条指令,码长为2(1位扩展标志,1位编码),第二组8条指令,码长为4(1位扩展标志,与第一组区别,加3位编码),编码性能如下表;
(4)3/7扩展编码是15/15/15法的变种,第一组3条指令,码长为2(共有4种组合,其中3种组合分别代表3条指令,留1种组合作为扩展前缀标志),第二组7条指令,码长为5(2位固定的前缀扩展标志,与第一组区别,加3位编码,只用其中7种组合),编码性能如下表。
Huffman编码
2/8扩展编码
3/7扩展编码
平均码长L
2.99
3.1
3.2
信息冗余量R
1.10%
4.61%
7.59%
2.15
(1)15条/63条/64条
(2)14条/126条/128条
第三章(P202)
3.3直接代公式计算存储层次性能指标。
(1)74ns,38ns,23.6ns
(2)0.258,0.315,0.424
(3)T256K c256K>c128K>c64K (4)19.092,11.97,10.0064。 答案是256K方案最优。 3.5已知 ,其中g=0.1 依题意有 整理得0.9n≥0.2,解出 ,向下取整,得15; 按另一种题意理解是向上取整,得16,也对。 3.15欲知可能的最高命中率及所需的最少主存页数,较好的办法是通过“堆栈模拟法”,求得命中次数随主存页数变化的函数关系。 下图就是“堆栈模拟图”,其中“√”表示命中。 P= 4 5 3 2 5 1 3 2 3 5 1 3 命中次数 4 5 3 2 5 1 3 2 3 5 1 3 4 5 3 2 5 1 3 2 3 5 1 4 5 3 2 5 1 1 2 3 5 4 4 3 2 5 5 1 2 2 4 4 4 4 4 4 4 n=1 0 n=2 √ 1 n=3 √ √ √ 3 n=4 √ √ √ √ √ √ √ 7 n=5 √ √ √ √ √ √ √ 7 (1)Hmax=7/12≈58.3% (2)n=4 (3)当1次页面访问代表连续1024次该页内存储单元访问时,后1023次单元访问肯定是命中的,而第1次单元访问的命中情况与这1次页面访问的命中情况相同。 根据上图中最高命中情况,共有7次页命中(折算为7×1024次单元命中),5次页不命中(折算为5×1023次单元命中,也可写为5×1024-5),单元访问总次数为12×1024,故有: Hcell=(12×1024-5)/(12×1024)=12283/12288≈99.96% 3.15加1题一个二级存储层次,采用全相联映象和最久没有使用算法,实存共5页,为2道程序分享,页地址流分别如下 P1=12341321 P2=12342233 试作2个实存分配方案,分别使2道程序满足 (1)命中率相同; (2)命中次数之和最大。 P1= 1 2 3 4 1 3 2 1 命中次数N (1) 1 2 3 4 1 3 2 1 1 2 3 4 1 3 2 1 2 3 4 1 3 1 2 2 4 4 n1=1 0 n1=2 0 n1=3 √ √ 2 n1=4 √ √ √ √ 4 解: 分别为2道程序作“堆栈模拟图”,其中“√”表示命中。 P2= 1 2 3 4 2 2 3 3 命中次数N (2) 1 2 3 4 2 2 3 3 1 2 3 4 4 2 2 1 2 3 3 4 4 1 1 三、环境影响的经济损益分析1 (4)预防或者减轻不良环境影响的对策和措施的合理性和有效性;1 (2)疾病成本法与人力资本法1 3.完整性原则; 规划编制单位应当在报送审查的环境影响报告书中附具对公众意见采纳与不采纳情况及其理由的说明。 一、环境影响评价的发展与管理体系、相关法律法规体系和技术导则的应用 (3)评价单元划分应考虑安全预评价的特点,以自然条件、基本工艺条件、危险、有害因素分布及状况便于实施评价为原则进行。 n2=1 1.规划环境影响评价的技术依据 2)购买环境替代品。 在可行性研究时应进行安全预评价的建设项目有: √ √ 2 n2=2 √ √ 2 n2=3 √ √ √ √ 4 n2=4 √ √ √ √ 4 6 5N (1)+N (2) 4 3 2N (1)N (2) 1 1+42+33+24+1 将两图结果综合,得到4个分配方案的命中率情况表如下 n1 1 2 3 4 N (1) 0 0 2 4 n2 4 3 2 1 N (2) 4 4 2 2 N (1)+N (2) 4 4 4 6 结论如下 (1)命中率相同的方案是n1=3而n2=2; (2)命中次数之和最大的方案是n1=4而n2=1。 3.19中(3)(4)(6)(8)问 虚存实页0123 虚组000√√ 1实存1√√ 虚组12·0实组02√√ 3·1虚3√√ 虚组24·2实组1页4√√ 5·35√√ 虚组366√√ 77√√ (a)虚页集合与实页集合的对应关系(b)对应关系表(√为有关系) (3) (4)通过作“实存状况图”模拟各虚块的调度情况,可获得Cache的块地址流序列。 P= 6 2 4 1 4 6 3 0 4 5 7 3 C0 4 4* 4 4 4 4* 4 4* 4* 4* C1 1 1* 1* 1* 0 0* 5 5 5 C2 6 6* 6* 6* 6* 6 6* 6* 6* 6* 7 7* C3 2 2 2 2 2* 3 3 3 3 3* 3 入 入 入 入 中 中 替 替 中 替 替 中 C= 2 3 0 1 0 2 3 1 0 1 2 3 此问最容易出错的地方是忽略“组相联”地址约束,将虚页装错实组。 另外没有及时标注“*”号也容易导致淘汰对象错误。 (6)H=4/12≈33% (8)做法同3.15题(3)问,Hcell=(12×16-8)/(12×16)≈95.8% 第四章(P250) 时间中断请求主程序1级2级3级4级 D1,D2 D3,D4 4.5已知中断服务次序为3-2-4-1,。 (1)中断屏蔽字表如下图; D1 D2 D3 D4 D1 0 1 1 1 D2 0 0 1 0 D3 0 0 0 0 D4 0 1 1 0 (2)中断过程示意图如右图。 4.8 (1)f=2×105字节/秒,T=5us (2)Ts+Td=5us,通道时间图如下。 作图时注意: 至少要画到最慢设备的第二次请求出现,才能确定是否丢失数据(因为响应优先级低的设备较易丢失数据)。 设优 备先 号级 D11 D24 D32 D43 时间 (us)0102030405060708090100110120130140150160170 (3)5,160,20,40; (4)D2丢失第一次请求的数据; (5)参见P245。 第五章(P343) 5.9为了缩短运算时间,首先应考虑“最少切换算法”,即先执行完所有乘法(任务编号1-6)再执行加法(任务编号7-11),其次在加法中采用“最少相关算法”(即二叉树算法)。 记c1=A1×B1,……,c6=A6×B6,下图(a)是加法的计算顺序二叉树,注意任务10应该用前一级最早完成的任务7和8的结果,如果用任务9的结果则要推迟1拍启动,使总时间增加1拍。 F=c1+c2+c3+c4+c5+c661234567891011 5123456 7894123456 37891011 1027891011 11234567891011 1101234567891214151822 (a)(b) 根据时空图(b)得 TP=11/(22Δt)=1/(2Δt) S=(6×4Δt+5×4Δt)/(22Δt)=2 E=(6×4Δt+5×4Δt)/(6×22Δt)=1/3 5.15Δt=10ns=10-8秒 (1)F={1,2,5},C=(10011) (2)状态转移图如下图(a)所示。 (3)最小启动循环=(3),最小平均启动距离=3Δt。 (4)插入2个延迟,最小启动循环= (2),最小平均启动距离=2Δt。 (5)新预约表如下图(b)所示。 12345678初态4,6,≥8 S1×12× 初态3,4,≥6S2×1×1000101 S3×4,6,≥84,6,≥8 10011S41××25 D1×10101011000111 D2×25 (a)(b)(c) (6)F={1,3,7},C=(1000101),状态转移图如下图(c)所示。 (7)插入前TPmax=1/3Δt=1/30ns,插入后TPmax=1/2Δt=1/20ns。 (8)插入前TP=10/33Δt=1/33ns,插入后TP=10/26Δt=1/26ns,如下图所示。 S4112231010 S3123………10 S2112231010 S1121321010 3t (a)插入前9×36 D212311 D1123410 S4112233………1010 S3123410 S2121324351010 S112341521010 2t (b)插入后9×28 第六章(P391) 6.6(注意阅读P372倒数第9行-倒数第6行) (4)V0←存储器链接 V1←1/V0链接 V3←V1+V2链接 V5←V3*V4 访存 倒数 加 乘 8168931 总拍数=72(各条依次链接) (3)V0←存储器并行 V3←V1+V2链接 V4←V0*V3 V6←V4+V5串行 访存 加 乘 8931831 总拍数=87(第4条功能部件冲突) 已知n=32,k加=6,k乘=7,k访存=6,k倒数=14,启动、输出延迟各1。 求各小题总拍数。 (1)V0←存储器 V1←V2+V3并行 V4←V5*V6 访存 加 乘 931 总拍数=40(并行执行,以最长指令为准) (2)V2←V0*V1并行 V3←存储器 V4←V2+V3串行(P372) 乘 访存 加 931831 总拍数=79(第3条错过时机,不能链接) (5)V0←存储器 V1←V2+V3并行 V4←V5*V6 s0←s1+s2串行 访存 加 乘 9318 总拍数=48(标量看成1个分量的向量) (6)V3←存储器并行 V2←V0+V1串行 s0←s2+s3并行 V3←V1*V4 访存 加 乘 831931 总拍数=79(标量看成1个分量的向量) (7)V3←存储器并行 V2←V0+V1链接 V4←V2*V3 存储器←V4串行 访存 加 乘 8931831 总拍数=87(第4条功能部件冲突) (8)V0←存储器链接 V2←V0+V1 V3←V2*V1串行 V5←V3*V4串行 访存 加 乘 8831931931 总拍数=127(V1冲突,功能部件冲突) 6.10已知向量速率Rv=10MFLOPS,标量速率Rs=1MFLOPS,并记α为可向量化百分比。 (1)推导法1: 使用Amdahl定律,在这里可将标量速率Rs作为原速率,局部加速后的速率为向量速率Rv,于是局部加速比Se=10,全局加速比为 再根据加速比的定义, ,所以有 。 (若将向量速率Rv作为原速率,局部减速后的速率为标量速率Rs,则局部加速比Se=0.1,推出的全局加速比Sn同上式。 ) 推导法2: 为了推导,定义T为总时间,N为总任务数。 于是有平均速率Ra=吞吐率TP=N/T。 记N=Nv+Ns,且 ,则 ,于是有Nv=α·N和Ns=(1-α)·N 显然: 总时间 所以: 或者: Ra(MFLOPS) 10 1 01α (2)已知Rv=10MFLOPS,Rs=1MFLOPS, Ra与α的关系图如右图所示。 (3)已知Ra=7.5MFLOPS,解出 (4)已知Ra=2MFLOPS,α=0.7,解出 第七章(P446) 7.3已知输入端编号13=1101B。 (1)Cube3(1101B)=0101B=5 (2)PM2+3(13)=(13+23)mod16=21mod16=5 (3)PM2+0(13)=(13-20)mod16=12 (4)Shuffle(1101B)=1011B=11 (5)Shuffle(Shuffle(1101B))=Shuffle(1011B)=0111B=7 7.4用多级混洗―交换网
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机系统结构 整理 清华 计算机系统 结构 习题 解答
![提示](https://static.bdocx.com/images/bang_tan.gif)