ImageVerifierCode 换一换
格式:DOCX , 页数:23 ,大小:352.77KB ,
资源ID:3132087      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/3132087.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(计算机系统结构教程课后答案.docx)为本站会员(b****3)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

计算机系统结构教程课后答案.docx

1、计算机系统结构教程课后答案1.7 某台主频为400MHz的计算机执行标准测试程序,程序中指令类型、执行数量和平均时钟周期数如下:指令类型 指令执行数量 平均时钟周期数整数 45000 1数据传送 75000 2浮点 8000 4分支 1500 2求该计算机的有效CPI、MIPS和程序执行时间。解:(1)CPI (4500017500028000415002) / 1295001.776(2)MIPS速率f/ CPI 400/1.776 225.225MIPS(3)程序执行时间= (4500017500028000415002)400=575s1.9 将计算机系统中某一功能的处理速度加快10倍,

2、但该功能的处理时间仅为整个系统运行时间的40%,则采用此增强功能方法后,能使整个系统的性能提高多少?解:由题可知: 可改进比例Fe=40% = 0.4 部件加速比Se = 10根据 1.10 计算机系统中有三个部件可以改进,这三个部件的部件加速比为:部件加速比1=30; 部件加速比2=20; 部件加速比3=10(1) 如果部件1和部件2的可改进比例均为30%,那么当部件3的可改进比例为多少时,系统加速比才可以达到10?(2) 如果三个部件的可改进比例分别为30%、30%和20%,三个部件同时改进,那么系统中不可加速部分的执行时间在总执行时间中占的比例是多少?解:(1)在多个部件可改进情况下,A

3、mdahl定理的扩展: 已知S130,S220,S310,Sn10,F10.3,F20.3,得:得F30.36,即部件3的可改进比例为36%。(2)设系统改进前的执行时间为T,则3个部件改进前的执行时间为:(0.3+0.3+0.2)T = 0.8T,不可改进部分的执行时间为=0.2T。已知3个部件改进后的加速比分别为S130,S220,S310,因此3个部件改进后的执行时间为: 改进后整个系统的执行时间为:Tn = 0.045T+0.2T = 0.245T那么系统中不可改进部分的执行时间在总执行时间中占的比例是: 0.2/0.245=81.6%1.11假设浮点数指令FP指令的比例为30%,其中

4、浮点数平方根FPSQR占全部指令的比例为4%,FP操作的CPI为5,FPSQR操作的CPI为20,其他指令的平均CPI为1.25。解:改进前: CPI = 5 30% + 1.25 (1 - 30%) = 2.375设除FPSQR外其余指令的平均CPI为X则 2.375 = 20 4% + (1 - 4%)X ,解出X = 1.640625方案1: CPI1 = 3 4% + 1.640625 (1 - 4%) = 1.695方案2: CPI2 = 3 30% + 1.25 (1 - 30%) = 1.7752.11解:指令 频度pi 操作码使用哈夫曼编码 操作码长度li ADD0.43 0

5、1 CLA0.22 1 0 2 SUB0.13 1 1 0 3JMP0.07 1 1 1 0 0 5 JOM0.06 1 1 1 0 15STO0.05 1 1 1 1 05CIL0.02 1 1 1 1 1 06SHR0.011 1 1 1 1 1 07STP0.011 1 1 1 1 1 1 7L=0.43x1+0.22x2+0.13x3+0.07x5+0.06x5+0.05x5+0.02x6+0.01x7+0.01x7 =2.422.12 解:二地址指令的结构是 (4位操作码OP),(6位地址码A1),(6位地址码A2)。一地址指令的结构是 (10位操作码OP),(6位地址码A)。二地址

6、指令,最多共16条二地址指令。每少一条二地址指令,则多26条一地址指令,所以一地址指令最多有(16-A)*26条3.5在一台单流水线多操作部件的处理机上执行下面的程序,每条指令的取指令、指令译码需要一个时钟周期,MOVE、ADD和MUL操作分别需要2个、3个和4个时钟周期,每个操作都在第一个时钟周期从通用寄存器中读操作数,在最后一个时钟周期把运算结果写到通用寄存器中。k: MOVE R1,R0 ;R1 (R0)k+1: MUL R0,R2,R1 ;R0 (R2)(R1)k+2: ADD R0,R2,R3 ;R0 (R2)+(R3)画出指令执行过程的流水线时空图,并计算完成这3条指令共需要多少个

7、时钟周期?解: 在程序实际执行过程中,二种数据相关会引起流水线停顿。一是“先写后读”相关,k指令对R1的写在程序执行开始后的第四个时钟;k+1指令对R1的读对指令本身是第三个时钟,但k+1指令比k指令晚一个时钟进入流水线,则在程序执行开始后的第四个时钟要读R1。不能在同一时钟周期内读写同一寄存器,因此k+1指令应推迟一个时钟进入流水线,产生了流水线停顿。二是“写写”相关,k+1指令对R0的写对指令本身是第六个时钟,而要求该指令进入流水线应在程序执行开始后的第三个时钟,所以对R0的写是在程序执行开始后的第八个时钟。k+2指令对R0的写对指令本身是第五个时钟,而k+2指令比k+1指令晚一个时钟进入

