EDA365欢迎您!
您需要 登录 才可以下载或查看,没有帐号?注册
x
本文假定读者有一定的SI基础,了解基本的ibis规范。另外,墙裂推荐先把下面几篇文章看完再继续。9 `& s& C! z! X6 a* h- M0 H/ Z
9 h0 l7 T2 d( Q/ O' y1. [url=]《I/O BufferInformation Specification》[/url]
7 L3 P9 i) i% R4 `[url=][/url]https://ibis.org/ver6.0/ver6_0.pdf
7 a) I3 M5 D$ s$ b5 p% V9 l Z2. [url=]《一步一步学会创建IBIS模型》[/url]- f4 X1 s) J; |7 q
[url=]http://wenku.baidu.com/view/fff2f335227916888486d75d.html[/url]
1 Z3 c2 I4 n( a6 U2 B; X3. [url=]《package model的那些事儿》[/url]1 Q3 H. [ B" g
[url=]http://wenku.baidu.com/view/a5cb25a36294dd88d0d26b64.html[/url]1 T1 G0 M" b' k: x; M: y* t
! \# J- Q' S8 p y) c- {) ^0 @
' b" n3 x5 \ L7 j5 D6 i! G; C3 {
一、Ibis model与Package的对应关系
, |7 X1 |% D% H; @
. c0 N# n4 z; E& QIBIS(I/O BufferInformation Specification)即输入输出缓冲器信息规范,是最常见的PCB级信号完整性仿真模型。与Spice等晶体管级缓冲器模型不同,ibis只描述IO的行为级电气特性,不涉及IO缓冲器的底层结构和工艺信息(这是IC厂商的核心机密之一,不是能同穿一条内裤的关系,不给看的),避免了泄露知识产权信息的风险。Ibis模型相比spice模型有几大优势,仿真占用的机时少,没有spice的不收敛问题,大部分商用EDA仿真平台都支持,使得其在SI仿真领域被广泛应用。- Z d1 L3 O$ y* X
图1是典型的IBISDriver缓冲器模型,红色部分是IO驱动部分的模型,蓝色部分是package的RLC参数模型,这是本文讨论的重点。图中列出了package参数与实际封装结构的对应关系,从中我们可以看出RLC对应了PBGA封装结构中的Bonding wire、Substrate trace、Via、Solder Ball等结构,对于其他类型的封装,其对应关系会略有不同。
* Y; W3 [" d- N* }! S
1 p+ |# ?! `' a$ N5 F8 p图1 IBIS模型及RLC参数与封装的对应关系
0 B; P }! a2 D _5 D4 n7 J" `SI经验法则,当信号的传输延迟小于信号上升沿的1/6时,通常可以用RLC集总参数表示传输线特性,这一法则同样适用与封装结构。早期,信号频率普遍低于100Mhz,上升时间大于1ns,远大于封装上的传输延迟,这时RLC集总参数已能准确表征封装的寄生特性。但随着信号频率的提升和上升沿的缩短,RLC集总参数已经不能准确表征IC等着的寄生特性,业界开始使用更精确的模型来描述封装参数,常用的有RLGC参数、S参数等。RLGC模型包含了信号之间的耦合信息,更精确的反应了实际封装结构的电气特性。下面先介绍package model参数,再介绍提取方法。 % F; T' d3 \9 f+ A
![]()
# P$ X& t- N5 b: C0 s j& }- s" w图2 包含信号建耦合信息的Package model
6 I" O3 M: `$ Y二、Ibis package model
( M- }( k' s. T1 l( P. U7 ]* R# B3 N: d \9 g V$ \1 L( b
我们知道完整的ibis模型里有三组package参数,分别用[Package]、[Pin]、[Packagemodel]三个关键字描述,一般在电路仿真中,默认调用优先级[Package ]< [Pin] <[Package model],仿真精确程度也遵循同样的规律[Package ]< [Pin] <[Package model]。
9 x9 v/ \6 v* O6 t# w) o下面我们以镁光内存颗粒的ibis模型为例,这里我们只讨论L参数,RC参数也遵循同样规律,不再赘述。
* V7 K+ }9 i! G yIBIS模型中的[Package]、[Pin]、[Package model]参数 : i9 H4 K$ x l3 h. x
. H# T0 l- g; C# n; D$ b[Package model]的电感矩阵 3 e% d7 h# ?0 k. m* Y' [! U
, |6 r- d6 p. [
1 T# O# B& _8 e9 t/ v9 S
[Package model]中的几个参数,如下:
0 j8 u( ^/ }3 W: _4 X==================================
( U" L# R( T- C3 v2 r- B[Resistance Matrix] Banded_Matrix
2 x* l, ^: |$ i" m[Bandwidth] 0: n7 c0 @3 m* u6 h
…, {: R6 E5 h- D# J
[Inductance Matrix] Full_Matrix
% l5 P& c1 S1 H- U4 R4 Y. n…5 [- W( w" y9 n1 g# Q* V0 s& o
[Capacitance Matrix] Sparse_Matrix# F2 h" d% N# W& _6 W4 m7 F8 Q
…
9 I* ~, @: q: E) m* o$ T9 d/ ~==============================
. h3 U/ k5 E n( I8 N9 H[Resistance Matrix]、 [Inductance Matrix]、[Capacitance Matrix]统称RLC Matrix,直译就是阻容感矩阵,其后面的参数Banded_Matrix(带状矩阵)、Sparse_Matrix(稀疏矩阵)、Full_Matrix(全矩阵)是指其不同的矩阵类型,不同的矩阵类型在数据存储和运算的算法上有区别,可以优化存储空间、减少运算量,这里是在提醒仿真器调用相应的算法求解器,关于其详细概念,可去网上搜索或去翻翻《线性代数》课本。另外,[Bandwidth]带宽,此参数只有Banded_Matrix矩阵才有,其值为0代表矩阵带宽为0,就是矩阵除了对角线上的元素外,其他元素值全为0,即只有自感(或自阻、自容),此参数常用于[Resistance Matrix],主要是由于的互阻一般要小自阻几个数量级,可以忽略为0。如何得到Banded_Matrix、Sparse_Matrix、Full_Matrix,下面的仿真中再讲。7 {$ W5 f0 \5 j" |& X; |& p( T
三、怎样得到package model) p6 N' ~! a9 f
% Y' ~. F( v( m
通过仿真得到封装的寄生参数是最常用的方法,但和一般的SI仿真不同,由于封装结构不是均匀的传输线,它包含了Bonding wire、Substrate trace、via、Solder Ball等结构,且缺乏完整的参考平面,普通的二维仿真已经不再适用,必须使用全波3D仿真才能等到精确的结果。业界已有成熟的工具可用、比如Ansoft、CST等。9 Z$ ?1 p: q9 W. d: [
首先,建立精确的仿真模型。包含两个方面,一是准确的反映封装结构的3D模型,如图3;其次,是材料准确的电性参数,包括结构中的导体(如金线bongding wire、铜trace和via,锡球等)和介质(如substrate、Solder resistor、molding compound等);
- E( D L5 o E- P( ^ * T+ u$ x* x9 r* z$ s' @
图3 DDR4封装结构及仿真模型 + ]) w( M7 E6 N9 V7 n+ l# r* t
其次,是软件的设置。主要包含以下几个方面,一是软件本身的设置,可以参考帮助文件。二是与仿真结果相关的参数设置。[Capacitance Matrix]电容矩阵的求解是静态的,即Maxwell矩阵;[Resistance Matrix]、 [Inductance Matrix]有DC和AC之分,需要根据实际的情况选择;另外,端口的设置,需要统一方向,这关系到提取参数的有序性,参考图4。处理完以上设置,就可以运行仿真了。1 R% ?2 `1 r* h+ `. |( A: G4 D0 o- G$ }
![]()
/ \2 r% `$ x( ^2 t: s+ [5 p图4 电压极性和电流方向 - N( b6 U$ K8 P4 t- h8 e) t
最后,仿真结果的后处理。原始结果RLGC矩阵,这里都是Full_Matrix,如图5。通过设置耦合系数,将低于自感(或自阻、自容)值一定比例的互感(或自阻、自容)消去,即可得到Sparse_Matrix;过滤系数设置成1,则得到[Bandwidth]带宽为0的Banded_Matrix。
8 ^+ c6 P1 G, N6 `6 y( K![]()
& v: [6 C. j( {) |8 c8 p图5 C矩阵Full_Matrix
2 z0 Y' n* d+ U' i![]()
$ X; ^# o6 V6 O1 e: n0 I) e图6 RLGC矩阵过滤耦合系数设置 0 ^; i. |/ b7 O! T/ q+ h% _! E* r0 h
另外,还可以通过将电源地网络设置成回流路径,将RLGC矩阵降阶,体现在package model里就是所有的电源地网络对应的RLC值全为0;不降阶的RLGC矩阵还可以用来做封装级的PI、SSN等电源相关的仿真,降阶的则只能用来SI仿真了。! w/ K/ [/ K& Q
最后,将处理完的数据导出,整理成符合ibis标准的格式如图7。
4 {3 m c1 `/ S* y4 O5 f; O![]()
- T* A& l2 Q$ g6 x! i1 p, \图7 [Packagemodel]模型参数 ! B1 ~ s. v7 S7 x7 Z# i2 v
最后,将[package model]与IO的ibis模型打包,即可在电路仿真器里调用,如图8。
3 v6 K, Q5 X( x9 W* w- Z8 L![]()
2 y/ e5 V1 s9 t$ p8 ^$ `: r图8 电路仿真器调用ibis模型及其封装模型的选择8 b" D$ E; Q0 s& a
6 W6 W/ g4 Z5 M, `& S四、总结
, r+ c7 A! }: b. Z/ Y/ i3 q
9 x+ a1 k1 G9 s本文粗略讲解ibis模型中package model各参数的意义,并通过仿真和后处理方法得到各参数。RLGC模型是集总参数模型,适用的频率范围有限,有更高频率的仿真要求,则推荐使用S参数模型。考虑到package与PCB的相互影响,高端的仿真,则推荐chip-pkg-PCB联合仿真。4 n3 ^' H1 |6 K
. X0 e a& B7 y/ U- I( y6 b
- g. k; l3 U* f. x4 u2 r
! H! z2 L" E1 s$ u3 E$ \
更多精彩,请加“IC封装设计”技术交流微信群!
' t8 Z4 b8 {9 a1 @加入方法:加群主微信auhijnap,注明公司,姓名,技术专长,验证加入。
1 N5 U$ S6 `4 S5 |8 }5 \+ \学习,交流,分享IC封测技术,包括但不限于设计,仿真,工艺,可靠性...
& U7 c% x4 p) b4 O4 b, n9 d: B* e/ ^7 m4 ~" t7 b$ Q) ^
国内主要IC,封测,载板厂商已到齐,台日韩封测载板厂家正在邀请...- b- W- g9 V: ]- L
已加入厂商(部分):
7 z* s2 w4 Z4 @; \2 W5 Q兴森、越亚、深南、康源……: s- e! r) g- u' R5 P
' x( T* q1 c3 u- Q! {6 C1 O, a7 ^长电、华天、通富、晶方、芯健......# Y1 G8 s+ C" e2 |
展讯、华为、中兴、联芯、全志、联想、国科、芯源、灿芯、锐迪科、瑞芯微、景嘉微、汉天下、新岸线、国民技术……, n2 n& C/ B9 T' A6 S* j
ASE, Amkor, PTI, SPIL, UTAC, STATS ChipPAC, Unisem, Sandisk, Shunsin, Qorvo, Micron, Ramaxel, MTK, Synaptics, Goodix ……7 M3 ]6 P# X% z4 t
Ansys, Keysight, Cadence……' I8 H P2 O* `* r# c$ P" c0 m6 i: s
% I& m3 S8 [2 {( D; |, X |