一)回顾源同步时序计算
+ q. C. u* t, A3 X" J$ z! t
Setup Margin = Min Clock Etch Delay – Max Data Etch Delay – Max Delay Skew – Setup Time
- Y! k! b! k! \/ N* F0 S* r# D
Hold Margin = Min Data Etch Delay – Max Clock Etch Delay + Min Delay Skew + Data Rate – Hold Time
6 Y0 `6 s& e( k) c; I" i
下面解释以上公式中各参数的意义:
! U/ F* x, o& G9 ^6 `! W
Etch Delay:与常说的飞行时间(Flight Time)意义相同,其值并不是从仿真直接得到,而是通过仿真结果的后处理得来。
( P) k9 Z% k' |; z请看下面图示:
! y& }/ n- n: S' H! u
图一为实际电路,激励源从输出端,经过互连到达接收端,传输延时如图示Rmin,Rmax,Fmin,Fmax。
* V+ A/ y6 r! y) n F) u图二为对应输出端的测试负载电路,测试负载延时如图示Rising,Falling。通过这两组值就可以计算得到Etch Delay 的最大和最小值。
9 p( u; ]) [. j
' n: S# |+ E/ [6 A4 {& B
图 1 Raw Etch Delay
# J) O/ _% h% \( `" A
9 ^. H; G% D! e! a
图 2 Test Load Measurement
2 G2 x6 C# o" _! C, m2 m& ]3 |; nDelay Skew*:Delay Skew描述的是信号在缓冲输出前时钟和相对应数据的相对位置,如图三所示。SKEW_MIN和SKEW_MAX分别确定了无效数据无效窗口的起点和终点。它们的值可正可负,负值表明数据边沿超前于对应的时钟边沿,反之亦然。
# d: |' B! j% J3 l4 K
0 u4 x8 ?3 q7 `; e, x& Z O3 ~& ]/ G
图 3 Delay Skew
6 y* V. x$ f. L2 F3 X. N- d
Setup/Hold Time:即接受器件正确锁存数据的最小建立和保持时间。
5 _% P. L* Q1 o- X2 u从以上叙述可以清晰看出,时序计算公式中的参数可以分为三类:第一类是Delay Skew,由输出端所用器件决定,从数据手册中可以得到;第二类为Etch Delay,由互连电路决定,需要通过仿真和计算得到;第三类为Setup/Hold Time,由接收端所用器件决定,同样可以从其数据手册中得到。
$ X$ K9 @! E) ^! D二)使用时钟PLL的系统时序分析
5 a$ f A; a% X; F. `# B
首先,来看一个简单的是使用时钟PLL的系统接口。如图四所示,数据信号通过传输线直接连接,时钟从输出端(Source)出来后输入时钟PLL,然后PLL输出至接收端(Target),PLL自身有反馈回路。
% t3 g+ I# v9 _$ M+ w% `# k( I
+ W0 Q) i. P$ l5 Y" J图 4 Clock PLL Interface Diagram
' z) s% [( T; [) U/ E! x2 T o4 k从传输网络的角度看,此接口由四条网络组成,分别是数据(data),PLL时钟输入(clkin),PLL时钟输出(clkout)和时钟反馈(clock_fb)。
% S4 k& o6 E; T! w
对应于第一部分的计算公式,可以很容易确定第一类和第三类参数,也就是图示的Delay_Skew,即输出端参数,和SETHLD,即输入端参数。下面来确定第二类,即互连延时。
& k& q) m! N' x) y, |; T C/ A% V定义:
) T# Z5 |! s3 \/ G3 m
IC(Clock Input to the PLL)为源端时钟输入到时钟PLL的Etch Delay,
* d; t- `0 |2 I/ `OC(Clock Output from the PLL)为时钟从PLL输出到接受器件的Etch Delay,
) K: q( ~- F& S k& ~, O
FB为PLL的反馈回路的延时,
r# w4 w* {: t. _- ]6 WNX为PLL的输入到输出的延时,
& s" P4 z; a9 L9 P* a则:
& W; g( s. u% A( Y; ]总的时钟延时
, {3 J& c' y1 s- x
Min Clock Etch Delay = Min IC + Min NX + Min OC – Max FB
1 o# Q& x; R5 A( ?& o
Max Clock Etch Delay = Max IC + Max NX + Max OC – Min FB
6 T9 L- _6 P9 b# |2 ^5 L& b% Y
将得到的总的时钟和数据信号延时代入到时序计算公式,就可以计算出使用时钟PLL的系统时序裕量。
4 W0 t6 V9 c/ \( {0 F三)使用Quantum-SI仿真计算使用时钟PLL的系统时序
4 A! s+ Y$ j. WQuantum-SI支持时钟PLL系统时序分析,它领先的信号完整性(SI)和时序分析功能可以快速解决此类问题。
* ~8 C8 |% G- }Quantum-SI以电路接口为中心,可以在一个接口上建立多个传输网络,而Quantum-SI可以分析这不同传输网络之间的时序关系。如图五,图六所示
& B1 L# f/ n6 F0 B. B3 s8 @) R
8 c/ ^7 {8 A# I/ G# L
图 5 Transfer Net
: @& M( v) E2 y* V$ \7 F% q
0 P) s$ u6 ~; ` Z) [图 6 Setup/Hold Margin by variation
3 P5 U/ ?+ j* q1 ?+ D( H
图六是在图五的传输网络建立后,Quantum-SI自动仿真分析得到。
# a$ c; c' R( ^7 a0 G! i; n$ M可以知道,对于系统的时序分析,需要清楚器件内部的时序关系,测试负载的概念与应用,互连传输延时等。而使用时钟PLL的系统,需要清楚时钟信号的传输路径。
( W& f W9 Y; i8 W4 r对于复杂高速的系统时序分析,需要考虑不同参数,如电压/温度/工艺等对时序的影响。Quantum-SI在高速信号完整性和时序分析方面提供了一个完整的解决方案。
& r1 A" `4 _. j7 i: {& h6 q- D