这篇文章以前理解有误,现更正如下:
调试了这么久的emcp,对这些概念多少有点了解,但是始终有点模糊,欢迎交流!
首先把我的理解写下来:
要弄清楚rank和bank的概念,首先得搞清楚SDRAM。
SDRAM:内存颗粒,DDR就是将这些颗粒集成在一起,再加一个控制器而已。
RANK:rank是为了凑cpu的位数。例如cpu是64bit的,但是sdram一般是4bit或者8bit,所以要凑8个,也就是数据位扩展,这8个就叫一个rank。
BANK:简单的说就是一个行,列组成的矩阵。专业名称叫记忆体晶片。属于ddr的内部结构,调试过程中一般不用管。计算机ddr的容量的时候,一般都会有Xbanks。
DIE:
是闪存封装里面的晶圆
按从小到大排序:bank < rank < die
mtk平台需要调的基本就是die这一块了,我们常说的cs片选,就是相对于die来说的。
另外还有一个重要概念:
channel:通道,多个通道是用来改善性能,增加带宽的,采用并联的方式。
bank<rank<die<channel