K4S561632 SDRAM内存大小

时间:2015-11-19 17:22:36

标签: embedded

我使用K4S561632C 256Mbit SDRAM来增加MCU的内存,但我在SDRAM的初始化库中找到了这些产品线,它为我提供了产品:

#define SDRAM_BASE_ADDR     0xA0000000
#define SDRAM_SIZE          0x01000000   /* 16M 128Mbit 1024*1024*16 byte */                         

但正如我上面说的那样它是256Mbit内存而SDRAM_Size是指128Mbit内存。任何人请清楚我吗?

1 个答案:

答案 0 :(得分:1)

根据您使用的库中的代码,有两种可能的答案。

可能性1

根据K4S561632C数据手册,该器件是一个4M x 16位x 4 Bank SDRAM。由于其数据总线为16位宽(2字节),这意味着有4M x 4 = 16,777,216(0x1000000)个不同的地址,每个地址的值为16位。库中的SDRAM_SIZE值是指设备中16位字的数量,而不是字节数。

可能性2

库文件错误。也许它最初是指较早的128Mbit部分,当引入较新的256Mbit部分时,库供应商没有更新他们的库以同意新的部分。如果是这种情况,那么您可能希望按如下方式更改该行:

#define SDRAM_SIZE          0x02000000