EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
1、引言
4 X, I- X* A4 l9 L- b+ c& |$ |5 m0 E2 k6 G# J v
0 J, C) n7 p2 m5 x3 N2 s& E, b
* i. r, W6 y4 [1 m" n* g
当今电子技术的发展日新月异,大规模超大规模集成电路越来越多地应用到通用系统中。同时,深亚微米工艺在IC设计中的使用,使得芯片的集成规模更大。从电子行业的发展来看,1992年只有40%的电子系统工作在30MHz以上的频率,而且器件多数使用DIP、PLCC等体积大、管脚少的封装形式,到1994年已有50%的设计达到了50MHz的频率,采用PGA,QFP,RGA等封装的器件越来越多。1996年之后,高速设计在整个电子设计领域所占的比例越来越大,100MHz以上的系统已随处可见,Bare Die,BGA,MCM这 些体积小、管脚数已达数百甚至上千的封装形式也已越来越多地应用到各类高速超高速电子系统中。图1所示为自80年代末IC封装的发展。
/ D* J9 ?+ |7 t9 E0 k/ U' k6 x; E$ F* Y1 }" |. i
, _% \7 U/ W# o5 k/ p7 V
3 Q1 I/ C3 g+ p
0 E& A/ F5 f+ ?2 ]: G: Y
由上图可见,IC芯片的发展从封装形式来看,是芯片体积越来越小、引脚数越来越多。同时,由于近年来IC工艺的发展,使得其速度越来越高。由此可见,在当今快速发展的电子设计领域,由IC芯片构成的电子系统是朝着大规模、小体积、高速度的方向飞速发展的,而且发展速度越来越快。这样就带来了一个问题,即电子设计的体积减小导致电路的布局布线密度变大,而同时信号的频率还在提高,从而使得如何处理高速信号问题成为一个设计能否成功的关键因素。随着电子系统中逻辑和系统时钟频率的迅速提高和信号边沿不断变陡,印刷电路板的线迹互连和板层特性对系统电气性能的影响也越发重要。对于低频设计,线迹互连和板层的影响可以不考虑,当频率超过50MHz时,互连关系必须以传输线考虑,而在评定系统性能时也必须考虑印刷电路板板材的电参数。因此,高速系统的设计必须面对互连延迟引起的时序问题以及串扰、传输线效应等信号完整性问题。 1 `1 r5 L9 g* |( z7 j2 H. T
& k+ j* d% ^5 o! F1 m
3 i4 G7 @- X2 L1 i
$ a, [0 M9 q# U; f; P! E S C- o; q! g- q
, t+ E) G( @) ^2 U6 p
/ r% { R. J' Q/ x q/ f% @ e; L, n3 N4 K' L) F) y
2、高速电子设计的板级信号完整性
6 h% U+ S/ u$ v- L0 [3 T1 j% z& I2 O( r# X
; Z! }$ A* d3 G9 J4 R/ Y7 ?
7 s: r) E# p) ~处理高速数字系统的振铃和串扰问题一直是一个令人头疼的问题,特别是在今天,越来越多的VLSI芯片工作在100MHz的频率以上,450MHz的CPU也将广泛应用,信号的边沿越来越陡(已达到ps级),这些高速器件性能的增加也给高速系统设计带来了困难。同时,高速系统的体积不断减小使得印制板的密度迅速提高。比较现在新的PC主板与几年前的主板,可以看到新的主板上加入了许多端接。信号完整性问题已经成为新一代高速产品设计中越来越值得注意的问题,这已是毋庸置疑的了。 $ N# ^" U+ ^: L% X- g, H$ X
4 \+ R* a( V* I6 l
: @! \+ I- [7 I* h0 v' ^
4 H! o! ^: E* _0 m0 R+ c
信号完整性(Signal Integrity,简称SI)是指在信号线上的信号质量。差的信号完整性不是由某一单一 因素导致的,而是板级设计中多种因素共同引起的。主要的信号完整性问题包括反射、振铃、地弹、串扰等。
' Z) |4 T; t5 k9 V5 Z2 S- Q+ d+ F0 a$ _% d# \: k) \' M" i! N. j
& T5 c6 }" m3 @! O
" W7 M, J" w4 I8 {' r! `% N源端与负载端阻抗不匹配会引起线上反射,负载将一部分电压反射回源端。如果负载阻抗小于源阻抗,反射电压为负,反之,如果负载阻抗大于源阻抗,反射电压为正。布线的几何形状、不正确的线端接、经过连接器的传输及电源平面的不连续等因素的变化均会导致此类反射。 : q/ N9 W( ?; o
6 {& ]+ s( Y& h
' J( n2 h3 Z: n" S* I1 ^/ W5 a
. m/ @, c! a- y" H' G: L信号的振铃(ringing)和环绕振荡(rounding)由线上过度的电感和电容引起,振铃属于欠阻尼状态而环绕振荡属于过阻尼状态。信号完整性问题通常发生在周期信号中,如时钟等,振铃和环绕振荡同反射一样也是由多种因素引起的,振铃可以通过适当的端接予以减小,但是不可能完全消除。
0 F- B" F, Y3 i1 t/ O
* `( C# x/ Q& g4 \
6 z' v2 ?8 @4 w3 ^: s- m% q& t) m
! B5 I8 R1 M/ G* e0 ?在电路中有大的电流涌动时会引起地弹,如大量芯片的输出同时开启时,将有一个较大的瞬态电流在芯片与板的电源平面流过,芯片封装与电源平面的电感和电阻会引发电源噪声,这样会在真正的地平面(0V)上产生电压的波动和变化,这个噪声会影响其它元器件的动作。负载电容的增大、负载电阻的减小、地电感的增大、同时开关器件数目的增加均会导致地弹的增大。 $ b: n3 E, }' X$ s8 a+ W
) V( K6 j9 P, |6 ~% V6 L: w3 c3 N
) b7 E$ ?3 c7 `. k6 l3 w
振铃和地弹都属于信号完整性问题中单信号线的现象(伴有地平面回路),串扰则是由同一PCB板上的两条信号线与地平面引起的,故也称为三线系统。串扰是两条信号线之间的耦合,信号线之间的互感和互容引起线上的噪声。容性耦合引发耦合电流,而感性耦合引发耦合电压。PCB板层的参数、信号线间距、驱动端和接收端的电气特性及线端接方式对串扰都有一定的影响。
) Y4 b$ ~+ u; [0 B5 l& c0 H, X; p y' j% {9 \
2 t' N- `: e. F- x) c
J6 Y( U! D( n/ z$ e1 @- B表1列出了高速电路中常见的信号完整性问题与可能引起该信号完整性的原因,并给出了相应的解决方案。 0 A( L# K+ `/ S0 C" F
0 W. V8 q# V8 i# ?$ a2 d9 B$ B; p
) ^. o: k8 f& o- ~) ?! E% o
6 {: [' `" w! I# s表 1 常见信号完整性(SI)问题及解决方法
2 V7 O3 u- x$ `$ w. I# g4 b' s7 ]+ h' T* N! `) \ L# S
9 U* Q5 y3 m1 r, _
3 N* |8 _" V( [ | 问题 2 C( t1 i8 F1 i4 o8 a6 X+ H* w
/ L) r5 l: H8 X8 x4 R6 W$ i% f4 v) R8 ~- Z& G
4 Z4 s* [/ x: T | 可能原因
4 S2 O3 {! }6 Q) G! x* k; y6 m( G5 f1 V3 E0 ?$ k
5 C# U* P5 ]+ l, l! k$ q/ P# t/ Q0 R% l) t9 d4 t8 r- q! Q
| 解决方法 : \6 H/ y$ G6 K3 F" _
) B [$ a0 w6 `2 x, O9 M; a9 Q$ y) p. u3 }& u1 h) S
( f) N U) S0 H4 | | 变更的解决方法
, A8 K: o+ R) z+ p' u5 w
. M5 v t0 n( P# G# z5 [8 b, ]+ x, u: A% ~- S) Z; [# K
* Z# _. _ }& c5 K! a$ B | 过大的上冲
$ Y1 w+ n0 U# G! Q: F2 \ Z' @- I; v u( O" N& Q
+ R- z. L' k. Q9 b( ?
9 Q- y `& g [2 B& @" ~& a7 T | 终端阻抗不匹配 2 R' S# K+ u- q5 A
: x) I( ~4 ^2 T! X
& r0 P+ E/ j8 e( _& [$ E
- N' K7 u. k1 P | 终端端接
( k- A5 h+ k8 [6 {5 q( V1 |2 V
% r+ ^" z [4 v7 C) k+ g1 U0 M' `
7 T- O0 J- B1 ?: Q4 I3 s
| 使用上升时间缓慢的驱动源
) `3 s- {6 Y9 s! G0 B& `
* W6 \5 a# G: }7 A/ ]( H
* d, P8 R& w# g4 U
6 Y) q; c1 s- b* m; O7 R | 直流电压电平不好
, T1 N ~1 a5 f) P2 m2 f
) S! P2 T$ z8 Q# y7 A" s/ ~: @
9 i4 N+ U6 K. }' k) y
! b- O% W. b" E! ^% m7 v. b, L | 线上负载过大
' M- Y2 N" Q3 u; J/ B9 k3 W/ _ D- l8 f7 z9 d: |
q0 f" ]' J# {' E
6 T# G$ ]5 S4 N
| 以交流负载替换直流负载 ; @) a5 R$ j& o; Q K
5 q9 q1 P0 b. c% K* U4 x6 ?
2 D" P* @$ d1 W* g4 E2 Z) }- h( j8 P0 C' q% ^ U7 H0 T
| 使用能提供更大驱动电流的驱动源 % |6 V6 ]2 ]+ n. W6 a
' _6 I1 z( ^) O1 n! }5 y9 t
* X2 n: v$ q/ v( u' h( C( }
! W2 h' j( _4 Z- T! Q3 E | 过大的串扰 % S. a+ K7 l) Z/ L+ c
+ r. S. Z7 L- {' T
. U) V, e4 I+ c$ |; X" j: o# ?3 `
I0 \/ I. N, L3 K/ D" Q/ E1 ^( ` | 线间耦合过大
# Q3 i( Q5 i6 @* M: l' ^! [% ]3 X) d2 _" F9 V+ |+ \
a8 I& \9 c/ v4 H3 x! y
+ O z6 H2 {. Q _. N
| 使用上升时间缓 ' K! L. y* J5 S2 @/ [6 W! m
8 D# |' L; \) v, F# i1 h
" H) } B s' k% Y1 [) A6 \2 ]. [/ D' ?; f# r5 v% ~6 k
慢的主动驱动源
' Y' B; P' z4 g9 k) _' d
, {7 |. F3 K+ @; F" d& ^8 }' N& \- j! M
' Y1 m) J) ]. N/ e | 在被动接收端端接, 重新布线或检查地平面 & s& ]+ i l/ v2 z2 n2 w
* R- m5 V2 X6 m& ~* I3 Q/ f# ?
@; I# X3 _( d, C
$ a s6 B( b- ?; T | 传播时间过长 " u1 A6 i! N# R% E6 O* x% z
* s: X1 j) _4 ]$ U/ B' I
( G: j# `. o+ ]) ^( _
2 s" a+ V% \6 k( N3 J* n | 传输线距离太长, 没有开关动作 & r# w( E& @) x {+ S2 p) F
# K7 W& E* `. \, f% ?- d; v, i
% r4 E7 M. T% ?: g( l9 ~2 i. u4 n" J* q7 S, s* L2 I/ k6 N2 `
| 替换或重新布线, 检查串行端接 - n! A+ {% G: `$ A6 R! z/ U
' l& Q* @. ^% B! C% I9 i" _7 N/ P8 H1 ?; n
- G( r) Q5 k0 I+ a | 使用阻抗匹配的驱动源, 变更布线策略 8 a* B; B7 w0 D+ j6 k# k a
: h& `& ?6 B! u! P8 U$ n. Z
# Z+ W& s7 a% u& N& v6 G
9 S3 o% H) E* C6 B6 I0 ]) v |
# A ^; _5 i' E# H6 k) ~! r G
' n, K n1 l$ ]8 s; Y1 V
5 ]) O) T% Q3 M5 ~: \& c% b
% q$ y% J0 [' f3 C& ^/ R T c在一个已有的PCB板上分析和发现信号完整性问题是一件非常困难的事情,即使找到了问题,在一个已成形的板上实施有效的解决办法也会花费大量时间和费用。那么,我们就期望能够在物理设计完成之前查找、发现并在电路设计过程中消除或减小信号完整性问题,这就是EDA工具需要完成的任务。先进的EDA信号完整性工具可以仿真实际物理设计中的各种参数,对电路中的信号完整性问题进行深入细致的分析。
) u* d! Y w2 }
' @; c! `: H. N2 A4 G
- I( H3 b" t0 t. s f m t, Z N9 s
新一代的EDA信号完整性工具主要包括布线前/布线后SI分析工具和系统级SI工具等。使用布线前SI分析工具可以根据设计对信号完整性与时序的要求在布线前帮助设计者选择元器件、调整元器件布局、规划系统时钟网络和确定关键线网的端接策略。SI分析与仿真工具不仅可以对一块PCB板的信号流进行分析,而且可以对同一系统内其它组成部分如背板、连接器、电缆及其接口进行分析,这就是系统级的SI分析工具。针对系统级评价的SI分析工具可以对多板、连接器、电缆等系统组成元件进行分析,并可通过设计建议来帮助设计者消除潜在的SI问题,它们一般都包括IBIS模型接口、2维传输线与串扰仿真、电路仿真、SI分析结果的图形显示等功能。这类工具可以在设计包含的多种领域如电气、EMC、热性能及机械性能等方面综合考虑这些因素对SI的影响及这些因素之间的相互影响,从而进行真正的系统级分析与验证。mentor Graphics公司的ICX设计工具可以在时序与电气规则的驱动下进行TopDown式的布局及无网格布线,并提供多板分析功能,是典型的系统级SI工具。 : B% U7 B) L3 x' G( o% L: Z3 W
8 `2 @6 g+ V5 l) y( N9 x
# i5 m; l- M, E6 h Y0 s& a* W# {
1 E/ j/ O- {; N% x3 V) `
) o$ r( X( {2 ~3 @5 f
/ F0 {- |! n5 p6 c) h& ~2 X( B
3 d6 D6 F) i5 E9 X+ i# o+ W% @3、理解和使用IBIS模型
3 v# m/ P$ f: I' B( S; `
' ? L: z5 k. K! M; S/ m4 b$ u# a8 a$ _6 T9 l m+ H6 f1 O
: L% F8 r q, R* @6 Q4 d# H如何在PCB板做板之前分析验证板级信号完整性(SI)问题,是设计成功的关键。这就需要用于SI分析的包含各种参数的准确模型。大多数SI分析工具都可将PCB板作为板材料和布线几何形状的函数进行分析计算,但是得到一个能够反映板上元件、连接器、电缆等器件的好的模型却相对较难,IBIS模型可以帮助设计者在存在SI约束的设计中获取准确的信息以进行分析和计算。 ! B6 A; Y9 ]) n
/ P G& H+ j) z$ C$ I# m
8 D1 S, J7 G9 _8 F Q
4 a/ O( A$ L3 i% c$ y: u: tIBIS(Input/Output Buffer Information Specification)模型是一种基于V/I曲线的对I/O BUFFER快速准 确建模的方法,是反映芯片驱动和接收电气特性的一种国际标准,它提供一种标准的文件格式来记录如驱动源输出阻抗、上升/下降时间及输入负载等参数,非常适合做振铃和串扰等高频效应的计算与仿真。IBIS规范最初由一个被称为IBIS开放论坛的工业组织编写,这个组织是由一些EDA厂商、计算机制造商、半导体厂商和大学组成的。IBIS的版本发布情况为:1993年4月第一次推出Version1.0版,同年6月经修改后发布了Version1.1版,1994年6月在San Diego通过了Version2.0版,同年12月升级为Version2.1版,1995年12 月其Version2.1版成为ANSI/EIA-656标准,1997年6月发布了Version3.0版,同年9月被接纳为IEC 62012-1 标准,1998年升级为Version3.1版,1999年1月推出了当前最新的版本Version3.2版。 3 f$ g+ c' p* x, h9 s$ t
% a8 L$ Q0 }8 @. [; D3 o0 b$ c) i0 ]+ h9 G( x7 V
8 ?* l. \- s2 }现在已有多家半导体器件生产厂家及CAE/EDA公司支持此IBIS规范,提供不同器件的IBIS模型及软件仿真工具,如Mentor Graphics公司既提供使用IBIS模型的仿真工具Interconnect Synthesis,同时提供Zeelan 的IBIS的仿真模型库,另外还可根据用户的特殊需求定制相应器件的IBIS模型。 # ~+ G8 M9 a+ @ y0 A J+ j; [
& u# m1 N+ ? y3 Y
6 }' \& P1 C1 N& F$ K+ x3 M8 x+ c7 A6 t* e* G3 x
IBIS本身只是一种文件格式,它说明在一标准的IBIS文件中如何记录一个芯片的驱动器和接收器的不同参数,但并不说明这些被记录的参数如何使用,这些参数需要由使用IBIS模型的仿真工具来读取。欲使用IBIS进行实际的仿真,需要先完成以下四件工作: / t) L* Q- h) j% y- a' U) N
3 E0 ? }6 m3 P/ X& @
# ]- I) L! g5 K4 W. x W4 ]* P9 I7 w8 O' C" f$ _$ D
(1)获取有关芯片驱动器和接收器的原始信息源; & n8 M" I7 G( P' n
+ ~+ n/ x% B3 m* [
% V- i, b" K7 L L2 q
V, V2 K3 A; ?4 }, _! }( g. R0 `(2)获取一种将原始数据转换为IBIS格式的方法; * E$ }. e u% N
1 Z# X. T7 ^9 I
, a2 T2 v, Z! O& B+ V' w
" M3 t( ~+ Q( `1 L* W# W7 J9 Z(3)提供用于仿真的可被计算机识别的布局布线信息;
( f# A9 L) T- M0 I1 P) A; M2 X" W. u6 X0 H6 ?: U. y
2 _& m. L9 y$ |# l/ g) v
) g! ^/ P5 a1 G/ [3 B(4)提供一种能够读取IBIS和布局布线格式并能够进行分析计算的软件工具。 : z1 _7 y- R7 H1 p& Z5 T& B
1 M3 H4 g& N% N, ] q' z3 j! C: `; ]2 M
% i4 _0 ^6 p! e( o, }# i: _3 VIBIS是一种简单直观的文件格式,很适合用于类似于Spice(但不是Spice,因为IBIS文件格式不能直接被Spice工具读取)的电路仿真工具。它提供驱动器和接收器的行为描述,但不泄漏电路内部构造的知识产权细节。换句话说,销售商可以用IBIS模型来说明它们最新的门级设计工作,而不会给其竞争对手透露过多的产品信息。并且,因为IBIS是一个简单的模型,当做简单的带负载仿真时,比相应的全Spice三极管级模型仿真要节省10~15倍的计算量。 ; [+ a6 K2 m" Y9 K
# q1 N7 ~( h! K: `$ S# r
3 ]: U6 J+ i- _& _7 C$ ]
! y2 o& s1 e7 m( }' w; p
IBIS提供两条完整的V-I曲线分别代表驱动器为高电平和低电平状态,以及在确定的转换速度下状态转换的曲线。V-I曲线的作用在于为IBIS提供保护二极管、TTL图腾柱驱动源和射极跟随输出等非线性效应的建模能力。 3 r) t4 D7 ]1 {& j. {
' }- ?& }- x5 d6 d4 I, B; c' ]0 ]
5 A2 U" @# `2 N) s
# Q7 O+ a q% V由上可知,IBIS模型的优点可以概括为:
& }$ g) m4 b; l- Y4 `/ z1 R \7 d% T2 O% ~
1 s. x% p* z4 d$ A
: J& x1 }2 k) O L6 O* U
l 在I/O非线性方面能够提供准确的模型,同时考虑了封装的寄生参数与ESD结构; 6 E# W$ V9 G" u7 z. q; M, c3 O1 |
$ T+ \/ { f! b
+ O8 u* i$ x/ _1 u, J: ^0 J, w. c5 g0 H. {# ] v; |! g& s9 P5 ]
l 提供比结构化的方法更快的仿真速度; $ H' A3 H& E2 ^2 ?2 _' E$ l; T5 R
) V% o( c7 N1 O7 v9 R; t; d5 U
8 p4 |% a) O: @9 o9 T( z/ F8 N) L" ` i- x) D' l, i) X6 c
l 可用于系统板级或多板信号完整性分析仿真。可用IBIS模型分析的信号完整性问题包括:串扰、反 射、振铃、上冲、下冲、不匹配阻抗、传输线分析、拓扑结构分析。IBIS尤其能够对高速振铃和串扰进行准确精细的仿真,它可用于检测最坏情况的上升时间条件下的信号行为及一些用物理测试无法解决的情况; 1 |( d/ ~4 v a! J, H* U/ j
% D; |8 k$ T h4 }) b0 }- l$ F
( X' {( k [. |* [0 E% R) E5 \
8 L6 H. J8 ^ {( S
l 模型可以免费从半导体厂商处获取,用户无需对模型付额外开销; 0 k! N" I( v: R! h/ S4 G
1 }) u4 ?8 |, B7 l0 n
9 O& g, f2 K6 h* T1 E8 i
) W0 {! ]( M7 q; F
l 兼容工业界广泛的仿真平台。
1 X5 R! A" ^: U
/ |% Z& c2 w( X4 g( U
, u" `/ v& F' ~, M- ]$ l9 y& a+ P+ y
当然,IBIS不是完美的,它也存在以下缺点:
5 r( y: o# F6 _2 f0 _- H6 {: {' @& ^* l* Q) `( b3 O+ r. p
5 k) J Y5 t/ ` O- z9 \
$ X2 {9 r, ]. o7 W2 [. M3 rl 许多芯片厂商缺乏对IBIS模型的支持。而缺乏IBIS模型,IBIS工具就无法工作。虽然IBIS文件可以 手工创建或通过Spice模型自动转换,但是如果无法从厂家得到最小上升时间参数,任何转换工具都无能为力;
8 ~, P% T0 _0 n- g
; K. b/ `& Z3 G. O+ p) Q, J2 E5 b3 H: V" a9 O
! q9 l9 V$ H4 {; f( e0 al IBIS不能理想地处理上升时间受控的驱动器类型的电路,特别是那些包含复杂反馈的电路; ; i) r4 F$ c/ n
2 A5 U: z- o& s
; L' ], N% `6 O- f
& J! H* p; J% Y, N1 j, p; u
l IBIS缺乏对地弹噪声的建模能力。IBIS模型2.1版包含了描述不同管脚组合的互感,从这里可以提取 一些非常有用的地弹信息。它不工作的原因在于建模方式,当输出由高电平向低电平跳变时,大的地弹电压可以改变输出驱动器的行为。
0 Q5 d8 I( x3 q& Q! _" v* E2 J: E }% G, v
& ?. d( c+ X8 h" X6 b5 {* Y
+ W* ?6 W# t9 V1 A# y7 a, X7 k, r; t3 x* w ^: J
- M9 B2 o3 l/ M" R3 @
( ~2 h2 F Y( ?! p9 h. R$ o* x5 X% }; L' g l3 M! w! o* s& m
伴随着大量的信号完整性问题的出现,IBIS已成为一种应用越来越广泛的器件仿真模型。许多公司、组织和大学开发了多种IBIS实用工具,主要的IBIS实用工具有: 1 F3 q( s% c) @0 w" G' t* g/ e
7 X" C% e7 S: f- [! z/ a
- K/ X9 J6 n8 T" ?
3 T L( N! W, I
l IBISCHK,是IBIS模型的语法分析器,用来检查IBIS模型的语法错误;
' C" h* q: l6 r4 u) v0 R
, x% k) o2 t2 l" x8 @$ V
4 E& `/ \7 |5 O4 e2 O; M, x% l# K& m. i
l S2iplt,此工具可以以图形方式显示IBIS模型的V/I曲线,它是属于UNIX版本的;
/ e2 v8 X* Q/ G v& g i- x2 K# L; k1 H( @
/ X$ A4 ?. p; ?! r* C8 e" Y) `8 t; B' j0 j6 r* c+ P4 O
l S2IBIS,此工具可以将现有的HSPICE、Pspice或SPICE3模型转换为IBIS模型;
8 ~4 e4 F# E. h" J( A$ U' Z3 B: d; d' e' `/ i" t A) \ ]
) m& F$ m3 d" R4 @
1 R1 T( C4 S6 B1 k: \' Z! Sl Visual IBIS Editor,是Hyperlynx公司开发的基于Windows平台的IBIS模型编辑、语法检查及V/I 曲线显示工具。 6 J" W. W9 X& k4 J
1 R# i" c/ \; o/ p; \ |