Stochastic Capacitance Extraction Considering Process ...

35
Stochastic Capacitance Stochastic Capacitance Extraction Considering Process Extraction Considering Process Variation Variation Speaker: Tuck, Fang Gong Speaker: Tuck, Fang Gong June 12, 2009 June 12, 2009

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

Process Variations

Chemical-mechanical planarization

Chemical etching

Optical proximity effects

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

∑=

−=−=

=2

1,,

nnjjji qQC

CvQ From

li

lj

ai

ai

r+-

qi

qj

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

~

~

~

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

Correlation function

where σ is the standard variance and η is the correlation length.