TI中文支持网
TI专业的中文技术问题搜集分享网站

TMS320C6672: DDR时钟配置和初始化

Part Number:TMS320C6672

您好,

在cmd文件中,配置代码运行在DDR时,在主程序里面加如DDR时钟配置和初始化时,程序卡死在DDR初始化那里,但是在cmd文件中,配置代码运行在SL2内存,DDR时钟配置和初始化就可以通过。

两种方式都在gel文件中对ddr初始化了。请问这是什么原因呢?配置代码运行在DDR时,主程序里面不能对DDR时钟配置、初始化吗?那RTSC的工程怎么办呢?

Nancy Wang:

? ? 说:配置代码运行在DDR时,在主程序里面加如DDR时钟配置和初始化时,程序卡死在DDR初始化那里

您运行的是哪个程序,只在gel文件中进行DDR初始化,不在主程序中初始化是可以正常运行的吗?

,

? ?:

就那个K1_STK_v1.1中的UART、Memory_Test,这俩都这样,卡在void C6678_EVM_DDR_Init()函数里面,每次卡的位置不一样。

—-》只在gel文件中进行DDR初始化,不在主程序中初始化是可以正常运行的吗?

答:是的

,

Nancy Wang:

请阅读以下帖子的讨论,您是自制板吗?建议根据实际的layout情况重新做初始化配置。

e2echina.ti.com/…/6657-ddr3

,

? ?:

是自制的板子,那个帖子的情况和我的不一样,我的是DDR3初始化是可以通过的(前提是cmd文件中配置sections的所以字段,如.text .cinit等都配置在SL2空间里),而且可以正常工作。但是如果将sections字段配置在DDR3里,初始化是不通过的。另外,我在gel文件中,对DDR3进行初始化后,程序里不再初始化DDR3,并且在程序的cmd文件中配置sections的字段在DDR3里,程序也可以正常执行。

看起来DDR3的初始化配置应该没问题,另外,想问下这种情况是DDR3的leveing配置的问题吗

,

Nancy Wang:

是的,我觉得可能还是leveling的问题,可能需要修改C6678_EVM_DDR_Init中的寄存器配置,正如我给您发的帖子中的描述一样,可以尝试按照实际layout情况修改DDR初始化的excel表格看看。

www.ti.com/…/sprabl2

或者您参考帖子中将GEL文件中的DDR初始化复制到代码中看看。

,

? ?:

我按照实际的配置,如下面的图,还是会卡死,卡死的位置在KeyStone_DDR_PLL_init(ref_clock,DDR_PLLM,DDR_PLLD)函数中的子函数KeyStone_PLL_init()函数的TSC_dealy_us(7)。无法单步进入TSC_dealy_us函数,直接跑飞了。我们只连了4对线,即DQS0~3,CK线长1.468

赞(0)
未经允许不得转载:TI中文支持网 » TMS320C6672: DDR时钟配置和初始化
分享到: 更多 (0)