找回密码
 注册
关于网站域名变更的通知
查看: 6254|回复: 23
打印 上一主题 下一主题

DDR布线全攻略与技术探讨

  [复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2009-8-10 15:21 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

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

x
本帖最后由 hdjun 于 2009-8-10 16:13 编辑 " @  ^4 Y5 Q$ N( q7 g
! g% p/ d: G. ]( f! P5 }* C
使用allegro 对DDR布线进行设计,是我最近在做的工作,由于是第一次使用DDR ,很多问题不是很清楚,之前查阅了很多资料,现在将我的布线和约束步骤写出来,供后来人参考,其中也有很多技术问题需要向坛子里的高手请教,望不对的地方多多指正。, V8 p/ s6 `% q1 m' m# ^

/ |. R/ p, a' W$ m2 \5 x: w3 f- c8 |1 VDDR的布局布线约束众说纷纭,随便在网上找一下,都说的不一样,甚至有矛盾的地方,这让我着实苦恼的一整子,目前我能确定的基本约束有:
) A- A: G' O  w( h% V3 {6 C) s0 F( f
1。RS RT的选用. i% i: C, M$ N; }
& g  M0 r8 V: a5 e" n
    一般都要使用,但是在小负载,短距离的应用下,可以不使用RT ,甚至不适用RS。 目前我的设计使用的芯片是单片128MX8的DDR333的芯片,与FPGA中心距离在1900mil左右,使用了RT和RS。端接电源芯片使用LP2996,其实单片负载很小,如果不使用RT也是可以的,我认为。具体要看仿真结果,我比较懒,所以不管3721都用了。$ s5 O4 i2 J+ Z
% M+ V3 K( D6 q! Y
     至于RS RT的摆放问题,也是众说纷纭,一般的正统的做法是将RT摆放在信号线尾端,并行端接。RS一般放在信号线的中间段(也有的说法是在双向时靠近DDR,因为有RT作用,驱动较强,单向,则靠近FPGA)其实一般的小负载短距离情况下,我想都没有问题。我的设计都是放在中间的。
, d; g+ x' z- M' s& y& @! u2 m1 ~; I8 t! C5 b7 d! k: Y- p
2. 时序等长约束
4 S3 l" M9 ~5 c% t( E& _
. }' b& m( v, K/ C) [    这个也有很多说法。我现在采用的是如下约束。如有不对的地方请指出。
- O/ _' u6 r6 i    A, 一个lane中的DQ DQS DM 等长(我使用的芯片只有一个lane) ,设置relative propagation 约束为 0:25mil,将DQS作为TARGET. s1 w+ c# Y4 L( i+ q5 f0 d* H
    B, CK,CK#与DQS等长,容差在400mil,我使用的是total etch length 来约束,省去定义pin-pair, t" W. ]' |) ~1 v" [
    C, 其余(地址线控制线命令线 ) 和  (CK,CK#) 等长,我设置relative propagation 约束为 400mil:400mil,将CK 或者CK #作为TARGET. 这一部分我不是很确定,因为有的网上down 的东西说,地址线不能比时钟线短(我想可能是和北桥有关,FPGA的设计好像没有关系,因为可以下沿锁出命令,呵呵,不知对不对,欢迎拍砖!),所以我的这样设置就使这些地址线长度分布在 (ck~ck+800mil)范围内,不知是否有问题。因为有的文献又说 地址线也要等长 ,甚至等长容差要在50 mil 以内,但是我个人觉的没有必要。不知高手们怎么看。望不吝赐教!' Y1 U# v  h# K  ~+ X1 a, ^8 G0 {
    D,时钟线和DQS 不在同一层走线,或者相距较远,数据组组间间距12mil以上(这是约束设置的,实际走线平行线段尽量分开,减少串扰),线宽6mil, 组外间距14mil以上(这也是约束设置的,实际走线尽量分开,一开始我设置的是20mil,后来发现,到pin后,和电源脚相邻的pin都报DRC,原因是电源线比较粗,嫌麻烦我就都改成14mil 了,就没有DRC了),不知道兄弟们遇到这个问题怎么解决的。! T) P* ^  W  {$ v' Y
# N8 n$ h- j: D0 z2 ]0 b
   E. 使用 FPGA是BGA封装484PIN, BGA附近定义一个Constraint area 以区别一般的DDR spacing rules。使用default spacing rules (我的是6mil)。7 L7 `/ {  y6 T- ~0 z% x- |

8 Y) L" V8 x# S3. 时钟线的匹配
6 z$ i* A- u2 N* C" _& P
6 y# u3 L; O5 D# g8 ?/ H   差分阻抗控制在100-120欧姆之间(有的说是90-100欧姆,比较困惑。。。)。阻抗控制这个我决定找制版的人做,因为我们不知道工厂调节的板层间距和具体的Er值。相位延时误差在25mil,直接在CSM中设置差分线的phase tol. 为25mil 。其他的参数我使用的couple tol.=0.2 mil; uncoupled length (max)=100mil (gather controled)& K% e) S# N! c; G: Z
" z0 e/ d' {4 n) G4 o# Z2 o
   另外使用了100欧姆并行端接,和10欧姆的源端串行匹配。
