为什么16片2K*4位的存储芯片可设计为8k存储容量的16位存储器。
时间: 2023-06-02 16:03:30 浏览: 237
这个问题属于技术问题,可以回答。16片2K*4位的存储芯片可以通过组合连接的方式设计为8k存储容量的16位存储器,每一片2k*4位存储芯片可以存储2k个4位的数据,16片存储芯片可以存储16个2k*4位的数据,经过组合连接后可以构成一个8k存储容量的16位存储器。
相关问题
.利用带片选CS的存储芯片ROM (4K×8位)和RAM(2K×16位)组成存储容量为8K×16位的存储器,并且ROM和RAM各占存储容量的一半,求该存储器所需ROM和RAM芯片数量,并画出与CPU连接图。同时给出各片存储芯片地址范围。
根据题目要求,存储器容量为8K×16位,即共有2^13个地址,每个地址对应一个16位的数据。而题目中又要求ROM和RAM各占存储容量的一半,即ROM和RAM各需4K×8位 = 2K×16位。
因此,我们需要4个ROM芯片和4个RAM芯片,每个ROM芯片可以存储4K×8位 = 2K×16位的数据,每个RAM芯片可以存储2K×16位的数据。
接下来,我们需要将这些芯片连接到CPU上。假设CPU的地址总线有13根,数据总线有16根,则我们可以将地址总线的13根分为11根A0~A10和2根片选线CS1和CS2,其中CS1用于选中ROM芯片,CS2用于选中RAM芯片。数据总线的16根直接连接到ROM和RAM芯片的数据输入/输出端口。
下面是该存储器与CPU的连接图:
```
+-----+ +-----+ +-----+ +-----+
| | | | | | | |
A10──>| | | | | | | |
| | | | | | | |
... | | | | | | | |
| | | | | | | |
A0──>| | | | | | | |
| | | | | | | |
CS2──>| RAM |<───+ RAM |<───+ RAM |<───+ RAM |
| | | | | | | |
+-----+ +-----+ +-----+ +-----+
| | | |
D0 D0 D0 D0
| | | |
... ... ... ...
| | | |
D15 D15 D15 D15
| | | |
GND GND GND GND
+-----+ +-----+ +-----+ +-----+
| | | | | | | |
A10──>| | | | | | | |
| | | | | | | |
... | | | | | | | |
| | | | | | | |
A0──>| | | | | | | |
| | | | | | | |
CS1──>| ROM |<───+ ROM |<───+ ROM |<───+ ROM |
| | | | | | | |
+-----+ +-----+ +-----+ +-----+
| | | |
D0 D0 D0 D0
| | | |
... ... ... ...
| | | |
D15 D15 D15 D15
| | | |
GND GND GND GND
```
其中,RAM和ROM芯片的地址范围如下:
- RAM1: 0x0000~0x07FF
- RAM2: 0x0800~0x0FFF
- RAM3: 0x1000~0x17FF
- RAM4: 0x1800~0x1FFF
- ROM1: 0x2000~0x27FF
- ROM2: 0x2800~0x2FFF
- ROM3: 0x3000~0x37FF
- ROM4: 0x3800~0x3FFF
注意,每个RAM芯片的地址范围都是2K,而每个ROM芯片的地址范围也是4K,因此每个芯片的地址线接法都相同,只需将A0~A10接到对应的地址线上即可。
另外,由于每个芯片的数据线都是16位宽,因此我们需要使用全部16根数据总线,这样才能同时读写16位的数据。
一个容量为16K×32位的存储器,其地址线和数据线的总和是多少?当选用下列不同规格的存储芯片时,各需要多少片? 1K×4位,2K×8位,4K×4位,16K×1位,4K×8位,8K×8位
这个存储器的地址线需要 log2(16K) = 14 根,数据线需要 32 根,总和是 46 根。
根据存储器的容量和每个存储芯片的容量,可以计算出需要的存储芯片数量:
- 1K×4位:需要 16 个芯片
- 2K×8位:需要 8 个芯片
- 4K×4位:需要 16 个芯片
- 16K×1位:需要 512 个芯片
- 4K×8位:需要 32 个芯片
- 8K×8位:需要 64 个芯片
阅读全文