(一)精选课内习题
3.1
3.2
3.3
3.4
3.5
3.6
3.7
3.8
(二)精选课后习题
1.设有一个具有20位地址和32位字长的存储器,问:
(1)该存储器能存储多少个字节的信息?
(2)如果存储器由512k×8位的SRAM 芯片组成,需多少片?
(3)需多少位地址作芯片选择?
答:
(1) 读题:32位字长为4B,20位地址:2^20 = 1M = 1024K(K=2^10,M=2^20)
故存储器容量为2^20×4B = 4MB(或者1024K*4),可存储4M字节的信息
(2)读题:由(1)知 该存储器为1024K×32位 ,故需要 (1024K×32位 )/(512k×8位)=8片
(3) 8 = 2^3,所以需要3根地址进行译码选通。
2.已知某64位机主存采用半导体存储器,其地址码为26位,若使用4M×8位的DRAM芯片组成该机所允许的最大主存空间,并选用内存条结构形式,问:
(1) 若每个内存条为16M×64位,共需几个内存条?
(2) 每个内存条内共有多少DRAM芯片?
(3) 主存共需多少DRAM芯片? CPU如何选择各内存条?
答:
(1)读题:某64位机主存 其地址码为26位(2^26)
(2)每个内存条为16M×64位 4M×8位的DRAM芯片
(3)4*8 =32,多个DRAM芯片组合在同一条内存条上,并使用地址线和控制线来选择不同的芯片。
3.用16K×8位的DRAM芯片构成64K×32位存储器,要求:
(1)画出该存储器的组成逻辑框图。
4.有一个1024K×32位的存储器,由128K×8位的DRAM芯片构成.问:
(1) 总共须要若干DRAM芯片?
(2) 设计此存储体构成框图.
答:
6.用32Kx 8位的E2PROM芯片组成128Kx 16位的只读存储器,试问:
(1)数据寄存器多少位?
(2)地址寄存器多少位?
(3)共需多少个E2PROM芯片?
⑷ 画出此存储器组成框图。
答:
9.CPU执行一段程序时, cache完成存取的次数为2420次,主存完成存取的次数为80次,已知cache存储周期为40ns,主存存储周期为240ns,求cache/主存系统的效率和平均访问时间。
答:
命中率h=Nc/(Nc+Nm)=2420/(2420+80)=96.8%
平均访问时间ta=htc+(1-h)tm=96.8*40ns+(1-96.8%)*240ns=46.4ns
访问效率e=tc/ta=40ns/46.4ns=86%
10.已知cache存储周期为40ns,主存存取周期为200ns。cache/主存系统平均访问时间为50ns, cache的命中率是
13.一个组相联Cache由64个行组成,每组4行。主存储器包含4K个块,每块128字。请表示内存地址的格式。
21.设某系统采用页式虚拟存储管理,页表存放在内存中。
(1) 如果一次内存访问使用50ns,访问一次主存需用多少时间?
(2) 如果增加TLB,忽略查找页表项占用的时间,并且 75%的页表访问命中TLB,内存的有效访问时间是多少?
答:
(1) 若页表存放在主存中,则要实现一次主存访问需两次访问主存:一次是访问页表,确定所存取页面的物理地址;第二次才根据该地址存取页面数据。故访问一次主存的时间为50×2=100(ns)
(2) 75%×50+(1-75%) ×2×50=62.5(ns)
22. 某计算机的存储系统由cache,主存和磁盘构成。 cache 的访问时间为 15ns;如果被访问的单元在主存中但不在 cache 中,需要用 60ns 的时间将其装入 cache, 然后再进行访问;如果被访问的单元不在主存中,则需要 10ms 的时间将其从磁盘中读入主存,然后再装入 cache 中并开始访问。若 cache 的命中率为 90%,主存的命中率为 60%,求该系统中访问一个字的平均时间。
答:
被访问的字在 cache 中的概率为 0.9
不在 cache 中但在主存中的概率为: (1-0.9)×0.6=0.06
不在 cache 也不在主存中的概率为: (1-0.9)×(1-0.6)=0.04
所以, 一个字的访问时间为:
15×0.9+(15+60)×0.06+(15+60+10×106) ×0.04
=13.5+4.5+400003
=400021(ns)
23.某页式存储管理,页大小为2KB,逻辑地址空间包含 16 页,物理空间共有 8 页,逻辑地址应用多少位?主存物理空间有多大?
答:
逻辑地址空间包含16页,页大小为2KB,所以逻辑地址空间为32KB,逻辑地址应用4+11=15位(逻辑地址所需的位数可以通过以下计算得出:log2(总字节数) = log2(16 * 2 * 1024) = log2(32768) = 15)
物理空间共有8页,页大小为2KB,所以主存物理空间16KB
24.在一个分页虚存系统中,用户虚地址空间为32页,页长1KB,主存物理为16KB。已知用户程序有10页长,若虚页0、1、2、3已经被调入到主存8、7、4、10页中请问虚地址0AC5和1AC5(十六进制)对应的物理地址是多少?
答:
页长1KB,所以页内地址为10位。
主存物理页面数:16页,共14位地址码(其中页面号4位,页内地址10位)
用户虚地址空间:32页,页面号为031;共15位地址码(其中页面号5位,页内地址10位)
0AC5H=00010,1011000101B,页面号为2,已被调入到主存页4,所以,物理地址中的页面号为4,页内地址与虚地址的页内地址相同,所以是:0100,1011000101=12C5H
1AC5H=00110,1011000101B,页面号为6,未被调入到主存页中,所以无物理地址,会发生缺页中断。