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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

系统结构复习.docx

1、系统结构复习第一章 导论 (1填1选)计算机换代的标志:1计算机的器件;2计算机系统的结构 Flynn按指令流和数据流的多倍性对计算机系统结构进行分类:1.单指令流单数据流(SISD)体系结构 2.单指令流多数据流(SIMD)体系结构 3.多指令流单数据流(MISD)体系结构 4.多指令流多数据流(MIMD)体系结构 习题1.9 有一个经解释实现的计算机,可以按功能划分成4级。每一级为了执行一条指令需要下一级的N条指令解释。若执行第1级的一条指令要K ns时间,那么执行第2、第3、第4级的一条指令各需要用多少时间?分析 计算机按功能分成级时,最底层是第l级,向上依次为第2、第3和第4级;解释方

2、式的执行是在低级机器级上用它的一串语句或指令来仿真高一级机器级上的一条语 句或指令的功能,而且是通过对高级机器级程序中的每条语句或指令逐条加以解释来实现的。解答 执行第2、第3、第4级的一条指令各需KN ns、KN2 ns、KN3 ns的时间。习题1.10 有一个计算机系统可按功能分成4级,各级的指令都不相同,每一级的指令都比其下一级的指令在效能上强M倍,即第i级的一条指令能完成第i-1级的M条指令的计算量。现若需第i级的N条指令解释第i+l级的一条指令,而有一段第l级的程序需要运行的时间为K s,问在第2、3和4级上一段等效的程序各需要运行多长时间? 分析 因为从功能意义上讲,第i级的一条指

3、令能完成第i-1级的M条指令的计算量,但第i级的一条指令的执行,都是靠第i-1级的N条指令的执行来解释完成。已知,第1级的一段程序运行时间为K s。第2级的一段程序从功能等效上讲,所需的指令条数应当是第1级上指令数的1/M。而由第1级解释时又需要执行N条指令,所以,第2级一段等效程序的运行就需要K的时间。第3、4级则可依次类推。 解答 第2、3和4级上的一段等效程序分别需要K、Ks和K的时间。第二章 指令系统 (2填1选)1.浮点数表示(阶基、阶码、最大小尾数值)题2.5 (1)浮点数系统使用的阶基rp2。阶码位数p=2,尾数基值rm=10,以rm为基的尾数位数m1,按照使用的位数来说,等价于

4、m4。试计算在非负阶、正尾数、规格化数情况下的最小尾数值、最大尾数值、最大阶值、可表示的最小值和最大值及可表示数的个数。 (2)对于rp2,p2,rm4,m2,重复以上计算。 分析 因为尾数基值rm10,所以,rm进制尾数的每个数位只能取09中的一个值,即每个数位能取的最大值为9。 解答 (1)在非负阶、正尾数、规格化数的情况下, 最小尾数值为rm-1l0-10.1 最大尾数值为1- rm-m=1-10-10.9 最大阶值为2-1=2 可表示的最小值为=rm-1=10-1=0.1 可表示的最大值为r(1- r)=103(1-10-1)=900 可表示的数的个数为2r= (2)最小尾数值为rm-

5、1=4-1=0.25 最大尾数值为1- rm-m=1-4-2=15/16 最大阶值为2-1=22-1=3 可表示的最小值为rm-1=4-1=0.25 可表示的最大值为r(1- r)= 可表示的数的个数为2r=42.操作码的设计(定长、哈弗曼、扩展编码)【例2.3】 一个处理机有I1I10共10条指令,经统计,各指令在程序中的使用频度分别为:p1=0.25,p2=0.20,p3=0.15,p4=0.10,p5=0.08,p6=0.08,p7=0.05,p8=0.04,p9=0.03,p10=0.02。(1)计算这10条指令的操作码编码的最短平均码长。(2)写出这10条指令的操作码的哈夫曼编码,并

