一)回顾源同步时序计算
/ f u/ ~0 k$ `6 t) t7 R
Setup Margin = Min Clock Etch Delay – Max Data Etch Delay – Max Delay Skew – Setup Time
d9 _( w" c8 P. | F* m4 t2 o* _
Hold Margin = Min Data Etch Delay – Max Clock Etch Delay + Min Delay Skew + Data Rate – Hold Time
' j( u* [* w' ]9 _5 |0 Y
下面解释以上公式中各参数的意义:
% s- [6 w! [2 d* }6 x @1 t$ e- M
Etch Delay:与常说的飞行时间(Flight Time)意义相同,其值并不是从仿真直接得到,而是通过仿真结果的后处理得来。
! a8 T4 r/ t6 n" ^7 {0 T: H1 O请看下面图示:
$ Z7 V% E/ E. b( I% n
图一为实际电路,激励源从输出端,经过互连到达接收端,传输延时如图示Rmin,Rmax,Fmin,Fmax。
5 d" n! }2 N+ Y图二为对应输出端的测试负载电路,测试负载延时如图示Rising,Falling。通过这两组值就可以计算得到Etch Delay 的最大和最小值。
0 Z% W( h# B, b, m4 a+ o+ l
- G" M0 ~/ L& S2 L) c( Q
图 1 Raw Etch Delay
! D0 S0 s1 z3 h% ?1 S0 \: P
: N% \( w* O% V' h图 2 Test Load Measurement
$ t) {% |' v, B# g+ G
Delay Skew*:Delay Skew描述的是信号在缓冲输出前时钟和相对应数据的相对位置,如图三所示。SKEW_MIN和SKEW_MAX分别确定了无效数据无效窗口的起点和终点。它们的值可正可负,负值表明数据边沿超前于对应的时钟边沿,反之亦然。
( d; l+ w: A6 T% w$ s: B0 ^
* ` U. d( N7 s8 F: L- E& i1 Y; m0 n
图 3 Delay Skew
4 _2 H; q- E4 @- J6 N2 i9 f) d+ |Setup/Hold Time:即接受器件正确锁存数据的最小建立和保持时间。
7 j0 b7 ~) A# u1 {* b
从以上叙述可以清晰看出,时序计算公式中的参数可以分为三类:第一类是Delay Skew,由输出端所用器件决定,从数据手册中可以得到;第二类为Etch Delay,由互连电路决定,需要通过仿真和计算得到;第三类为Setup/Hold Time,由接收端所用器件决定,同样可以从其数据手册中得到。
2 c6 B5 D6 w% \# d
二)使用时钟PLL的系统时序分析
6 b3 A* S2 V, }$ a
首先,来看一个简单的是使用时钟PLL的系统接口。如图四所示,数据信号通过传输线直接连接,时钟从输出端(Source)出来后输入时钟PLL,然后PLL输出至接收端(Target),PLL自身有反馈回路。
# m' h, Q4 r1 C0 B8 b; n
0 `; `3 w2 q" `8 M% w3 h
图 4 Clock PLL Inte
RFace Diagram
2 g& I: E; p, D: v
从传输网络的角度看,此接口由四条网络组成,分别是数据(data),PLL时钟输入(clkin),PLL时钟输出(clkout)和时钟反馈(clock_fb)。
; P- y$ \& f- W1 Y对应于第一部分的计算公式,可以很容易确定第一类和第三类参数,也就是图示的Delay_Skew,即输出端参数,和SETHLD,即输入端参数。下面来确定第二类,即互连延时。
, ?- L3 u5 x% _1 Y4 G% q6 y+ i$ ^& [
定义:
2 R5 C9 J9 Q$ I5 Z
IC(Clock Input to the PLL)为源端时钟输入到时钟PLL的Etch Delay,
% W2 u0 v9 P1 @6 MOC(Clock Output from the PLL)为时钟从PLL输出到接受器件的Etch Delay,
- U5 X) P- z; o* TFB为PLL的反馈回路的延时,
7 ?1 Z0 ?! L+ w+ j2 c
NX为PLL的输入到输出的延时,
; J) p, F& j9 D% X, n, G% `则:
5 Y4 o: O4 _ [9 y2 Z( T
总的时钟延时
" t1 X3 D$ q' x4 C+ G% ~" ^
Min Clock Etch Delay = Min IC + Min NX + Min OC – Max FB
2 H( I. y4 d/ |. @# _Max Clock Etch Delay = Max IC + Max NX + Max OC – Min FB
) n- `) a( \" b3 Y- |
将得到的总的时钟和数据信号延时代入到时序计算公式,就可以计算出使用时钟PLL的系统时序裕量。
& g7 s" f* X* d- m
三)使用Quantum-
SI仿真计算使用时钟PLL的系统时序
% M+ F0 m) p- U0 ]# |6 J* k. ?Quantum-SI支持时钟PLL系统时序分析,它领先的信号完整性(SI)和时序分析功能可以快速解决此类问题。
# _0 d$ ~" Q6 x+ |, j' sQuantum-SI以电路接口为中心,可以在一个接口上建立多个传输网络,而Quantum-SI可以分析这不同传输网络之间的时序关系。如图五,图六所示
; P6 G0 G2 q, I
$ J) |- v) _& h4 C l9 V- P; s图 5 Transfer Net
1 _* {4 _1 |# D! ?* S, O
; ]. U* i y9 R$ y. d- C" i图 6 Setup/Hold Margin by variation
. p/ v6 _2 }$ X. b图六是在图五的传输网络建立后,Quantum-SI自动仿真分析得到。
3 [% i( p a# W x- O可以知道,对于系统的时序分析,需要清楚器件内部的时序关系,测试负载的概念与应用,互连传输延时等。而使用时钟PLL的系统,需要清楚时钟信号的传输路径。
* p3 [& a- L- Y ~% e
对于复杂高速的系统时序分析,需要考虑不同参数,如电压/温度/工艺等对时序的影响。Quantum-SI在高速信号完整性和时序分析方面提供了一个完整的解决方案。
: l. ^' [$ i6 m5 _9 F1 @