找回密码
 注册
查看: 3076|回复: 7
打印 上一主题 下一主题

求助:关于SDRAM 的线长匹配

[复制链接]

该用户从未签到

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

EDA365欢迎您登录!

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

x
本帖最后由 REALLY 于 2009-9-9 15:39 编辑
3 |3 q" B! _8 A; |4 |
0 x7 o* a* B! R9 w) g! S我设计的系统中有两片SDRAM 扩展成的存储空间,如下图所示% Y1 s4 I( g! h

) _& l: l$ v2 I 7 P5 t' T% K& }; g
现在想要CPU到这两片的地址数据控制线长匹配。我打算的做法是:
) O" W) J6 _' H' M9 _1.将其中的时钟,数据 地址 控制线 分别设定规则,如SD_DATA, SD_CLK 等,并分配好网络
3 ]" R/ x6 h# W1 n3 h: v& O5 t5 _2.在ECset 中设置(SD_DATA等)最小走长,最大走长来控制长度* `: w0 Y) D( c6 K$ ?3 S8 u! U% z

7 U9 l) I8 w; h6 B, M) x但是现在,从CPU出来的地址线数据现如 TED TEA 等,还连接到其他芯片上,(如FLASH ,cpld),在allegro 中都是TED TEA来标示的, 如果在添加网络到对应的SD_DATA ,SD_CLK规则中的时候,不是把其他的线也包括进去了,这个时候我该怎么做才能够区分这些地址数据总线呢?
4 C3 N! G9 K/ e; F( F. t, m  k
6 V* a3 [1 x3 c; r$ E附注:如果用PIN TO PIN ,太多了,很不方便,大家在这个时候是怎么做的呢?非常感谢!!

该用户从未签到

2#
发表于 2009-9-9 16:10 | 只看该作者
地址线和数据线相同拓扑结构的可以建成一个BUS0 ~0 l8 }$ l4 O, N8 ]+ O$ p% a
对其中一个进行提取拓扑设置约束
9 f% g& j0 h/ X6 X  \! e其它的可以自动生成pin to pin,并生成Match Group
% A" b% z2 J( c1 e+ G6 D1 G记得论坛里应该有这篇操作文档

该用户从未签到

3#
 楼主| 发表于 2009-9-9 16:38 | 只看该作者