6、计算编码的平均码长和信息冗余量。(3)采用3/7扩展编码和2/8扩展编码编写这10条指令的操作码,并分别计算平均码长和信息冗余量。问哪一种扩展编码较好?说明其理由。解 (1)由给出的使用频度p1p10,可计算出I1I10的操作码编码的最短平均码长为(2)根据给出的使用频度,在应用哈夫曼算法构造哈夫曼树的过程中,选择2个频度最小的结点合并时,有2个以上的结点可供合并,因此,可生成结构不同的哈夫曼树。为加深领会哈夫曼树生成过程,我们给出2棵哈夫曼树,分别如图2.1和图2.2所示。图2.1 哈夫曼树(a)图2.2 哈夫曼树(b)由哈夫曼树得到的2种哈夫曼编码如表2.1所示。表2.1 2种哈夫曼编码I

7、ipi哈夫曼编码(a)lai哈夫曼编码(b)lbiI10.250 021 02I20.201 020 02I30.150 1 031 1 03I40.101 1 030 1 03I50.080 1 1 041 1 1 04I60.081 1 1 040 1 1 04I70.050 1 1 1 050 1 1 14I80.040 1 1 1 151 1 1 1 05I90.031 1 1 1 051 1 1 1 1 06I100.021 1 1 1 151 1 1 1 1 16可见,哈夫曼编码不是惟一的。计算2种哈夫曼编码的平均码长分别为可见,尽管哈夫曼编码不是惟一的,但平均码长却是惟一的。2种

8、哈夫曼编码的信息冗余量分别为显然,应有Ra=Rb。(3)3/7扩展编码和2/8扩展编码如表2.2所示。表2.2 2种扩展编码Iipi3/7扩展编码li(位)2/8扩展编码li(位)I10.250 020 02I20.200 120 12I30.151 021 0 0 04I40.101 1 0 0 051 0 0 14I50.081 1 0 0 151 0 1 04(续表)Iipi3/7扩展编码li(位)2/8扩展编码li(位)I60.081 1 0 1 051 0 1 14I70.051 1 0 1 151 1 0 04I80.041 1 1 0 051 1 0 14I90.031 1 1

9、0 151 1 1 04I100.021 1 1 1 051 1 1 143/7扩展编码要求短码码点数为3个,长码码点数为7个。短码码长取2位,可表示短码码点22=4个。因此,只留1个码点作为扩展标志。需要表示的长码码点有7个,因此需要扩展3位,但是,有一个长码码点11111未被利用,或称为有一个冗余码点。采用2/8扩展编码则没有冗余码点。由此可以大致判断2/8扩展编码优于3/7扩展编码。但是,准确地评价编码的优劣仍需要比较平均码长。2种扩展编码的平均码长分别为可见,2/8扩展编码优于3/7扩展编码。2种扩展编码的信息冗余量分别为【例2.4】 某模型机有9条指令,其使用频度分别为ADD:30%

10、 SUB:24% LOD:6% STO:7%JMP:7% SHR:2% ROL:3% MOV:20%STP:1%要求有2种指令字长,且都是二地址指令。采用扩展编码,并限制只能有2种操作码码长。设该机有若干个通用寄存器,主存宽度为16位,按字节编址,采用按整数边界存储,任何指令都在1个主存周期中取得。短指令为寄存器-寄存器型,长指令为寄存器-主存型。主存地址能变址寻址。(1)仅根据使用频度,不考虑其他要求,设计出哈夫曼编码,并计算平均码长。(2)根据给出的全部要求,设计优化实用的操作码编码,并计算平均码长。(3)画出该机的2种指令字的格式,标出各字段的位数。该机允许使用多少个可编址的通用寄存器?

11、访存变址寻址的最大相对位移量是多少字节?解 (1)根据频度分布,得出哈夫曼树,如图2.3所示。图2.3 哈夫曼树由哈夫曼树,得出9条指令的哈夫曼编码,如表2.3中第4列所示。表2.3 哈夫曼编码和扩展编码指令Iipi哈夫曼编码li(位)2/5扩展编码li(位)ADDI130%0 120 02SUBI224%1 120 12MOVI320%1 021 02STOI47%0 0 1 141 1 0 0 05JMPI57%0 0 1 041 1 0 0 15LODI66%0 0 0 141 1 0 1 05ROLI73%0 0 0 0 151 1 0 1 15SHRI82%0 0 0 0 0 161

