计算机系统结构 第四章

上传人:鲁** 文档编号:499084704 上传时间:2023-10-03 格式:DOCX 页数:18 大小:183.73KB
返回 下载 相关 举报
计算机系统结构 第四章_第1页
第1页 / 共18页
计算机系统结构 第四章_第2页
第2页 / 共18页
计算机系统结构 第四章_第3页
第3页 / 共18页
计算机系统结构 第四章_第4页
第4页 / 共18页
计算机系统结构 第四章_第5页
第5页 / 共18页
点击查看更多>>
资源描述

《计算机系统结构 第四章》由会员分享,可在线阅读,更多相关《计算机系统结构 第四章(18页珍藏版)》请在金锄头文库上搜索。

1、1. 假设一条指令的执行过程分为“取指令”、“分析”和“执行”三段,每一段的时间分别是2t和3厶。在下列各种情况下,分别写出连续执行n 条指令所需要的时间表达式。 顺序执行方式。 仅“取指令”和“执行”重叠。 “取指令”、“分析”和“执行”重叠。T=工(t +1+1) =n( t + 2At + 3A t) =6n At取址i 分析i 执行ii=1T = 6 At+ 艺(t+1 ) =6At + (n-1)(2 + 3A t) = (5n+l)At分析i 执行ii=1 “取指令”、“分析”和“执行”重叠 t 2t3At123412341234T = 6At + (t ) =6At +(n-l)

2、(3At) = (3n+3) 执行ii=12. 一条线性流水线有 4 个功能段组成,每个功能段的延迟时间都相等,都为t。开始5个任务,每间隔一个At向流水线输入一个任务,然后停顿2个厶t,如此重复。求流水线的实际吞吐率、加速比和效率。答:12345678910111213141512345678910111213141512345678910111213145123456789101112131451 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23我们可以看出,在(7n+1)At的时间内,可以输出5n个结果,如果指令的 序列足

3、够长(ng),并且指令间不存在相关,那么,吞吐率可以认为满足:TP = (n T g)(7n +1) At (7 + 1/n)At 7 At加速比为:g 5n x 4At20n2020 .S =(n T g)(7n + 1)At 7n +17 + 1/n7从上面的时空图很容易看出,效率为:5n x 4At5n 55E = (n T g)4 x (7n +1) At 7n +17 + 1/n73. 用一条5个功能段的浮点加法器流水线计算F仝A。每个功能段的延迟 i i=1时间均相等,流水线的输出端与输入端之间有直接数据通路,而且设置有足够的缓冲寄存器。要求用尽可能短的时间完成计算,画出流水线时空

4、图计算流水线的实际吞吐率、加速比和效率。首先需要考虑的是“10 个数的和最少需要做几次加法?”,我们可以发现,加法的次数是不能减少的:9 次;于是我们要尽可能快的完成任务,就只有考虑 如何让流水线尽可能充满,这需要消除前后指令之间的相关。由于加法满足交换 律和结合律,我们可以调整运算次序如以下的指令序列,我们把中间结果寄存器 称为R,源操作数寄存器称为A,最后结果寄存器称为F,并假设源操作数已经 在寄存器中,则指令如下:I1:R1A1+A2I2:R2A3+A4I3:R3A5+A6I4:R4A7+A8I5:R5A9+A10I6:R6R1+R2I7:R7R3+R4I8:R8R5+R6I9:FR7+

5、R8这并不是唯一可能的计算方法。假设功能段的延迟为A t。时空图如下(图中的数字是指令号):TP =0.4321 At7 AtAt加速比为:9 x 5At21 At15 u2.1429效率为:E=5=7 0.434. 一条线性静态多功能流水线由 6 个功能段组成,加法操作使用其中的 1、2、3、6 功能段,乘法操作使用其中的1、4、5、6 功能段,每个功能段的延迟时间均相等。流水线的输出端与输入端之间有直接数据通路,而且设置有足够的缓冲寄存器。用这条流水线计算向量点积Ax B = f a xb,画出流iii=0 水线时空图,计算流水线的实际吞吐率、加速比和效率。答:我们安排运算次序如下:把中间

6、结果寄存器称为R,源操作数寄存器称为A、B,最后结果寄存器称为F,并假设源操作数已经在寄存器中,则指令如下:I1:I2I3I4I5I6R0A0*B0R1A1*B1R2A2*B2R3A3*B3R4A4*B4R5A5*B5I8:R7-R0+R1I9:R8 -R2+R3I10:R9R4+R5I11:R10-R6+R7I12:R11一 R8+R9I13:FR10+R11I7:R6A6*B6假设功能段的延迟为At。时空图如下(图中的数字是指令号):12345678910回123456712345678910111213891011121312345671189101112131 2 3 4 5 6 7