2# 袁荣盛
% B( L; K, [6 @! D8 g/ G" O可不可以说具体点。呵呵,我还是不太懂。

该用户从未签到

4#
发表于 2009-9-9 18:11 | 只看该作者
Xnet就已经设置成功了。进入CM,选中Net-Routing-Relative Propagation Delay,把具有相同拓扑结构的网络生成一个BUS,并给这个BUS赋予一个名称DDR。
, r& E7 U% P  `3 j, Y% ~$ e; @9 G' u6 J3 A4 G; U# a* s* I! r
( |; ?$ ?  c# H7 a' ~* ?0 F9 S
  a: h$ Z/ P) e4 g4 e* M+ h
3 }& B. Z3 d+ ]# Y1 r% c
& _5 |0 G5 z) ~- I5 H. \

5 l! _( i+ q7 U5 U! z- r右击DDR总线,赋予总线电气约束集名称
" N, _- P) [/ z# |: u) m
9 A% G; e1 i  T6 `* M. Q . L# \" m) @9 D

$ U4 N% R  k' _! a6 f& N- k, C
5 Z6 ^5 V) |: ]& g4 F: C* o  z/ C+ N% \7 ^( q

* `* z- A8 [5 h& x设置完成后BUS中的Xnet都具有DDR约束集属性; J  @7 _) U  P. i2 |/ ^3 l0 b
) b+ G" |9 S! D4 W( ~3 o

. H4 U# A4 R& k5 U
! H6 ^4 l+ U% F5 G6 v2 [& c右击DDR总线名称,选择SigXplorer,进入拓扑结构编辑器
3 I# g) s% P  M 2 b- [- R0 O, @* n8 _

, ~: j4 B& d6 Q1 r& | " q4 m  R, p! s
, F5 T/ L& T# {0 `% {3 _3 `- P

, e$ q6 D( @1 M- c4 H" x. V) Y0 M3 Y: G一般打开的拓扑结构是DDR总线下第一个Xnet的拓扑,对其进行参数设置,在SigXplorer中执行Set-Constraints。在界面中选择Rel Prop Delay
4 Z. k2 B2 X/ { ) U3 D' l4 v( \/ N
5 E. ^/ ~" l5 @% w9 w& h
参数设置完成后,回到SigXplorer界面,单击图示按钮更新CM7 z& M0 W% ~! x" T# x0 Q3 ^
% [2 x7 ]9 ]9 s; q/ G0 P3 l2 L
! `& J) K. _9 s( E( w

' G' a' t" f; |0 R6 ^  a: ^5 E0 s( J& h' E  @

9 q: h2 g0 w- C更新完成后关闭SigXplorer,在弹出的对话框中选择YES即可。
) B- y! k4 a7 ^; p+ N1 O( _1 q$ n  _7 k: L8 b3 [4 S4 w! z7 v
4 A1 [& C4 F1 s3 T0 \

/ t6 z3 J! {! p+ k$ S" z3 E# W! A这时CM中有三处发生变化,首先是约束集中的DDR有了参数设置- w' i/ h% Q$ a$ P+ N+ Q1 K% z9 S

6 G5 [8 W( }; u# P$ d5 X & }. f2 p& f/ G7 u
1 O5 B6 X- n- ^. X& O1 C  A2 B
然后是所有遵循DDR约束集的Xnet自动生成了Pin Pair,这一结果是建立在所有的Xnet具有相同的拓扑结构基础上的,如果DDR总线中的Xnet具有不统一的拓扑结果,执行到这里会出现两种情况,一种就是和第一个Xnet(图中是DQM0)具有同样拓扑结果的Xnet自动生成了Pin Pair,与之不同拓扑结果的Xnet的约束集名称DDR会变成红色,并且没有Pin Pair生成,导致错误,这时应该删除此Xnet,或者Clear约束集Ref,然后重新建立约束集,并重复以上工作,对其拓扑结构中的约束参数进行设置。$ X; a6 C1 e& O" R

9 z$ ?7 c, R: ]5 \7 ]: j" v, }
; I4 g+ ]" I0 }0 E, m  e: P6 g
" R# ^$ @7 v. Z/ I8 u* H最后是所有的Pin Pair自动生成了Match Group,名称为我们在前面Rule Edit中新建的Rule Name5 E: h4 W! ?+ }+ Z. w4 p

1 C$ K/ P/ B& `5 v; [
/ T/ @2 v* v# ?* H, k  k: b2 Z6 ~3 ]8 Y
总线中的网络参数设置完成之后,还有其他的Xnet,比如一些地址总线,控制总线等等,需要一起做等长约束,上面已经介绍了一种处理方法。下面再介绍一种方法。相同拓扑结果的网络放在一起做等长比较方便,因为软件可以自动生成Pin Pair ,并且可以自动生成Match Group。不同网络拓扑结构的网络需要单独做约束规则。
5 s: [2 W. R6 H$ e8 b6 r
- i; @" r8 T0 P7 h3 U6 U右键Xnet,生成一个新的约束Ref。
( _; t- ]9 Y. r+ y! s) [
2 V9 Z9 t3 Z2 H 6 o! w/ Y# S4 V: Y$ {0 i
2 j  R4 k* T: J/ C2 E1 n+ Q
进入SigXplorer界面,对约束参数进行设置,唯一注意的是这里的Rule Name仍然命名为DDR,根据需要建立Pin Pair。) P, I3 S8 n( W' O! g  J

5 B! N/ s" I2 f! r % k3 ]( s% M) d

- _3 y1 {' i# p设置完毕更新CM后发现Xnet CDS1的两组Pin Pair已经被加载到Match Group中了,成功实现了与之前设置BUS中的Pin Pair之间的等长约束。
1 }/ T3 v; W  O* g0 w: `$ P
. s) _7 F- \9 O0 q
: D4 k; L1 u) M* N3 ]
& p; Z0 u( H+ J# ^其实到这里已经可以收工了,但为了便于查阅,通常会把所有需要做等长的Xnet放在同一个总线目录下面
  l% |) x, ~) i5 o2 {9 O+ t& p' l& D" V( a" c2 [: t( ]

3 S7 Z/ k8 r8 v# x! s: U/ K; u0 N  d. p
从下拉列表中选择DDR即可6 _3 R5 w6 C5 H; e% N# Z, c
: W# c$ L+ h$ y/ R

3 {, g7 A+ X0 [' o5 [' d这样CDS1就被成功加载到DDR总线中+ C# w2 R/ @  ]& b( K( K" V
4 ]5 k6 f) ]! n6 L& z& v1 k
/ J. Y! j8 v* ]- s

0 K: W5 {/ }- m- Y# `自此,等长约束规则作成,即可进行布线工作

该用户从未签到

5#
 楼主| 发表于 2009-9-11 09:57 | 只看该作者
这个方法太好了,太谢谢楼主的热心帮助了
2 V% @- Y7 B% ]$ ]" @: @
' M  m( j! }& o& X  但是当初我画原理图的时候用的是ORCAD ,不是HDL的,SigXplorer界面打不开,设置也没有成功,呵呵,有没有什么办法把ORCAD 的原理图转换成HDL的?

该用户从未签到

6#
发表于 2009-9-11 10:59 | 只看该作者
这个是在Allegro中进入到SixP中设置的

该用户从未签到

7#
发表于 2011-10-28 10:18 | 只看该作者
楼主真好 帮大忙了

该用户从未签到

8#
发表于 2011-10-28 15:39 | 只看该作者
很详细呢.
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

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

EDA365公众号

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

GMT+8, 2025-5-23 05:38 , Processed in 0.093750 second(s), 27 queries , Gzip On.

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

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

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