针对 DDR2-800 和 和 DDR3 的 的 PCB  信号完整性设计
摘要
本文章主要涉及到对 DDR2 和 DDR3 在设计印制线路板(PCB)时,考虑信号完整性和电
源完整性的设计事项,这些是具有相当大的挑战性的。文章重点是讨论在尽可能少的 PCB
层数,特别是 4 层板的情况下的相关技术,其中一些设计方法在以前已经成熟的使用过。
1. 介绍
目前, 比较普遍使用中的DDR2的速度已经高达800 Mbps, 甚至更高的速度, 如1066 Mbps,
而 DDR3 的速度已经高达 1600 Mbps。对于如此高的速度,从 PCB 的设计角度来讲,要做到
严格的时序匹配,以满足波形的完整性,这里有很多的因素需要考虑,所有的这些因素都是
会互相影响的,但是,它们之间还是存在一些个性的,它们可以被分类为 PCB 叠层、阻抗、
互联拓扑、时延匹配、串扰、电源完整性和时序,目前,有很多 EDA 工具可以对它们进行很
好的计算和仿真,其中 Cadence ALLEGRO SI-230 和 Ansoft’s HFSS 使用的比较多。
表 1 显示了 DDR2 和 DDR3 所具有的共有技术要求和专有的技术要求。
表 1: DDR2 和 DDR3 要求比较
2. PCB 的叠层(stackup)和阻抗
对于一块受 PCB 层数约束的基板(如 4 层板)来说,其所有的信号线只能走在 TOP 和
BOTTOM 层,中间的两层,其中一层为 GND 平面层,而另一层为 VDD 平面层,Vtt 和 Vref
在 VDD 平面层布线。而当使用 6 层来走线时,设计一种专用拓扑结构变得更加容易,同时由
于 Power 层和 GND 层的间距变小了,从而提高了 PI。
互联通道的另一参数阻抗,在 DDR2 的设计时必须是恒定连续的,单端走线的阻抗匹配
电阻 50 Ohms 必须被用到所有的单端信号上,且做到阻抗匹配,而对于差分信号,100 Ohms
的终端阻抗匹配电阻必须被用到所有的差分信号终端,比如 CLOCK 和 DQS 信号。另外,所有
的匹配电阻必须上拉到 VTT,且保持 50 Ohms,ODT 的设置也必须保持在 50 Ohms。
在 DDR3 的设计时,单端信号的终端匹配电阻在 40 和 60 Ohms 之间可选择的被设计到
ADDR/CMD/CNTRL 信号线上,这已经被证明有很多的优点。而且,上拉到 VTT 的终端匹配电
阻根据 SI 仿真的结果的走线阻抗, 电阻值可能需要做出不同的选择, 通常其电阻值在 30-70
Ohms 之间。而差分信号的阻抗匹配电阻始终在 100 Ohms。
图 1 : 四层和六层 PCB 的叠层方式
3. 互联通路拓扑
对于 DDR2 和 DDR3,其中信号 DQ、DM 和 DQS 都是点对点的互联方式,所以不需要任何
的拓扑结构,然而列外的是,在 multi-rank DIMMs(Dual In Line Memory Modules)的设
计中并不是这样的。 在点对点的方式时, 可以很容易的通过 ODT 的阻抗设置来做到阻抗匹配,
从而实现其波形完整性。而对于 ADDR/CMD/CNTRL 和一些时钟信号,它们都是需要多点互联
的,所以需要选择一个合适的拓扑结构,图 2列出了一些相关的拓扑结构,其中 Fly- By
拓扑结构是一种特殊的菊花链,它不需要很长的连线,甚至有时不需要短线(Stub)。
对于 DDR3,这些所有的拓扑结构都是适用的,然而前提条件是走线要尽可能的短。
Fly-By 拓扑结构在处理噪声方面, 具有很好的波形完整性, 然而在一个 4 层板上很难实现,
需要 6 层板以上,而菊花链式拓扑结构在一个 4 层板上是容易实现的。另外,树形拓扑结构
要求 AB 的长度和 AC 的长度非常接近(如图 2)。考虑到波形的完整性,以及尽可能的提高
分支的走线长度,同事又要满足板层的约束要求,在基于 4 层板的 DDR3 设计中,最合理的
拓扑结构就是带有最少短线(Stub)的菊花链式拓扑结构。
图 2: 带有 2 片 SDRAM 的 ADDR/CMD/CNTRL 拓扑结构
对于 DDR2-800,这所有的拓扑结构都适用,只是有少许的差别。然而,菊花链式拓扑
结构被证明在 SI 方面是具有优势的。
对于超过两片的 SDRAM,通常,是根据器件的摆放方式不同而选择相应的拓扑结构。图
3 显示了不同摆放方式而特殊设计的拓扑结构,在这些拓扑结构中,只有 A 和 D 是最适合 4
层板的 PCB 设计。然而,对于 DDR2-800,所列的这些拓扑结构都能满足其波形的完整性,
而在 DDR3 的设计中,特别是在 1600 Mbps 时,则只有 D 是满足设计的。
图 3: 带有 4 片 SDRAM 的 ADDR/CMD/CNTRL 拓扑结构
4. 时延的匹配
在做到时延的匹配时,往往会在布线时采用 trombone 方式走线,另外,在布线时难免
会有切换板层的时候,此时就会添加一些过孔。不幸的是,但所有这些弯曲的走线和带过孔
的走线,将它们拉直变为等长度理想走线时,此时它们的时延是不等的,如图 4 所示。
图 4: Trombone 和 Vias 的实例
显然,上面讲到的 trombone 方式在时延方面同直走线的不对等是很好理解的,而带过
孔的走线就更加明显了。在中心线长度对等的情况下,trombone 走线的时延比直走线的实
际延时是要来的小的,而对于带有过孔的走线,时延是要来的大的。这种时延的产生,这里
有两种方法去解决它。一种方法是,只需要在 EDA 工具里进行精确的时延匹配计算,然后
控制走线的长度就可以了。而另一种方法是在可接受的范围内,减少不匹配度。
对于 trombone 线, 时延的不对等可以通过增大 L3 的长度而降低, 因为并行线间会存在
耦合,其详细的结果,可以通过 SigXP 仿真清楚的看出,如图 5,L3(图中的 S)长度的不
同,其结果会有不同的时延,尽可能的加长 S 的长度,则可以更好的降低时延的不对等。对
于微带线来说,L3 大于 7 倍的走线到地的距离是必须的。
图 5: 针对 trombone 的仿真电路和仿真波形
trombone 线的时延是受到其并行走线之间的耦合而影响,一种在不需要提高其间距的
情况下, 并且能降低耦合的程度的方法是采用 saw tooth 线。 显然, saw tooth 线比 trombone
线具有更好的效果,但是,它需要更多的空间。由于各种可能造成时延不同的原因,所以,
在实际的设计时,要借助于 CAD 工具进行严格的计算,从而控制走线的时延匹配。
考虑到在图 2 中 6层板上的过孔的因素, 当一个地过孔靠近信号过孔放置时, 则在时延
方面的影响是必须要考虑的。先举个例子,在 TOP 层的微带线长度是 150 mils,BOTTOM 层
的微带线也是 150 mils, 线宽都为 4 mils, 且过孔的参数为: barrel diameter="8mils",pad
diameter="18mils",anti-pad diameter="26mils"。
这里有三种方案进行对比考虑, 一种是, 通过过孔互联的这个过孔附近没有任何地过孔,
那么,其返回路径只能通过离此过孔 250 mils 的 PCB 边缘来提供;第二种是,一根长达 362
mils 的微带线; 第三种是, 在一个信号线的四周有四个地过孔环绕着。 图6显示了带有60 Ohm
的常规线的 S-Parameters,从图中可以看出,带有四个地过孔环绕的信号过孔的
S-Parameters 就像一根连续的微带线,从而提高了 S21 特性。由此可知,在信号过孔附近
缺少返回路径的情况下,则此信号过孔会大大增高其阻抗。当今的高速系统里,在时延方面
显得尤为重要。
现做一个测试电路,类似于图 5,驱动源是一个线性的 60 Ohms 阻抗输出的梯形信号,
信号的上升沿和下降沿均为 100 ps,幅值为 1V。此信号源按照图 6 的三种方式,且其端接
一 60 Ohms 的负载,其激励为一 800 MHz 的周期信号。在 0.5V 这一点,我们观察从信号源
到接收端之间的时间延迟,显示出来它们之间的时延差异。其结果如图 7 所示,在图中只显
示了信号的上升沿, 从这图中可以很明显的看出, 带有四个地过孔环绕的过孔时延同直线相
比只有 3 ps,而在没有地过孔环绕的情况下,其时延是 8 ps。由此可知,在信号过孔的周
围增加地过孔的密度是有帮助的。 然而, 在 4 层板的 PCB 里, 这个就显得不是完全的可行性,
由于其信号线是靠近电源平面的, 这就使得信号的返回路径是由它们之间的耦合程度来决定
的。所以,在 4 层的 PCB 设计时,为符合电源完整性(Power integrity)要求,对其耦合
程度的控制是相当重要的。
图 6: 带有过孔互联通道的 s-parameters
图 7: 三种案例的发送和接收波形
对于 DDR2 和 DDR3,时钟信号是以差分的形式传输的,而在 DDR2 里,DQS 信号是以单端
或差分方式通讯取决于其工作的速率,当以高度速率工作时则采用差分的方式。显然,在同
样的长度下,差分线的切换时延是小于单端线的。根据时序仿真的结果,时钟信号和 DQS
也许需要比相应的 ADDR/CMD /CNTRL 和 DATA 线长一点。另外,必须确保时钟线和 DQS 布在
其相关的 ADDR/CMD/CNTRL 和 DQ 线的当中。由于 DQ 和 DM 在很高的速度下传输,所以,需要
在每一个字节里,它们要有严格的长度匹配,而且不能有过孔。差分信号对阻抗不连续的敏
感度比较低,所以换层走线是没多大问题的,在布线时优先考虑布时钟线和 DQS。
5. 串扰
在设计微带线时,串扰是产生时延的一个相当重要的因素。通常,可以通过加大并行微
带线之间的间距来降低串扰的相互影响, 然而, 在合理利用走线空间上这是一个很大的弊端,
所以,应该控制在一个合理的范围里面。典型的一个规则是,并行走线的间距大于走线到地
平面的距离的两倍。另外,地过孔也起到一个相当重要的作用,图 8 显示了有地过孔和没地
过孔的耦合程度,在有多个地过孔的情况下,其耦合程度降低了 7 dB。考虑到互联通路的
成本预算,对于两边进行适当的仿真是必须的,当在所有的网线上加一个周期性的激励,将
会由串扰产生的信号抖动,通过仿真,可以在时域观察信号的抖动,从而通过合理的设计,
综合考虑空间和信号完整性,选择最优的走线间距。
图 8: 相互耦合走线的 s-parameters
6. 电源完整性
这里的电源完整性指的是在最大的信号切换情况下, 其电源的容差性。 当未符合此容差
要求时,将会导致很多的问题,比如加大时钟抖动、数据抖动和串扰。
这里,可以很好的理解与去偶相关的理论,现在从”目标阻抗”的公式定义开始讨论。
Ztarget=Voltage tolerance/Transient Current (1)
在这里,关键是要去理解在最差的切换情况下瞬间电流(Transient Current)的影响,
另一个重要因素是切换的频率。 在所有的频率范围里, 去耦网络必须确保它的阻抗等于或小
于目标阻抗(Ztarget)。在一块 PCB 上,由电源和地层所构成的电容,以及所有的去耦电
容,必须能够确保在 100KHz 左右到 100-200MH 左右之间的去耦作用。频率在 100KHz 以下,
在电压调节模块里的大电容可以很好的进行去耦。而频率在 200MHz 以上的,则应该由片上
电容或专用的封装好的电容进行去耦。实际的电源完整性是相当复杂的,其中要考虑到 IC
的封装、仿真信号的切换频率和 PCB 耗电网络。对于 PCB 设计来说,目标阻抗的去耦设计是
相对来说比较简单的,也是比较实际的解决方案。
在 DDR 的设计上有三类电源,它们是 VDD、VTT 和 Vref。VDD 的容差要求是 5%,而其瞬
间电流从 Idd2 到 Idd7 大小不同, 详细在 JEDEC 里有叙述。 通过电源层的平面电容和专用的
一定数量的去耦电容,可以做到电源完整性,其中去耦电容从 10nF 到 10uF 大小不同,共有
10 个左右。另外,表贴电容最合适,它具有更小的焊接阻抗。
Vref 要求更加严格的容差性,但是它承载着比较小的电流。显然,它只需要很窄的走
线,且通过一两个去耦电容就可以达到目标阻抗的要求。由于 Vref 相当重要,所以去耦电
容的摆放尽量靠近器件的管脚。
然而,对 VTT 的布线是具有相当大的挑战性,因为它不只要有严格的容差性,而且还有
很大的瞬间电流,不过此电流的大小可以很容易的就计算出来。最终,可以通过增加去耦电
容来实现它的目标阻抗匹配。
在 4 层板的 PCB 里,层之间的间距比较大,从而失去其电源层间的电容优势,所以,去
耦电容的数量将大大增加,尤其是小于 10 nF 的高频电容。详细的计算和仿真可以通过 EDA
工具来实现。
7. 时序分析
对于时序的计算和分析在一些相关文献里有详细的介绍, 下面列出需要设置和分析的 8
个方面:
1. 写建立分析: DQ vs. DQS
2. 写保持分析: DQ vs. DQS
3. 读建立分析: DQ vs. DQS
4. 读保持分析: DQ vs. DQS
5. 写建立分析: DQS vs. CLK
6. 写保持分析: DQS vs. CLK
7. 写建立分析: ADDR/CMD/CNTRL vs. CLK
8. 写保持分析: ADDR/CMD/CNTRL vs. CLK
表 2 举了一个针对写建立(Write Setup)分析的例子。表中的一些数据需要从控制器
和存储器厂家获取,段”Interconnect”的数据是取之于 SI 仿真工具。对于 DDR2 上面所有
的 8 项都是需要分析的,而对于 DDR3,5 项和 6 项不需要考虑。在 PCB 设计时,长度方面
的容差必须要保证 total margin 是正的。
表 2: 针对 DQ vs. DQS 的 DDR3 写保持时域分析案例
8. PCB Layout
在实际的 PCB 设计时,考虑到 SI 的要求,往往有很多的折中方案。通常,需要优先考
虑对于那些对信号的完整性要求比较高的。画 PCB 时,当考虑一下的一些相关因素,那么对
于设计 PCB 来说可靠性就会更高。
1. 首先,要在相关的 EDA 工具里要设置好里设置好拓扑结构和相关约束。
2. 将 BGA 引脚突围, 将 ADDR/CMD/CNTRL 引脚布置在 DQ/DQS/DM 字节组的中间, 由于所
有这些分组操作, 为了尽可能少的信号交叉, 一些独立的管脚也许会被交换到其它区域布线。
3. 由串扰仿真的结果可知,尽量减少短线(stubs)长度。通常,短线(stubs)是可以
被削减的, 但不是所有的管脚都做得到的。 在 BGA 焊盘和存储器焊盘之间也许只需要两段的
走线就可以实现了,但是此走线必须要很细,那么就提高了 PCB 的制作成本,而且,不是所
有的走线都只需要两段的,除非使用微小的过孔和盘中孔的技术。最终,考虑到信号完整性
的容差和成本,可能选择折中的方案。
4. 将 Vref 的去耦电容靠近 Vref 管脚摆放;Vtt 的去耦电容摆放在最远的一个 SDRAM 外端;
VDD 的去耦电容需要靠近器件摆放。小电容值的去耦电容需要更靠近器件摆放。正确的去耦
设计中, 并不是所有的去耦电容都是靠近器件摆放的。 所有的去耦电容的管脚都需要扇出后
走线,这样可以减少阻抗,通常,两端段的扇出走线会垂直于电容布线。
5. 当切换平面层时,尽量做到长度匹配和加入一些地过孔,这些事先应该在 EDA 工具
里进行很好的仿真。通常,在时域分析来看,差分线里的两根线的要做到延时匹配,保证其
误差在+/- 2ps,而其它的信号要做到+/- 10 ps。
9. DIMM
之前介绍的大部分规则都适合于在PCB上含有一个或更多的DIMM, 唯一列外的是在DIMM
里所要考虑到去耦因素同在 DIMM 组里有所区别。在 DIMM 组里,对于 ADDR/CMD/CNTRL 所采
用的拓扑结构里,带有少的短线菊花链拓扑结构和树形拓扑结构是适用的。
10. 案例
上面所介绍的相关规则,在 DDR2 PCB、DDR3 PCB 和 DDR3-DIMM PCB 里,都已经得到普
遍的应用。在下面的案例中,我们采用 MOSAID 公司的控制器,它提供了对 DDR2 和 DDR3 的
操作功能。 在 SI 仿真方面, 采用了 IBIS 模型, 其存储器的模型来自 MICRON Technolgy,Inc,
对于 DDR3 SDRAM 的模型提供了 1333 Mbps 的速率。在这里,数据是操作是在 1600 Mbps 下
的。对于不带缓存(unbuffered)的 DIMM(MT_DDR3_0542cc)EBD 模型是来自 Micron
Technology,下面所有的波形都是采用通常的测试方法,且是在 SDRAM die 级进行计算和仿
真的。图 2 所示的 6 层板里,只在 TOP 和 BOTTOM 层进行了布线,存储器由两片的 SDRAM 以
菊花链的方式所构成。而在 DIMM 的案例里,只有一个不带缓存的 DIMM 被使用。图 9-11 是
对 TOP/BOTTOM 层布线的一个闪照图和信号完整性仿真图。
图 9: 只有在 TOP 和 BOTTOM 层走线的 DDR3 的仿真波形
(左边的是 ADDRESS 和 CLOCK 网络,右边的是 DATA 和 DQS 网络,其时钟频率在 800 MHz,
数据通信率为 1600Mbps)
图 10: 只有在 TOP 和 BOTTOM 层走线的 DDR2 的仿真波形
(左边的是 ADDRESS 和 CLOCK 网络,右边的是 DATA 和 DQS 网络,其时钟频率在 400 MHz,
数据通信率为 800Mbps)
图 11: 只有在 TOP 和 BOTTOM 层走线的 DDR3-DIMM 的仿真波形
(左边的是 ADDRESS 和 CLOCK 网络,右边的是 DATA 和 DQS 网络)
最好,图 12 显示了两个经过比较过的数据信号眼图,一个是仿真的结果,而另一个是
实际测量的。在上面的所有案例里,波形的完整性的完美程度都是令人兴奋的。
图 12: 800 Mbps DDR2 的数据信号仿真眼图(红) 和 实测眼图 (蓝)
11. 结论
本文,针对 DDR2/DDR3 的设计,SI 和 PI 的各种相关因素都做了全面的介绍。对于在 4
层板里设计 800 Mbps 的 DDR2 和 DDR3 是可行的,但是对于 DDR3-1600 Mbps 是具有很大的挑
战性。