12、 1 1 0 05STPI91%0 0 0 0 0 061 1 1 0 15计算哈夫曼编码的平均码长为(2)根据题目要求,指令有2种字长,主存宽度为16位,按字节编址,采用按整数边界存储,任何指令都在1个主存周期取得,那么,短指令字长只能是8位,长指令字长只能是16位。指令都是二地址指令,短指令为寄存器-寄存器型,据此可得出短指令格式为长指令为寄存器-主存型,且主存地址应能变址寻址,可得出长指令格式为在一般的计算机中,变址寄存器就是某一个通用寄存器,所以,变址寄存器号字段的位数与寄存器号字段的位数相同。根据题目要求,指令操作码可采用扩展编码,并只能有2种码长。从指令使用频度来看,ADD、SUB

13、和MOV的使用频度较高,其余6条指令的使用频度都低得多,因此,短操作码码长宜取2位长,可有22=4个码点,用3个码点表示这3条指令,尚余下1个码点作为扩展标志。用1个扩展标志再扩展表示出6个操作码,还需要3位,因此,长操作码码长为5位。由此,得出9条指令的2/5扩展操作码如表2.3中第6列所示。计算2/5扩展编码的平均码长为(3)由上述分析,可得出短指令格式中各字段的位数为长指令格式中各字段的位数为由于寄存器号字段长度为3位,因此,该机可使用的可编址通用寄存器的个数最多为23=8个。由于相对位移字段长度为5位,因此,访存变址寻址的最大相对位移量为25=32字节。第三章 流水技术与流水处理机 (

14、2大1选)1.并行包括并发和同时,时间并行就是超流水(流水线重叠),空间并行就是超标量(资源重复)2.局部相关对程序执行过程的影响较小,它仅涉及到相关指令前后的一条或几条指令的执行。 1. 顺序流动的“先写后读”相关及处理2. 异步流动的局部相关3. 相关专用通路全局相关是指影响整个程序执行方向的相关,主要是转移类指令和中断引起的相关。1. 条件转移的处理(1)延迟转移技术 (2)静态转移预测技术(3)动态转移预测技术 (4)提前形成条件码2. 中断处理 (1)不精确断点方法(2)精确断点方法【例3.3】 有一个4段流水线如图所示。其中,段S1和S3的执行时间均为200ns,段S2和S4的执行

15、时间均为100ns。(1)分别使用公式和时空图求连续流入4条指令的实际吞吐率和效率。(2)若瓶颈段S1可采用细分方法改造,瓶颈段S3只能采用瓶颈段并联方法改造,对改造后的流水线,分别使用公式和时空图求连续流入4条指令的实际吞吐率和效率。解 (1)首先使用公式计算,已知流水线段数k=4,连续流入指令条数n=4,各段执行时间不等,且瓶颈段执行时间。流水线处理4条指令的时空图如图3.11所示。S41234S311223344S21234S111223344图3.11 例3.3的流水线改造前的时空图由时空图可得:(2)对瓶颈段改造后,段S1分为两个子段S11和S12,且子段执行时间均为100ns,段S

16、3用功能相同的两个段S31与S32的并联来代替,S31和S32的执行时间均为200ns。但并联部件的等效执行时间缩短为100ns,从而使流水线各段执行时间相等,完全消除了瓶颈。首先使用公式计算,改造后的流水线段数k=6,连续流入指令条数n=4,各段执行时间相等,且都为=100ns。流水线处理4条指令的时空图如图3.12所示。S41234S322244S311133S21234S121234S111234图3.12 例3.3的流水线改造后的时空图由时空图可得可见,由公式直接计算和通过时空图计算,2种方法得出的结果是一致的。【例3.8】 一条线性静态多功能流水线由6个功能段组成,加法操作使用其中的

