DDR3 Calibration Frequency

取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 
已解决

DDR3 Calibration Frequency

跳至解决方案
1,662 次查看
cwd-hw
Contributor I

Hello iMX6 specialists,

We are developing a iMX6Solo based platform and we are using DDR3 @ 528Mhz. I have  DCD which was copied from a different iMX platform with different DDR and it is working fine with my new platform as well. However configuration values are not adjusted for the current DDR.


Then I used DDR stress tester to calibrate new DDR. With those calibrated values, stress test was running for 10 hours with no errors. However, if I use same values in u-boot DCD, it does not boot at all. It was found that if following value,

Read calibration0x021b08480x42464C44

is replaced with, 0x484B4B49, it started working despite the fact that deviation is very small.


Then I re calibrate the DDR at 400Mhz and replaced MPDGCTRL0, MPDGCTRL1 , MPRDDLCTL PHY0 , MPWDDLCTL PHY0 with new values, u-boot started working.


The reason why I use 400Mhz is following statement in "i.MX6 DDR Stress Tester User’s Guide"

7. Select DDR frequency for Calibration
The default DDR calibration frequency is 400MHz for i.MX6DL, i.MX6S, and i.MX6SL.
And, the default DDR calibration frequency for i.MX6Q and i.MX6D is 528MHz. The user
can also press ‘n’ and input a calibration frequency which is between 350MHz and 528MHz
for debugging purpose.

According to that, calibration is supposed to be done at 400 Mhz for iMX solo. However, "i.MX 6 Series DDR Calibration application note" says,

4 Calibration over Frequency Range
Calibration, as any other aspect of the DDR setup, is frequency dependent. Changing DDR clock
frequency requires running the various calibration sequences and obtaining new set of delay values.
The empirical rule is that a DDR setup for a target frequency, including a measured set of delay values at
that frequency, is expected to be stable at frequency range of ±10% around this point.


My questions are,


1. Do we need to calibrate at 528Mhz using the stress tester tool, if DDR3 working frequency is 528Mhz?

2. Is there a delay between DCD registry setting to properly initialize the DDR? The reason why I asked it that newly calibrated value at 528Mhz works fine with stress tester but not with u-boot. The way stress tester initialize the DDR my be slightly different that the way u-boot starts)


Thanks,

CDW



标签 (1)
标记 (2)
0 项奖励
1 解答
890 次查看
igorpadykov
NXP Employee
NXP Employee

Hi David

yes if working frequency 528MHz then memory should be

calibrated on 528MHz too.

However for Solo max. MMDC operating frequency is 400MHz.

~igor

在原帖中查看解决方案

0 项奖励
4 回复数
890 次查看
igorpadykov
NXP Employee
NXP Employee

Hi David

if processor works with DDR at 400MHz, it should calibrate memory at 400MHz,

there is no "delay".

Best regards

igor

-----------------------------------------------------------------------------------------------------------------------

Note: If this post answers your question, please click the Correct Answer button. Thank you!

-----------------------------------------------------------------------------------------------------------------------

0 项奖励
890 次查看
cwd-hw
Contributor I

Hi Igor,

Thank for the quick response!

Our iMX6 Solo should work with DDR at 528Mhz.

Therefore I should calibrate it at 528Mhz using stress test tool . instead of default 400Mhz .. Am i correct?

Thanks,

CDW

0 项奖励
891 次查看
igorpadykov
NXP Employee
NXP Employee

Hi David

yes if working frequency 528MHz then memory should be

calibrated on 528MHz too.

However for Solo max. MMDC operating frequency is 400MHz.

~igor

0 项奖励
890 次查看
vivekkaushik
Contributor I

Hi Igor,

What is maximum frequency of DDR3 supported by i.MX6Quad, we only see 400MHz and 528MHz options in 

1. Mx6DQSDL DDR3 Script Aid V0.09.xls and

2. ddr_stress_tester_v2.52 tool

Kind Regards

Vivek

0 项奖励