|
Xnet就已经设置成功了。进入CM,选中Net-Routing-Relative Propagation Delay,把具有相同拓扑结构的网络生成一个BUS,并给这个BUS赋予一个名称DDR。+ H. A0 K6 m+ R+ P" M' W6 @
( K. e" |/ e2 k% g& @; j* X& p
$ j6 f1 j' @3 U2 c/ A" V7 N- q' `4 [0 t' z- u* F7 |5 n
5 U. e7 t0 V: ~3 d/ ^- \6 k( `; i5 M. b9 D& G" q
/ ]" T$ G) d$ z, L
右击DDR总线,赋予总线电气约束集名称# t0 G' K5 J8 W7 {8 k4 U
$ E( D1 I( r" D$ m8 `' a/ b7 i% S
4 I3 F) U) F" e' Z; u* T2 g
2 X1 n& H) q' o0 d
" x* O, E4 T+ l0 C3 h
& q" ?! J. R9 l. a- {
9 i! j8 k+ {- Z4 r. `设置完成后BUS中的Xnet都具有DDR约束集属性: w, O9 x! ~4 C1 v" E
5 p: J$ F: T9 G" b$ L; n b( s
1 v4 `) D4 q, L; g4 `/ T3 {9 t
6 Q8 B0 `% |0 V: {0 ]" |9 l
右击DDR总线名称,选择SigXplorer,进入拓扑结构编辑器
( Q# \% |, c Q" u
3 ^( T: a" g, c
5 h8 [: a2 C" u4 ?& v
" a+ O9 O7 I1 }9 K+ W8 H
/ x% Y. s& r1 k+ [( i# s% A, b2 |* z1 g6 @- V: q( k6 x
一般打开的拓扑结构是DDR总线下第一个Xnet的拓扑,对其进行参数设置,在SigXplorer中执行Set-Constraints。在界面中选择Rel Prop Delay3 G) c" S' T0 v) k3 W* ^0 D @; f
3 \$ K j) v4 @. G# s8 F1 Y' R
: g8 e E8 M# A参数设置完成后,回到SigXplorer界面,单击图示按钮更新CM0 P6 a" k+ y0 F) E- M, e/ X; x
3 K6 Q b! H9 i5 Q
& b1 D k* i; g1 o5 K# c
/ R. h$ I8 ^6 G/ V' j
0 Q, p" {7 F& c
( Y R- I; ]) f" M" d' L" o$ I更新完成后关闭SigXplorer,在弹出的对话框中选择YES即可。
" s y1 {0 n, J2 N, m2 o1 }7 Z5 r$ [9 U: L! Y
% W; l/ b" m$ E) U/ } {2 p. u% S+ `5 X& Y8 Z B; W# q
这时CM中有三处发生变化,首先是约束集中的DDR有了参数设置' }+ |6 |! H$ s* H
2 H/ h, y) L: x2 r
?) V5 R) ^3 @
3 K9 y; Q' D0 Z- o6 {2 T3 J, t
然后是所有遵循DDR约束集的Xnet自动生成了Pin Pair,这一结果是建立在所有的Xnet具有相同的拓扑结构基础上的,如果DDR总线中的Xnet具有不统一的拓扑结果,执行到这里会出现两种情况,一种就是和第一个Xnet(图中是DQM0)具有同样拓扑结果的Xnet自动生成了Pin Pair,与之不同拓扑结果的Xnet的约束集名称DDR会变成红色,并且没有Pin Pair生成,导致错误,这时应该删除此Xnet,或者Clear约束集Ref,然后重新建立约束集,并重复以上工作,对其拓扑结构中的约束参数进行设置。
9 p, a3 B. o/ r( P% _! S
) X9 \2 u0 x2 t, s! A5 U4 h2 z
0 k: C2 ]/ c2 l
e m8 m O. }5 q1 r最后是所有的Pin Pair自动生成了Match Group,名称为我们在前面Rule Edit中新建的Rule Name
9 q6 H( u" P9 T* w/ L1 u, R7 r3 D" k% |2 g
2 e* ^* ^! T8 H7 W0 |5 e4 c
+ `* Y1 _% [4 a5 l总线中的网络参数设置完成之后,还有其他的Xnet,比如一些地址总线,控制总线等等,需要一起做等长约束,上面已经介绍了一种处理方法。下面再介绍一种方法。相同拓扑结果的网络放在一起做等长比较方便,因为软件可以自动生成Pin Pair ,并且可以自动生成Match Group。不同网络拓扑结构的网络需要单独做约束规则。
; q" C* W/ ]$ P# f0 q8 _7 z [& ^
右键Xnet,生成一个新的约束Ref。
, v1 m9 _2 z$ i c
9 {. l, M' b. M, `7 D+ x
" w |, H7 G5 m' r. U
: P: u) K& d* v9 |& C$ T进入SigXplorer界面,对约束参数进行设置,唯一注意的是这里的Rule Name仍然命名为DDR,根据需要建立Pin Pair。( Z3 L# r3 I1 M
5 X2 o' {* z: r2 W
! Z6 r0 S% R' Q" D0 ?% ~. m
* g3 { u" e! q& Z. x设置完毕更新CM后发现Xnet CDS1的两组Pin Pair已经被加载到Match Group中了,成功实现了与之前设置BUS中的Pin Pair之间的等长约束。
! }% i5 u% Y5 Z# `- d# ]8 q; \9 Q* X
9 n( m; ?, s, f( Q$ j* U% n0 \ y6 e: h4 T+ V) a& ^1 N3 y% }
其实到这里已经可以收工了,但为了便于查阅,通常会把所有需要做等长的Xnet放在同一个总线目录下面
+ |9 ]& J/ I, m! b# N6 T, i5 S4 X$ x( }
9 ]- I" e/ `0 s- w- U
% r, z0 f9 B. h# Y* h1 Z: X从下拉列表中选择DDR即可
' a# o/ G9 S6 ~0 x, G& D8 _) x! h5 ?3 f" ?
/ W# X" s& O( A: b# r( ?3 y e3 i3 @
这样CDS1就被成功加载到DDR总线中0 g* U, A$ x1 F
2 j0 G- |5 a+ \4 | A- t! a3 f+ a0 J
! e; V7 ^8 Q2 I9 p2 r( \0 r3 F- }
自此,等长约束规则作成,即可进行布线工作 |
|