分享

内存芯片选型怎么做? – 原来是酱紫的!

 Rogrs 2016-04-20


 


这里首先要讲一个概念:Rank。内存控制器host端往往有一定的数据位宽,比如现在常用的计算机系统处理器都是64位,其中所集成的内存控制其接口也是64位。而内存芯片的位宽通常为4/8/16位,要达到64位,必须把多个内存芯片组合在一起。比如是8位内存芯片,则必须要8个内存芯片组合在一起才能跟host64位接口匹配。这样的host端总线位宽相匹配的多个内存芯片的组合就是一个Rank

        

回到开始的关于内存芯片选型的讨论,下面以具体例子进行讲解。


例子1:如果你的嵌入式系统设计需要256MByte的内存(注意这里是Byte不是bit),控制处理器芯片内存接口数据是8位的,Rank选择信号有两个CS0#/CS1#。这种应用应当选什么样的内存芯片呢?


分析: 由于处理器端的数据位是8位,内存芯片的数据位应避免大过处理器端的数据位。所以选择的内存芯片是8位或4位

  • 如果要选择4位的内存芯片

    • 由于有两根Rank选择信号,可以支持最大2Rank。处理器端的数据位是8位,而内存芯片也是4位,就是说每个Rank可支持2个芯片(处理器端的数据位/内存芯片数据位=2),两个Rank可以支持4个芯片。每个芯片容量是256MB x 8/4 = 512Mb,也就是说应该选512Mb/4位(32Mx4x4banks)的内存芯片

    • 也可以选择1Rank,这样也就可以用总共2个内存芯片,每个芯片容量是256MB x 8/2 = 1Gb。也就是说应该选1Gb/4位(64Mx4x4banks)的内存芯片

       

  • 如果要选择8位的内存芯片

    • 由于有两根Rank选择信号,可以支持最大2Rank。处理器端的数据位是8位,而内存芯片也是8位,就是说每个Rank只能支持1个芯片(处理器端的数据位/内存芯片数据位=1),两个Rank可以支持2个芯片。每个芯片容量是256MB x 8/2 = 1Gb,也就是说应该选1Gb/8位(32Mx8x4banks)的内存芯片

    • 当然也可以用1Rank,也只能用一个内存芯片,其容量较大2Gb/8,不知到能不能找到这样的芯片

  

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多