通过题目来讲一讲存储器分层体系结构相关知识 1 | 计算机组成与系统结构专题

举报
Regan Yue 发表于 2021/06/27 22:49:58 2021/06/27
【摘要】 题目1某计算机主存容量为64KB,其中ROM区为4KB,其余为RAM区,按字节编址,现要用2K×8位的ROM芯片和4K×4位的RAM芯片来设计该存储器,则需要上述规格的ROM芯片数和RAM芯片数分别是多少? 题目1 解答RAM区为 64KB-4KB = 60KBROM芯片 = (4KB8位)/(2K8位) = 2片RAM芯片 = (60KB8位)/(4K4位) = 30片 题目2用8K×8...

题目1

某计算机主存容量为64KB,其中ROM区为4KB,其余为RAM区,按字节编址,现要用2K×8位的ROM芯片和4K×4位的RAM芯片来设计该存储器,则需要上述规格的ROM芯片数和RAM芯片数分别是多少?

题目1 解答

RAM区为 64KB-4KB = 60KB
ROM芯片 = (4KB8位)/(2K8位) = 2片
RAM芯片 = (60KB8位)/(4K4位) = 30片

题目2

用8K×8位的EPROM芯片组成32K×16位的只读存储器,试问:

(1)数据寄存器最少应有多少位?

(2)地址寄存器最少应有多少位?

(3)共需多少个EPROM芯片?

题目2 解答

(1)数据寄存器最少有16位,应不少于存储器的位数。

(2)与存储器的大小有关。

按字节编址:容量32K*(16/8)B = 64KB 然后有 64KB / 8bit = 64K个单元

按字编址:容量32K*(16/8)B=64KB 然后有 64KB / 16bit = 32K个单元

则地址寄存器最少有:15位(若按字编址);16位(若按字节编址)。

(3)需要32K * 16位 / (8K * 8位) = 8个

题目3

用256×8位的RAM芯片扩展为1k×8位的RAM,请回答以下问题:

a. 共需要几块芯片,采用何种扩展方式?

b. 请将以下CPU与存储器的连接图补充完整。

c. 请写出各芯片的地址范围。

image.png

题目3 解答

a. 1k*8位/(256*8位)=4片 采用字扩展方式

b.

image.png

c.

000H-0FFH

100H-1FFH

200H-2FFH

300H-3FFH

题目4

假定某机主存1GB,按字节编址。Cache的数据区(即不包括标记、有效位等存储区)有64KB,块大小为128字节,采用直接映射和直写(Write-Through)方式。请问:

  1. 主存地址如何划分?要求说明每个字段的含义、位数和在主存地址中的位置。

  2. Cache的总容量为多少位?

题目4 解答

主存: Cache 共 64KB/128B=512 行。

主存地址为 30 位,其中,高 14 位为标志;中间 9 位为行索引(行号);低 7 位为块内地址。

考虑有效位、标志位而不考虑替换算法等所需的控制位,Cache总容量为:
512x(128x8+14+1)位=519.5K位

题目5

分析比较以下三个函数的空间局部性,并指出哪个最好,哪个最差?

image.png

题目5 解答

对于函数clear1,其数组访问顺序与在内存存放顺序完全一致。因此,空间局部性最好。

对于函数clear2,其数组访问顺序在每个数组元素内跳跃式访问,相邻两次访问的单元最大相差3个int变量(假定sizeof(int)=4,则相当于24B)因此,空间局部性比clear2还差。若主存块大小比12B小的话,则大大影响命中率。

对于函数clear3,其数组访问顺序与在内存中的存放顺序不一致,相邻两次访问的单元都相差6个int型变量(假定sizeof(int)=4,则相当于24B)因此,空间局部性比clear2还差,是三个中空间局部性最差的。若主存块大小比24B小的话,则大大影响命中率。

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。