|
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# `自此,等长约束规则作成,即可进行布线工作 |
|