某计算机按字节编址,其中已配有 0000H~7FFFH的ROM区域,现在再用16Kx4位的 RAM 芯片形成32Kx8 位的存储区域,CPU 地址线为A0~A15。答下列问题 (1)RAM 区的地址范围是什么?共需要多少 RAM 芯片?地址线中哪一位用来区分 ROM区 和RAM区? (2)假定CPU地址线改为24 根,地址范围 000000H ~007FFFH为 OM 区剩下的所有地址空间都用 16Kx4位的 RAM芯片配置,则需要多少个这样的 RAM芯片?
时间: 2024-03-30 13:34:12 浏览: 268
(1) RAM区的地址范围是8000H~FFFFH,共需要8个16Kx4位的RAM芯片,地址线中最高位A15用来区分ROM区和RAM区。
(2) 当CPU地址线为24根时,地址范围000000H~007FFFH为ROM区,剩下的地址空间为RAM区,共16MB的地址空间。因此需要1024个16Kx4位的RAM芯片来配置RAM区。
相关问题
用 8K×8 位的 ROM 芯片和 8K×4 位的 RAM 芯片组成存储器,按字节编址。ROM 地址为 0000~1FFFH,RAM 地址为 6000H~7FFFH,要求画出存储器组成结构图及与 CPU 的连接图。
在构建这种存储器系统时,我们需要将 ROM 和 RAM 合并在一起,并考虑到地址线和数据线的配置。假设我们有两块芯片:
1. 一块 8K×8 位的 ROM(Read Only Memory),它有 8K(即 2^11 = 2048)个存储单元,每个单元占用8位。它的地址空间从 0000H 到 1FFFH。
2. 另一块 8K×4 位的 RAM(Random Access Memory),也有 8K 个存储单元,但每个单元只有4位宽。其地址范围从 6000H 到 7FFFH。
由于 RAM 需要更多的地址线来访问完整的4位数据,而ROM 单元已经足够大可以一次性读取一个字节(8位),所以我们可以直接将 ROM 紧凑地放置在地址范围内0000H到3FFFH,而 RAM 从 6000H 开始,每四个连续地址对应一个完整的8位数据。
以下是存储器组成结构图的大致示意图:
```
+----------------------------------------+
| 8Kx8 ROM (0000H - 1FFFH) |
+---------------------+-----------------+
| |
+--+-------------+
| | 8Kx4 RAM | |
| | (6000H - 7FFFH)| |
| +--+
+-------------------------------------------------+
| Address Bus (11 bits for ROM, 10 bits for RAM)|
| Data Bus (8 bits for both) |
+---+
| Connection to CPU: Address and Data Lines |
+-------------------------------------------------+
```
CPU 通过地址总线选择数据来源,如果地址在0000H到3FFFH范围内,会从 ROM 中获取数据;如果地址在6000H到7FFFH范围内,则从 RAM 中获取数据。数据线用于读取或写入数据到相应的存储器位置。
某存储器容量为64KB,按字节编址,地址4000H~7FFFH为ROM区,其余为RAM区。若采用 8K*4位的SRAM芯片进行设计,则需要该芯片的数量是 数至少是 ,存储器地址寄存器MAR的位
数至少是 8 个芯片。
由于采用的是8K*4位的SRAM芯片,每个芯片的容量为8KB,即2^13个字节。而RAM区的大小为64KB-8KB=56KB,即2^16-2^13个字节。
因此,需要的芯片数量为 RAM区大小/每个芯片的容量 = 2^16-2^13)/(2^13) = 7.875,向上取整为8个芯片。
存储器地址寄存器MAR的位数应该为16位,以便能够寻址整个存储器的64KB空间。
阅读全文