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

求助:关于SDRAM 的线长匹配

[复制链接]

该用户从未签到

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

EDA365欢迎您登录!

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

x
本帖最后由 REALLY 于 2009-9-9 15:39 编辑 - f/ \; q+ x" B6 M% f$ e0 J6 D

/ ^9 z1 W4 u% o/ m/ m. e0 K我设计的系统中有两片SDRAM 扩展成的存储空间,如下图所示  \" E/ n8 O( V! Q3 q
5 c0 f7 w. c) M9 O# R( u7 M

8 K7 h7 k7 n  G& ]" V现在想要CPU到这两片的地址数据控制线长匹配。我打算的做法是:- P3 G0 a: N+ |5 J4 x! ~
1.将其中的时钟,数据 地址 控制线 分别设定规则,如SD_DATA, SD_CLK 等,并分配好网络4 C* u* M' z- C. b6 j, y6 D
2.在ECset 中设置(SD_DATA等)最小走长,最大走长来控制长度* a8 s, N2 r6 h* A# X3 n1 Z# O

4 `( V0 c2 _! w0 Y) A+ [但是现在,从CPU出来的地址线数据现如 TED TEA 等,还连接到其他芯片上,(如FLASH ,cpld),在allegro 中都是TED TEA来标示的, 如果在添加网络到对应的SD_DATA ,SD_CLK规则中的时候,不是把其他的线也包括进去了,这个时候我该怎么做才能够区分这些地址数据总线呢?. {$ ^+ O" I- T
: K/ A$ r& C; F# k. l" G$ J+ K
附注:如果用PIN TO PIN ,太多了,很不方便,大家在这个时候是怎么做的呢?非常感谢!!

该用户从未签到

2#
发表于 2009-9-9 16:10 | 只看该作者
地址线和数据线相同拓扑结构的可以建成一个BUS5 w3 m. {% _& G0 [0 K4 b3 {8 O
对其中一个进行提取拓扑设置约束
6 P3 k! f7 h9 v% S9 |其它的可以自动生成pin to pin,并生成Match Group, v' q3 b- S* o7 ^! q
记得论坛里应该有这篇操作文档

该用户从未签到

3#
 楼主| 发表于 2009-9-9 16:38 | 只看该作者
2# 袁荣盛 2 y, j/ o3 M( d% x$ I
可不可以说具体点。呵呵,我还是不太懂。

该用户从未签到

4#
发表于 2009-9-9 18:11 | 只看该作者
Xnet就已经设置成功了。进入CM,选中Net-Routing-Relative Propagation Delay,把具有相同拓扑结构的网络生成一个BUS,并给这个BUS赋予一个名称DDR。2 H; _7 |6 z* ]3 M, u6 j' K

& D) m: x* ~3 m4 N6 ~( W
' J& c8 K$ _! U0 I  [5 C# R
8 g  D9 b% l, W! }  }- V' E
  W& H. {: S1 ~; ~3 d% t% ?! O: e8 A6 a3 Y- H$ h

; g1 X5 v8 ?$ W, |右击DDR总线,赋予总线电气约束集名称
6 |5 N0 g$ w, g% k8 z0 |8 L0 h" M0 N. G# T$ M

, R* D8 e+ a- x, n) i+ a4 j
; g5 F% P( u7 g8 {3 S/ x' U* { + X( M% t% e# U- r5 l  W( c

; s" m; W4 C0 G3 H2 n
7 u5 _& f- \) I- ?设置完成后BUS中的Xnet都具有DDR约束集属性5 {1 ], e7 v6 U0 I# T. y( _6 \# ^% e

! g' c4 w; V3 c' d8 o2 [9 J: `" ~  }2 e' K) \# b2 n
6 i; k! @. V" ^- O! L2 ~
右击DDR总线名称,选择SigXplorer,进入拓扑结构编辑器+ T; Y% f8 r5 f8 c, M( _
! c2 W6 _# ^& G8 t- W; |5 j
" M; ^& D6 s6 y

+ l, N  _. T3 d1 r  Z& h& L5 u5 {( ~* u

$ K& [, ~. x- V/ H: s. i一般打开的拓扑结构是DDR总线下第一个Xnet的拓扑,对其进行参数设置,在SigXplorer中执行Set-Constraints。在界面中选择Rel Prop Delay3 ~( S' v- h% k, J

% n9 G& f6 g7 ?9 h; Y
$ F+ B2 X% {% Y' F# r% ]. P参数设置完成后,回到SigXplorer界面,单击图示按钮更新CM
5 U% J; V/ P  S, O+ V9 X' u' g0 D" [8 E$ T4 y9 ~
  ?; N1 N% b! |
; ?' O1 l/ w8 h

2 O6 a/ }6 ~6 @2 z* x/ m; g! z3 ^- i# G; B4 H: Q3 l
更新完成后关闭SigXplorer,在弹出的对话框中选择YES即可。: r7 u- u% z4 d6 t2 M; ~* s4 N
' Q# j$ d5 U  ~* g. c( ?3 M: {
9 P7 y1 P3 B) t- h; l1 _" q

( E, R% D1 ?+ X% d, q1 v这时CM中有三处发生变化,首先是约束集中的DDR有了参数设置# K- Q- _! K: q+ R( w; p  J
, f* _8 ?; r. Y, z

  @" K! w! o' C% e: a/ W# _) f; j" c. J& V- i; l
然后是所有遵循DDR约束集的Xnet自动生成了Pin Pair,这一结果是建立在所有的Xnet具有相同的拓扑结构基础上的,如果DDR总线中的Xnet具有不统一的拓扑结果,执行到这里会出现两种情况,一种就是和第一个Xnet(图中是DQM0)具有同样拓扑结果的Xnet自动生成了Pin Pair,与之不同拓扑结果的Xnet的约束集名称DDR会变成红色,并且没有Pin Pair生成,导致错误,这时应该删除此Xnet,或者Clear约束集Ref,然后重新建立约束集,并重复以上工作,对其拓扑结构中的约束参数进行设置。
6 \' l: F& q0 I7 W7 q. K
! x: Q( |/ D- C . W4 ~0 Z6 J* ~9 X" n
% G  A; {; B$ E+ `) Y
最后是所有的Pin Pair自动生成了Match Group,名称为我们在前面Rule Edit中新建的Rule Name
/ q" r% y9 L$ v- ~8 S+ P; t4 T6 S/ E& K
4 U+ ?1 Q. `7 r/ U6 m* H
: h, l7 I" n5 e- h! \& Y8 [
总线中的网络参数设置完成之后,还有其他的Xnet,比如一些地址总线,控制总线等等,需要一起做等长约束,上面已经介绍了一种处理方法。下面再介绍一种方法。相同拓扑结果的网络放在一起做等长比较方便,因为软件可以自动生成Pin Pair ,并且可以自动生成Match Group。不同网络拓扑结构的网络需要单独做约束规则。
3 v  S+ F  \: L" n0 k: n
4 C* ^9 z% g8 E2 ~0 @8 M! o0 n右键Xnet,生成一个新的约束Ref。
! V# E6 P( Y3 t' J+ p% |1 @9 c, _
4 T: R% J8 o5 Q' j  C5 b6 j
; l4 l: u% Y0 F5 w3 ^5 t! Y
2 n$ s$ L1 }+ c! v1 J! d5 n. b3 ~8 E进入SigXplorer界面,对约束参数进行设置,唯一注意的是这里的Rule Name仍然命名为DDR,根据需要建立Pin Pair。
! L5 j, M; }4 B1 F( }
* g6 @/ c/ @; V. K8 g" B0 | 0 [; ~$ W4 `' B9 _& u9 g

/ `/ K6 f. @! B4 [% {设置完毕更新CM后发现Xnet CDS1的两组Pin Pair已经被加载到Match Group中了,成功实现了与之前设置BUS中的Pin Pair之间的等长约束。
8 l% |# i4 b; c6 T# m# t/ K) I5 t4 _* j+ }# ?, ]

) u. G4 D' `$ F! {6 f3 W: j) c+ p7 Z+ d( [6 W+ Z
其实到这里已经可以收工了,但为了便于查阅,通常会把所有需要做等长的Xnet放在同一个总线目录下面  n+ g. [2 @% |. M8 m- t, V

: q0 \; m( l( A! B- M; T3 @/ m ' w; g6 y1 m! x. C5 ]1 U. }- v- o

0 a2 _) d- _% M: k' e从下拉列表中选择DDR即可) d2 Y7 d  K6 ?
" {( ^; E, ]: w: L/ V2 Z7 d+ o$ b

; S2 V9 G; V3 U; o2 L# [  e这样CDS1就被成功加载到DDR总线中
% g$ N3 _, x, x  U% V( i- @! w( Y8 W1 ]# ~( Q9 O& P+ R4 ~; Q
6 i# Y5 R& |: i: G' e5 N
' \- l7 ?9 p1 b. Z% d
自此,等长约束规则作成,即可进行布线工作

该用户从未签到

5#
 楼主| 发表于 2009-9-11 09:57 | 只看该作者
这个方法太好了,太谢谢楼主的热心帮助了# N  I! F+ H4 A1 ?1 L: e+ ~2 D  x

2 {: M3 X3 o& t) n( @9 t  但是当初我画原理图的时候用的是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-24 06:56 , Processed in 0.109375 second(s), 27 queries , Gzip On.

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

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

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