DRAM 上的 DLL/PLL
背景
随着 CPU 速度的不断提高,内存性能对系统性能的限制越来越明显。要提高系统性能,还必须提高内存性能。提高内存性能的一个重要方面在于提高内存系统中各 DRAM 之间的数据传输率。二十世纪九十年代初,Rambus 设计出了首款融合了 DLL 与 PLL 的 DRAM,这些重要的创新使 DRAM 能够实现 500MHz 的信令速率,这一速率比当时的主流 DRAM 通信速率快八倍多。
现代系统使用同步通信,实现了内存系统中 DRAM 之间的高数据传输率。同步通信的系统使用时钟信号作为时序参考,这样便可利用对该参考已知的关系来传输和接收数据。维持这一关系的困难在于,处理程序、电压和温度变化可改变时钟和数据信号之间的时序关系,从而导致时序空余减少。这一问题随着信令速度的提高而变得更为突出,从而限制系统在更高速度下传输通信数据的能力。

图 1 显示了处理程序、电压和温度在高/低信令速度下如何影响时序空余。在低信令速度下(图 1 左侧),数据 PVT1 显示了数据有效窗口(接收器能够可靠地对数据进行采样的时间)与一组给定运行条件下的时钟之间的关系。同样,数据 PVT2 显示了数据有效窗口和另一组运行条件下的时钟之间的关系。这两组运行条件表示设备可运行的极端环境。接收器电路通常不清楚数据有效窗口如何随着发射器中处理程序、电压和温度的变化而变化。正是由于这一原因,才将接收器电路设计为在时间窗口内对数据进行采样,这些数据在所有允许的运行条件下均有效。如果数据 PVT1 和数据 PVT2 表示最早和最新(相对于时钟信号)的数据有效窗口,那么接收器会将一个数据有效窗口假定为这两个窗口的交集,并会在产生的数据有效窗口中选择一个在处理程序、电压和温度变化过程中都有效的采样点。
图 1 也显示了在低信令速度下,数据有效窗口(接收器能可靠地对数据进行采样的时间)可以很大。即使在运行极端值的数据有效窗口中出现重大移位,产生的数据有效窗口仍可以大得足以可靠地传输和接收数据。DRAM 技术正是如此,如 SDRAM。然而,对于 RDRAM 和 DDR 等高速 DRAM 技术,处理程序、电压和温度的变化可导致数据有效窗口的丢失。图 1 右侧显示了在较高的信令速度下,数据 PVT1 和数据 PVT2 的数据有效窗口会比较小,这反映了必须以更高的信令速率来更快速地传输信息的事实。虽然数据有效窗口较小,但是这些窗口仍然能在处理程序、电压和温度中作等量移位(假定运行环境没有制造性的改进或改变)。由于这些数据有效窗口较小,在接收器电路能可靠地对数据进行采样时,数据有效窗口产生的交集不会生成数据有效窗口。

图 2 显示了图 1 中所示的一种时序变化源。随着处理程序、电压和温度的变化,输出逻辑和输出驱动程序的时序特性也会发生变化,从而导致数据有效窗口发生移位。为了高速传输和接收数据,需要解决该时序变化问题。
什么是 DLL 和 PLL?
延迟锁定环 (DLL) 和锁相环 (PLL) 的用途相似,都可用于在信号关系会随着处理程序、电压和温度变化而变化的环境中保持信号间的固定时序关系。DLL 和 PLL 会持续比较两种信号之间的关系,并提供反馈以调整和保持两者之间的固定关系。Rambus DRAM 是首款融合了 DLL 和 PLL 的 DRAM,与其他 DRAM 技术相比,这一重要的创新提高了信令速度。

图 3 显示了如何使用 DLL 来保持时钟信号和输出数据信号之间的时序关系。DLL 的一个主要组件是相位探测器,该探测器会探测时钟和输出数据之间的相位差。相位探测器可探测此相位差,并将控制信息通过低通过滤器发送到可变的延迟线,该延迟线可调整内部时钟的时序,以保持所需的时序关系(PLL 使用电压控制的振荡器来调整此时序关系)。保持两种信号之间的相位关系的难点之一在于,向相位探测器提供反馈的环必须具有输出逻辑和输出驱动程序的时序特性。这一点很重要,因为它会对由输出驱动程序驱动的时钟和数据之间的相位差进行评估。为了实现这一点,应将模拟输出逻辑和输出驱动程序的行为特性的电路插入此反馈环,以对随着处理程序、电压和温度变化而发生变化的时序延迟和行为变化进行建模。以这种方式利用 DLL 和 PLL 来保持时钟和输出数据之间的时序关系可增加时序空余(如图 4 所示),并能解决提高信令速度的重要限制。
PLL 与 DLL 相似,但它还可用于倍减或倍增芯片的其他部件所使用的外部系统时钟频率。PLL 可用于为 DRAM 的核心提供较低的时钟频率,而接口则以较高的时钟频率运行。以此种方式使用 PLL 可支持 DRAM 核心预取,并允许 DRAM 核心以较低频率运行(从而提高 DRAM 效能),同时使接口能够以较高的速度运行,以提高系统性能。

在 1993 年,Rambus 在电路设计的最高级别会议 - 国际固态电路会议 (ISSCC) 上发布了 500MHz PLL 设计的详细信息。一年后,Rambus 在 1994 年的一篇 ISSCC 论文中发布了 500MHz DLL 的详细信息。这两篇论文都获得了享有盛誉的“最佳论文”奖,该奖项是对这两篇论文中所描述的开创性创新的认可。
谁是受益者?
在 DRAM 中采用 DLL 和 PLL 使多种人从中受益,其中包括:
- 最终用户:提供时钟与数据信号之间的固定时序关系,从而提高 DRAM 性能和系统性能。
- DRAM 制造商:在处理程序、电压和温度发生变化时调整时序关系,可增加时序空余,从而提高 DRAM 效能进而降低生产成本。
- 控制器和机板设计者:通过实现每针脚高传输率,DLL 和 PLL 使控制器设计者得以减少 I/O 针脚数,从而降低封装成本、组件数量、布线区域和布线复杂性。
- 系统集成商:DLL 和 PLL 提供固定时序关系的能力使组件制造商和系统集成商从各种规范中解放出来。在温度和电压特性可变的系统中,可降低系统散热和电源需求,并且 DRAM 仍能保持良好的时序空余,同时降低散热解决方案、电源和系统制造的成本。
