我们从2011年坚守至今,只想做存粹的技术论坛。  由于网站在外面,点击附件后要很长世间才弹出下载,请耐心等待,勿重复点击不要用Edge和IE浏览器下载,否则提示不安全下载不了

 找回密码
 立即注册
搜索
查看: 2194|回复: 25

[技术文章] 转:DDR布线规则与过程

[复制链接]
  • 打卡等级:初入少年
  • 打卡总天数:2
  • 打卡月天数:0
  • 打卡总奖励:4
  • 最近打卡:2026-04-21 11:57:13

96

主题

1422

回帖

1万

积分

1元学习Allegro(2期)

Today meets tomorrow

积分
11054

终身成就奖

发表于 2022-8-4 20:28 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区

您需要 登录 才可以下载或查看,没有账号?立即注册

×
DDR布线规则与过程



                               
登录/注册后可看大图


DDR布线通常是一款硬件产品设计中的一个重要的环节,也正是因为其重要性,网络上也有大把的人在探讨DDR布线规则,有很多同行故弄玄虚,把DDR布线说得很难,我在这里要反其道而行之,讲一讲DDR布线最简规则与过程。
如果不是特别说明,每个步骤中的方法同时适用于DDR1,DDR2和DDR3。PCB设计软件以Cadence Allgro 16.3为例。


第一步,确定拓补结构(仅在多片DDR芯片时有用)

首先要确定DDR的拓补结构,一句话,DDR1/2采用星形结构,DDR3采用菊花链结构。
拓补结构只影响地址线的走线方式,不影响数据线。以下是示意图。

星形拓补就是地址线走到两片DDR中间再向两片DDR分别走线,菊花链就是用地址线把两片DDR“串起来”,就像羊肉串,每个DDR都是羊肉串上的一块肉,哈哈,开个玩笑。



第二步,元器件摆放

确定了DDR的拓补结构,就可以进行元器件的摆放,有以下几个原则需要遵守:
原则一,考虑拓补结构,仔细查看CPU地址线的位置,使得地址线有利于相应的拓补结构
原则二,地址线上的匹配电阻靠近CPU
原则三,数据线上的匹配电阻靠近DDR
原则四,将DDR芯片摆放并旋转,使得DDR数据线尽量短,也就是,DDR芯片的数据引脚靠近CPU
原则五,如果有VTT端接电阻,将其摆放在地址线可以走到的最远的位置。一般来说,DDR2不需要VTT端接电阻,只有少数CPU需要;DDR3都需要VTT端接电阻。

原则六,
DDR芯片的去耦电容放在靠近DDR芯片相应的引脚
以下是DDR2的元器件摆放示意图(未包括去耦电容),可以很容易看出,地址线可以走到两颗芯片中间然后向两边分,很容易实现星形拓补,同时,数据线会很短。

以下是带有VTT端接电阻的DDR2元器件摆放示意图,在这个例子中,没有串联匹配电阻,VTT端接电阻摆放在了地址线可以到达的最远距离。

以下是DDR3元器件摆放示意图,请注意,这里使用的CPU支持双通道DDR3,所以看到有四片(参考设计是8片)DDR3,其实是每两个组成一个通道,地址线沿着图中绿色的走线传递,实现了菊花链拓补。地址线上的VTT端接电阻摆放在了地址线可以到达的最远的地方。同样地,数据线上的端接电阻也放置在了靠近DDR3芯片的位置,数据线到达CPU的距离很短。同时,可以看到,去耦电容放置在了很靠近DDR3相应电源引脚的地方。



第三步,设置串联匹配电阻的仿真模型

摆放完元器件,建议设置串联匹配电阻的仿真模型,这样对于后续的布线规则的设置是有好处的。
点击Analyze->SI/EMI Sim->Model Assignment,如下图。

然后会出来Model Assignment的界面,如下图


然后点击需要设置模型的器件,通常就是串联匹配电阻,分配或创建合适的仿真的模型,如果不知道如何创建,请在互联网上搜索或发邮件给无线时代(Beamsky)。