上一篇:Cadence Allegro 16.6最新补丁 第63号补丁 百度网盘下载
下一篇:阻抗设计说明
回复

使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    21

    主题

    113

    帖子

    2226

    积分

    炉火纯青

    Rank: 4

    积分
    2226
    发表于 2016-1-26 09:16:27 | 显示全部楼层
    沙发
    赞一个,楼主用心了
    回复 支持 反对

    使用道具 举报

    0

    主题

    23

    帖子

    207

    积分

    略有小成

    Rank: 2

    积分
    207
    发表于 2016-1-26 11:30:50 | 显示全部楼层
    板凳
    虽然我也看不懂 但是我也来赞一个楼主的用心~
    回复 支持 反对

    使用道具 举报

    发表于 2016-1-28 19:28:22 | 显示全部楼层
    地板
    学习下,感谢楼主分享
    回复 支持 反对

    使用道具 举报

    0

    主题

    24

    帖子

    78

    积分

    初学乍练

    Rank: 1

    积分
    78
    发表于 2016-2-3 11:09:01 | 显示全部楼层
    5#
    学习,收藏,赞一个
    回复 支持 反对

    使用道具 举报

    0

    主题

    54

    帖子

    1221

    积分

    渐入佳境

    Rank: 3Rank: 3

    积分
    1221
    发表于 2016-3-5 11:15:50 | 显示全部楼层
    6#
    :)
    回复

    使用道具 举报

    0

    主题

    54

    帖子

    1221

    积分

    渐入佳境

    Rank: 3Rank: 3

    积分
    1221
    发表于 2016-3-5 14:24:49 | 显示全部楼层
    7#

    回复

    使用道具 举报

    2

    主题

    34

    帖子

    192

    积分

    初学乍练

    Rank: 1

    积分
    192
    发表于 2016-3-23 13:40:06 | 显示全部楼层
    8#
    看的眼睛痛 ,还是感谢

    回复 支持 反对

    使用道具 举报

    1

    主题

    43

    帖子

    242

    积分

    略有小成

    Rank: 2

    积分
    242
    发表于 2016-6-14 13:53:27 | 显示全部楼层
    9#
    密密麻麻,还是坚持看完
    回复 支持 反对

    使用道具 举报

    0

    主题

    46

    帖子

    293

    积分

    略有小成

    Rank: 2

    积分
    293
    发表于 2016-6-14 20:31:45 | 显示全部楼层
    10#
    感谢楼主分享
    回复 支持 反对

    使用道具 举报

    12下一页
    • 微信公众号
    • 社区新手
    • 商务合作
    关闭

    站长推荐上一条 /2 下一条

    Powered by Discuz! X3.4  © 2001-2013 Comsenz Inc.