DDR内存布线指导,DDR Layout Guide

在现代高速数字电路的设计过程中,工程师总是不可避免的会与DDR或者DDR2,SDRAM打交道。DDR的工作频率很高,因此,DDR的布线(或者Layout)也就成为了一个十分关键的问题,很多时候,DDR的布线直接影响着信号完整性。下面本文针对DDR的布线问题(Layout)进行讨论。

DDR内存布线指导

信号引脚说明

VSS为数字地,VSSQ为信号地,若无特别说明,两者是等效的。VDD为器件内核供电,VDDDQ为器件的DQ和I/O供电,若无特别说明,两者是等效的。

对于DRAM来说,定义信号组如下:

  • 数字信号组DQ,DQS,xDM,其中每个字节又是内部的一个信道Lane组,如DQ0~DQ7,DQS,LDM为一个信号组。
  • 地址信号组:ADDRESS
  • 命令信号组:CAS#,RAS#,WE#
  • 控制信号组:CS#,CKE
  • 时钟信号组:CK,CK#

印制电路板叠层,PCB Stackups

推荐使用6层电路板,分布如下:

PCB叠层

  • 电路板的阻抗控制在50~60ohm
  •  印制电路板的厚度选择为1.57mm(62mil)
  • 填充材料Prepreg厚度可变化范围是4~6mil
  • 电路板的填充材料的介电常数一般变化范围是3.6~4.5,它的数值随着频率,温度等因素变化。FR-4就是一种典型的介电材料,在100MHz时的平均介电常数为4.2。推荐使用FR-4作为PCB的填充材料,因为它便宜,更低的吸湿性能,更低的电导性。

一般来说,DQ,DQS和时钟信号线选择VSS作为参考平面,因为VSS比较稳定,不易受到干扰,地址/命令/控制信号线选择VDD作为参考平面,因为这些信号线本身就含有噪声。

电路板的可扩展性

根据JEDEC标准,不同容量的内存芯片一般引脚兼容,为了实现电路板的可扩展性,可以做如下处理,如128Mb与256Mb的兼容应用。

可扩展性

未用的DQ引脚

对于x16的DDR器件来说,未用的引脚要作一定的处理。例如x16的DDR来说,DQ15:DQ8未用,则处理如下,将相关的UDM/DQMH拉高用来屏蔽DQ线,DQ15:DQ8通过1~10k的电阻接地用来阻止迸发写时的噪声。

端接技术

串行端接,主要应用在负载DDR器件不大于4个的情况下。

对于双向I/O信号来说,例如DQ,串行端接电阻Rs放置在走线的中间,用来抑制振铃,过冲和下冲。

对于单向的信号来说,例如地址线,控制线,串行端接电阻放置在走线中间或者是信号的发送端,推荐放置在信号的发送端。

串行端接电阻的取值

说明:DDR的CK与CK# 是差分信号,要用差分端接技术。

并行端接,主要应用在负载SDRAM器件大于4个,走线长度>2inch,或者通过仿真验证需要并行端接的情况下。

并行端接电阻Rt取值大约为2Rs,Rs的取值范围是10~33ohm,故Rt的取值范围为22~66ohm。

并行端接电阻

如果有必要的话,所有DDR的数据,地址,命令,控制线都是SSTL_2接口,要使用single-ended Parallel Termination,如上图。CKE也可以使用这种端接。

导线宽度和间距:

导线间距和导线宽度S1,S2,S3的定义如下:

  • S1表示同一信号组内两相邻导线之间的间距
  • S2表示不同信号组之间两相邻导线之间的间距
  • S3表示导线的宽度

间距与线宽的定义

导线宽度选择为:

导线宽度

导线间距选择:

导线的间距

几点说明:

  1. DQS一般布线的位置是数据信号组内同一信号组中DQ走线的中间,因此DQS与DQS之间的间距一般不提
  2. DQS与时钟信号线不相邻
  3. 为了避免串扰,数据信号组与地址/命令/控制信号组之间的走线间距至少20mil,建议它们在不同的信号层走线
  4. 时钟信号组走线尽量在内层,用来抑制EMI

导线走线长度

所有DDR的差分时钟线CK与CK#必须在同一层布线,误差+-20mil,最好在内层布线以抑制EMI。如果系统有多个DDR器件的话,要用阻值100~200ohm的电阻进行差分端接。

(1) 若时钟线的分叉点到DDR器件的走线长度<1000mil,要使用100~120ohm的差分端接,如下图:

端接差分电阻

(2) 若时钟线的分叉点到DDR器件的走线长度>1000mil,要使用200~240ohm的电阻差分端接,因为两个200~240ohm的电阻并联值正好为100~120ohm。如下图所示。

大于1000mil的情况

  • 数据信号组的走线长度与时钟信号线的误差为+-500mil,组内同一信道的信号线走线误差为+-50mil,从而可以得到,组内不同信道的走线误差为+-1000mil,相同信道的DQS一般走线在DQ中间
  • 地址线/命令/控制信号线与时钟信号走线的误差为+-400mil,组内走线误差为+-50mil
  •  所有信号的走线长度控制在2inch(5cm)最好

去耦电容

  • 推荐使用低ESL(2nH)的电容,大小在0.01uF~0.22uF,其中0.01uF针对高频,0.22uF针对低频
  • 建议使用钽电容。相对于电解电容来说,虽然它比较贵,但它具有较好的稳定性,较长的使用周期。一般电解电容随着使用时间的加长,性能下降较多

参考电压

对于较轻的负载(<4DDR器件),可使用下图的方法:

对于负载较轻的情况

对于较重的负载(>4 DDR器件),可使用IC来产生VREF。IC内部集成了两种电压VTT和VREF,其中VTT在重负载的情况下最高电流可达3.5A,平均电流为0A,VREF的电流比较小,一般只有3mA左右。

对于负载较重的情况

VREF走线控制

具体如下图所示:

Verf的走线控制

DDR的VTT设计

当数据线地址线负载较重时,VTT的暂态电流峰值可达到3.5A左右,这种暂态电流的平均值为0A。一些情况下不需要VTT技术(并行端接)。

  • 系统中有2个或更少的DDR
  • 总线上需要的电流不是很高,中等左右
  • 通过仿真验证不需要

VTT电压的产生一般用IC,厂商包括:Intersilm Philips, Semiconductors, Fairchild, National, TI等等。

选用了IC实现VTT,推荐使用下面的原则:

  • VTT用Rt端接地址/控制/命令信号线,端接数据信号组VTT=VDDQ/2
  • VTT并不端接时钟信号线,时钟信号线使用前面说的差分端接技术
  • VTT与VREF走线/平面在同一层,必须具有150mil的距离,推荐它们在不同层
  • VTT走线/平面需要至少2个4~7uF的解耦电容,2个100uF的电容。具体放置位置是VTT的两个端点(at each end)
  • VTT表面走线宽度至少150mil,推荐250mil
  • 上电时序:VTT开始上电必须在VDDQ之后,避免器件latch-up,推荐VTT和VREF同时上电
  • 如果走线要分支的话,建议使用T型分支。具体见下图

T型分支

平衡T型

发表评论