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

C6474读取DDR异常的问题

   现象描述:

    1、问题直接现象是设备在环境温度较低时第一次上电可能出现读取DDR数据异常导致DSP跑飞,预热一段时间后再运行就没问题了;

    2、在低温箱(10℃左右)中使用仿真器调试发现DDR读取异常时,“System Reset”之后DDR读取可恢复正常;

    3、在低温环境下只运行DDR读写检查程序,问题不复现;

    4、将DDR工作频率从667MHz降到500MHz,问题不复现;

    5、降频后出现另一个问题,使用仿真器下载代码运行正常,DSP自动Boot也能运行起来,但从DDR中的AIF缓存Buffer读取数据异常,为2048Byte循环的乱数据。

 

    使用的高速数据接口只有EMIF和AIF,相关信息如下:

    DDR参数:

    芯片型号:MT47H64M16HR-3

    时钟频率:66MHz

    配置位宽:16bit

    测试DDR相关时序和信号质量,没发现明显问题,相关寄存器配置如下:

    DDR_SDCFG    = 0x00D3CA32; 

    DDR_SDRFC    = 0x00000a29; 

    DDR_SDTIM1   = 0x4D246C9A;

    DDR_SDRIM2   = 0x00993c42; 

    DDR_DDRPHYC  = 0x50001906;

    DDR_SDCFG    = 0x0053CA32;

    附件是DDR相关部分电路原理图,供参考。

 

    AIF配置:

    只配置了一个上行链路,传输两路30.72M的数据,有效数据速率2Gbit/s。

   

请大家帮忙支招,谢谢!

Mo Sang:

是不是BGA焊接有问题,温度会导致电路板及焊点有热胀冷缩的变形,因而不同温度导致系统不稳定?

Zhu shifeng:

回复 Mo Sang:

Mo Sang

   谢谢您的建议。好像不是热胀冷缩的问题。

 

Allen35065:

回复 Zhu shifeng:

1, 降频之后没有错误,极有可能是因为信号质量的问题引起的,需要观察具体错误是什么模式,是在某些地址线错误,还是某些数据线错误,对内存进行读写地址和bit walking的操作来确定。

2, DDR3降频后速率降低,可能会影响AIF2读写数据的时序。

Zhu shifeng:

回复 Allen35065:

 1、DDR时钟改为500M,仿真器下载运行正常,自动boot时很大概率出现AIF同步状态一直不对,寄存器0x02bca080数值为0x00000108,查手册说是处于ST0状态(没有从FPGA收到正确的数据包);

    2、自动boot启动AIF同步不上时,不带GEL文件连一下仿真器,AIF状态就恢复正常了,此时仿真器不下载代码直接运行,一切正常;

    3、在代码中检测AIF同步状态,发现同步失败时自动重配AIF无效。

赞(0)
未经允许不得转载:TI中文支持网 » C6474读取DDR异常的问题
分享到: 更多 (0)