DDR2内存控制器配置求助
时间:10-02
整理:3721RD
点击:
最近在用三星的S3C2416带DDR2的内存做项目,三星的SMDK上带的是DDR2-533的一颗内存,关键参数CAL-tRCD-tRP是4-4-4,
采购芯片时说这种芯片不好找了,停产了,就采了一颗引脚和容量都兼容的DDR800的,,关键参数CAL-tRCD-tRP是6-6-6,当时也没有多想,觉得修改一下内存控制器的参数就可以了,但是仔细看2416的数据手册就晕了,它的这几个关键参数最大只能设置为3-4-4,SMDK代码中实际的设置值是3-2-2,我用的内存颗粒焊上去之后还不能工作,把这几个参数改到最大都不能正常工作,不知道改怎么配置了,另外内存颗粒的MRS里面也有CAL参数的设置,这个参数的设置和内存控制器里的CAL参数改怎么配置呢?他们是设置成一样的还是,是相加的关系呀?我还隐隐感觉到2416的内存控制器可能是一个阉割版的,真不知道改怎么配置了,不过还在研究中,希望有感兴趣的朋友一起研究,把这个问题搞清楚,改帖子会持续更新
采购芯片时说这种芯片不好找了,停产了,就采了一颗引脚和容量都兼容的DDR800的,,关键参数CAL-tRCD-tRP是6-6-6,当时也没有多想,觉得修改一下内存控制器的参数就可以了,但是仔细看2416的数据手册就晕了,它的这几个关键参数最大只能设置为3-4-4,SMDK代码中实际的设置值是3-2-2,我用的内存颗粒焊上去之后还不能工作,把这几个参数改到最大都不能正常工作,不知道改怎么配置了,另外内存颗粒的MRS里面也有CAL参数的设置,这个参数的设置和内存控制器里的CAL参数改怎么配置呢?他们是设置成一样的还是,是相加的关系呀?我还隐隐感觉到2416的内存控制器可能是一个阉割版的,真不知道改怎么配置了,不过还在研究中,希望有感兴趣的朋友一起研究,把这个问题搞清楚,改帖子会持续更新
首先DDR2是可以降频使用的,其次根据你提供的信息,DDR2走3-2-2的配置,这里要把DDR2-500换成800的,换首先要保证更换以后的内存,在内存组织形式上是一致的,比如说:原来的颗粒是单颗32Mbx16的;那么更换以后的也同样是32Mbx16规格的。这样你只需要改动很少的时序参数既可以跑起来。如果颗粒容量发生变化,还需要更高DDR的刷新时间等寄存器参数。此外,需要确定S3C2416核心频率与DDRC工作平率的比例,正确选用准确合适的DDR。
修改的思路是先搞清楚原来的DDR533的时序参数的含义,然后再去选型进行寄存器配置,以三星内存为例,DDR800,CL延时可以在下图中看到,最小从4开始,这个延时值是至关重要的,和DDR的工作频率息息相关,务必要了解清楚。
看来对这个问题感兴趣的人不多,自己继续更新中,希望我的理解能够帮助需要的人,我个人的理解是DDR2芯片手册上给出的关键参数(CL)代表的是该芯片运行在其所支持的最高频率时的关键参数,DDR2是可以降频使用的,降频使用时他的CL值是可以减小的;另外对于MRS中的CL和控制器中的CL的关系,我认为两者必须设置为一样的
不懂,只能观摩。
高手,学习下!
非常感谢你的回复,之前确实没有看懂DDR内存的数据手册,一直不明白CL=3、4、5、6是什么意思,现在明白了这些参数是当DDR配置为CL=3,4,5时其他参数应当配置的范围,这样理解,我选的6-6-6的颗粒是不能支持CL=3的,所以就工作不了