Hi,all:
我用DSPC-8681E
跑论坛提供的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/1×10 = 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,。谢谢!
Andy Yin1:
DDR初始化参数是与板卡的layout及SDRAM型号有关,建议找到该板卡的布线参数、及所选的SDRAM按照如下链接中的工具生成DDR3控制器配置参数,然后更新例程中的DDR配置。
DDR3 spreadsheet:http://www.ti.com/dsp/docs/litabsmultiplefilelist.tsp?sectionId=3&tabId=409&literatureNumber=sprabl2a&docCategoryId=1&familyId=1995
yu zhang16:
你好,我也在使用DSPC-8681E跑论坛提供的SRIO的例程,我想请问你是通过仿真器下载程序的吗?我使用的是SEED XDS560V2 USB Emulator,build成功后,debug后显示错误:Error connecting to the target: (Error -2131 @ 0x0) Unable to access device register. Reset the device, and retry the operation. If error persists, confirm configuration, power-cycle the board, and/or try more reliable JTAG
我想请问你是如何通过仿真器下载的,8681E应该有4个6678,用仿真器如何知道下载到哪个DSP里?
我是初学者,有许多不懂的地方,请多指教~谢谢!
xiaoxiao jiang:
我现在用的也是这块板子,请问你的DDR配置之后怎么改的?程序通过了吗?求回复
xiaoxiao jiang:
回复 Andy Yin1:
可是链接打不开T.T