Stochastic Capacitance Extraction Considering Process ...
Transcript of Stochastic Capacitance Extraction Considering Process ...
Stochastic Capacitance Stochastic Capacitance Extraction Considering Process Extraction Considering Process
Variation Variation
Speaker: Tuck, Fang GongSpeaker: Tuck, Fang Gong
June 12, 2009June 12, 2009
OutlineMotivation
Capacitance extractionProcess variations
Basic Capacitance Extraction [1]
Statistical Capacitance ExtractionPrinciple Factor Analysis based method [2]Orthogonal Polynomial method [4]
Experiment Results
Other works [3,5] and Future Research
Importance of Capacitance Extraction
Static Timing AnalysisGate delay Interconnect delay
Signal Integrity AnalysisGround capacitanceCoupling capacitance
Design VerificationTiming convergence
↓
↑
↓
↑
Capacitance Extraction Issues
Efficiency requirementSlow large-scale dense matrix solverProhibitive memory consumption
Accuracy requirement Single line capacitance Trade off between accuracy and efficiency
Process variations induce capacitance variationInterconnect surface fluctuationCompatibility with timing analysis engine
↑
↑
↓
Statistic Capacitance Extraction Issues
How to model conductor surface fluctuation due to process variations?How to efficiently solve capacitance variation
in terms of surface variations? How to achieve compatibility with model
order reduction and statistic timing analysis engines?
OutlineMotivation
Capacitance extractionProcess variations
Basic Capacitance Extraction [1]
Statistical Capacitance ExtractionPrinciple Factor Analysis based methodOrthogonal Polynomial method
Experiment Results
Other works and Future Research
3D Capacitance Extraction (cont.)
∑
∫
=
=Φ
−=Φ
n
iiij
i
S
qP
es:qre n chIf there a
dsrr
rr
1
'
arg
'')'(
41)( ρπε
⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢
⎣
⎡
=
⎭⎬⎫⎭⎬⎫
⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢
⎣
⎡
⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢
⎣
⎡
0011
''''
2,
1,
2,
1,
2,2,
2,1,
2,2,1
2,1,1
1,2,
1,1,
1,2,1
1,1,1
2,2,
2,1,
2,2,1
2,1,1
1,2,
1,1,
1,2,
1,1,
jjii
qqqq
PPPPPPPPPPPPPPPP
j
j
i
i
jj
jj
jj
jj
jj
jj
ij
ij
ii
ij
ij
ii
ii
Matrix inversion is n3 li
lj
ai
ai
r+-
qi
qj
Hierarchical & Multipole Speed-up
Hierarchical refinement and Multipole Expansion
Far field interaction
Near field interaction
Hierarchical Panel Refinement (Hicap weping shi, et al)
a b
c d e f
g h i j
H =cdefghij
aa
b
b c d e f g h i j
1
1
1
1
1
11
1
11
111
111
J =cdefghij
ab
d f g h i j
Link matrix Structure matrix
HJJP T=
ICCAP – Explicit Sparse Matrix with O(n) Sparsification
Every panel charge can be represented as an unique linear combination of charges on basis panels
dfghij
d f g h i j
1
1
1
1
1
11
1
11
111
111
cdefghij
ab
d f g h i j
dfgcie
d f g c i e
1-1
1
1-11
1
1
1
1
11
11
cdefghij
ab
d f g c i e
a b
c ed f
g h i j
a b
h j
c ed f
g i
OutlineMotivation
Capacitance extractionProcess variations
Basic Capacitance Extraction
Statistical Capacitance ExtractionPrinciple Factor Analysis based methodOrthogonal Polynomial method
Experiment Results
Conclusion and Future Research
OutlineMotivation
Capacitance extractionProcess variations
Basic Capacitance Extraction
Statistical Capacitance ExtractionPrinciple Factor Analysis based method [2]Orthogonal Polynomial method
Experiment Results
Conclusion and Future Research
Principle Factor Analysis based Stochastic Capacitance Extraction Flow
Surface variation modeling
Random variable reduction
Random variable matching
Δn: leaf panel variance~
Σ(Δn): Covariance matrix~
∑∑ ++ lkklkk FFF δδδ
Δn = Lδ. Principle Factor Analysis~
Variable #: m => n after PFA
{
Stochastic Capacitance Extraction
Process Variation Modeling
For each leaf panel i, there is a perturbation Δni
along its normal direction.Assume that the perturbation is described by a Gaussian random variable Δni with mean μi = 0 and standard deviation σi.
1
~
nΔ 2
~
nΔ 3
~
nΔ 4
~
nΔ
~
~
Variance and Covariance Matrix
The correlation between leaf panel i and leaf panel j is determined by Gaussian correlation function:
g(rij)= exp(-rij /ρ ), The correlation matrix Γ(Δn) = [ g(rij) ].The standard deviations on panel i and panel j are si and sj,
then the variance and covariance matrix of leaf panels will beΣ(Δn) = [ g(rij)σiσj ].
2 2
~
~
Gaussian correlation
Gaussian correlation
Δn~
Principle Factor Analysis
0)(,)( ==Σ δμδ I
'''222
'111)( nnnmmm eeeeeeeen λλλλ +++++=ΔΣ
[ ]⎥⎥⎥
⎦
⎤
⎢⎢⎢
⎣
⎡
≈'
'1
11
1
me
eee
m
mm
λ
λλλ
δ´=Δ Ln~
'')()()( LLLLLn =Σ=Σ=ΔΣ δδ~
~
Represent leaf panel variations in terms of another set of random variables δ.
Random variables δ are of normal distribution and are independent (orthogonal).
loading matrix
L
Leaf panel variation
Potential Coefficient Matrix
ij
Pij
222 )()()(1
jijijiij zzyyxx
P−+−+−
222
~
)()()(1
jijijjii
ij
zzyynxnxP
−+−+Δ−−Δ+
∑∑ ++=
⎥⎦
⎤⎢⎣
⎡⎥⎦
⎤⎢⎣
⎡+⎥
⎦
⎤⎢⎣
⎡+=
lkklkkij
j
i
j
i
j
iij
aaP
RR
ARR
RR
aP
δδδ
δδδ~
''
ΔΔ+Δ+≈ij nAnnaP
^~^^~'
δ⎥⎦
⎤⎢⎣
⎡=⎥
⎦
⎤⎢⎣
⎡ΔΔ
=Δj
i
j
i
RR
nn
n^~
quadratic form
Position variation
∝
∝
Problem Definition
vPq =
vPq =~ ~
lkklkk PPPP δδδ ∑∑ ++=~
Known:Nominal linear system:Variational linear system:Variational potential coefficient matrix:
Unknown:Represent in quadratic format: q
~
lkklkk qqqq δδδ ∑∑ ++=~
Random Variable Matching
lkklkk PPPP δδδ ∑∑ ++=~
lkklkk qqqq δδδ ∑∑ ++=~
Normal linear system:
Variational linear system:
vPq =
vPq =~ ~
lkklkk PPP δδδ ∑∑ ++( ) lkklkk qqq δδδ ∑∑ ++( ) = V
P kq = − kP qP kkq = − kkP q( + kP kq )
P klq = − klP q( + kP lq )+ lP kq
k=1,2,…,m
k=1,2,…,m
k=1,2,…,m l=1,2,…,m k≠l
unknowns
Experimental Results (PFA)
2 x 2 bus Monte Carlo PFA Speed up/ accuracy
Run time (s) 1826 9.78 186.7 X
Mean 78.56 81.43 3.7%
Variance 106.01 103.64 2.2%
OutlineMotivation
Capacitance extractionProcess variations
Basic Capacitance Extraction
Statistical Capacitance ExtractionPrinciple Factor Analysis based methodOrthogonal Polynomial method [4]
Experiment Results
Conclusion and Future Research
Orthogonal Polynomial Method
Background: orthogonal polynomial (OP) based stochastic analysis method.
Given: a random variable v(t,ξ) with variation, where ξ=[ξ1, ...,ξn] denotes a vector of orthonormalGaussian random variables.
truncated Hermite Polynomial expansion• n is the number of independent random variables
• are Hermite polynomials, or orthogonal basis
• are the expansion coefficients
• p is the order of the Hermite Polynomial Expansion.
Orthogonal Polynomial Method (cont.)
Orthogonal Property (inner product)
<*,*> denotes an inner product defined as:
With orthogonal property, ak can be evaluated by projection onto Hermiet Polynomial basis:
1 if 0 if ij
i ji j
δ=⎧
⎨ ≠⎩
Orthogonal Polynomial Method Process Variation Modeling
For each leaf panel i, there is a perturbation ∆ni along its normal direction.
The potential coefficient matrix P can be:
Due to orthogonal property, we can express Pij with orthogonal basis Hk(ξ)
1~nΔ 2
~nΔ 3
~nΔ 4
~nΔ
1( )
n
ij k kk
P pξ ξ=
= ∑
21
( ), ( )( ) ( ); , {0,..., }
( )
nij k
ij k k kk k
P HP a H a k n
Hξ ξ
ξ ξξ=
< >= = ∀ ∈
< >∑
Orthogonal Polynomial Method based Stochastic Capacitance Extraction
vPq =Given Problem:
Nominal linear system:Variational linear system:potential coefficient matrix:
Solve:Represent q(ξ) with the same orthogonal
basis:
0 1 0 11
( ) ( ) ( )P
i ii
P P P P P Hξ ξ ξ=
= + = + ∑
OPM based Stochastic Capacitance Extraction Flow
Surface variation modeling for P(ξ)
Solve Variational Linear System for q(ξ)
Compute Capacitance with solved charge
{
OPM Stochastic Capacitance Extraction
P(ξ)q(ξ) = v
1
( ) ( )n
k kk
P a Hξ ξ=
= ∑
01
( ) ( )n
k kk
q q q Hξ ξ=
= +∑
, ,1
m
i j j j nn
C Q q=
= − = −∑
OPM – solve variational linear systemFrom variation modeling, we get potential coefficient equation as:
With principle of orthogonality, we can perform inner product with Hi on both sides:
< , >= <v, >Then we derive a new linear system equation:
W*Q = V
OPM Experiment Result(1)
Runtime Comparison
1x1 bus, MC(10000)MC OPM
Time(s) 9414 3.22X2 Bus, MC (6000)
MC OPMTime(s) 286620 268
3-layer metal plane, MC(2000)MC OPM
Time(s) 5479 7.6
OPM Experiment Result(2)
Accuracy Comparison (mean value)2x2 Bus, Panel num=352,
σ = 0.1, η = 2MC OPM
Other methodsOther methodsDiscretizeDiscretize conductor conductor surface surface based on based on correlation function to reduce random correlation function to reduce random variable.variable. [3][3]Use window technique for fullUse window technique for full--chip chip capacitance extractioncapacitance extraction.. [5][5]
AdaptAdaptiveive parallel parallel extractionextraction using GPU.using GPU.Possible improvement
Reference
[1] R. Jiang, Y.-H Chang et al, “Iccap: A linear time sparse transformation and reordering algorithm for 3d BEM capacitance extraction”, Proc. DAC., pp.163-166,2005[2] R. Jiang, W. Fu, et al, "Efficient statistical capacitance variability modeling with orthogonal principle factor analysis", in Proc. ICCAD, pp.683-690, 2005[3] H. Zhu, X. Zeng, et al, "A sparse grid based spectral extraction of interconnects under nanometer process technology", in Proc. DATE, pp.1514-1519, 2007[4] Jian Cui, Gengsheng Chen, and et al, "VariationalCapacitance Modeling Using Orthogonal Polynomial Method", in Proc. GLSVLSI, 2008[5] W. Zhang, W. Yu, and et al, "An Efficient Method for Chip-level statistical Capacitance Extraction Considering Process Variation with Spatial Correlation", in Proc. DATE, 2008