第三章课后习题参考答案
1.有一个具有20位地址和32位字长的存储器,问:
(1)该存储器能存储多少个字节的信息?
(2)如果存储器由512K×8位SRAM芯片组成,需要多少芯片?
(3)需要多少位地址作芯片选择?
解:(1)∵ 220= 1M,∴ 该存储器能存储的信息为:1M×32/8=4MB
(2)(1024K/512K)×(32/8)= 8(片)
(3)需要1位地址作为芯片选择。
3.用16K×8位的DRAM芯片组成64K×32位存储器,要求:
(1) 画出该存储器的组成逻辑框图。
(2) 设DRAM芯片存储体结构为128行,每行为128×8个存储元。
如单元刷新间隔不超过2ms,存储器读/写周期为0.5μS, CPU在1μS内至少要访问一次。
试问采用哪种刷新方式比较合理?两次刷新的最大时间间隔是多少?对全部存储单元刷新一遍所需的实际刷新时间是多少?
解:(1)组成64K×32位存储器需存储芯片数为
N=(64K/16K)×(32位/8位)=16(片)
每4片组成16K×32位的存储区,有A
13-A
作为片内地址,用A
15
A
14
经2:4译码
器产生片选信号,逻辑框图如下所示:
(2)根据已知条件,CPU在1us内至少访存一次,而整个存储器的平均读/写周期为0.5us,如果采用集中刷新,有64us的死时间,肯定不行;
所以采用分散式刷新方式:
设16K×8位存储芯片的阵列结构为128行×128列,按行刷新,刷新周期T=2ms,则分散式刷新的间隔时间为:
t=2ms/128=15.6(s) 取存储周期的整数倍15.5s(0.5的整数倍)
则两次刷新的最大时间间隔发生的示意图如下
可见,两次刷新的最大时间间隔为t
MAX
=15.5×2-0.5=30.5 (μS)
t
MAX
对全部存储单元刷新一遍所需时间为t
R
t
=0.5×128=64 (μS)
R
4.有一个1024K×32位的存储器,由128K×8位DRAM芯片构成。
问:
(1)总共需要多少DRAM芯片?
(2)设计此存储体组成框图。
(3)设DRAM芯片存储体结构为512行,每行为256×8个存储元。
采用分散式刷新方式,如单元刷新间隔不超过8ms,则刷新信号周期是多少?
解:(1)总共需要DRAM芯片数为:
N=(1024K/128K)×(32位/8位)=32(片)
(2)此存储体组成框图
(3)如果选择一个行地址进行刷新,刷新地址为A
0-A
8
,因此这一行上的256×8
个存储元同时进行刷新,即在8ms内进行512个周期。
在8ms中进行512次刷新操作,按分散刷新方式8ms/512 = 15.5us刷新一次。
5. 要求用256K×16位SRAM芯片设计1024K×32位的存储器。
SRAM芯片有两个控制端:当有效时,该片选中。
当=1时执行读操作,当=0时执行写操作。
解:所设计的存储器单元数为1M,字长为32,故地址长度为20位(A
19~A
),
所用芯片存储单元数为256K,字长为16位,故占用的地址长度为18位(A
17~A
)。
由此可用位并联方式与地址串联方式相结合的方法组成组成整个存储器,共8片RAM芯片,并使用一片2:4译码器。
其存储器结构如图所示。
7.某机器中,已知配有一个地址空间为0000H-3FFFH的ROM区域。
现在再用一个RAM芯片(8K×8)形成40K×16位的RAM区域,起始地址为6000H,假定RAM芯片有
和信号控制端。
CPU的地址总线为A
15-A
,数据总线为D15-D0,控制信
号为R/(读/写),(访存),要求:
(1)画出地址译码方案。
(2)将ROM与RAM同CPU连接。
解:(1)依题意,主存地址空间分布如下图所示,ROM区16K×16位;10片的8K×8位RAM片组成40K×16位的RAM区。
ROM需14位片内地址,而RAM需13
位片内地址,故可用A
15-A
13
三位高地址经译码产生片选信号,方案如下:
(2)ROM和RAM与CPU连接图:
8.存储器容量为64M,字长64位,模块数m = 8,分别用顺序方式和交叉方式进行组织。
存储周期T = 100ns,数据总线宽度为64位,总线周期τ= 50ns。
若连续读出8个字,问顺序存储器和交叉存储器的带宽各是多少?
解:信息总量:q=64位×8=512位
顺序存储器和交叉存储器读出8个字的时间分别是:
t
2
=mT=8×100ns=8×10(s)
t 1=T+ (7-1)*max{,/}
T m
=100+7×50= 4.5×10(s)
顺序存储器带宽是:
W 2= q/t
2
=512÷(8×10)=64×10(位/S)
交叉存储器带宽是:
W 1=q/t
1
=512÷(4.5×10)=113.8×10(位/S)
9. CPU执行一段程序时, cache完成存取的次数为2420次,主存完成存取的次数为80次,已知cache存储周期为40ns,主存存储周期为240ns,求cache/主存系统的效率和平均访问时间。
解:先求命中率h
h=N
c /(N
c
+N
m
)=2420÷(2420+80)=0.968
则平均访问时间为ta
t a =h×t
c
+(1-h) ×t
m
=0.968×40+(1-0.968) ×240=46.4(ns)
cache/主存系统的效率为e
e=t
c /t
a
=40/46.4=86.2%
10.已知cache存储周期40ns,主存存储周期200ns,cache/主存系统平均访问时间为50ns,求cache的命中率是多少?
解:根据t
a =h×t
c
+(1-h) ×t
m
得
h=(t
m -t
a
)/ (t
m
-t
c
)=(200-50)/(200-40)=0.9375
(注:文档可能无法思考全面,请浏览后下载,供参考。
)。