7、8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24整个计算过程需要24 At,所以吞吐率为:tp亠0.5424AtAt加速比为效率为:7 x 4At + 6 x 4At24At=13 沁 2.174 x 13 At6 x 24At365. 一条有三个功能段的流水线如下图。每个功能段的延迟时间均相等,都为to其中功能段s2的输出要返回到它自己的输入端循环一次。输入 v| S? S2输出 S3 ttt如果每间隔一个At向流水线的输入端连续输入新任务,问这条流水线会发生什么情况? 求这条流水线能够正常工作的最大吞吐率、加速比和效率。 有什么办法能够提高这

8、条流水线的吞吐率,画出新的流水线。答: 如果每间隔一个At向流水线的输入端连续输入新任务,流水线S2功能段存 在资源冲突。见下表:时间功能段t1t2t3t4t5S1X1X2X3X4X5S2X1X1,X2X2 X3X3 X4S3X1X2每间隔两个At向流水线的输入端连续输入新任务(如见下表所示)可获得 最佳性能。时间 功能段t1t2t3t4t5t6S1X1X2X3S2X1X1X2X2X3S3X1X2我们可以看出:在(2n+2)At的时间内,可以输出n个结果,如果指令的序列足够长(ng),并且指令间不存在相关,那么,吞吐率为:TP = (2n + 2)At = (2 + 2/n)At =加速比为效

9、率为:n x 4At2n 2S (2n + 2) At n +11 + 1/n=2(n T g)nx4At2nE =3x (2n + 2)At 3n + 323 + 3/n=2(n T g)3如要提高这条流水线的吞吐率,可采用:将功能段S2重复设置一次,见下图:tttt6. 一条有 4 个功能段的非线性流水线,每个功能段的延迟时间都相等,都为20ns,它的预约表如下:时间 流水段1234567SiXXS2XXS3XS4XX 写出流水线的禁止向量和初始冲突向量。 画出调度流水线的状态图。 求流水线的最小启动循环和最小平均启动距离。 求平均启动距离最小的恒定循环。 求流水线的最大吞吐率。 按照最小

10、启动循环连续输入 10 个任务,求流水线的实际吞吐率 画出该流水线各功能段之间的连接图。答:禁止向量F= (6,4,2);冲突向量C= (101010)。简单循环平均启动距离1, 7 (C0-C1-C0)43, 7 (C0-C2-C0)55, 7 (C0-C3-C0)63, 5, 7 (C0-C2-C3-C0)53, 5 (C0-C2-C3-C2-C3)45, 3, 7 (C0-C3-C2-C0)55, 3 (C0-C3-C2-C3-C2)45 (C0-C3-C3)57 (CO-CO)7流水线的最小启动循环为:(1, 7)或(3, 5)或(5, 3),最小平均启动距 离为 4。由上表可知:平均

11、启动距离最小的恒定循环为(5)采用最小平均启动距离为 4 的最小启动循环可获得流水线的最大吞吐率,以1, 7)为例:(其他类似,最大吞吐率皆相同)2n当任务数为偶数 2n 时:TP =2 =丄 Tg)7At + n - At + (n -1) - 7At8nAt4At当任务数为奇数 2n+1 时:2n +12n +12 + 1/nTP = (n T g)7At + n - At + n - 7At 8nAt + 7At 8At + 7At/n 4At:流水线的最大吞吐率为:=12.5M(任务/ s)4At 4 x 20ns10个任务的实际吞吐率:利用上式可得(偶数个任务)TP10=1/4At=

12、12.5M(任 务/s)。该流水线的连接图为:输出输入t S2 S3 S47. 一条由 4 个功能段组成的非线性流水线的预约表如下,每个功能段的延迟时间都为 10ns。时间 流水段123456S1XX答画出调度流水线的状态图。 求流水线的最小启动循环和最小平均启动距离。 在流水线中插入一个非计算延迟功能段后,求该流水线的最佳启动循环及其 最小平均启动距离。画出插入一个非计算延迟功能段后的流水线预约表(5 行 8 列)。 画出插入一个非计算延迟功能段后的流水线状态变换图。 分别计算在插入一个非计算延迟功能段前、后的最大吞吐率。 如果连续输入10 个任务,分别计算在插入一个非计算延迟功能段前、后的 实际吞吐率。禁止向量F= (5,2,1);冲突向量C= (10011)。

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 学术论文 > 其它学术论文

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号