8、流水线,则在程序执行开始后的第四个时钟,所以对R0的写是在程序执行开始后的第八个时钟。不能在同一时钟周期内写写同一寄存器,因此k+2指令应推迟一个时钟进入流水线,产生了流水线停顿。另外,可分析“先读后写”相关不会产生流水线的停顿。该指令流水线由六个功能段取指、译码、取数、运一、运二和存数等组成,则程序指令执行过程的流水线时空图如下图所示。若3条指令顺序流动,共需要9个时钟周期。 空间存数 K存数 K+1存数 K+2存数 运二 K+1运二 运一 K+1运一 K+2运一 取数 K取数 K+1取数 K+2取数 译码 K译码 K+1译码 K+2译码 取指 K取指 K+1取指 K+2取指 时间 0 1

9、2 3 4 5 6 7 8 93.6有一指令流水线如下所示(1) 求连续输入10条指令,该流水线的实际吞吐率和效率;(2) 该流水线的“瓶颈”在哪一段?请采取两种不同的措施消除此“瓶颈”。对于你所给出的两种新的流水线,连续输入10条指令时,其实际吞吐率和效率各是多少?解:(1)(2)瓶颈在3、4段。 变成八级流水线(细分) 重复设置部件3.7有一个流水线由4段组成,其中每当流经第3段时,总要在该段循环一次,然后才能流到第4段。如果每段经过一次所需要的时间都是,问:(1) 当在流水线的输入端连续地每时间输入任务时,该流水线会发生什么情况?(2) 此流水线的最大吞吐率为多少?如果每输入一个任务,连

10、续处理10个任务时的实际吞吐率和效率是多少?(3) 当每段时间不变时,如何提高该流水线的吞吐率?仍连续处理10个任务时,其吞吐率提高多少?解:(1)会发生流水线阻塞情况。第1个任务S1S2S3S3S4第2个任务S1S2stallS3S3S4第3个任务S1S2stallstallS3S3S4第4个任务S1S2stallstallstallS3S3S4(2)(3)重复设置部件吞吐率提高倍数1.643.8 有一条静态多功能流水线由5段组成,加法用1、3、4、5段,乘法用1、2、5段,第3段的时间为2t,其余各段的时间均为t,而且流水线的输出可以直接返回输入端或暂存于相应的流水寄存器中。现要在该流水线

11、上计算 ,画出其时空图,并计算其吞吐率、加速比和效率。解:首先,应选择适合于流水线工作的算法。对于本题,应先计算A1B1、A2B2、A3B3和A4B4;再计算(A1B1) (A2B2)和(A3B3) (A4B4);然后求总的结果。其次,画出完成该计算的时空图,如图所示,图中阴影部分表示该段在工作。由图可见,它在18个t时间中,给出了7个结果。所以吞吐率为: 如果不用流水线,由于一次求积需3t,一次求和需5t,则产生上述7个结果共需(45+33)t =29t。所以加速比为: 该流水线的效率可由阴影区的面积和5个段总时空区的面积的比值求得: 3.8 有一条动态多功能流水线由5段组成,加法用1、3、

12、4、5段,乘法用1、2、5段,第2段的时间为2t,其余各段时间均为t,而且流水线的输出可以直接返回输入端或暂存于相应的流水寄存器中。若在该流水线上计算: 试计算其吞吐率、加速比和效率。解由图可见,它在18个t时间中,给出了7个结果。所以吞吐率为: 如果不用流水线,由于一次求积需4t,一次求和需4t,则产生上述7个结果共需(44+34)t =28t。所以加速比为: 该流水线的效率可由阴影区的面积和5个段总时空区的面积的比值求得: 4.5 在CRAY-1机器上,按照链接方式执行下述4条向量指令(括号中给出了相应功能部件的执行时间),如果向量寄存器和功能部件之间的数据传送需要1拍,试求此链接流水线的

13、通过时间是多少拍?如果向量长度为64,则需多少拍才能得到全部结果?V0存储器(从存储器中取数:7拍)V2V0+V1(向量加:3拍)V3V2A3(按(A3)左移:4拍)V5V3V4(向量逻辑乘:2拍)解:通过时间就是每条向量指令的第一个操作数执行完毕需要的时间,也就是各功能流水线由空到满的时间,在流水线充满之后,向量中后继操作数继续以流水方式执行,直到整组向量执行完毕。T通过(1+7+1)+(1+3+1)+(1+4+1)+(1+2+1)=24(拍) T总共T通过+(64-1)=24+6387拍4.6 T通过(1+7+1)+(1+3+1)+(1+5+1)+(1+2+1)+(1+7+1)=34(拍)

14、 T总共T通过+(64-1)=63+3497拍4.7 某机有16个向量寄存器,其中V0V5中分别放有向量A、B、C、D、E、F,向量长度均为8,向量各元素均为浮点数;处理部件采用二个单功能流水线,加法功能部件时间为2拍,乘法功能部件时间为3拍。用类似Cray1的链接技术,先计算(A+B)*C,在流水线不停流的情况下,接着计算(D+E)*F。 解答:(1)(A+B)*C可用以下2条指令完成:V0A+BV1V0*C流水线流过时间为(1+2+1)+(1+3+1)=9拍(2)实际吞吐率为=26.7MFLOPS4.8分段开采LV V1, Rb ;取向量BMULTVS V2,V1,Fs ;向量和标量相乘SV Ra,V2 ;存向量三条指令三个编队T200=4x(15+Tstart)+200x3=660+(4xTstart)Tstart=12+7+12=31T200=660+4

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1