1、计算机学科专业基础综合组成原理-5 及答案解析(总分:100.00,做题时间:90 分钟)一、综合应用题(总题数:12,分数:100.00)1.设存储器容量为 32 字,字长 64(即 W)位,模块数 m=4,分别用顺序方式和交叉方式进行组织。若存储周期 T=200ns,数据总线宽度为 64 位,总线传送周期 =50ns,求顺序存储器(即高位地址交叉)和交叉存储器带宽各是多少? (分数:4.00)_显示适配器中,用于存放显示信息的存储器称刷新存储器,它的重要性能指标是带宽。具体工作中,显示适配器的多个功能部分要争用刷新存储器的带宽。假设总带宽 50%用于刷新屏幕,保留 50%带宽用于其他非刷新
2、功能,且设显示采用分辨率为 1024768,颜色深度为 3B,刷新频率为 72Hz 的工作方式。(分数:8.00)(1).试计算刷新存储器总带宽。(分数:4.00)_(2).为达到这样高的刷新存储器带宽,应采取何种技术措施?(分数:4.00)_有一 Cache 系统,字长为 16 位,主存容量为 16 字256 块,Cache 的容量为 16 字8 块。求:(分数:12.00)(1).主存和 Cache 的容量各为多少字节,主存和 Cache 的字地址各为多少位?(分数:4.00)_(2).如果原先已经依次装入了 5 块的信息,问字地址为 338H 所在的主存块将装入 Cache 块的块号及在
3、Cache 中的字地址是多少?(分数:4.00)_(3).如果块表中地址为 1 的行中标记着 36H 的主存块号标志,则当 CPU 送来主存的字地址为 368H 时是否命中?如果命中,此时 Cache 的字地址为多少?(分数:4.00)_CPU 执行一段程序时,Cache 完成存取的次数为 5000 次,主存完成存取的次数为 200 次。已知 Cache 存取周期 T c 为 40ns,主存存取周期 T m 为 160ns。分别求(当 Cache 不命中时才启动主存):(分数:12.00)(1).Cache 的命中率 H(分数:4.00)_(2).平均访问时间 T A(分数:4.00)_(3)
4、.Cache-主存系统的访问效率 E(分数:4.00)_有一全相联 Cache 系统,Cache 由 8 个块构成,CPU 送出的主存地址流序列分别为01101B、10010B、01101B、01000B、10010B、00100B、01000B 和 01010B,即十进制为14、18、14、18、8、4、8、10。求:(分数:8.00)(1).每次访问后,Cache 的地址分配情况。(分数:4.00)_(2).当 Cache 的容量换成 4 个块,地址流为00110B、01111B、00110B、01101B、01011B、01010B、01000B 和 00111B 时,求采用先进先出替换
5、算法的相应地址分配和操作。(分数:4.00)_2.虚拟存储器中,页面的大小不能太小,也不能太大,为什么? (分数:4.00)_设有一个直接映像方式的 Cache,其容量为 8KB,每块内有 16B,主存的容量是 512KB,求:(分数:24.00)(1).主存有多少个块?有多少个区?(分数:4.00)_(2).该 Cache 可容纳多少个块?Cache 字地址有多少位?块号和块内地址各多少位?(分数:4.00)_(3).主存的字地址有多少位?区号、区内块号和块内地址各多少位?(分数:4.00)_(4).主存中的第 i 块映射到 Cache 的哪一块中?(分数:4.00)_(5).将主存的第 5
6、13 块调入 Cache,则 Cache 的块号为多少?它的区号标志为多少?(分数:4.00)_(6).在上一步的基础上,送出的主存的字地址为 04011H 时是否命中?(分数:4.00)_有一个 16K16 位的存储器,由 1K4 位的 DRAM 芯片构成(芯片是 6464 结构)。问:共需要多少 RAM 芯片?(分数:8.00)(1).画出存储器的组成框图。(分数:4.00)_(2).采用异步刷新方式,如单元刷新间隔不超过 2ms,则刷新信号周期是多少?(分数:4.00)_3.试证明多模块交叉存储器带宽大于顺序存储器带宽。 (分数:4.00)_4.设 Cache 分为 2 g 个组,每组包
7、含 2 t 个块,Cache 共有 2 e =2 g+1 个块。其映像关系为 j=(i mod 2 g )2 t +h (0h2 t-1 ) 由主存块号求出主存所在的区号 k=i/2 c 其中,k 是主存的区号,i 是主存的块号,2 c 为 Cache 的块数,即 n,“”为取整。 若 g=2 位,t=1 位,求主存字块 11 可映像到 Cache 的哪一个字块中? (分数:4.00)_5.设 Cache 的工作速度比主存的速度快 10 倍,且 Cache 的命中率为 90%,则该计算机采用 Cache 后,对存储系统而言,其加速比是多少?(工作时,设 Cache 与主存同时启动) (分数:4
8、.00)_根据操作数所在位置,指出其寻址方式。(分数:8.00)(1).操作数在寄存器中,是什么寻址方式?(分数:1.60)_(2).操作数地址在寄存器中,是什么寻址方式?(分数:1.60)_(3).操作数在指令中,是什么寻址方式?(分数:1.60)_(4).操作数地址在指令中,是什么寻址方式?(分数:1.60)_(5).操作数地址为某一寄存器中的内容与位移量之和,可以是什么寻址方式?(分数:1.60)_计算机学科专业基础综合组成原理-5 答案解析(总分:100.00,做题时间:90 分钟)一、综合应用题(总题数:12,分数:100.00)1.设存储器容量为 32 字,字长 64(即 W)位,
9、模块数 m=4,分别用顺序方式和交叉方式进行组织。若存储周期 T=200ns,数据总线宽度为 64 位,总线传送周期 =50ns,求顺序存储器(即高位地址交叉)和交叉存储器带宽各是多少? (分数:4.00)_正确答案:()解析:因为信息是顺序访问的,所以它用低位地址顺序选择各存储单元,用高位地址选择不同的存储体。 因为顺序存储器和交叉存储器连续读出 m=4 个字的信息总量都是: W=64b4=256b 又因为它们连续读出 4 个字所需的时间分别是: T 1 =mT=4200ns=800ns=810 -7 s T 2 =T+(m-1)=200ns+350ns=350ns=3.510 -7 s 所
10、以顺序存储器带宽:Bm 1 =W/t 1 =256/(810 -7 )=3210 7 (b/s) 交叉存储器带宽:Bm 2 =W/t 2 =256/(3.510 -7 )=7310 7 (b/s) 显然后者的吞吐量要大得多。显示适配器中,用于存放显示信息的存储器称刷新存储器,它的重要性能指标是带宽。具体工作中,显示适配器的多个功能部分要争用刷新存储器的带宽。假设总带宽 50%用于刷新屏幕,保留 50%带宽用于其他非刷新功能,且设显示采用分辨率为 1024768,颜色深度为 3B,刷新频率为 72Hz 的工作方式。(分数:8.00)(1).试计算刷新存储器总带宽。(分数:4.00)_正确答案:(
11、)解析:因为刷新带宽 W 1 =分辨率像素点颜色深度刷新速率 =102476872/s =165888KBps =162MBps 所以刷新总带宽 W 0 =W 1 (W 0 /W 1 ) (W 0 /W 1 即倍数) W 0 =162MBps100/50=324MBps(2).为达到这样高的刷新存储器带宽,应采取何种技术措施?(分数:4.00)_正确答案:()解析:为了提高刷新存储器带宽,可采取如下技术措施: 采用高速 DRAM 芯片组成刷新存储器;采用多体交叉结构;刷新存储器至显示控制器的内部总线宽度由 32位提高到 64 位,甚至 128 位;采用双端口存储器,将刷新端口与更新端口分开。有
12、一 Cache 系统,字长为 16 位,主存容量为 16 字256 块,Cache 的容量为 16 字8 块。求:(分数:12.00)(1).主存和 Cache 的容量各为多少字节,主存和 Cache 的字地址各为多少位?(分数:4.00)_正确答案:()解析:如下图 1 所示。 (2).如果原先已经依次装入了 5 块的信息,问字地址为 338H 所在的主存块将装入 Cache 块的块号及在Cache 中的字地址是多少?(分数:4.00)_正确答案:()解析:如图 2 所示,由于每块为 16B,所以该主存字所在的主存块号为 33H,由于是全相联映像,原先已经装入 Cache 的 5 个块依次在
13、 04 号块,因此主存的第 33H 的块将装入 Cache 的第 5 块。对应 Cache 的字地址为 1011000B,其中 101 为块号,1000 为块内地址。 (3).如果块表中地址为 1 的行中标记着 36H 的主存块号标志,则当 CPU 送来主存的字地址为 368H 时是否命中?如果命中,此时 Cache 的字地址为多少?(分数:4.00)_正确答案:()解析:如图 3 所示,由于块表中地址为 1 的行中标记着 36H 的主存块号标志,则当 CPU 送来主存的字地址为 368H 时,其主存块号为 36H,所以命中。此时的 Cache 字地址为 38H。 CPU 执行一段程序时,Ca
14、che 完成存取的次数为 5000 次,主存完成存取的次数为 200 次。已知 Cache 存取周期 T c 为 40ns,主存存取周期 T m 为 160ns。分别求(当 Cache 不命中时才启动主存):(分数:12.00)(1).Cache 的命中率 H(分数:4.00)_正确答案:()解析:(2).平均访问时间 T A(分数:4.00)_正确答案:()解析:T A =T C +(1-H)T M =40ns+(1-0.96)160ns=46.4ns(3).Cache-主存系统的访问效率 E(分数:4.00)_正确答案:()解析:E=T C /T A =40ns46.4ns100%=86.
15、2% 注意:如果 Cache 访问和主存访问是同时启动,则公式就改为:T A =HT C +(1-H)T M有一全相联 Cache 系统,Cache 由 8 个块构成,CPU 送出的主存地址流序列分别为01101B、10010B、01101B、01000B、10010B、00100B、01000B 和 01010B,即十进制为14、18、14、18、8、4、8、10。求:(分数:8.00)(1).每次访问后,Cache 的地址分配情况。(分数:4.00)_正确答案:()解析:依据 Cache 的块容量和访问的块地址流序列可以画出下图 1。由于是全相联映像,因此,相应的地址分配如图 1 所示,相
16、应的操作也分别为调进、调进、命中、命中、调进、调进、命中和调进。 (2).当 Cache 的容量换成 4 个块,地址流为00110B、01111B、00110B、01101B、01011B、01010B、01000B 和 00111B 时,求采用先进先出替换算法的相应地址分配和操作。(分数:4.00)_正确答案:()解析:依据 Cache 的块容量和访问的块地址流序列可以画出图 2。由于是全相联映像,且当访问从第 6 个地址(含)开始,Cache 已经装不下,按照先进先出的原则依次替换出第 0 块、第 1 块和第 2 块,相应的地址分配如图 2 所示,相应的操作也分别为调进、调进、命中、调进、
17、调进、替换、替换和替换。 2.虚拟存储器中,页面的大小不能太小,也不能太大,为什么? (分数:4.00)_正确答案:()解析:虚拟存储器中,页面如果太小,虚拟存储器中包含的页面个数就会过多,使得页表的空间过大,页表本身占据的存储空间过大,则操作速度将变慢;当页面太大时,虚拟存储器中的页面个数会变少,由于主存的容量比虚拟存储器的容量少,主存中的页面个数会更少,每一次页面装入的时间会变长,每当需要装入新的页面时,速度会变慢。所以在虚拟存储器中页面太大或太小都会影响访问存储器的速度。设有一个直接映像方式的 Cache,其容量为 8KB,每块内有 16B,主存的容量是 512KB,求:(分数:24.0
18、0)(1).主存有多少个块?有多少个区?(分数:4.00)_正确答案:()解析:根据图 1 和图 2 和已知条件: 主存有 512K16=512102416=32768(个块),有 512K8K=64(个区)。(2).该 Cache 可容纳多少个块?Cache 字地址有多少位?块号和块内地址各多少位?(分数:4.00)_正确答案:()解析:Cache 中有 819216=512(块),8192=2 13 ,Cache 的字地址为 13 位,512=2 9 ,16=2 4 ,即块号和块内地址分别为 9 位和 4 位。(3).主存的字地址有多少位?区号、区内块号和块内地址各多少位?(分数:4.00
19、)_正确答案:()解析:主存有 32768 块16 字/块=2 19 个字,即字地址为 19 位。主存储器的字地址分成三段:区号、区内块号、块内字地址。区号的长度为 19-13=6(位),块号为 9 位,块内字地址为 4 位。如图 1 所示。 图 119 位字地址:40111H=000 0100 0000 0001 0001B (4).主存中的第 i 块映射到 Cache 的哪一块中?(分数:4.00)_正确答案:()解析:主存中的第 i 块映像到 Cache 中第 i mod 2 9 个块中。(5).将主存的第 513 块调入 Cache,则 Cache 的块号为多少?它的区号标志为多少?(
20、分数:4.00)_正确答案:()解析:如图 2 所示,根据 j=i mod 2 9 ,Cache 块号=513 mod 2 9 =1,即第 1 号块。 根据 k=i/29,区号=513/29=1,所以为第 1 区,即区号标志为 000001 B。(6).在上一步的基础上,送出的主存的字地址为 04011H 时是否命中?(分数:4.00)_正确答案:()解析:19 位主存字地址为 04011H=000 0100 0000 0001 0001 B,按此主存的块号为地址读出的主存区号标志 000001000010(当前主存区号),故不命中(分析可知,主存块地址为 0401H=1025D,区号=102
21、5/512=2,即第 2 区的第 1 块,而上一步存入 Cache 的为第 1 区第 1 块,自然就不会命中)。有一个 16K16 位的存储器,由 1K4 位的 DRAM 芯片构成(芯片是 6464 结构)。问:共需要多少 RAM 芯片?(分数:8.00)(1).画出存储器的组成框图。(分数:4.00)_正确答案:()解析:存储器的总容量为 16K16b=256Kb,所以用 RAM 芯片为 4Kb,故芯片总数为 256Kb/4Kb=64 片。由于存储单元数为 16K,故地址长度为 14 位(设 A 13 A 0 )。芯片单元数为 1Kb 则占用地址长度为 10 位(A 2 A 0 )。每一组
22、16 位(4 片),共 16 组,组与组间译码采用 4-16 译码。组成框图如下图所示。 (2).采用异步刷新方式,如单元刷新间隔不超过 2ms,则刷新信号周期是多少?(分数:4.00)_正确答案:()解析:采用异步刷新,在 2ms 时间内分散地把芯片 64 行刷新一遍,故刷新信号的时间间隔为2ms/64=31.25s,即可取刷新信号周期为 30s。3.试证明多模块交叉存储器带宽大于顺序存储器带宽。 (分数:4.00)_正确答案:()解析:存储器模块字长等于数据总线宽度 (2)模块存取一个字的存储周期等于 T (3)总线传送周期为 (4)交叉存储器的交叉模块数为 m 交叉存储器为了实现流水线方
23、式存储,即每经过 时间延迟后启动下一模块,应满足 T=m 交叉存储器要求其模块数m,以保证启动某模块后经过 m 时间后再次启动该模块时,它的上次存取操作已经完成。 因为连续读取 m 个字所需时间为:t 1 =T+(m-1)=m+m-=(2m-1) 所以带宽为 W 1 =1/t 1 =1/(2m-1) 因为顺序存储器连续读取 m 个字需时间为 t 2 =mT=m 2 所以带宽为 W 2 =1/t 2 =1/m 2 显然 W 1 /W 2 =m 2 /(2m-1)1 即多模块交叉存储器带宽大于顺序存储器带宽。4.设 Cache 分为 2 g 个组,每组包含 2 t 个块,Cache 共有 2 e
24、=2 g+1 个块。其映像关系为 j=(i mod 2 g )2 t +h (0h2 t-1 ) 由主存块号求出主存所在的区号 k=i/2 c 其中,k 是主存的区号,i 是主存的块号,2 c 为 Cache 的块数,即 n,“”为取整。 若 g=2 位,t=1 位,求主存字块 11 可映像到 Cache 的哪一个字块中? (分数:4.00)_正确答案:()解析:根据公式可得: j=(i mod 2 g )2 t +h =(11 mod 2 2 )2 1 +h =32+h =6+h 又因为 0h2 t-1 =1 所以 h=0 或 1 代入后得 j=6(h=0)或 7(h=1)。所以主存模块 1
25、1 可映像到 Cache 字块 6 或 7,在第 3 组。 求出主存所在的区号: K=i/2 c =11/2 c =11/2 g+1 =11/2 3 =1 即在第 1 区。 因此主存地址的区号、区内组号、组内块号和块内字地址为:1、3、6、W 或 1、3、7、W,其中 W 为主存块内字地址。5.设 Cache 的工作速度比主存的速度快 10 倍,且 Cache 的命中率为 90%,则该计算机采用 Cache 后,对存储系统而言,其加速比是多少?(工作时,设 Cache 与主存同时启动) (分数:4.00)_正确答案:()解析:t E =t C h+(1-h)t M 加速比 SP=t M /t
26、E ,本题中已知 h=90%,t M =10t C ,可由上式解得 SP=1/(0.1h+1-h)=1/(0.10.9+1-0.9)=1/0.19=5.26根据操作数所在位置,指出其寻址方式。(分数:8.00)(1).操作数在寄存器中,是什么寻址方式?(分数:1.60)_正确答案:()解析:为寄存器寻址方式(2).操作数地址在寄存器中,是什么寻址方式?(分数:1.60)_正确答案:()解析:为寄存器间接寻址方式(3).操作数在指令中,是什么寻址方式?(分数:1.60)_正确答案:()解析:为立即数寻址方式(4).操作数地址在指令中,是什么寻址方式?(分数:1.60)_正确答案:()解析:为直接寻址方式(5).操作数地址为某一寄存器中的内容与位移量之和,可以是什么寻址方式?(分数:1.60)_正确答案:()解析:可以是基址、变址、相对寻址方式