计算机组成原理——第二、三章习题2014-5-602:55计算机组成原理22014-5-6第3章P111第1题1、设有一个具有20位地址和32位字长的存储器,问:(1)该存储器能存储多少字节的信息?存储容量=存储单元个数×每单元字节数=220×(32bit÷8bit)=4M(2)如果存储器由512K×8位SRAM芯片组成,需要多少片?需要做存储芯片的字位扩展,所需芯片数d=220×32/512K×8=8片•位扩展:4片512K×8位芯片构成512K×32位的存储组;•字扩展:2组512K×32位存储组构成1M×32位的存储器。(3)需要多少位地址做芯片选择?字扩展的是2个存储组,因此,需1位地址做片选。02:55计算机组成原理32014-5-6第3章P111第3题3、用16K×8位的DRAM芯片构成64K×32位存储器,要求:(1)画出该存储器的组成逻辑框图。由16K×8位的芯片进行字位扩展构成64K×32位存储器,共需芯片数d=64K×32/16K×8=16片;•位扩展:由4片16K×8位芯片构成16K×32位存储组;•字扩展:由4组16K×32位存储组构成64K×32位存储器;因此,4个存储组的片选信号应由最高两位地址A14和A15产生;该存储器的组成逻辑框图如下:2:4译码器A14A15CS3CS2CS0CS1A13~A0D0~D7/WE02:55计算机组成原理42014-5-6第3章P111第3题16K×8RAMA13~A0D7~D0/WE/CS16K×8RAMA13~A0D7~D0/WE/CSA13~A0D7~D0D15~D816K×8RAMA13~A0D7~D0/CS/WE16K×8RAMA13~A0D7~D0/CS/WED23~D16D31~D23/CS/WE位扩展02:55计算机组成原理52014-5-6字扩展16K×32存储组A13~A0D31~D0/WE/CS16K×32存储组A13~A0D31~D0/WE/CS16K×32存储组A13~A0D31~D0/WE/CS16K×32存储组A13~A0D31~D0/CS/WE/WEA13~A0D31~D074LS139/G1BA/Y0/Y1/Y2/Y3/MREQA14A1502:55计算机组成原理62014-5-6第3章P111第5题5、要求用256K×16位SRAM芯片设计1024K×32位的存储器。SRAM芯片的两个控制端:当CS’有效时,该片选中。当W’/R=1时执行读操作,当W’/R=0时执行写操作。256K×16SRAMA17~A0D15~D0/WE/CS256K×16SRAMA17~A0D15~D0/WE/CSA17~A0D15~D0D31~D16CSWE解:所需芯片数d=1024K×32/256K×16=8片(1)位扩展:2片256K×16位芯片构成256K×32位存储组;地址线、片选、读写信号共用,数据线分高16位、低16位,如图示。位扩展02:55计算机组成原理72014-5-6第3章P111第5题(2)字扩展:4组256K×32位存储组构成1024K×32位存储器,因容量由256K增大到1024K,共需地址线20条。原有地址线A17~A0、读写信号、32位数据线共用,最高两位地址线A18和A19经2-4译码器输出产生4个存储组的片选信号,如图所示。256K×32存储组A17~A0D31~D0/WE/CS256K×32存储组A17~A0D31~D0/WE/CS256K×32存储组A17~A0D31~D0/WE/CS256K×32存储组A17~A0D31~D0/CS/WE/WEA17~A0D31~D02-4译码器BA/Y0/Y1/Y2/Y3A18A19字扩展02:55计算机组成原理82014-5-6第3章P111第6题6、用32K×8位的E2PROM芯片组成128K×16位的只读存储器,试问:(1)数据寄存器多少位?因为系统数据总线为16位,所以数据寄存器16位(2)地址寄存器多少位?因为存储器容量为128K,需系统地址总线17位,所以地址寄存器17位(3)共需多少个E2PROM芯片?所需芯片总数:(128K/32K)×(16/8)=8片02:55计算机组成原理92014-5-6第3章P111第6题(4)画出此存储器的组成框图。CPU地址寄存器数据寄存器32K×832K×832K×832K×832K×832K×832K×832K×8CS3CS2CS1CS02:4译码器CS0~CS3A16A1502:55计算机组成原理102014-5-6第3章P111第7题7、某机器中,已知配有一个地址空间为0000H~3FFFH的ROM区域。现在再用一个RAM芯片(8K×8)形成40K×16位的RAM区域,起始地址为6000H。假设RAM芯片有CS’和WE’信号控制端。CPU的地址总线为A15~A0,数据总线为D15~D0,控制信号为R/W(读/写),MREQ’(访存),要求:(1)画出地址译码方案RAM区域共需芯片数d=40K×16/8K×8=10片,其中位扩展:2片8K×8位芯片构成8K×16位的存储组,字扩展:5组8K×16位的存储组构成40K×16位存储器。(2)将ROM与RAM同CPU连接(略)。8K×8RAMA12~A0D7~D0/WE/CS8K×8RAMA12~A0D7~D0/WE/CSA12~A0D7~D0D15~D8CSWE位扩展02:55计算机组成原理112014-5-6使能端8K×16存储组A12~A0D15~D0/WE/CS8K×16存储组A12~A0D15~D0/WE/CS8K×16存储组A12~A0D15~D0/WE/CS8K×16存储组A12~A0D15~D0/CS/WE/WEA12~A0D15~D03-8译码器/G1BA/Y0/Y1/Y2/Y3A13A14A15C8K×16存储组A12~A0D15~D0/CS/WE/Y4/Y5/Y6/Y7第3章P111第7题字扩展02:55计算机组成原理122014-5-6第3章P112第8题8、设存储器容量为64M,字长为64位,模块数m=8,分别用顺序和交叉方式进行组织。存储周期T=100ns,数据总线宽度为64位,总线传送周期τ=50ns。求:顺序存储器和交叉存储器的带宽各是多少?解:顺序存储器和交叉存储器连续读出m=8个字的数据信息量为:q=8×64=512位顺序存储器所需要的时间为:t1=m×T=8×100ns=800ns=8×10-7s故顺序存储器的带宽为:W1=q/t1=512/(8×10-7)=64×107[bit/s]交叉存储器所需要的时间为t2=T+(m-1)×τ=100ns+(8-1)×50ns=450ns=4.5×10-7s故交叉存储器的带宽为W1=q/t2=512/(4.5×10-7)=113.8×107[bit/s]02:55计算机组成原理132014-5-6第3章P112第9题9、CPU执行一段程序时,cache完成存取的次数为2420次,主存完成存取的次数为80次,已知cache存储周期为40ns,主存存储周期为240ns,求cache/主存系统的效率和平均访问时间。命中率:h=Nc/(Nc+Nm)=2420/(2420+80)=0.968主存与Cache的速度倍率:r=tm/tc=240ns/40ns=6访问效率:e=1/(r+(1-r)h)=1/(6+(1-6)×0.968)=86.2%平均访问时间:ta=tc/e=40ns/0.862=46.4ns02:55计算机组成原理142014-5-6第三章P112第11题11、某机器采用四体交叉存储器,今执行一段小循环程序,此程序放在存储器的连续地址单元中。假设每条指令的执行时间相等,而且不需要到存储器存取数据,请问在下面两种情况中(执行的指令数相等),程序运行的时间是否相等?解:设总线传送周期为τ,取指周期T,执行指令时间为t,则:(1)循环程序由6条指令组成,重复执行80次;程序运行时间为:ta=(T+(6-1)τ+6t)×80(2)循环程序由8条指令组成,重复执行60次。程序运行时间为:ta=(T+(8-1)τ+8t)×6002:55计算机组成原理152014-5-6第3章P112第13题13、一个组相联Cache由64个行组成,每组4行。主存储器包含4K个块,每块128字。请表示内存地址的格式。组相联映射下的主存地址格式如下:块大小2w=128字=27,故w=7Cache有64行,每组4行,则组数2d=64/4=16=24,故d=4主存块数2s=4K=212,故s=12标记位有s-d=12-4=8位标记s-d组号d字w7位4位8位02:55计算机组成原理162014-5-6第3章P112第14题14、某机主存容量1MB,字长1B,块大小16B,Cache容量64KB,若Cache采用直接映射方式,请给出2个不同标记的内存地址,它们映射到同一个Cache行。直接映射下的主存地址格式如下:块大小2w=16B,故w=4Cache容量64KB,每块16B,行数2r=4K=212,故r=12主存容量1MB=220=2s+w,故s+w=20,则s=20-w=16故标记位s-r=16-12=4两个满足题目要求的主存地址:0000100100001110000000011001000011100000标记s-r行号r字w4位12位4位02:55计算机组成原理172014-5-6第3章P112第15题15、假设主存容量16M×32位,Cache容量64K×32位,主存与Cache之间以每块4×32位大小传送数据,请确定直接映射方式的有关参数,并画出主存地址格式。直接映射下的主存地址格式如下:块大小2w=4,故w=2Cache容量64KB,块大小为4,则行数为2r=64K/4=16K=214,故r=14主存16MB,块大小为4,则块数2s=16M/4=4M=222,故s=22标记位s-r=22-14=8位标记s-r行号r字w2位14位8位02:55计算机组成原理182014-5-6第3章P112第19题19、某虚拟存储器采用页式存储管理,使用LRU页面替换算法。若每次访问在一个时间单位内完成,页面访问的序列如下:1,8,1,7,8,2,7,2,1,8,3,8,2,1,3,1,7,1,3,7。已知主存只允许存放4个页面,初始状态时4个页面是全空的,则页面失效次数是?LRU(近期最少使用):每页设计数器,每命中1次,该页计数器清零,其他各页计数器加1,需要替换时,将计数值最大的页换出。02:55计算机组成原理192014-5-6LRU初始值1817827218编号内容计数内容计数内容计数内容计数内容计数内容计数内容计数内容计数内容计数内容计数内容计数a010111011121314151011b0808182808182838480c070717270717273d02021202122换出LRU初始值3821317137编号内容计数内容计数内容计数内容计数内容计数内容计数内容计数内容计数内容计数内容计数内容计数a1112131410111011101112b8081808182838470717270c7330313233303132333031d2223242021222324252627换出7802:55计算机组成原理202014-5-6第3章P112第21题21、设某系统采用页式虚拟存储管理,页表放在主存中。(1)如果一次内存访问使用50ns,访问一次主存需用多少时间?若页表放在主存中,则要实现一次主存访问需两次访问主存,一次是访问页表,确定所存取页面的物理地址,第二次才根据该地址存取页面数据。故访问主存时间为50ns×2=100ns(2)如果增加TLB,忽略查找TLB表项占用时间,并且75%的页表访问命中TLB,内存的有效访问时间是多少?50ns×75%+100ns×(1-75%)=62.5ns02:55计算机组成原理212014-5-6