微机原理存储器扩展,答案是怎么做出来的?

设某系统的CPU有地址线16条,连接了4K ROM和1K RAM。已知ROM用8708芯片(1024×8),RAM用2114芯片(1024×4)。若用高位地址线全译码输出作为各芯片的选片信号,最高地址的4条输出线接ROM,最低地址的输出线接RAM,则各片的地址范围是多少?
【答案】
4片ROM地址范围是F000H~F3FFH,F400H~F7FFH,F800H~FBFFH,FC00H~FFFFH;RAM的地址范围是0000H~03FFH。

第1个回答  2020-11-26
ROM容量4K,地址范围0-FFF,RAM1K ,地址范围0-3FF,如果将400H(1K)看作一页(逻辑上),ROM占4页,RAM占1页,则每页所需10位描述,页码则需要2位描述,合起来需要12位。
页码:页空间
xx:xx-xxxxxxxx
其中高2位页码对应高位地址全译码给ROM选片信号。
地址位一共16位,因此最高位地址为4位(16-12)用于选择ROM,当全1时则F000-FFFF为ROM区,全0时为0000-3FF,对应RAM区。

16位地址位定义

内存选择:页码:页空间
xxxx:xx:xx-xxxxxxxx

由此,对于ROM的每一页地址范围的位值
p0:
1111:00:00-00000000=F000
1111:00:11-11111111=F3FF
p1
1111:01:00-00000000=F400
1111:01:11-11111111=F7FF
p2
1111:10:00-00000000=F800
1111:10:11-11111111=FBFF
p3
1111:11:00-00000000=FC00
1111:11:11-11111111=FFFF
RAM的地址范围位值,实际上就是ROM地址的p0去掉最高位,其他低位一样。
0000:00:00-00000000=0000
0000:00:11-11111111=03FF

以上二进制位值之间的冒号和连接符号没有特殊含义只是为了区分不同位域。
相似回答