分配好仿真模型之后的网络,使用Show Element命令,可以看到相关的XNET属性,如下图。




第四步,设置线宽与线距

1. DDR走线线宽与阻抗控制密切相关,经常可以看到很多同行做阻抗控制。对于纯数字电路,完全有条件针对高速线做单端阻抗控制;但对于混合电路,包含高速数字电路与射频电路,射频电路比数字电路要重要的多,必须对射频信号做50欧姆阻抗控制,同时射频走线不可能太细,否则会引起较大的损耗,所以在混合电路中,本人往往舍弃数字电路的阻抗控制。到目前为止,本人设计的混合电路产品中,最高规格的DDR是DDR2-800,未作阻抗控制,工作一切正常。
2. DDR的供电走线,建议8mil以上,在Allegro可以针对一类线进行物理参数的同意设定,我本人喜欢建立PWR-10MIL的约束条件,并为所有电源网络分配这一约束条件,如下图。

3. 线距部分主要考虑两方面,一是线-线间距,建议采用2W原则,即线间距是2倍线宽,3W很难满足;二是线-Shape间距,同样建议采用2W原则。对于线间距,也可以在Allegro中建立一种约束条件,为所有DDR走线(XNET)分配这样的约束条件,如下图。

4. 还有一种可能需要的规则,就是区域规则。Allegro中默认的线宽线距都是5mil,在CPU引脚比较密集的时候,这样的规则是无法满足的,这就需要在CPU或DDR芯片周围设定允许小间距,小线宽的区域规则,如下图。



第五步,走线

走线就需要注意的内容比较多,这里只做少许说明。
    [li]所有走线尽量短[/li][li]走线不能有锐角[/li][li]尽量少打过孔[/li][li]保证所有走线有完整的参考面,地平面或这电源平面都可以,对于交变信号,地与电源平面是等电位的[/li][li]尽量避免过孔将参考面打破,不过这在实际中很难做到[/li][li]走完地址线和数据后,务必将DDR芯片的电源脚,接地脚,去耦电容的电源脚,接地脚全部走完,否则在后面绕等长时会很麻烦的[/li]
下图是完成的DDR走线,但尚未绕等长。



第六步,设置等长规则

对于数据线,DDR1/2与DDR3的规则是一致的:每个BYTE与各自的DQS,DQM等长,即DQ0:7与DQS0,DQM。等长,DQ8:15与DQS1,DQM1等长,以此类推。
DDR2数据线等长规则举例

DDR3数据线等长规则举例

地址线方面的等长,要特别注意,DDR1/2与DDR是很不一样的。
对于DDR1/2,需要设定每条地址到达同一片DDR的距离保持等长,如下图。

对于DDR3,地址线的等长往往需要过孔来配合,具体的规则均绑定在过孔上和VTT端接电阻上,如下图。可以看到,CPU的地址线到达过孔的距离等长,过孔到达VTT端接电阻的距离也等长。

补充一点,很多时候,地址线的等长要求不严格,这一点我还没有尝试过。在本人设计的这些产品中,地址线,数据线都做了25mil的Relative Propagation Delay的等长规则设定。关于等长规则设定的细节在这里不再赘述,有兴趣的话,可以发邮件给无线时代(Beamsky)。


第七步,绕等长

完成等长规则的设定后,最后一步也是工作量最大的一步:绕等长。
在这一步,我认为只有一点规则需要注意:尽量采用3倍线宽,45度角绕等长,如下图。

绕等长完成后,最好把DDR相关网络锁定,以免误动。

到这里,DDR走线就已经完成了,在本人设计过的三,四十种产品中,都是按照上面的规则与过程完成的,DDR2最高规格是DDR2-800,512MB,DDR3最高规格是DDR3-1600,1GB,都可以很稳定的工作,无论性能还是可靠性,都未曾出过问题。

评分

