Beagleboard xM中使用的mDDR芯片

时间:2014-03-19 06:48:34

标签: linux ram bootloader beagleboard

我正在分析Beagleboard xM上POP mDDR的X-Loader设置。 BB xM中的mDDR POP内存量为512MB(根据手册)。 更确切地说是Micron变体:CS0上256MB + CS1上256MB =总共512MB。 总线宽度为32位,可以在X-Loader的SDRC_MCFG_p寄存器设置中进行验证。 使用的内存类型是该组中提到的MT46H128M32L2KQ-5:

https://groups.google.com/forum/#!topic/beagleboard/vgrq2bOxXrE

读取该存储器的数据表,最大容量的32位配置为16Meg x 32 x 4 = 64Meg x 32。 所以64MB不是256MB,128 MB是可行的,但只有16位总线宽度,即使这样,我们仍然不是256MB。 上面提到的那个人说内存是4Gb,但数据表说它是2Gb。

我的问题: 如何使用上述类型和32位总线宽度的2个存储器芯片实现512MB?

提前感谢您的帮助。

马丁

1 个答案:

答案 0 :(得分:0)

根据数据表MT46H128M32L2KQ-5具有以下配置:

MT46H128M32L2 – 16 Meg x 32 x 4 Banks x 2

16 Meg x 32 x 4 Bank x 2 = 4096 Meg(位,不是字节)

4096 Meg(位)/ 8 = 512 MB(兆字节)

更多来自数据表:

The 2Gb Mobile low-power DDR SDRAM is a high-speed CMOS, dynamic 
random-access memory containing 2,147,483,648 bits. 

Each of the x32’s 536,870,912-bit banks is organized as 16,384 rows by 1024 
columns by 32 bits. (p. 8)

因此,如果将行数乘以位数乘以位数(在数据表中指定),您将获得以位为单位的存储区大小。银行大小= 16384 x 1024 x 32 = 16 Megs x 32 = 536870912(位)。

接下来,您需要将存储区大小(以位为单位)乘以芯片中的存储区数量:芯片尺寸= 536870912 x 4 = 2147483648(位)。

为了获得以字节为单位的结果,你必须将其潜水8。

芯片尺寸(字节)= 2147483648(位)/ 8 = 268435456

为了获得以兆字节为单位的结果,您必须将其潜入1024 x 1024

芯片尺寸= 268435456 / 1024/1024 = 256 MB(兆字节)

这是双LPDDR芯片,内部组织为2 x 256 MB芯片(它有两个芯片选择:CS0#,CS1#)(在数据表中指定)。单芯片内部包含两个内存芯片,每个芯片256MB。对于BB,这个单芯片必须配置为2个存储器,每个256MB,以获得512MB。因此,您必须将CS0设置为256MB,将CS1设置为256MB。