i.MX6DL SABRE SDP/B DDR3 Register Programming Aid

Showing results for 
Search instead for 
Did you mean: 

i.MX6DL SABRE SDP/B DDR3 Register Programming Aid

No ratings

i.MX6DL SABRE SDP/B DDR3 Register Programming Aid

This is a detailed programming aid for the registers associated with MMDC initialization. The last sheet formats the register settings for use with ARM RealView ICE. It can also be used with the windows executable for the DDR Stress Test.


Register MMDC_MAARCR is not normally programmed by the initialization script. Freescale recommends leaving it with default values.

This is an advisory to customers who decide to change some of the fields in this register.

A bug has been found with the ARCR_GUARD field. It should always be left programmed to the default 0x0 value. If programmed to a different value, the behavior is unpredictable.


Can someone help me with DDR3 calibration on iMX6SOLO custom board.

My board has 2 memory chips IS43TR16128B-125KBL, T topology.

I used MX6DL_SabreSD_DDR3_register_programming_aid_v2.2.xlsx as a reference to create registers settings. My file is attached.

For calibration I used DDR_Stress_Tester_V1.0.3, but it can not pass calibration

MX6DL_DDR3_my.xlsx - Google Drive 

DDR_Stress_Tester.exe -t mx6x -df MX6DL_DDR3_my.inc -usb
MX6DL opened.
Image loading...
download Image to IRAM OK

Re-open MX6x device.
Running DDR test..., press "ESC" key to exit.

    DDR Stress Test (1.0.3) for MX6DL
    Build: Jun 25 2014, 12:09:29
    Freescale Semiconductor, Inc.

=======DDR configuration==========
BOOT_CFG3[5-4]: 0x00, Single DDR channel.
DDR type is DDR3
Data width: 32, bank num: 8
Row size: 14, col size: 10
Chip select CSD0 is used
Density per chip select: 512MB

What ARM core speed would you like to run?
Type 0 for 650MHz, 1 for 800MHz, 2 for 1GHz
  ARM set to 800MHz

Please select the DDR density per chip select (in bytes) on the board
Type 0 for 2GB; 1 for 1GB; 2 for 512MB; 3 for 256MB; 4 for 128MB; 5 for 64MB; 6 for 32MB
For maximum supported density (4GB), we can only access up to 3.75GB.  Type 9 to select this
  DDR density selected (MB): 512

Calibration will run at DDR frequency 400MHz. Type 'y' to continue.
If you want to run at other DDR frequency. Type 'n'
  DDR Freq: 396 MHz

Would you like to run the write leveling calibration? (y/n)
  Please enter the MR1 value on the initilization script
  This will be re-programmed into MR1 after write leveling calibration
  Enter as a 4-digit HEX value, example 0004, then hit enter
0004 You have entered: 0x0004
Start write leveling calibration
Write leveling calibration completed
MMDC_MPWLDECTRL0 ch0 after write level cal: 0x001F001F
MMDC_MPWLDECTRL1 ch0 after write level cal: 0x001F001F

Would you like to run the DQS gating, read/write delay calibration? (y/n)
Starting DQS gating calibration...
. . . . . . . . . . . . . . ERROR FOUND, we can't get suitable value !!!!
dram test fails for all values.

The DDR stress test can run with an incrementing frequency or at a static freq
To run at a static freq, simply set the start freq and end freq to the same value
Would you like to run the DDR Stress Test (y/n)?

Enter desired START freq (135 to 672 MHz), then hit enter.
 Note: DDR3 minimum is ~333MHz, do not recommend to go too much below this.
  The freq you entered was: 400

Enter desired END freq (135 to 672 MHz), then hit enter.
Make sure this is equal to or greater than start freq
  The freq you entered was: 400

Beginning stress test

loop: 1
DDR Freq: 396 MHz
t0.1: data is addr test
Address of failure: 0x10000000
Data was: 0x0100ffff
But pattern  should match address

Hi Michael,

I can help you with your problem.

First, please repost this question as a thread specifically for questions.


Then, in the body of the post, tag me TheAdmiral‌ and I will assign the question to myself to help you.

I notice that you are using a very old version of the stress test. When you have created the new thread, I will send you a copy of the newest stress test (3.0.0). You can use it to see if you are getting any different readings.

And please let me know what company you are working for.

In the mean time, I will start by looking at your RPA settings.



Version history
Revision #:
1 of 1
Last update:
‎06-24-2015 10:09 PM
Updated by: