![计算机系统结构习题课(第2-7章)-2016_第1页](http://file3.renrendoc.com/fileroot_temp3/2022-2/19/d919c702-bdee-477c-8bb2-5a91e23ee89f/d919c702-bdee-477c-8bb2-5a91e23ee89f1.gif)
![计算机系统结构习题课(第2-7章)-2016_第2页](http://file3.renrendoc.com/fileroot_temp3/2022-2/19/d919c702-bdee-477c-8bb2-5a91e23ee89f/d919c702-bdee-477c-8bb2-5a91e23ee89f2.gif)
![计算机系统结构习题课(第2-7章)-2016_第3页](http://file3.renrendoc.com/fileroot_temp3/2022-2/19/d919c702-bdee-477c-8bb2-5a91e23ee89f/d919c702-bdee-477c-8bb2-5a91e23ee89f3.gif)
![计算机系统结构习题课(第2-7章)-2016_第4页](http://file3.renrendoc.com/fileroot_temp3/2022-2/19/d919c702-bdee-477c-8bb2-5a91e23ee89f/d919c702-bdee-477c-8bb2-5a91e23ee89f4.gif)
![计算机系统结构习题课(第2-7章)-2016_第5页](http://file3.renrendoc.com/fileroot_temp3/2022-2/19/d919c702-bdee-477c-8bb2-5a91e23ee89f/d919c702-bdee-477c-8bb2-5a91e23ee89f5.gif)
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、计算机系统结构计算机系统结构习题内容习题内容7.9,7.10,7.11, 7.12, 7.146.7,6.85.8,5.9, 5.113.8,3.10,3.112.14(补充补充)计算机系统结构计算机系统结构习题习题2.14(补充)(补充)v 人工模拟以下MIPS程序的单条指令运行方式,在表中用16进制编码记录每一步产生的结果(不得借助模拟软件)。v .datav n: .word 3;n和x是偏移地址v x: .double 0.5 v .textv LD R1, n(R0);R1装入双字3(64位)v L.D F0, x(R0);F0装入双精度浮点数0.5(64位)v DADDI R2,
2、R0, 1 ; R2 1v MTC1 R2, F11 ;把通用寄存器R2中的低32位传送到浮点寄存器F11的低32位v CVT.D.L F2, F11 ;把F11中的数据转换成双精度浮点数,送给F2。v loop: MUL.D F2, F2, F0 ; F2 F2*F0v DADDI R1, R1, -1 ; decrement R1 by 1v BNEZ R1, loop ; if R10 continuev HALT ; 此条不填表v :MIPS浮点数的格式是IEEE754计算机系统结构计算机系统结构习题习题2.14v IEEE754v 为便于软件的移植,浮点数的表示格式应该有统一标准(定
3、义)。1985年IEEE提出了IEEE754标准。v 该标准规定基数为2,阶码E用移码表示,尾数M用原码表示,根据原码的规格化方法,最高数字位总是1,该标准将这个1缺省存储,使得尾数表示范围比实际存储的多一位。emrmN计算机系统结构计算机系统结构习题习题2.14v双精度浮点数类型类型数符数符阶码阶码尾数尾数总位数总位数指数偏移指数偏移短实数1位8位23位32位127长实数1位11位52位64位10230.5的二进制表示:0.1=1.0*(10)-1尾数:(1).0000阶码:-1+1023=0 x3fe 0 x3fe00000000000001的二进制表示:1.0=1.0*(10)0尾数(1
4、).0000阶码:0+1023=0 x3ff 0 x3ff0000000000000计算机系统结构计算机系统结构习题习题2.14序号结果寄存器结果值(16进制)1R100000000000000032F03fe00000000000003R200000000000000014F1100000000000000015F23ff00000000000006F23fe00000000000007R100000000000000028无无9F23fd000000000000010R1000000000000000111无无12F23fc000000000000013R10000000000000000
5、14无无v n: .word 3v x: .double 0.5 v vLD R1, n(R0)v L.D F0, x(R0)v DADDI R2, R0, 1 v MTC1 R2, F11 v CVT.D.L F2, F11 v loop: MUL.D F2, F2, F0 v DADDI R1, R1, -1 v BNEZ R1, loop v HALT 计算机系统结构计算机系统结构习题习题3.8v12345乘法加法tttt2t计算机系统结构计算机系统结构习题习题3.8v如图,在18个t时间中,给出了7个结果,所以TP=7/18 t如果不用流水线,一次求积3 t,一次求和5t,则T=(4*
6、5+3*3) t=29 t,因此S=29 t/18 t=1.61E=(4*5+3*3)/5*18=0.322计算机系统结构计算机系统结构习题习题3.10v 有一个5段流水线,各段执行时间均为t,其预约表如下 时间时间功能段功能段1234567S1S2S3S4S5(1)画出流水线任务调度的状态转移图。(2)分别求出允许不等时间间隔调度和等时间间隔调度的两种最优调度策略,以及这两种调度策略的流水线最大吞吐率。(3)若连续输入10个任务,求这两种调度策略的流水线实际吞吐率和加速比。计算机系统结构计算机系统结构习题习题3.10v1001011011011001111011115522554计算机系统结
7、构计算机系统结构习题习题3.10(2)由状态转移图可得不发生段争用冲突的调度策略以及平均延迟时间如下所示。调度策略调度策略平均延迟时间平均延迟时间调度策略调度策略平均延迟时间平均延迟时间(2,2,5)3t(4,5)4.5t(2,5)3.5t(5)5t(4)4tu由上可知,允许不等时间间隔调度的最优调度策略是(2,2,5),流水线最大吞吐率为: 1/3t。u等时间间隔的调度的最优调度策略是(4),流水线最大吞吐率为:1/4t。计算机系统结构计算机系统结构习题习题3.10v计算机系统结构计算机系统结构习题习题3.11v 在改进的DLX流水线(按照图3.12)上运行如下代码序列:v LOOP:LWR
8、1, 0(R2)vADDIR1, R1, #1vSW0(R2), R1vADDIR2, R2, #4vSUBR4, R3, R2vBNZR4, LOOPv 其中,R3的初始值是R2396。假设:在整个代码序列的运行过程中,所有的存储器访问都是命中的,并且在一个时钟周期中对同一个寄存器的读操作和写操作可以通过寄存器“定向”。问:v (1)在没有任何其它定向硬件的支持下,请画出该指令序列执行的流水线时空图。假设采用排空流水线的策略处理分支指令,且所有的存储器访问都可以命中Cache,那么执行上述循环需要多少个时钟周期?v (2)假设该DLX流水线有正常的定向路径,请画出该指令序列执行的流水线时空图
9、。假设采用预测分支失败的策略处理分支指令,且所有的存储器访问都可以命中Cache,那么执行上述循环需要多少个时钟周期?v (3)假设该DLX流水线有正常的定向路径,请对该循环中的指令进行调度。注意可以重新组织指令的顺序,也可以修改指令的操作数,但是不能增加指令的条数。请画出该指令序列执行的流水线时空图,并计算执行上述循环需要的时钟周期数? 计算机系统结构计算机系统结构采用定向技术消除数据相关采用定向技术消除数据相关计算机系统结构计算机系统结构习题习题3.11(1)需要进行396/4=99次循环,由于每次分支都清空流水线。从上图可以看出每次循环需要17个时钟周期,因此总共需要的时钟周期数为991
10、71168412345678910111213141516 17 18 19LOOP: LW R1 0(R2)IFIDEXMWBADDI R1 R1 #1IFSSIDEXMWBSW 0(R2) R1IFSSIDEXMWBADDI R2 R2 #4IFIDEXMWBSUB R4 R3 R2IFSSIDEXM WBBNZ R4 LOOPIFSSIDEX M WBLW R1 0(R2)IFSSIF计算机系统结构计算机系统结构习题习题3.11(2)需要进行396/4=99次循环,由于每次分支都清空流水线。从上图可以看出每次循环需要9个时钟周期,因此总共需要的时钟周期数为999+389412345678
11、9101112LOOP: LW R1 0(R2) IFIDEXMWBADDI R1 R1 #1IFSIDEXMWBSW 0(R2) R1SIFIDEXMWBADDI R2 R2 #4IFIDEXMWBSUB R4 R3 R2IFIDEXMWBBNZ R4 LOOPIFSIDEXMWBLW R1 0(R2)SIFIFIDEX计算机系统结构计算机系统结构指令执行重新排序如下:lwr1,0(r2);加法寄存器R1取数(R2)addir2,r2,#4;指针R2指针R2+4addir1,r1,#1;R1R1+1Subr4,r3,r2;R4R3-R2bnezr4,Loop;若R40, 循环sw-4(r2)
12、,r1 ;分支延迟槽,存数(R2-4)R1LOOP:LWR1, 0(R2)ADDIR1, R1, #1SW0(R2), R1ADDIR2, R2, #4SUBR4, R3, R2BNZR4, LOOPLOOP:LWR1, 0(R2)ADDIR2, R2, #4ADDIR1, R1, #1SW0(R2), R1SUBR4, R3, R2BNZR4, LOOPLOOP:LWR1, 0(R2)ADDIR2, R2, #4ADDIR1, R1, #1SW-4(R2), R1SUBR4, R3, R2BNZR4, LOOPLOOP:LWR1, 0(R2)ADDIR2, R2, #4ADDIR1, R1,
13、 #1SUBR4, R3, R2BNZR4, LOOPSW-4(R2), R1习题习题3.11(3)计算机系统结构计算机系统结构习题习题3.11(3)有正常定向路径。单周期延迟分支。loop: lw r1, 0(r2)addi r2,r2,#4addi r1,r1,#1sub r4,r3,r2bnz r4,loopsw r1,-4(r2)第i次迭代(i 0.98)开始周期:1(i 6 )总的时钟周期数:(986)10598Instruction1234567891011lw r1,0(r2)IFIDEXMWBaddi r2,r2,#4IFIDEXMWBaddi r1,r1,#1IFIDEXMW
14、Bsub r4,r3,r2IFIDEXMWBbnz r4,loopIFIDEXMWBsw r1,-4(r2)IFIDEXMWBlw r1,0(r2)IFIDEXMWB计算机系统结构计算机系统结构习题习题5.8v 假设有一条长流水线,仅仅对条件转移指令使用分支目标缓冲。假设分支预测错误的开销为4个时钟周期,缓冲不命中的开销为3个时钟周期。假设命中率为90%,预测精度为90%,分支频率为15%,没有分支的基本CPI为1。v (1)求程序执行的CPI。v (2)相对固定的2个时钟周期延迟的分支处理,哪种更快?v 解:v (1)程序执行的CPI=没有分支的基本CPI+分支带来的额外开销v 额外开销=1
15、5%*(90%命中*10%预测错误*4+10%没命中*3) v =0.099所以程序执行的CPI=1+0.099=1.099。v (2)采用固定的2 个时钟周期延迟的分支处理v CPI=1+15%*2=1.3v 由(1)(2)知分支目标缓冲方法执行速度快计算机系统结构计算机系统结构习题习题5.9v 假定分支目标缓冲的命中率为90%,程序中无条件转移指令为5%,其它指令的CPI为1。假设分支目标缓冲包含分支目标指令,允许无条件转移指令进入分支目标缓冲,则CPI是多少。假定原来的CPI为1.1。v (1)原来不采用分支目标缓冲器BTB情况下v 实际CPI = 理想CPI+各种停顿拍数v =1+5%
16、L=1.1 v 解出分支延迟:解出分支延迟:L = 2L = 2v (2)现在采用分支目标缓冲器BTB情况下v 实际CPI=理想CPI+各种停顿拍数v =1+5%10%2=1.01计算机系统结构计算机系统结构习题习题5.11v 设指令流水线由取指令,分析指令和执行指令3个部件构成,每个部件t ,连续12条指令,分别画出ILP为4的超标量,超长指令字处理机和超流水线的时空图,并分别计算相对标量流水处理机的加速比.v 1. 标量流水处理机v Tk=(k+n-1) t=(3+12-1) t=14 tv 2. 超长指令字处理机v 采用指令级并行技术,ILP=4, 12个任务组装成3条长指令,每条含4条
17、小指令,n=3。 Tk=(k+n-1) t=(3+3-1) t=5 t,v 加速比S= 14 t/5 t=2.8计算机系统结构计算机系统结构习题习题5.11v 3 . 超标量处理机v Tk=(k+n-1) t=(3+3-1) tv =5 tv 加速比S=14 t/5 t=2.8v 4. 超流水处理机v ILP=4,12个任务在4条时钟v 依次错开0.25 t的流水线上流过,v 所以可取k=12,n=12, 时钟= t/4。v Tk=(k+n-1) t/4=(12+12-1) t/4=5.75 t,v 加速比S=14 t/5 .75 t=2.435计算机系统结构计算机系统结构习题习题6.7v首先
18、要把循环步长变为1(算法要求): for(i = 1; i = 50; i+) a2*i = a2*i -1v在这个循环中a=2,b=0,c=2,d=-1,v这样GCD(a,c)=2, d-b=-1,v由于前者不不可以整除后者,v故该循环不存在循环携带的真数据相关计算机系统结构计算机系统结构习题习题6.8 表表6.16.1本节使用的浮点流水线的延迟本节使用的浮点流水线的延迟产生结果的指令产生结果的指令使用结果的指令使用结果的指令延迟延迟(cycles)浮点计算浮点计算另一个浮点计算另一个浮点计算3浮点计算浮点计算浮点浮点store(S.D)2浮点浮点Load(L.D)浮点计算浮点计算1浮点浮点
19、Load(L.D)浮点浮点store(S.D)0整数运算,分支延迟和load需要一个周期延迟,如果分支的寄存器在前一条指令计算出,也需要一个周期延迟,因为整数计算在第3个周期完成,而分支第2个周期就用到DADDIU R1, R1, #-87(空转空转)8BNE R1, R2, Loop9计算机系统结构计算机系统结构习题习题6.8在不进行指令调度的情况下,程序的实际执行情况如下:在不进行指令调度的情况下,程序的实际执行情况如下:指令流出时钟指令流出时钟Loop:L.D F0, 0(R1)1L.D F4, 0(R2)2(空转空转)3MUI.D F0, F0, F44(空转空转)5(空转空转)6(空
20、转空转)7ADD.D F2, F0, F28DADDIU R1, R1, #-8 9DADDIU R2, R2, #-810BNE R1, R3, Loop11(空转空转)12计算原程序周期数:计算原程序周期数:每对元素所需的时钟周期数每对元素所需的时钟周期数=12,其中空转数,其中空转数=5;计算机系统结构计算机系统结构习题习题6.8 新程序新程序v Loop: L.D F0,16(R1) ;F0 A(i+2) L.D F4,16(R2) ;F4 B(i+2) L.D F6,8(R1) ;F6 A(i+1) MUL.D F0,F0,F4 ;F0 A(i+2) B(i+2) L.D F8,8(
21、R2) ;F8B(i+1) L.D F10,0(R1) ;F10 A(i) MUL.D F6,F6,F8 ;F6 A(i+1) B(i+1) ADD.D F2,F0,F2 ; F2 F2+ A(i+2) B(i+2) L.D F12,0(R2) ;F12B(i) DADDUI R1,R1,-24 ;R1 R1-24 MUL.D F10,F10,F12 ;F10 A(i) B(i) ADD.D F2,F6,F2 ; F2 F2+ A(i+1) B(i+1) DADDUI R2,R2,-24 ;R2 R2-24 BNE R1,R3,loop ;若R1 R3,循环 ADD.D F2,F10,F2 ;
22、 F2 F2+ A(i) B(i)新程序周期数:每对元素所需的时钟周期数新程序周期数:每对元素所需的时钟周期数=16/3=5.3,其中空转数,其中空转数=1/3=0.3计算机系统结构计算机系统结构习题习题7.9v 假设在3000次访存中,第一级cache不命中110次,第二级cache不命中55次。试问:在这种情况下,该cache系统的局部不命中率和全局不命中率各是多少?v 解:v 第一级cache不命中率(全局和局部)是110/3000,即3.67%;v 第二级cache的局部不命中率是55/110,即50%;v 第二级cache的全局不命中率是55/3000,即1.83%。计算机系统结构计
23、算机系统结构习题习题7.10给定以下的假设,试计算直接映象Cache和两路组相联Cache的平均访问时间以及CPU的性能。由计算结果能得出什么结论? (1)理想Cache情况下的CPI为2.0,时钟周期为2ns,平均每条指令访存1.2次; (2)两者Cache容量均为64KB,块大小都是32字节; (3)组相联Cache中的多路选择器使CPU的时钟周期增加了10; (4)这两种Cache的失效开销都是80ns; (5)命中时间为1个时钟周期; (6)64KB直接映象Cache的失效率为1.4,64KB两路组相联Cache的失效率为1.0。计算机系统结构计算机系统结构习题习题7.10v 平均访问
24、时间命中时间失效率失效开销v 平均访问时间1-路=2.0+1.4% *80=3.12nsv 平均访问时间2-路=2.0*(1+10%)+1.0% *80=3.0nsv 两路组相联的平均访问时间比较低v CPUtime=(CPU执行+存储等待周期)*时钟周期v CPUtime=(IC*CPI执行+总访存失效次数*失效开销) *时钟周期v =IC*(CPI执行*时钟周期+每条指令的访存次数*失效率*失效开销*时钟周期)v CPU time 1-way=IC(2.0*2+1.2*0.014*80)5.344ICv CPU time 2-way=IC(2.2*2+1.2*0.01*80)5.36ICv
25、 相对性能比:5.36/5.344=1.003v 直接映象的访问时间是两路组相联的1.04倍,v 两路组相联的平均CPU时间是直接映象的1.003倍。v 因此这里选择直接映象。计算机系统结构计算机系统结构习题习题7.11伪相联中,假设在直接映象位置没有发现匹配,而在另一个位置才找到数据(伪命中)时,需要1个额外的周期,而且不交换两个Cache中的数据,失效开销为50个时钟周期。 假设 2KB直接映象Cache的总失效率为0.098,2路相联的总失效率为0.076; 128KB直接映象Cache的总失效率为0.010,2路相联的总失效率为0.007。试求:(1)推导出平均访存的时间公式。(2)利
26、用(1)中得到的公式,对于2KBCache和128KBCache,重新计算伪相联的平均访存时间。请问哪一种伪相联更快?计算机系统结构计算机系统结构习题习题7.11v 命中时间伪相联命中时间1路伪命中率伪相联1v 因此 伪命中率伪相联 命中率2路命中率1路 (1失效率2路)(1失效率1路) 失效率1路失效率2路。v 平均访存时间伪相联 命中时间1路(失效率1路失效率2路)1失效率2路失效开销2路v 将题设中的数据带入计算,得到: 平均访存时间2KB=1+(0.098-0.076)*1+(0.076 *50 ) =4.822 平均访存时间128KB=1+(0.010-0.007)*1+(0.007
27、 *50 ) =1.353 显然是128KB的伪相联Cache要快一些。计算机系统结构计算机系统结构习题习题7.12v (1)假设TLB不命中率=0v Cache中50%的块修改过,所以不命中时,替换Cache需要1次从内存取一块,50%次写回一块,共1.5次。v 均摊不命中开销=不命中率1.5 40+32B/4B+020v =不命中率72v 实际CPI1=1.5+1.2不命中率72=1.5+不命中率86.4v 带入3种Cache结构的不命中率得:v Cache结构 不命中率实际CPIv 16KB直接混合映像 0.029 4.0056v 16KB两路混合映像 0.022 3.4008v 32KB直接混合映像 0.020 3.2280计算机系统结构计算机系统结构习题习题7.12v (2)假设TLB不命中率=0.2%v 均摊不命中开销=不命中率1.540+32B/4B+0.2%20v =不命中率1.548.04=不命中率72.06v 实际CPI2=1.5+1.2不命中率72.06v =1.5+不命中率86.472v 带入3种Cache结构的不命中率后得v Cache结构 不命中率 实际CPIv 16KB直接混合映像 0.029 4.0077v 16KB两路混合映像 0.022 3.4024v
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025火电厂燃料验收设备管理标准
- 二零二五版培智学校图书资源管理与物业管理服务协议
- 全身体检的要点、难点及注意事项课件
- 二零二五版木工机械操作安全责任状协议
- 2.3.1透镜(课件)八年级物理第一学期同步
- 《食道炎与食道癌》课件
- 棉鞋里的阳光课件
- (高清版)JJF(皖) 202-2025 四氟化碳气体检测仪规范
- 《月技术案例分享》课件
- 《资本与增长》课件2
- 国防动员教案
- 手术室术中物品清点不清的应急预案演练流程及剧本
- 罪犯个性分测验
- 办公室职业健康业务培训
- 五年级英语阅读理解(共20篇)
- (2024年)传染病培训课件
- 压力管道安全技术监察规程-工业管道
- 人教版一年级下册数学第一单元单元作业设计
- 交通法规常识课件
- 博鳌BNCT硼中子治疗中心 环评报告
- 2024年徐州工业职业技术学院高职单招(英语/数学/语文)笔试历年参考题库含答案解析
评论
0/150
提交评论