计算机组成原理3-7章作业答案
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第3章习题参考答案
2、已知某64位机主存采用半导体存储器,其地址码为26位,若使用4M ×8位的DRAM 芯片组成该机所允许的最大主存空间,并选用存条结构形式,问;
(1) 若每个存条为16M ×64位,共需几个存条? (2) 每个存条共有多少DRAM 芯片?
(3) 主存共需多少DRAM 芯片? CPU 如何选择各存条? 解:
(1) 共需
条464
1664
226=⨯⨯M 存条 (2) 每个存条共有
328
464
16=⨯⨯M M 个芯片
(3) 主存共需多少
1288
464
648464226=⨯⨯=⨯⨯M M M 个RAM 芯片, 共有4个存条,故CPU 选择存条用最高两位地址A 24
和A 25通
过2:4译码器实现;其余的24根地址线用于存条部单元的选择。
3、用16K ×8位的DRAM 芯片构成64K ×32位存储器,要求: (1) 画出该存储器的组成逻辑框图。
(2) 设存储器读/写周期为0.5μS ,CPU 在1μS 至少要访问一次。试问采用哪种刷新方式比较合理?两次刷新的最大时间间隔是多少?对全部存储单元刷新一遍所需的实际刷新时间是多少? 解:
(1) 用16K ×8位的DRAM 芯片构成64K ×32位存储器,需要用
16448
1632
64=⨯=⨯⨯K K 个芯片,其中每4片为一组构成16K ×32
位——进行字长位数扩展(一组的4个芯片只有数据信号线不互连——分别接D 0~D 7、D 8~D 15、D 16~D 23和D 24~D 31,其余同名引脚互连),需要低14位地址(A 0~A 13)作为模块各个芯片的部单元地址——分成行、列地址两次由A 0~A 6引脚输入;然后再由4组进行存储器容量扩展,用高两位地址A 14、A 15通过2:4译码器实现4组中选择一组。画出逻辑框图如下。
(2) 设刷新周期为2ms ,并设16K ⨯8位的DRAM 结构是128⨯128⨯8存储阵列,则对所有单元全部刷新一遍需要128次(每次刷新
一行,共128行) 若采用集中式刷新,则每2ms 中的最后128⨯0.5μs=64μs 为集中刷新时间,不能进行正常读写,即存在64μs 的死时间 若采用分散式刷新,则每1μs 只能访问一次主存,而题目要求CPU 在1μS 至少要访问一次,也就是说访问主存的时间间隔越短越好,故此方法也不是最适合的
比较适合采用异步式刷新:
采用异步刷新方式,则两次刷新操作的最大时间间隔为
s ms
μ625.15128
2=,可取15.5μs ;对全部存储单元刷新一遍所需的实际刷新时间为:15.5μs ⨯128=1.984ms ;采用这种方式,每15.5μs 中有0.5μs 用于刷新,其余的时间用于访存(大部分时间中1μs 可以访问两次存)。
6、用32K ×8位的E 2
PROM 芯片组成128K ×16位的只读存储器,试问: (1) 数据寄存器多少位? (2) 地址寄存器多少位? (3) 共需多少个E 2
PROM 芯片? (4) 画出此存储器组成框图。
解:(1) 系统16位数据,所以数据寄存器16位 (2) 系统地址128K =217
,所以地址寄存器17位 (3)共需
片8248
3216
128=⨯=⨯⨯K K ,分为4组,每组2片
(4) 组成框图如下
32K ⨯8 CPU
A 0~A 14
D 0~7
A 15 W/R
2-4 译码
A 16
32K ⨯8
32K ⨯8
32K ⨯8
32K ⨯8 32K ⨯8 32K ⨯8 32K ⨯8
D 0~7
CS
Y 0
CS
CS
CS
Y 1
Y 2
Y 3
A 0~A 14
D 0~D 7
D 8~15 数据 寄存器 地址 寄存器
D 8~15
W/R
W/R
9、CPU 执行一段程序时,cache 完成存取的次数为2420次,主存完成存取的次数为80次,已知cache 存储周期为40ns ,主存存储周期为240ns ,求cache /主存系统的效率和平均访问时间。 解:cache 的命中率:
%8.9680
24202420
=+=+=
m c c N N N h
主存慢于Cache 的倍率:
640
240===
c m t t r Cache/主存系统的效率:
%2.86968
.0561
)1(1=⨯-=-+=
h r r e
平均访问时间:
ns e t t c a 4.46862
.040===
14、有一个处理机,存容量1MB ,字长1B ,块大小16B ,cache 容量64KB ,若cache 采用直接映射式,请给出2个不同标记的存地址,它们映射到同一个cache 行。 解: Cache 共有
个行1221664=B
KB
,行号为12位
存块数:1MB/16B=216
;块号为16位 存地址长20位
采用直接映射方式,所以cache 的行号i 与主存的块号j 之间的关系为:
m j i mod =,m 为cache 的总行数
20位的存地址格式如下:
4位
12位
4位
两个映射到同一个cache 行的存地址满足的条件是:12位的行号相同,而4位的标记不同即可,例如下面的两个存地址就满足
要求:
0000 0 0000=00000H 与 0001 0 0000=10000H
15、假设主存容量16M ⨯32位,cache 容量64K ⨯32位,主存与cache 之间以每块4⨯32位大小传送数据,请确定直接映射方式的有关参数,并画出主存地址格式。 解:
由已知条件可知Cache 共有
个行位
位
1423243264=⨯⨯K ,行号为14位
主存共有
个块位
位
2223243216=⨯⨯M ,块地址为22位,由行号和标记组成
cache 的行号i 与主存的块号j 之间的关系为:
m j i mod =,m 为cache 的总行数
设32位为一个字,且按字进行编址,则