参与人数 1威望 +6 收起 理由
root_2022 + 6 好资料,支持分享

查看全部评分

Today meets tomorrow
回复

使用道具 举报

  • 打卡等级:以坛为家II
  • 打卡总天数:96
  • 打卡月天数:0
  • 打卡总奖励:343
  • 最近打卡:2025-11-21 15:40:30

13

主题

265

回帖

855

积分

1元学习Allegro(1期)

积分
855
QQ
发表于 2022-8-4 20:35 | 显示全部楼层
回复

使用道具 举报

  • 打卡等级:以坛为家II
  • 打卡总天数:189
  • 打卡月天数:0
  • 打卡总奖励:609
  • 最近打卡:2026-03-16 20:02:29

10

主题

580

回帖

1818

积分

二级逆天

积分
1818

终身成就奖特殊贡献奖优秀斑竹奖

发表于 2022-8-5 06:05 | 显示全部楼层
回复

使用道具 举报

0

主题

932

回帖

937

积分

二级逆天

积分
937

终身成就奖

发表于 2022-8-5 08:15 | 显示全部楼层
回复

使用道具 举报

  • 打卡等级:初入少年
  • 打卡总天数:6
  • 打卡月天数:0
  • 打卡总奖励:19
  • 最近打卡:2025-02-11 10:41:43

27

主题

1287

回帖

6542

积分

PADS-2020国庆特训班

积分
6542

终身成就奖特殊贡献奖

发表于 2022-8-5 08:25 | 显示全部楼层
回复

使用道具 举报

  • 打卡等级:以坛为家III
  • 打卡总天数:612
  • 打卡月天数:20
  • 打卡总奖励:2190
  • 最近打卡:2026-09-24 09:02:09

122

主题

3201

回帖

1万

积分

三级逆天

积分
16522

终身成就奖特殊贡献奖社区居民忠实会员

QQ
发表于 2022-8-5 08:33 | 显示全部楼层
回复

使用道具 举报

  • 打卡等级:初入少年
  • 打卡总天数:12
  • 打卡月天数:0
  • 打卡总奖励:50
  • 最近打卡:2025-08-29 11:10:46

22

主题

4911

回帖

1983

积分

二级逆天

积分
1983

社区居民终身成就奖特殊贡献奖原创先锋奖优秀斑竹奖

QQ
发表于 2022-8-5 08:34 | 显示全部楼层
回复

使用道具 举报

  • 打卡等级:以坛为家III
  • 打卡总天数:474
  • 打卡月天数:23
  • 打卡总奖励:1597
  • 最近打卡:2026-09-24 09:04:12

2

主题

8382

回帖

2万

积分

三级逆天

积分
22467

终身成就奖特殊贡献奖原创先锋奖优秀斑竹奖

QQ
发表于 2022-8-5 08:35 | 显示全部楼层
回复

使用道具 举报

  • 打卡等级:初入少年
  • 打卡总天数:6
  • 打卡月天数:0
  • 打卡总奖励:26
  • 最近打卡:2025-09-25 16:45:41

1

主题

2516

回帖

3625

积分

二级逆天

积分
3625

终身成就奖特殊贡献奖原创先锋奖优秀斑竹奖

发表于 2022-8-5 08:52 | 显示全部楼层
回复

使用道具 举报

发表于 2022-8-5 22:28 | 显示全部楼层
回复

使用道具 举报

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

本版积分规则

Copyright ©2011-2024 NTpcb.com All Right Reserved.  Powered by Discuz! (NTpcb)

本站信息均由会员发表,不代表NTpcb立场,如侵犯了您的权利请举报投诉

本站所有资料仅限参考学习交流,PCB原理图源码等所有资料不保证准确没问题,请不要用作生产。否则后果自负。

闽公网安备35062302000276号 | 闽ICP备2024076463号-1 | 论坛技术支持QQ群171867948 | 论坛问题,充值问题请联系QQ1308068381

平平安安
TOP
快速回复 返回顶部 返回列表