Hi,Andy Yin1:
我在DSPC-8681E(advantech 4块6678)板子上面跑SRIO例程。
我注意到8681E板子上每个DSP的DDR的DDR_CLKP/N输入时钟是166.67MHZ。
而原始SRIO程序里面DDR_CLKP/N输入时钟是66.67MHZ。代码里面倍频20倍得到1333DDR3。
代码如下:
//DDR init 66.66667*20/1= 1333
KeyStone_DDR_init (66.66667, 20, 1, NULL);
因此,我修改了代码(不修改程序会死在KeyStone_DDR_init)如下所示:
KeyStone_DDR_init (166.67, 8, 1, NULL); //我的想法是166.67 *8 = 1333.36MHZ
但是,跑起来之后,进行Memory_Fill_Test内存测试。发现都失败了,如下所示:
SRIO_DIGITAL_LOOPBACK test start............................................
Initialize DSP main clock = 100.00MHz/1x10 = 1000MHz
Initialize DDR speed = 166.67MHzx8/1 = 1333.360MTS
DDR3 leveling has failed, STATUS = 0x40000064
Memory pattern filling Test fails at 0x80000000, Write 0x 0, Readback 0x a0000f7000000
Memory pattern filling Test fails at 0x80000008, Write 0x 0, Readback 0x f50000ef000000
Memory pattern filling Test fails at 0x80000010, Write 0x 0, Readback 0x ff0000df000000
上面说明,DDR初始化不成功,内存检测失败。请问哪里设置有问题?谢谢!