计算机系统结构第1-8章部分作业答案

第一章

1.6 某台主频为400MHz的计算机执行标准测试程序,程序中指令类型、执行数量和平均时钟周期数如下:

指令类型 整数 数据传送 浮点 分支 指令执行数量 45000 75000 8000 1500 平均时钟周期数 1 2 4 2 求该计算机的有效CPI、MIPS和程序执行时间。 解:(1)CPI =(45000×1+75000×2+8000×4+1500×2) / 129500=1.776 (或

460) 259(2)MIPS速率=f/ CPI =400/1.776 =225.225MIPS (或

5180MIPS) 259(3)程序执行时间= (45000×1+75000×2+8000×4+1500×2)/400=575?s

1.9 假设某应用程序中有4类操作,通过改进,各操作获得不同的性能提高。具体数据如下表所示: 操作类型 操作1 操作2 操作3 操作4 程序中的数量 (百万条指令) 10 30 35 15 改进前的执行时间 (周期) 2 20 10 4 改进后的执行时间 (周期) 1 15 3 1 (1)改进后,各类操作的加速比分别是多少?

(2)各类操作单独改进后,程序获得的加速比分别是多少? (3)4类操作均改进后,整个程序的加速比是多少? 解:根据Amdahl定律Sn? 操作类型 操作1 操作2 操作3 操作4 各类操作的指令条数在程序中所占的比例Fi 11.1% 33.3% 38.9% 16.7% 各类操作的加速比Si 2 1.33 3.33 4 各类操作单独改进后,程序获得的加速比 1.06 1.09 1.37 1.14 1Fe(1?Fe)?Se可得

4类操作均改进后,整个程序的加速比:

1Sn??2.16

Fi(1??Fi)??Si1.10 第二章

变长编码,哈夫曼编码

第三章

3.12 有一条指令流水线如下所示:

1 2 3 4

50ns 50ns 100ns 200ns

(1)求连续输入10条指令的情况下,该流水线的实际吞吐率和效率。

(2)该流水线的瓶颈在哪一段?请采用两种不同的措施消除此瓶颈。对于你所给出的两种新的流水线,连续输入10条指令时,其实际吞吐率和效率各是多少? 解:

(1)本题主要考察对各功能段用时不等的线性流水线的性能计算公式的掌握情况。

T流水???ti?(n?1)?tmaxi?1k?(50?50?100?200)?9?200 ?2200(ns)TP?nT流水k?1220(ns?1)

E?TP???ti?1ik?TP?4005??45.45% 411注意:对于公式不能死记硬背,需要充分理解,注意公式的适用条件。

(2)瓶颈在3、4段。

? 变成八级流水线(细分瓶颈段方法)

è?150nsk250ns3_150ns3_250ns4_150ns4_450ns3?

T流水???ti?(n?1)?tmaxi?1?50?8?9?50?850(ns)TP?nk

T流水?185(ns?1)

E?TP???tii?1k?TP?40010??58.82% 817? 重复设置瓶颈段方法

4-1 3-1 1 2 3-2 4-3 4-4 4-2 Stage4_44_34_24_13_23_12111223134452356671457889679101025891043697108Time850ns

TP?nT流水?185(ns?1)

E?400?10850?8?1017?58.82%

3.13 有一个流水线由4段组成,其中每当流过第三段时,总要在该段循环一次,然后才能流到第4段。如果每段经过一次所需的时间都是△t,问:

(1)当在流水线的输入端连续地每△t时间输入一个任务时,该流水线会发生什么情况? (2)此流水线的最大吞吐率为多少?如果每2△t输入一个任务,连续处理10个任务时,其实际吞吐率和效率是多少?

(3)当每段时间不变时,如何提高流水线的吞吐率?人连续处理10个任务时,其吞吐率提高多少? 解:

(1)会发生流水线阻塞情况。

(2)当任务流过第三段时要在该段循环一次,相当于要占用第三段2△t时间,则该流水线可看成是具有瓶颈段的线性流水线,瓶颈段即第三段,所需时间为2△t。每2△t输入一个任务,连续处理10个任务的时空图如下:

Stage43211121112322342334534456455675667867789788910899109101010Time23?t

则:

TPmax?T流水Tp?n12?t?23?tT流水?1023?t

E?TP?5?t?50?54.35I2

(3)重复设置部件。重复的部件可并联在流水线上,也可串联于流水线中。如下图所示: t 3_1 1 t 2 t 3_2 t 4 t

3_2t4t

1t2t3_1t

采用并联方式时的时空图如下:

Stage43_23_1211121232134123452435634567465785678968791078910810991010Time14?t

TP?nT流水 ?10?514??t7??t5107?t23?t吞吐率提高倍数==1.64

3.14 有一条静态多功能流水线由5段组成,加法用1、3、4、5段,乘法用1、2、5段,第3段的时间为2△t,其余各段的时间均为△t,而且流水线的输出可以直接返回输入端或暂存于相应的流水线寄存器中。现在该流水线上计算率、加速比和效率。

1

△t ?(Ai?14i?Bi),画出时空图,并计算其吞吐

△t 4 △t 5 2△t 2 △t 3

联系客服:779662525#qq.com(#替换为@)