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

C6678 DDR3 leveling,采用官方提供的《DDR3 Register Calc v4.xlsx》和《DDR3 PHY Calc v11.xlsx》计算寄存器值,使用ddr3 1600,当填写的时钟频率为666M,实际配置DDR时钟666M时,内存测试不通过,将表格中时钟频率改为800M时才可以通过,为什么?

如题,使用的内存型号为MT41K256M16HA-125IT,这是个镁光DDR3 1600内存

按照datasheet,填写《DDR3 Register Calc v4.xlsx》如下

因为在官方文档《TMS320C6678 Multicore Fixed and Floating-Point Digital Signal Processor Silicon Revision 1.0, 2.0 Silicon Errata》(sprz334h.pdf,p63)中提到不支持1600数据速率:

Usage Note 14 DDR3 Performance Limited to 1333MT/s Usage NoteRevision(s)

Affected: 1.0, 2.0

Details: The DDR3 interface is currently limited to a maximum transfer rate of 1333MT/s. It canbe configured to operate at any rate from 800MT/s to 1333

因此将《DDR3 Register Calc v4.xlsx》和《DDR3 PHY Calc v11.xlsx》里的时钟填为666.67MHZ(上图里的参数值是800Mhz下的值,改为666.67M之后这些值有的会变化。),实际配置DDR时钟也是666.66MHZ(示波器确认),使用两个表格里计算的寄存器值做leveling之后,内存测试不通过(读写值不同)

只有将《DDR3 Register Calc v4.xlsx》和《DDR3 PHY Calc v11.xlsx》里的时钟填为800MHZ,实际配置DDR时钟仍是666.66MHZ时,内存测试才能通过。

这是为什么呢?前一种配置才是和实际情况一致的,为什么反而不行呢?

Shine:

DDR3 PHY Calc是否有根据您板子布线的参数做修改?

枕水:

回复 Shine:

修改了
fly-by布线
DQS和CLK都是差分线,取的平均值
Microstrip length (inches) Stripline length (inches) Delay (ps)
DQS0 0.000 1.336 223
CK_0 0.000 2.608 436
DQS1 0.000 1.205 201
CK_1 0.000 2.608 436
DQS2 0.000 1.171 196
CK_2 0.000 3.090 516
DQS3 0.000 1.094 183
CK_3 0.000 3.090 516
DQS4 (C665x DQS0) 0.000 1.252 209
CK_4 (C665x CK_0) 0.000 4.066 679
DQS5 (C665x DQS1) 0.000 1.159 194
CK_5 (C665x CK_1) 0.000 4.066 679
DQS6 (C665x DQS2) 0.000 1.391 232
CK_6 (C665x CK_2) 0.000 4.543 759
DQS7 (C665x DQS3) 0.000 1.385 231
CK_7 (C665x CK_3) 0.000 4.543 759
DQS_ECC 0.000 0.997 166
CK_ECC 0.000 3.574 597

Shine:

回复 枕水:

这个一般是由信号完整性和PHY的不正确配置引起的,请看一下是否按照附件KeyStone I DDR3 interface bring-up Application Report (SPRACL8) 文档配置的?spracl8.pdf

赞(0)
未经允许不得转载:TI中文支持网 » C6678 DDR3 leveling,采用官方提供的《DDR3 Register Calc v4.xlsx》和《DDR3 PHY Calc v11.xlsx》计算寄存器值,使用ddr3 1600,当填写的时钟频率为666M,实际配置DDR时钟666M时,内存测试不通过,将表格中时钟频率改为800M时才可以通过,为什么?
分享到: 更多 (0)