Hi,all:
我用DSPC-8681E(Please visit the site to view this file)
跑论坛提供的SRIO例程。我注意到手册8681E手册里面的DDR的refclk输入时钟是166.67MHZ,但是
例程里面的DDR的refclk是66.67MHZ。代码如下所示:
//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); // 保证输出DDR3 时钟 1333MHZ
但是,修改完了之后,程序不会死了能够跑起来,但是,memory 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 ff001100000000
Memory pattern filling Test fails at 0x80000008, Write 0x 0, Readback 0x68ff009100000000
Memory pattern filling Test fails at 0x80000010, Write 0x 0, Readback 0x ff000000000000
请问哪里有问题?DSPC-8681E上面有4片6678,。谢谢!