* z2 A1 }1 @, l* a5 a# @$ r$ J6 Y4 o# t7 j* H3 V) |; i

; P  W* l  {2 s- W/ t暂时想到的就这么多了,有不对的或者有疑问的,欢迎拍砖。

DDR_ROUTE.JPG (175.18 KB, 下载次数: 58)

附截图一张供参考,最近要投版了,如果有问题,请高手不吝赐教!

附截图一张供参考,最近要投版了,如果有问题,请高手不吝赐教!

评分

参与人数 2贡献 +12 收起 理由
袁荣盛 + 2 原创
deargds + 10 感谢分享

查看全部评分

该用户从未签到

2#
 楼主| 发表于 2009-8-10 16:06 | 只看该作者
没人顶啊,,后来我修改了约束C ,  其余(地址线控制线命令线 ) 和  (CK,CK#) 等长,我设置relative propagation 约束为 300mil:500mil, 因为,不好调整布线,改过后地址线组的长度范围在 ck-200~ck+800mil范围内,感觉比时钟线短一点,应该也没有问题的。不知大家怎么看。

该用户从未签到

3#
发表于 2009-8-10 21:06 | 只看该作者
关于D那个间距问题8 G7 C& n: {$ t) @% b- ]2 ]5 `+ V, b" b
可以在出现这种情况的引脚周围画一个约束区域解决这个问题

该用户从未签到

4#
 楼主| 发表于 2009-8-10 21:30 | 只看该作者
恩,有点麻烦,我就没加了,呵呵,估计指定电源NET(Identify DC nets)也不行吧?

该用户从未签到

5#
 楼主| 发表于 2009-8-10 23:47 | 只看该作者
3# 袁荣盛 ( m5 R* P: V& s% M8 L) G& Y2 j& t

+ v- J; {) [# H  L! o; P. ]我想做先做一下阻抗控制,可是论坛的FTP好像登录不了,下载不了polar 软件,是不是有 版权问题啊,哪里可以下载到呢???借地一求啦,呵呵。。。

该用户从未签到

6#
发表于 2009-8-11 09:38 | 只看该作者
本帖最后由 袁荣盛 于 2009-8-11 09:40 编辑
! T. o1 F7 G2 q7 y5 F! \/ e$ [" F" h4 b8 F9 ?
http://www.sig007.com/rjxz/115.html

该用户从未签到

7#
 楼主| 发表于 2009-8-11 19:09 | 只看该作者
非常感谢!!

该用户从未签到

8#
发表于 2009-8-11 21:16 | 只看该作者
支持LZ分享经验

该用户从未签到

9#
发表于 2009-8-12 16:46 | 只看该作者
支持分享实战经验哈5 O% Q  M& X$ q/ N; z
我们也是准备做DDR2,感觉对这个约束什么的还是了解太少了) ]' H% }2 z! C+ M& w
以前的SDRAM最多133MHz,真是随便画都能用2 a- H3 c7 T9 E# w" B9 L

6 L7 j( o& n( y" R) K, Y) F% m讲的清楚的文档太少了,只能看内存厂家的东西了,都是时序之类的,太痛苦了

该用户从未签到

10#
发表于 2009-12-1 14:57 | 只看该作者
谢谢楼主分享。。

该用户从未签到

11#
发表于 2009-12-1 18:38 | 只看该作者
2# hdjun

该用户从未签到

12#
发表于 2009-12-3 16:55 | 只看该作者
支持,一起学习。。

该用户从未签到

13#
发表于 2010-2-19 01:38 | 只看该作者
顶一下
头像被屏蔽

该用户从未签到

14#
发表于 2010-3-2 14:51 | 只看该作者
提示: 作者被禁止或删除 内容自动屏蔽

该用户从未签到

15#
发表于 2010-3-12 10:10 | 只看该作者
楼主有不有DDR2接口的定义啊,我准备画插槽接口,都不知道如何接在FPGA上。。。。。。。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-11-23 01:10 , Processed in 0.203125 second(s), 28 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表