DRAM、内存

    • 1 内存类型
    • 2 内存结构及参数

1 内存类型


  现在用的比较多的内存有DDR4、DDR3、LPDDR4、LPDDR3,早期还有DDR及DDR2版本,现在基本上不用了。手机、平板及超级本中用LPDDR4、LPDDR3的比较多,因为此类产品对功耗的要求比较高。一般电脑使用DDR4、DDR3。

2 内存结构及参数


  在内存调试时,经常需要用到rank、bank等参数。可以看到电脑的内存条中,有很多一片一片的芯片,这就是内存芯片,也是叫内存颗粒。参考1 参考2 参考3
  一颗内存颗粒由多个bank组成,现在的内存颗粒一般是8个bank。如图 2-1 所示,多个bank构成一颗内存颗粒,每个bank对于内存来说是平等的关系。因为内存控制器的原因,每个时钟周期只能对一个bank进行操作。

DRAM、内存_第1张图片
图 2-1 DRAM bank

  内存的基本单元称为cell,内存颗粒是由一个个的cell组成的,图 2-2 是一个bank中cell的组成。如图所示,一个cell就是一个小方格,cell按行(row)、列(column)分布组成一个bank。
  一个cell的位数就是内存颗粒的位宽
  
  

DRAM、内存_第2张图片
图 2-2 DRAM cell

  
  所有在内存容量关系中, 颗粒 > bank > rowcolumn > cell
  
   Rank是什么意思,内存条贴了很多内存颗粒,贴颗粒的面数就是Rank,如果只有一面贴有内存颗粒,叫做single rank,如果两面都贴有内存颗粒,叫做dual rank。也就是1 rank 、2 rank。
  
  实际上 rank不是面数,内存控制器与内存之间的接口位宽是64bit,也就意味着CPU在一个时钟周期内会向内存发送或从内存读取64bit的数据。可是,单个内存颗粒的位宽仅有4bit、8bit或16bit,个别也有32bit的。因此,必须把多个颗粒并联起来,组成一个位宽为64bit的数据集合,才可以和CPU互连。生产商把64bit集合称为一个物理BANK(Physical BANK),简写为P-BANK。为了和逻辑BANK相区分,也经常把P-BANK称为RANK或Physical RANK,把L-BANK则简称为BANK。

  如果每个内存颗粒的位宽是8bit,应该由8个颗粒并联起来,组成一个RANK(64bit);同理,如果颗粒的位宽是16bit,应该由4个颗粒组成一个RANK。

  由此可知:Rank其实就是一组内存颗粒位宽的集合。具体说,当颗粒位宽×颗粒数=64bits时,这个模组就是有一个RANK。
  
  chip selects,chip selects(片选) 实际上是与rank相对应的,一个chip selects控制一个rank的内存芯片,图2-3是arm内存控制器部分信息。两组rank共享addr/command信号,使用cs片选决定对哪组rank进行读写操作。
  

DRAM、内存_第3张图片
图 2-3 chip selects

  内存容量计算:
  内存颗粒容量 = 每个逻辑BANK的cell数×逻辑BANK数量×每个cell的位数(芯片的位宽)
  DRAM、内存_第4张图片
  density:密度,针对内存而言,可以认为是容量大小,一个rank density(chip selects density)指的是一个rank(片选)中所有内存颗粒总的容量。total density通常指内存控制器控制所有内存颗粒的容量。一片内存的density指的就是一片内存颗粒的容量。
  
  H5TQ4G63CFR-*xxJ容量 = 256M x 16 / 8 = 32 x 8 x 16 / 8 = 512MB
  H5TQ4G63CFR-*xxJ两组重要参数:
  

DRAM、内存_第5张图片
DRAM、内存_第6张图片

你可能感兴趣的:(硬件调试)