从原理上解释什么是DDR的ZQ校准?

前言

     首先我们我们看下下图的电路,在DDR的电路中通常有ZQ部分的电路,外接1%高精度的240ohm电阻,那么这个240ohm电阻究竟是做什么用的呢?很多做了硬件或者驱动开发很多年的工程师仍然是一知半解,今天我们就来仔细的探讨一下这个问题!

从原理上解释什么是DDR的ZQ校准?_第1张图片

     首先我们以DDR3作为例子,如下图所示,在DDR2中,所有的DQ以及其它的信号PIN采用了分离式驱动器电路设计方案(die内端接),而在DDR3中,为了提高系统工作的鲁棒性,对这一设计方案做了优化,所有的输出驱动器采用同一个设计电路。

从原理上解释什么是DDR的ZQ校准?_第2张图片

    合并驱动器的概念是使用多个240ohm的电阻结构实现上拉和下拉网络,通过允许相同240ohm电阻的不同组合来实现不同的端接值,对于DDR3来说,全强度输出时驱动器的输出阻抗为默认为34ohm(打开所有的240ohm电阻)。

     为了达到DDR设计的数据传输速率,必须要特别注意信号完整性,将内存控制器和DDR的信号传输通道上阻抗mismatch减小到最小,将有助于减少信号上的反射和振铃。为了减小这种阻抗不连续性,必须在DDR的设计中引入相应的校准(calibration)方案。

 

NOTE:ZQ校准的目的

      为了提高信号完整性,并增强输出信号的强度,DDR内存中引入了终端电阻和输出驱动器,而为了在温度和电压发生变化的场景下仍然能够保持信号完整性,就需要对这些终端电阻和输出驱动器进行校准;

     未经校准的终端电阻会直接影响到信号质量,而调整不当的输出驱动器则会使得有效信号跃迁偏离参考电平,从而导致数据和选通信号之间出现偏差。

 

校准方式

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

pull-up 校准

从原理上解释什么是DDR的ZQ校准?_第3张图片

校准控制模块由如下几个部分组成:

1、ADC

2、比较器

3、majority filter-择多滤波器

4、内部参考电压发生器

5、近似寄存器-approximation register.

 

      校准控制模块的240ohm leg和输出驱动器和终端的pull-up leg是匹配的,pull-up leg是使用多晶硅电阻的240ohm电阻(阻值略大于240ohm),在这部分电路中,采用了P-channel的电路去降低legs的阻抗,从而去调节上拉部分电路达到精确的240ohm。

 

综合上述的分析,我们可以知道,在DDR设置ODT的时候,就是通过使能相同的240ohm电阻的不同组合来实现不同的端接值。

从原理上解释什么是DDR的ZQ校准?_第4张图片

如上图所示,当进行ZQ校准时,首先进行的步骤是将Vpull-up拉高,将Vpull-up leg的电压拉高到VDDQ,此时校准控制模块会不断的控制P-channel部分的电路,通过Xres部分的电压和VDDQ/2进行比较并反馈,最终使得上拉部分的电压达到较为精确的240ohm。

校准控制模块是通过VOH[0:4]对P-channel进行控制的,校准后的值会保存在approximation register中,并会在所有的输出驱动器和终端中共享。

ZQ校准功能框图:

从原理上解释什么是DDR的ZQ校准?_第5张图片

ZQ校准的设置

在DDR中校准(包括ZQ校准、VrefDQ校准等),在设置上可以概括为两类:

1、periodic calibration

2、WDT time out calibration

即可以设置为每间隔一段时间校准一次,也可以设置为当看门狗WDT timeout之后再进行校准。

你可能感兴趣的:(软硬件设计,ddr)