您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 质量控制/管理 > 计算机系统结构计算题
计算题用一条4段浮点加法器流水线求8个浮点数的和:Z=A+B+C+D+E+F+G+H解:Z=[(A+B)+(C+D)]+[(E+F)+(G+H)]例设在下图所示的静态流水线上计算:流水线的输出可以直接返回输入端或暂存于相应的流水寄存器中,试计算其吞吐率、加速比和效率。空间周期123456789101112131415规格化1234567尾数加1234567对阶1234567求阶差1234567时间加数ACEGA+BE+FA+B+C+D加数BDFHC+DG+HE+F+G+H结果A+BC+DE+Fg+HA+B+C+DZE+F+G+H用一条4段浮点加法器流水线求8个数之和的流水线时空图7个浮点加法共用了15个时钟周期。流水线的吞吐率为:TPnTttk7150471流水线的加速比为:STTttk04715187流水线的效率为:ETkTttk04741504712345乘法加减法678时间段123456780123456789101112131415161718输入A1B1A2B2A3B3A4B4ABCDABCDA×BC×DA×BC×DA×B×C×DA=A1+B1B=A2+B2C=A3+B3D=A4+B4(3)计算性能在18个△t时间中,给出了7个结果。吞吐率为:不用流水线,由于一次求和需6△t,一次求积需4△t,则产生上述7个结果共需(4×6+3×4)△t=36△t加速比为流水线的效率例有一条动态多功能流水线由5段组成,加法用1、3、4、5段,乘法用1、2、5段,第2段的时间为2△t,其余各段时间均为△t,而且流水线的输出可以直接返回输入端或暂存于相应的流水寄存器中。若在该流水线上计算:试计算其吞吐率、加速比和效率。(1)选择适合于流水线工作的算法应先计算A1×B1、A2×B2、A3×B3和A4×B4;再计算(A1×B1)+(A2×B2)(A3×B3)+(A4×B4);然后求总的累加结果。(2)画出时空图(3)计算性能非线性流水线例5.3:一条4功能段的非线性流水线,每个功能段的延迟时间都相等,它的预约表如下:(1)写出流水线的禁止向量和初始冲突向量。tTP18721836ttS25.01884364E12345乘法加法△t2△t△t△t△t时间段1234501234567891011121314151617输入A1B1A2B2A3B3A4B4ABCDABCDA+BC+DA+BC+DA+B+C+DA=A1×B1B=A2×B2C=A3×B3D=A4×B418tTP18756.11828ttS31.01854344E(2)画出调度流水线的状态图。(3)求最小启动循环和最小平均启动距离。(4)求平均启动距离最小的恒定循环。解:(1)禁止向量为:(2,4,6)初始冲突向量:S=101010(2)构造状态图S逻辑右移2、4、6位时,不作任何处理,逻辑右移1、3、5和大于等于7时:S右移1位之后:010101∨101010=111111,S右移3位之后:000101∨101010=101111,S右移5位之后:000001∨101010=101011,S右移7位或大于7位后:还原到它本身。101111右移5位之后:000001∨101010=101011,101011右移3位之后:000101∨101010=101111,101011右移5位之后:000001∨101010=101011。简单循环:状态图中各种冲突向量只经过一次的启动循环。(3)最小的启动循环为(1,7)和(3,5),平均启动距离为4。(4)启动距离最小的恒定循环为(5)时间功能段1234567S1XXS2XXS3XXS4X7*1010107*1537*7*111111101111531010115非线性流水线的状态图向量链接练习题加法需6拍,相乘需7拍,从存储器读数需6拍,求倒数近似值需14拍,打入寄存器及启动功能部件(包括寄存器)各需1拍。解:(1)V0←存储器V1←V2+V3V4←V5*V6三条指令可并行执行,所需时间为执行时间最长的指令的执行时间:(1+7+1)+(32-1)=402)V2←V0+V1V3←存储器V4←V2*V3指令1、指令2并行执行并与指令3链接,所需时间为(1+6+1)+(1+7+1)+(32-1)=48(3)V0←存储器V3←V1+V2V4←V0*V3V6←V4+V5指令1、指令2并行执行并与指令3链接,指令4与指令2存在功能部件冲突,需等待前一流水链完成之后执行,所需时间为(1+6+1)+(1+7+1)+(32-1)+(1+6+1)+(32-1)=87(4)V0←存储器V1←1/V0V3←V1+V2V5←V3*V44条指令相链接,所需时间为(1+6+1)+(1+14+1)+(1+6+1)+(1+7+1)+(32-1)=72(5)V0←存储器V1←V2+V3V4←V5*V6s0←s1+s2前3条指令并行执行,最后一条与指令2存在功能部件冲突,所需时间为(1+7+1)+(32-1)+(1+6+1)=48(6)V3←存储器简单循环平均启动距离(1,7)4(3,7)5(5,7)6(3,5,7)5(5,3,7)5(3,5)4(5)5(7)7V2←V0+V1s0←s2+s3V3←V1*V4前2条指令并行执行,后2条指令并行执行,所需时间为(1+6+1)+(32-1)+(1+7+1)+(32-1)=79(7)V3←存储器V2←V0+V1V4←V2*V3存储器←V4前2条指令执行,再与第3条相链接,此流水链与第4条指令存在功能部件冲突,所需时间为(1+6+1)+(1+7+1)+(32-1)+(1+6+1)+(32-1)=87(8)V0←存储器V2←V0+V1V3←V2*V1V5←V3*V4前2条指令相链接,此流水链与第3条指令存在寄存器冲突,第3条指令与第4条指令存在功能部件冲突,所需时间为(1+6+1)+(1+6+1)+(32-1)+(1+7+1)+(32-1)+(1+7+1)+(32-1)=127在Cray1机上,按链接方式执行下面4条向量指令(括号中给出相应功能部件时间),如果向量寄存器和功能部件之间的数据传输需要1拍,试求此链接流水线的流过时间为多少拍?如果向量长度为64,则需要多少拍能得到全部结果。V0←存储器(存储器取数:7拍)V2←V0+V1(向量加:3拍)V3←V2A3(按照A3左移:4拍)V5←V3∧V4(向量逻辑乘:2拍)解:流水线经过时间为(1+7+1)+(1+3+1)+(1+4+1)+(1+2+1)=24。如果向量长度为64,则需24+(64-1)=87拍能得到全部结果。
本文标题:计算机系统结构计算题
链接地址:https://www.777doc.com/doc-5263360 .html