跳转到主内容
Knowledgebase
Home
Renesas Electronics China - Knowledgebase

外部存储器扩展的基本内容有那些?

最新更新:2011年10月 05日

Question:

外部存储器扩展的基本内容有那些?

Answer:

一些微控制器除了自身内部的 ROM 和 RAM 外,还具有存储器扩展功能。
下图显示了内部地址和外部地址的关系。由于设备和/或者设置问题, 只有一部分的地址信息可以作为外部输出。


以下内容描述了 CPU 处理16位的地址空间及内部ROM容量为24KB的情况。 如上图 CPU 存储器映射所示。
在这个例子中,从6000H开始的地址用于外部扩展区域。
为了简便起见,外部扩展区域为32KB,从6000H至DFFFH。

(1) 规定输出12位地址(4KB扩展)的情况
在这种情况下,物理上可以扩展的存储器为 212 = 4KB。
当 CPU 访问地址6000H时,输出其低12位000H。
当访问7000H、8000H或者9000H时,输出低12位仍是000H。
这也就是说,访问的是相同的物理地址,且相同的地址每4KB出现一次。

4KB扩展的存储器映射:


(2) 规定输出14位地址(16KB扩展)的情况
在这种情况下,物理上扩展的存储器为 214 = 16KB。
当 CPU 访问6000H时,输出低14位地址2000H。
类似地,访问7000H时输出3000H,访问8000H时输出0000H,访问9000H时输出1000H, 访问A000H时输出2000H,访问B000H时输出3000H。
因此,从使用6000H起,内部地址与外部行地址的关系转变了。
当 RAM 扩展时不会出现问题,但连接至PROM或闪存时要谨慎。
为了避免这种情况,建议只使用从8000H开始的地址。
此外,由于多个地址对应于相同的外部地址,因此当RAM扩展时, 必须进行管理,以避免通过不同的逻辑地址访问相同的物理地址。

16KB扩展的存储器映射:


(3) 规定输出16位地址(64KB扩展)的情况
在这种情况下,外部可使用64KB的空间。
然而,由于 CPU 本身只能处理64KB空间,可扩展的外部存储器容量等于64KB减去 CPU 的内部存储器容量。 (由于设备不同,可扩展外部存储器可能更小)。
此时,外部地址和内部地址的值相同。
因此,与内部ROM重叠的部分就浪费了(这里是指从0至5FFFH的地址空间)

64KB扩展的存储器映射:
Suitable Products