17、1、2、3、6功能段,乘法操作使用其中的1、4、5、6功能段,每个功能段的执行时间均为,流水线的输出端与输入端之间有直接数据通路,且设置有足够的缓冲寄存器。试用尽可能短的时间计算,画出流水线时空图,并计算流水线的实际吞吐率、加速比和效率。解 为了减少流水线中发生先写后读相关的次数,使流水线完成计算的时间尽可能短,采用下述算法计算F:按先乘后加、先括号内后括号外的优先次序,上述计算F的过程需要先做6次乘法,用16表示;再做3个括号内的3次加法,用79表示;最后做括号外的2次加法,用1011表示。流水线时空图如图3.19所示。图3.19 例3.8的时空图由时空图可得实际吞吐率、加速比和效率分别为【

18、例3.11】 假设每种向量指令都有自己的一条流水线完成该向量指令的流水处理,下面一组向量指令能分成几个编队?LV V1,RX ;取向量XMULTSV V2,F0,V1 ;向量和标量相乘LV V3,RY ;取向量YADDV V4,V2,V3 ;向量加SV RY,V4 ;存结果向量解 第一条指令LV为第一编队,MULTSV指令因与第一条LV指令相关,所以它们不能在同一个编队中。MULTSV指令和第二条LV指令之间不存在功能部件冲突和数据相关,所以这两条指令为第二编队。ADDV指令与第二条LV指令数据相关,所以ADDV为第三编队。SV指令与ADDV指令数据相关,所以SV为第四编队。因此,这一组向量指

19、令分为以下4个编队 LV MULTSV LV ADDV SV【例3.12】 在向量流水处理机上,执行下述3条向量指令来计算向量D=A(B+C),其中,结果向量D的元素di=ai(bi+ci),i=1,2,N。N为向量元素个数。 V3存储器 ;访存取A送入向量寄存器V3 V2V0+V1 ;B+CK V4V2*V3 ;K*AD设启动存储器、启动乘/加流水线、数据打入寄存器各需时,向量加流水线完成一次加法需时6,访存一次需时6,向量乘流水线完成一次乘法需时7。求出分别采用下列3种方式工作时,完成3条向量指令所需的时间。(1)3条指令依序串行。(2)指令与指令并行执行完后,再执行指令。(3)采用指令链

20、接技术解 (1)计算3条向量指令各自单独流水执行时所需时间。向量指令V3存储器 所需流水线建立的时间为启动存储器所需时钟周期数,即有s1=1;访存取向量A并打入向量寄存器V3中,流水操作打入A的第一个元素所需时钟周期数为6+=7,即e1=7;完成向量A其余N-1个元素的打入所需时钟周期数为(N-1)。因此,该向量指令单独流水执行所需时间向量指令V2V0+V1单独流水执行所需时间向量指令V4V2*V3单独流水执行所需时间因此,3条指令之间串行执行,共需时间(2)由于指令和指令同时并行,所需时间,然后执行指令,因此,共需时间(3)由于指令与指令之间既无向量流水线资源冲突(前者使用访存流水线,后者使

21、用向量加流水线,二者之间无资源冲突),又无向量寄存器的先写后读相关,因此,这2条指令是一个编队,可以同时并行执行。但是,指令与指令之间有寄存器V3的先写后读相关,与指令之间有寄存器V2的先写后读相关,因此,指令是另一个编队。可以在编队之间采用链接技术,即可把指令和指令同时并行的流水线流出的结果向量元素直接流入指令的流水线。指令流水线与指令流水线同时并行执行,流出第一对元素的时间为,因此,共需时间第四章 存储系统 (1大2选)1.虚拟存储地址概念在虚拟存储技术中,把程序经编译生成的访存地址称为虚拟地址(或称为虚地址),由虚地址表示的存储空间称为虚空间。程序代码运行时,必须先把虚地址转换成主存物理

