DDR phy - calibration

1.ZQ calibration

为了提高信号完整性,并增强输出信号的强度,DDR内存中引入了终端电阻和输出驱动器,而为了在温度和电压发生变化的场景下仍然能够保持信号完整性,就需要对这些终端电阻和输出驱动器进行校准;未经校准的终端电阻会直接影响到信号质量,而调整不当的输出驱动器则会使得有效信号跃迁偏离参考电平,从而导致数据和选通信号之间出现偏差。

DDR3中的ZQ校准用于输出驱动器和ODT,每个DRAM的ZQ pin都被连接到外部的±1%精度的240ohm电阻,该电阻是可以在所有的Device之间共享的。

在DDR设置ODT的时候,就是通过使能相同的240ohm电阻的不同组合来实现不同的端接值。

DDR phy - calibration_第1张图片

LPDDR4的训练(training)和校准(calibration)--ZQ校准(Calibration)_zq calibration_wonder_coole的博客-CSDN博客

需要注意的是,每一个rank都需要一个独有的下拉电阻(240欧姆),但是不同rank可以共用同一个下拉电阻。

分为两种calibration:

ZQ calibration long:上电初始化的时候操作(512clk/640ns);

ZQ calibration short: 正常访问的时候,控制器会周期性的发送ZQ calibration short(64clk/80ns)

一般来说,在温度变化不超过0.25℃,电压变化不超过10mv的情况下,可以每隔128ms进行一次short calibration,也存在一些要求严格的芯片,他会不管电压和温度的变化,每隔64ms进行一次操作。

DDR phy - calibration_第2张图片

需要注意的是,在进行zq calibration的时候,需要先把CKE拉高,ODT拉低(也就是在校准ODT的时候需要先把ODT功能关闭) 

2.read calibration/write leveling

这两个训练实际都是data数据密切相关的calibration。

read calibration是相当于厂商在内部会内置一个寄存器,这个寄存器的值已知,当把这个功能打开的时候,读取数据的通路就是读取相应预置的寄存器,通过这种方式来在校准的时候保证读通路是没有问题的。

DDR phy - calibration_第3张图片

DDR phy - calibration_第4张图片

 DDR phy - calibration_第5张图片

DDR phy - calibration_第6张图片 RFU厂商自己定义?如何定义??

具体操作步骤:

DDR phy - calibration_第7张图片

precharge all -> 让整个memory处于idle状态

如果读回来的数据有问题,一般会调节DDR phy内部的DQS gate,增加DQS gate的延迟????

DDR phy - calibration_第8张图片

3.delay calibration

4.impedance calibration

留个坑 周日补

你可能感兴趣的:(DDR,开发语言)