您好,欢迎进入 官方网站!
当我在看有关SDRAM的芯片手册的时候,我一直在想这样一个问题:SDRAM的容量它究竟是如何计算的呢?经过查找网上的各种资料,最后在这里给大伙分享一下我的总结!
就以我的开发板的SDRAM的芯片手册的型号:h57v2562gtr60c为例。通过查看我的h57v2562gtr60c的datasheet,我们知道:
?
行地址选择线有13根(RA0~RA12),列地址选择线有9根(CA0~CA8),
Bank选择线有2根(BA0,BA1),数据线16根(DQ0~AQ15)
而我们知道SDRAM的总单元数=(2^行地址选择线)*(2^列地址选择线)*(2^Bank选择线)
由此我们得出我们的SDRAM的总单元数=(2^13)*(2^9)*(2^2)=2^24 个单元数
注:行地址选择线位13,并不代表我们的每个Bank只有13行,而是代表我们每个Bank可以表示的行数为2^13行,对于列地址选择线和Bank线也是同样的道理。
我们知道了SDRAM的总的单元数,但是我们还不能确定整个SDRAM的容量,因为我们还不清楚我们的SDRAM的每个单元存放的数据是多少位,那么这个又是如何确定的呢?
那么这就涉及到了位宽的概念,在TQ2440的开发板中,是用两块SDRAM组成一整个SDRAM的,其中地址线是公用同一个地址,而数据线则分成两个16位,因为每片SDRAM只提供16的数据线,那么我个人的理解是:低16位存在其中一片SDRAM中,高16位存在另一片SDRAM中,这样就达成了,每次往同一地址发送或读取数据的时候,就达成了一次发送或读取32位位宽的数据的目的,亦即,每个地址下所对应的一个存储单元的数据都是32位的。
所以我们整个的SDRAM的容量=(SDRAM的总单元数)*(位宽)=(2^24) * 32 =2^29 bit
注:我这里算的是TQ2440开发板的整个SDRAM的总的容量,而不是只单独每一片的SDRAM的总的容量。若是单独每一片的SDRAM的容量 = 整个的SDRAM的容量 / 2
注:这里计算的单位是bit,若我们把它转化成字节数则是 2^29 bit / 8 = 2^26 Byte = 2^6 MB = 64 MB
这就是TQ2440开发板的最终的SDRAM的容量。