现有如下存储芯片:2K×1的ROM、4K×1的RAM、8K×1的ROM。若用它们组成容量为16KB的存储器,前4KB为ROM,后12KB为RAM,CPU的地址总线16位。 (1)各种存储芯片分别用多少片? (2)正确选用译码器及门电路,并画出相应的逻辑结构图。 (3)指出有无地址重叠现象
时间: 2023-06-26 18:09:24 浏览: 815
(1) 首先需要确定ROM和RAM各需要多少片。
前4KB为ROM,所以需要ROM的容量至少是4KB,而可供选择的ROM有2K×1和8K×1两种。因此我们可以使用2片8K×1的ROM,或者4片2K×1的ROM来实现4KB的ROM。
后12KB为RAM,所以需要RAM的容量至少是12KB,而可供选择的RAM有4K×1和8K×1两种。因此我们需要3片4K×1的RAM来实现12KB的RAM。
因此,总共需要4片存储芯片,其中2片8K×1的ROM和3片4K×1的RAM。
(2) 我们需要使用译码器和门电路来实现对ROM和RAM的地址选择。由于CPU的地址总线是16位,而存储器总容量为16KB,因此我们需要使用一个15-4译码器来实现对ROM和RAM的地址选择。具体实现方式如下图所示:
![image.png](https://cdn.nlark.com/yuque/0/2021/png/97322/1611142982950-9b6d9b39-911d-401a-b2a6-1c9f5c9e2f6d.png#align=left&display=inline&height=221&name=image.png&originHeight=442&originWidth=785&size=22202&status=done&style=none&width=392.5)
其中,D0~D3为CPU的地址总线的低4位,A0~A11为ROM和RAM的地址总线,A12~A14为译码器输出的3位地址线。门电路的实现方式如下:
- 对于8K×1的ROM,我们需要使用一个与门和一个反相器来实现ROM的地址选择。具体实现方式如下图所示:
![image.png](https://cdn.nlark.com/yuque/0/2021/png/97322/1611142983059-f1a7c5e5-006b-4f2f-8d7e-4e1e166f5b62.png#align=left&display=inline&height=117&name=image.png&originHeight=233&originWidth=566&size=11213&status=done&style=none&width=283&zoom=1.5)
- 对于4K×1的RAM,我们需要使用两个与门和一个反相器来实现RAM的地址选择。具体实现方式如下图所示:
![image.png](https://cdn.nlark.com/yuque/0/2021/png/97322/1611142983092-9d4a3f3d-60a4-4f41-a6fd-6b0b0e4f2d8e.png#align=left&display=inline&height=170&name=image.png&originHeight=339&originWidth=566&size=14620&status=done&style=none&width=283&zoom=1.5)
(3) 由于ROM和RAM的地址范围没有重叠,因此不存在地址重叠现象。ROM的地址范围为0x0000~0x0FFF,RAM的地址范围为0x1000~0x3FFF。
阅读全文