22、地址(或称为主存实地址),才能按实地址访问主存。虚地址与实地址之间对应关系的规则称为地址映像(Address Mapping)。程序在运行时,虚拟存储系统按照某种地址映像把虚地址转换成实地址称为地址变换(Address Translation)。地址变换对应用程序员是透明的,由存储系统自动完成。 2.cache映射策略1. 全相联地址映像及其地址变换(块冲突概率最低,Cache空间利用率最高。) 2.直接地址映像及其地址变换(块冲突概率最高,Cache空间利用率最低。)3. 组相联地址映像及其地址变换组相联映像对主存块可装入Cache块位置的限制比直接映像要弱,但比全相联映像要强,因此,组相联

23、映像的块冲突概率和Cache空间利用率也介于全相联映像与直接映像两者之间。【例4.10】 在一个采用组相联映像的Cache存储器中,主存由07共8块组成,Cache分为2组,每组2块,每块大小为16个存储字。若程序访存的主存块地址流为:6,2,4,1,4,6,3,0,4,5,7,3(1)写出主存地址和Cache地址的格式,并指出各字段的长度。(2)指出主存块07与Cache块03之间的映像关系。(3)分别采用FIFO和LRU替换算法,计算该程序的Cache命中率。若已知主存访问周期Tm与物理Cache的访问周期Tc的比值Tm/Tc=10,分别计算Cache的加速比。(4)采用全相联映像重做第(

24、3)题。解 (1)采用组相联映像时,主存地址格式和Cache地址格式为:区号E组号G块号B块内地址W主存地址组号g块号b块内地址wCache地址主存按Cache大小划分为区,主存容量为8块,Cache容量为4块,故主存分为2个区,区号E的长度为1位。每区分为2组,故组号G和g的长度都是1位。每组分为2块,故块号B和b的长度都是1位。每块大小为16个存储字,故块内地址W和w的长度都是4位。(2)组相联映像规定:主存的组到Cache的组之间是直接映像,对应组的块之间是全相联映像。主存的块07与Cache的块03之间的映像关系是:主存的块0,1,4,5与Cache的块0,1之间全相联。主存的块2,3

25、,6,7与Cache的块2,3之间全相联。(3)由第(2)题的结果可知,该程序按给出的主存块地址流访存时,如果发生块失效,那么把主存块装入Cache的块位置时,必须遵守如下规定:主存的块0、1、4、5只可装入到Cache的块0或块1的位置上。主存的块2、3、6、7只可装入到Cache的块2或块3的位置上。采用FIFO替换算法时,Cache块03被使用的过程如图4.22所示。主存块地址Cache块0Cache块1Cache块2Cache块362414630457344*4*4*4*00*55511111*44*4*4*66*6*6*6*6*33333*3*222222*2*2*2*77命中命中命

26、中图4.22 例4.10的组相联映像及FIFO算法的Cache使用过程可得Cache命中率H1=3/12=0.25。采用LRU替换算法时,Cache块03被使用的过程如图4.23所示。主存块地址Cache块0Cache块1Cache块2Cache块362414630457344*4444*444411*1*1*00*5*5*5*66*6*6*6*66*6*6*6*7722222*33333*3*命中命中命中命中图4.23 例4.10的组相联映像及LRU算法的Cache使用过程可得Cache命中率H2=4/12=0.33。由(4-8)式,Cache的加速比S为:已知Tc/Tm=1/10,由H1=0.25,可计算出采用FIFO替换算法时,Cache的加速比为S1=1.29。由H2=0.33,可计算出采用LRU替换算法时,Cache的加速比为S2=1.42。(4)全相联映像规定主存的8个块可装入到Cache的块03的任何块位置上。采用FIFO替换算法时,Cache块03被使用的过程如图4.24所示。主存块地址Cache块0Cache块1Cache块2Cache块36241463045736666*6*6*33333*3*222222*00000444444*4*5551111111*77命中命中命中命中图4.24 例4.10的全相联

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

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