79

Click here to load reader

Parasitic Extraction

  • Upload
    yeva

  • View
    135

  • Download
    10

Embed Size (px)

DESCRIPTION

Parasitic Extraction. Luca Daniel University of California, Berkeley Massachusetts Institute of Technology with contributions from: Alessandra Nardi, University of California, Berkeley Joel Phillips, Cadence Berkeley Labs Jacob White, Massachusetts Instit. of Technology. Funct. Spec. RTL. - PowerPoint PPT Presentation

Citation preview

Page 1: Parasitic Extraction

Parasitic ExtractionParasitic Extraction

Luca DanielLuca DanielUniversity of California, BerkeleyUniversity of California, Berkeley

Massachusetts Institute of TechnologyMassachusetts Institute of Technology

with contributions from:with contributions from:Alessandra Nardi, University of California, BerkeleyAlessandra Nardi, University of California, Berkeley

Joel Phillips, Cadence Berkeley LabsJoel Phillips, Cadence Berkeley LabsJacob White, Massachusetts Instit. of TechnologyJacob White, Massachusetts Instit. of Technology

Page 2: Parasitic Extraction

2

Conventional Design FlowConventional Design Flow

Funct. Spec

Logic Synth.

Gate-level Net.

RTL

Layout

Floorplanning

Place & Route

Front-end

Back-end

Behav. Simul.

Gate-Lev. Sim.

Stat. Wire Model

Parasitic Extrac.

Page 3: Parasitic Extraction

3

Layout parasiticsLayout parasitics

• Wires are not ideal. Wires are not ideal. Parasitics:Parasitics:– ResistanceResistance– CapacitanceCapacitance– InductanceInductance

• Why do we care? Why do we care? – Impact on delayImpact on delay– noisenoise– energy consumptionenergy consumption– power distributionpower distribution

Picture from “Digital Integrated Circuits”, Rabaey, Chandrakasan, Nikolic

Page 4: Parasitic Extraction

4

Parasitic ExtractionParasitic Extraction

Parasitic Extraction

thousands of wirese.g. critical pathe.g. gnd/vdd grid

tens of circuitelements for gate level spice simulation

• identify some ports• produce equivalent circuit that

models response of wires at those ports

Page 5: Parasitic Extraction

5

Parasitic Extraction (the two steps)Parasitic Extraction (the two steps)

ElectromagneticAnalysis

million of elements

thin volume thin volume filamentsfilamentswith constant with constant currentcurrent

small surface small surface panelspanelswith constant with constant chargecharge

Model OrderReduction

tens of elements

Page 6: Parasitic Extraction

6

OverviewOverview

• Setups of Parasitic Extraction ProblemsSetups of Parasitic Extraction Problems– Capacitance Extraction (electrostatic)Capacitance Extraction (electrostatic)– RL Extraction (MQS)RL Extraction (MQS)– Combined RLC Extraction (EMQS)Combined RLC Extraction (EMQS)– Electromagnetic Interference Analysis (fullwave)Electromagnetic Interference Analysis (fullwave)

• Electromagnetic solvers Electromagnetic solvers – classification (time vs. frequency, differential vs. integral)classification (time vs. frequency, differential vs. integral)– integral equation solvers in detailintegral equation solvers in detail

• basis functionsbasis functions• residual minimization (collocation and Galerkin)residual minimization (collocation and Galerkin)• linear system solutionlinear system solution• fast matrix-vector productsfast matrix-vector products

– Example: EMQS solutionExample: EMQS solution– ConclusionsConclusions

Page 7: Parasitic Extraction

7

Capacitive ExtractionCapacitive ExtractionExample: Intel 0.25 micron ProcessExample: Intel 0.25 micron Process

5 metal layers Ti/Al - Cu/Ti/TiN Polysilicon dielectric.Taken from “Digital Integrated Circuits”, 2nd Edition, Rabaey, Chandrakasan, Nikolic

fringing parallel

Consider only electric field (capacitive) coupling

Page 8: Parasitic Extraction

8

Capacitive ExtractionCapacitive ExtractionWhy? E.g. Analysis of Delay of Critical PathWhy? E.g. Analysis of Delay of Critical Path

Page 9: Parasitic Extraction

9

Capacitance Extraction Capacitance Extraction Why do we need it?Why do we need it?

• Example: to produce RC Example: to produce RC tree network for elmore tree network for elmore delay analysisdelay analysis

• Example: to produce RC Example: to produce RC tree network for tree network for capacitive cross-talk capacitive cross-talk analysisanalysis

R1

C1

s

R 2

C2R 4

C4

C3

R3

Ci

Ri

1

2

3

4

i

Page 10: Parasitic Extraction

10

Capacitance ExtractionCapacitance ExtractionProblem FormulationProblem Formulation

• Given a collection of N conductors (of any shape and Given a collection of N conductors (of any shape and dimension)dimension)

fringing parallel

qvC ?

Calculate the couplingcapacitance matrix C

Page 11: Parasitic Extraction

11

Capacitance ExtractionCapacitance ExtractionSolution ProcedureSolution Procedure

• For i = 1 to N,For i = 1 to N,– apply one volt to conductor i and ground all the othersapply one volt to conductor i and ground all the others

NiN

i

i

q

qq

C

CC

2

1

,

,2

,1

0101iv

?iq?q

?q ?q ?q

?q

– solve the electrostatic problem and find the resulting vector solve the electrostatic problem and find the resulting vector of charges on all conductorsof charges on all conductors

– that is the i-th column of the conductance matrix that is the i-th column of the conductance matrix

2

Page 12: Parasitic Extraction

12

OverviewOverview

• Setups of Parasitic Extraction ProblemsSetups of Parasitic Extraction Problems– Capacitance Extraction (electrostatic)Capacitance Extraction (electrostatic)– RL Extraction (MQS)RL Extraction (MQS)– Combined RLC Extraction (EMQS)Combined RLC Extraction (EMQS)– Electromagnetic Interference Analysis (fullwave)Electromagnetic Interference Analysis (fullwave)

• Electromagnetic solvers Electromagnetic solvers – classification (time vs. frequency, differential vs. integral)classification (time vs. frequency, differential vs. integral)– integral equation solvers in detailintegral equation solvers in detail

• basis functionsbasis functions• residual minimization (collocation and Galerkin)residual minimization (collocation and Galerkin)• linear system solutionlinear system solution• fast matrix-vector productsfast matrix-vector products

– Example: EMQS solutionExample: EMQS solution– ConclusionsConclusions

Page 13: Parasitic Extraction

13

Picture Thanks to Coventor

Inductance and Resistance ExtractionInductance and Resistance ExtractionExample: IC packageExample: IC package

package

IC

wirebondinglead

frames

Page 14: Parasitic Extraction

14

Inductance and Resistance ExtractionInductance and Resistance ExtractionWhere do we need to account for inductance?Where do we need to account for inductance?

• chip to package and package to board connections are highly chip to package and package to board connections are highly inductiveinductive

• inductance can create Ldi/dt noise on the gnd/vdd networkinductance can create Ldi/dt noise on the gnd/vdd network• inductance can limit communication bandwidthinductance can limit communication bandwidth• inductive coupling between leads or pins can introduce noiseinductive coupling between leads or pins can introduce noise

IC

on-package decouplingcapacitors

on-boarddecoupling capacitors

packagePCB

pins or solder ballsfrom package to PCB

wire bonding and lead framesor solder balls from IC to package

Page 15: Parasitic Extraction

15

Inductance and Resistance ExtractionInductance and Resistance Extraction Why also resistance? Skin and Proximity effects Why also resistance? Skin and Proximity effects

proximity effect: opposite currents in nearby conductors attract each other

skin effect: high frequency currents crowd toward the surface of conductors

Simple ExampleSimple Example

Page 16: Parasitic Extraction

16

Inductance and Resistance ExtractionInductance and Resistance ExtractionSkin and Proximity effects (cont.)Skin and Proximity effects (cont.)

• Why do we care?Why do we care?– Skin and proximity effects change interconnect Skin and proximity effects change interconnect

resistance and inductanceresistance and inductance– hence they affect hence they affect performanceperformance (propagation delay) (propagation delay)– and and noisenoise (magnetic coupling) (magnetic coupling)

• When do we care?When do we care?– frequency is high enough that wire width OR thickness frequency is high enough that wire width OR thickness

are less than two “skin-depths”are less than two “skin-depths”– e.g. on PCB at and above 100MHze.g. on PCB at and above 100MHz– e.g. on packages at above 1GHze.g. on packages at above 1GHz– e.g. on-chip at and above 10GHze.g. on-chip at and above 10GHz– note. clock at 3GHz has significant harmonics at 10GHz!!note. clock at 3GHz has significant harmonics at 10GHz!!

Page 17: Parasitic Extraction

17

Inductance and Resistance ExtractionInductance and Resistance ExtractionProblem FormulationProblem Formulation

• Given a collection of Given a collection of interconnected N wires of any interconnected N wires of any shape and dimensionshape and dimension

• Identify the M input portsIdentify the M input portsPicture byPicture byM. ChouM. Chou

viLjR ??

• Calculate the MxM resistance and the Calculate the MxM resistance and the inductance matrices for the ports, inductance matrices for the ports,

• that is the real and immaginary part of the that is the real and immaginary part of the impedance matriximpedance matrix

Page 18: Parasitic Extraction

18

Inductance and Resistance ExtractionInductance and Resistance ExtractionSolution ProcedureSolution Procedure

• Typically instead of Typically instead of calculating impendance we calculating impendance we calculate the admittance calculate the admittance matrix.matrix.

• For each pair of input For each pair of input terminals,terminals,

ivY

ivZ

ivLjR

1

1

MiM

i

i

i

ii

Y

YY

2

1

,

,2

,1

010

0

2

J

AjJJA

– apply a unit voltage source apply a unit voltage source

and solve and solve magneto quasit-magneto quasit-static problemstatic problem (MQS)(MQS) to to calculate all terminal calculate all terminal currentscurrents

– that is one column of the that is one column of the admittance matrix [R+jwL]admittance matrix [R+jwL]-1-1

Page 19: Parasitic Extraction

19

OverviewOverview

• Setups of Parasitic Extraction ProblemsSetups of Parasitic Extraction Problems– Capacitance Extraction (electrostatic)Capacitance Extraction (electrostatic)– RL Extraction (MQS)RL Extraction (MQS)– Combined RLC Extraction (EMQS)Combined RLC Extraction (EMQS)– Electromagnetic Interference Analysis (fullwave)Electromagnetic Interference Analysis (fullwave)

• Electromagnetic solvers Electromagnetic solvers – classification (time vs. frequency, differential vs. integral)classification (time vs. frequency, differential vs. integral)– integral equation solvers in detailintegral equation solvers in detail

• basis functionsbasis functions• residual minimization (collocation and Galerkin)residual minimization (collocation and Galerkin)• linear system solutionlinear system solution• fast matrix-vector productsfast matrix-vector products

– Example: EMQS solutionExample: EMQS solution– ConclusionsConclusions

Page 20: Parasitic Extraction

20

Combined RLC ExtractionCombined RLC ExtractionExample: current distributions on powergridExample: current distributions on powergrid

input terminals

Page 21: Parasitic Extraction

21

Combined RLC Extraction Combined RLC Extraction Example: analysis of resonances on powergridExample: analysis of resonances on powergrid

* 3 proximity templates per cross-section- 20 non-uniform thin filaments per cross-section

Page 22: Parasitic Extraction

22

Combined RLC ExtractionCombined RLC ExtractionExtraction Example: analysis of substrate couplingExtraction Example: analysis of substrate coupling

Page 23: Parasitic Extraction

23

Combined RLC ExtractionCombined RLC ExtractionExample: resonance of RF microinductorsExample: resonance of RF microinductors

• At frequency of operation At frequency of operation the current flows in the the current flows in the spiral and creates magnetic spiral and creates magnetic energy storage (it works as energy storage (it works as an inductor: GOOD)an inductor: GOOD)

Picture thanks to Univ. of PisaPicture thanks to Univ. of Pisa

• But for higher frequencies But for higher frequencies the impedance of the the impedance of the parasitic capacitors is lower parasitic capacitors is lower and current prefers to and current prefers to “jump” from wire to wire as “jump” from wire to wire as displacement currents (it displacement currents (it works as a capacitor: BAD)works as a capacitor: BAD)

Page 24: Parasitic Extraction

24

Combined RLC ExtractionCombined RLC ExtractionProblem FormulationProblem Formulation

• Given a collection of Given a collection of interconnected N wires of any interconnected N wires of any shape and dimensionshape and dimension

• Identify the M input portsIdentify the M input portsPicture byPicture byM. ChouM. Chou

viZ ?

• Calculate the MxM IMPEDANCE matrix for Calculate the MxM IMPEDANCE matrix for the ports, the ports,

• that is the real and immaginary part of the that is the real and immaginary part of the impedance matriximpedance matrix

Page 25: Parasitic Extraction

25

Combined RLC ExtractionCombined RLC ExtractionSolution ProcedureSolution Procedure

• Same as RL extraction.Same as RL extraction.• Typically calculate admittance matrixTypically calculate admittance matrix• For each pair of input terminals,For each pair of input terminals,

ivY

MiM

i

i

i

ii

Y

YY

2

1

,

,2

,1

010

jJnJ

AjJJA

ˆ0

2

2– apply a unit voltage source and apply a unit voltage source and solve solve electro-magneto quasit-static electro-magneto quasit-static problem (EMQS)problem (EMQS) to calculate all to calculate all terminal currentsterminal currents

– that is one column of the admittance that is one column of the admittance matrix [R+jwL]matrix [R+jwL]-1-1

Page 26: Parasitic Extraction

26

OverviewOverview

• Setups of Parasitic Extraction ProblemsSetups of Parasitic Extraction Problems– Capacitance Extraction (electrostatic)Capacitance Extraction (electrostatic)– RL Extraction (MQS)RL Extraction (MQS)– Combined RLC Extraction (EMQS)Combined RLC Extraction (EMQS)– Electromagnetic Interference Analysis (fullwave)Electromagnetic Interference Analysis (fullwave)

• Electromagnetic solvers Electromagnetic solvers – classification (time vs. frequency, differential vs. integral)classification (time vs. frequency, differential vs. integral)– integral equation solvers in detailintegral equation solvers in detail

• basis functionsbasis functions• residual minimization (collocation and Galerkin)residual minimization (collocation and Galerkin)• linear system solutionlinear system solution• fast matrix-vector productsfast matrix-vector products

– Example: EMQS solutionExample: EMQS solution– ConclusionsConclusions

Page 27: Parasitic Extraction

27

The Electromagnetic Interference (EMI)The Electromagnetic Interference (EMI)Problem descriptionProblem description

• Electronic circuits produce and are subject to Electronic circuits produce and are subject to Electromagnetic Interference (EMI).Electromagnetic Interference (EMI).– in particular when wavelengths ~ wire lengthsin particular when wavelengths ~ wire lengths

• EMI is a problem because EMI is a problem because it can severely and it can severely and randomly affect analog and digital circuit randomly affect analog and digital circuit functionality!!!functionality!!!

PCBPCB

ICIC

PCPCBB

ICIC

Page 28: Parasitic Extraction

28

EMI analysisEMI analysisEMI at board, package and IC levelEMI at board, package and IC level

• Traces on PCB can pick up Traces on PCB can pick up EMI EMI and transmit it to IC’s and transmit it to IC’s

• IC’s can produce high IC’s can produce high frequency frequency conducted conducted emissionsemissions that can that can radiateradiate from from PCB’sPCB’s

• IC’s themselves can directly IC’s themselves can directly produce produce radiated emissionsradiated emissions

– high-frequency current loops high-frequency current loops Vdd-decap-gnd on package or Vdd-decap-gnd on package or inside IC’s.inside IC’s.

– high-frequency current loops high-frequency current loops inside IC (near future)inside IC (near future)

– IC radiation amplified by heat IC radiation amplified by heat sinks!sinks!

PCBPCB

PCBPCB

ICIC

ICIC

ICIC

Page 29: Parasitic Extraction

29

EMI a problem for ICs design?EMI a problem for ICs design?

• So far: dimensions too small and wavelengths too largeSo far: dimensions too small and wavelengths too large• Trend: Trend: larger chip dies and higher frequencieslarger chip dies and higher frequencies

Future’s IC: • clocks ~ 3GHz• harmonics ~ 30GHz • wavelengths ~ 1cm • dimensions ~ 1cm

Today’s PCB:• clocks ~ 300MHz• harmonics ~ 3GHz• wavelengths ~ 10cm• dimensions ~ 10cm

d

d

this gives resonances on PCB today,this gives resonances on PCB today,hence it might on IC tomorrow!hence it might on IC tomorrow!

Page 30: Parasitic Extraction

30

EMI analysisEMI analysisSolution ProcedureSolution Procedure

• Typically, EMI analysis is a two-step process:Typically, EMI analysis is a two-step process:

1) determine accurate current distributions on conductors1) determine accurate current distributions on conductors

• 2) calculate radiated fields from the current distributions2) calculate radiated fields from the current distributions

EE

1I

2I

1I

2I

Page 31: Parasitic Extraction

31

Need for full-board analysisNeed for full-board analysis

• Interconnect impedances depend on complicated return Interconnect impedances depend on complicated return paths.paths.

• Unbalanced currents generate most of the interferenceUnbalanced currents generate most of the interference. .

• Hence need FULL-BOARD analysisHence need FULL-BOARD analysis

1I

12 II

Page 32: Parasitic Extraction

32

jJnJ

AjJJA

ˆ0

22

22

Need for full-wave analysisNeed for full-wave analysis

• Circuit dementions are not negligible compared to Circuit dementions are not negligible compared to wavelengthwavelength

dtdIi

dct

dtdILv i

jij ,

coupling NOT instantaneus,speed of light creates retardation

d

Need to solve FULLWAVE equations (same as for RLC extraction plus wave term)

Page 33: Parasitic Extraction

33

OverviewOverview

• Setups of Parasitic Extraction ProblemsSetups of Parasitic Extraction Problems– Capacitance Extraction (electrostatic)Capacitance Extraction (electrostatic)– RL Extraction (MQS)RL Extraction (MQS)– Combined RLC Extraction (EMQS)Combined RLC Extraction (EMQS)– Electromagnetic Interference Analysis (fullwave)Electromagnetic Interference Analysis (fullwave)

• Electromagnetic field solvers Electromagnetic field solvers – classification (time vs. frequency, differential vs. integral)classification (time vs. frequency, differential vs. integral)– integral equation solvers in detailintegral equation solvers in detail

• basis functionsbasis functions• residual minimization (collocation and Galerkin)residual minimization (collocation and Galerkin)• linear system solutionlinear system solution• fast matrix-vector productsfast matrix-vector products

– Example: EMQS solutionExample: EMQS solution– ConclusionsConclusions

Page 34: Parasitic Extraction

34

Example: the most intuitive FDTD in one dimension Example: the most intuitive FDTD in one dimension

using Forward Euler (easier to explain)using Forward Euler (easier to explain)

tEEH

tHE

tH

xE yz

Maxwell differential equations:

In one dimension: Using forward Euler:

tHH

xEE

n

myn

mynmz

nmz

1

1

Page 35: Parasitic Extraction

35

Example: 1D-FDTD with Forward Euler (cont.)Example: 1D-FDTD with Forward Euler (cont.)

1

1

1

11

n

my

nmz

nmz

nmz

nmz

n

myn

my

EHE

EExtHH

Iteration formulas:

1n

myH

n

myHnmzE 1

nmzE

t

x

n+1

n

m m+1

Page 36: Parasitic Extraction

36

Time-domain vs. frequency domain methodsTime-domain vs. frequency domain methods

Time-domain methodsTime-domain methods Frequency-domain methodsFrequency-domain methods

can handle non-linearitiescan handle non-linearities problems with non-problems with non-linearitieslinearities

run a long simulation excitingrun a long simulation exciting solve for specific frequencysolve for specific frequencyall significant modes and thenall significant modes and then points of interestpoints of interesttake an FFTtake an FFT

can produce insightfulcan produce insightful can exploit new techniquescan exploit new techniques animationsanimations for model order reductionfor model order reduction

Page 37: Parasitic Extraction

37

Differential vs. Integral methodsDifferential vs. Integral methods

Differential methodsDifferential methods Integral MethodsIntegral Methods

discretize discretize entireentire domain domain discretize discretize only “active”only “active”regionsregions

create create hugehuge but but sparsesparse create create small small but but densedense linear systemslinear systems linear systemslinear systems

good for inhomogeneousgood for inhomogeneous problems with problems with materialsmaterials inhomogeneous materialsinhomogeneous materials

problems with openproblems with open good for open boundarygood for open boundaryboundary conditionsboundary conditions conditionsconditions

Page 38: Parasitic Extraction

38

Electromagnetic Solvers Classification Electromagnetic Solvers Classification

Differential Differential Integral Integral MethodsMethods MethodsMethods

Time-domainTime-domain FDTDFDTD PEECPEECMethodsMethods Finite DifferenceFinite Difference Partial ElementPartial Element

Time DomainTime Domain Equivalent Equivalent CircuitsCircuits

Frequency-domainFrequency-domain FEMFEM MoM, MoM, PEECPEECMethodsMethods Finite ElementFinite Element Method of MomentsMethod of Moments

MethodMethod

Page 39: Parasitic Extraction

39

OverviewOverview

• Setups of Parasitic Extraction ProblemsSetups of Parasitic Extraction Problems– Capacitance Extraction (electrostatic)Capacitance Extraction (electrostatic)– RL Extraction (MQS)RL Extraction (MQS)– Combined RLC Extraction (EMQS)Combined RLC Extraction (EMQS)– Electromagnetic Interference Analysis (fullwave)Electromagnetic Interference Analysis (fullwave)

• Electromagnetic solvers Electromagnetic solvers – classification (time vs. frequency, differential vs. integral)classification (time vs. frequency, differential vs. integral)– integral equation solvers in detailintegral equation solvers in detail

• basis functionsbasis functions• residual minimization (collocation and Galerkin)residual minimization (collocation and Galerkin)• linear system solutionlinear system solution• fast matrix-vector productsfast matrix-vector products

– Example: EMQS solutionExample: EMQS solution– ConclusionsConclusions

Page 40: Parasitic Extraction

40

Maxwell Differential EquationsMaxwell Differential Equations

• Maxwell Differential Equations can be written in terms ofMaxwell Differential Equations can be written in terms of– the electric scalar potentialthe electric scalar potential– and the magnetic vector potentialand the magnetic vector potential

EJHE

EjHHjE

0

jJnJ

AjJJA

ˆ0

22

22

A

Page 41: Parasitic Extraction

41

Maxwell equations in integral formMaxwell equations in integral formMixed potential Integral Equation (MPIE)Mixed potential Integral Equation (MPIE)

)()(ˆ0)( srrJnrJ j current and chargecurrent and chargeconservationconservation

A B

'|'|

)'(4

)( |'|

drrr

rJrJ rr

V

jej

resistive effectresistive effect magnetic couplingmagnetic coupling

JJ

J JJ

)('|'|

)(4

1 |'|

SSSS

rr

s rdrrr

'rSS

S

je charge-voltage charge-voltage relationrelation

Page 42: Parasitic Extraction

42

Full-wave (for EMI) Full-wave (for EMI) vs. quasi-static EMQS (for RLC extraction)vs. quasi-static EMQS (for RLC extraction)

)()(ˆ0)( srrJnrJ j current and chargecurrent and chargeconservationconservation

A B

'|'|

)'(4

)( |'|

drrr

rJrJ rr

V

jej

resistive effectresistive effect magnetic couplingmagnetic coupling

JJ

J JJ

)('|'|

)(4

1 |'|

SSSS

rr

s rdrrr

'rSS

S

je charge-voltage charge-voltage relationrelation

QUASI-STATIC

QUASI-STATIC

Page 43: Parasitic Extraction

43

EMQS (for RLC extraction)EMQS (for RLC extraction)vs. MQS (for RL extraction)vs. MQS (for RL extraction)

0)( rJ current and chargecurrent and chargeconservationconservation

A B

'

|'|1)'(

4)( dr

rrrJrJ

Vj

resistive effectresistive effect magnetic couplingmagnetic coupling

JJ

J JJ

)('|'|

1)(4

1SS

SSs rdr

rr'r

S charge-voltage charge-voltage relationrelation

MQS MAGNETO QUASI-STATIC

)()(ˆ srrJn j

Page 44: Parasitic Extraction

44

EMQS (for RLC extraction)EMQS (for RLC extraction)vs. electro-static (for capacitance extraction)vs. electro-static (for capacitance extraction)

)()(ˆ0)( srrJnrJ j current and chargecurrent and chargeconservationconservation

A B

'

|'|1)'(

4)( dr

rrrJrJ

Vj

resistive effectresistive effect magnetic couplingmagnetic coupling

JJ

J JJ

)('|'|

1)(4

1SS

SSs rdr

rr'r

S charge-voltage charge-voltage relationrelation

ELECTRO-STATIC

ELECTRO-STATIC

Page 45: Parasitic Extraction

45

OverviewOverview

• Setups of Parasitic Extraction ProblemsSetups of Parasitic Extraction Problems– Capacitance Extraction (electrostatic)Capacitance Extraction (electrostatic)– RL Extraction (MQS)RL Extraction (MQS)– Combined RLC Extraction (EMQS)Combined RLC Extraction (EMQS)– Electromagnetic Interference Analysis (fullwave)Electromagnetic Interference Analysis (fullwave)

• Electromagnetic solvers Electromagnetic solvers – classification (time vs. frequency, differential vs. integral)classification (time vs. frequency, differential vs. integral)– integral equation solvers in detailintegral equation solvers in detail

• basis functionsbasis functions• residual minimization (collocation and Galerkin)residual minimization (collocation and Galerkin)• linear system solutionlinear system solution• fast matrix-vector productsfast matrix-vector products

– Example: EMQS solutionExample: EMQS solution– ConclusionsConclusions

Page 46: Parasitic Extraction

46

Basis FunctionsBasis Functions

• Basis for vector spaceBasis for vector space

N

iii

NN

121 if basisa is ,,,

)()()( function if basisa is ),(),(1

21 xxxxxi

ii

• Basis functions for functional vector spaceBasis functions for functional vector space

• ExamplesExamples– exponentialsexponentials– cos sincos sin

xje

)sin(),cos(,1 xx

)(x )(x

x x

– pieacewise constantpieacewise constant – pieacewise linearpieacewise linear

Page 47: Parasitic Extraction

47

Integral Equation:

1 if is on panel jj x x 0 otherwisej x

Discretize Surface into Panels

Panel j

1

surface

x dx x

x S

1 Basis Functions

Represent n

i ii

x x

Piecewise Constant Basis Functions. Piecewise Constant Basis Functions. E.g. Capacitance Extraction Electrostatic problemE.g. Capacitance Extraction Electrostatic problem

Page 48: Parasitic Extraction

48

OverviewOverview

• Setups of Parasitic Extraction ProblemsSetups of Parasitic Extraction Problems– Capacitance Extraction (electrostatic)Capacitance Extraction (electrostatic)– RL Extraction (MQS)RL Extraction (MQS)– Combined RLC Extraction (EMQS)Combined RLC Extraction (EMQS)– Electromagnetic Interference Analysis (fullwave)Electromagnetic Interference Analysis (fullwave)

• Electromagnetic solvers Electromagnetic solvers – classification (time vs. frequency, differential vs. integral)classification (time vs. frequency, differential vs. integral)– integral equation solvers in detailintegral equation solvers in detail

• basis functionsbasis functions• residual minimization (collocation and Galerkin)residual minimization (collocation and Galerkin)• linear system solutionlinear system solution• fast matrix-vector productsfast matrix-vector products

– Example: EMQS solutionExample: EMQS solution– ConclusionsConclusions

Page 49: Parasitic Extraction

49

1

,n

i iiapprox

surface

R x x G x x x dS

iWe will pick the ' to make ( ) small. s R x

General Approach: Pick a set of test functions

0 for all .i x R x dS i

1, , , and force to be orthogonal to the setn R x

Residual Definition and MinimizationResidual Definition and Minimization

Page 50: Parasitic Extraction

50

1We will generate different methods by chosing the , , ,n

(basis = test)Galerkin Method: i ix x

Weighted Residual Method: 1 if ( ) 0 (averages)i ix x

C (point-matching)ollocation:ii tx x x

1

, 0n

i i i j jjapprox

surface

x R x dS x x dS x G x x x dS dS

Residual Minimization using Test FunctionsResidual Minimization using Test Functions

Note: Weighted Residual = Galerkin when using piecewise constant basis functions

Page 51: Parasitic Extraction

51

1

, 0i i i i

n

t t t t j jjapprox

surface

x x R x dS R x x G x x x dS

(point-matchingCollocati )on: i ix x

1

,

,i i

n

t j t jj approx

surface

i j

x G x x x dS

A

11,1 1, 1

,1 ,n

tn

n n n n t

xA A

A A x

CollocationCollocation

Page 52: Parasitic Extraction

52

1

,

,i i

n

c j cj

i j

panel jx G x x dS

A

11,1 1, 1

,1 ,n

cn

n n n n c

xA A

A A x

Put collocation points atpanel centroids

icx Collocationpoint

Collocation on Piecewise constant basis functionsCollocation on Piecewise constant basis functions(Centroid Collocation)(Centroid Collocation)

Page 53: Parasitic Extraction

53

1

,

,i i

n

t j tj line j

i j

x G x x dS

A

Centroid Collocation Centroid Collocation generates a nonsymmetric matrixgenerates a nonsymmetric matrix

1,21 22 12,1 ')',(')',( AdSxxGdSxxGApanelpanel

2x1x

Page 54: Parasitic Extraction

54

Basis Function Approach

Calculating Matrix Elements

Panel j

icx Collocationpoint

,1

i

i jpa cnel j x x

A dS

,

i jc centr

j

id

i

o

Panel Areax x

A

One point quadrature

Approximation

x

yz

t

4

,1 in

0.25*

i jc o

i jj p

Ar ax x

A e

Four point quadrature

Approximation

Page 55: Parasitic Extraction

55

Basis Function Approach

Calculating “Self-Term”

Panel i

icx Collocationpoint

,1

i

i ipa cnel i x x

A dS

,

0i i

i ic c

Panel AreaAx x

One point quadrature

Approximation

x

yz

, is an integrable singularity1

i

i ipanel i cx x

A dS

Page 56: Parasitic Extraction

56

Basis Function Approach Calculating “Self-Term”

Tricks of the trade

Panel i

icx Collocationpoint

,1

i

i ipa cnel i x x

A dS

x

yz

Disk of radius R surrounding

collocation point

,1 1

i ic ci i

disk rest of panel

A dS dSx x x x

Disk Integral has singularity but has analytic formula

Integrate in two pieces

2

0 0

1 21

i

R

d k cis

dS rdrd Rrx x

Page 57: Parasitic Extraction

57

Basis Function Approach Calculating “Self-Term” Other Tricks of the trade

Panel i

icx Collocationpoint

Integrand is singular

,1

i

i ipanel i cx x

A dS

x

yz

2) Curve panels can be handled with projection

1) If panel is a flat polygon, analytical formulas exist

Page 58: Parasitic Extraction

58

(test=basis)Galerkin: i ix x

1

, 0n

i i i j jjapprox

surface

x R x dS x x dS x G x x x dS dS

, ,If ( , ) ( , ) then =i j j iG x x G x x A A A is symmetric

1

,

,n

i j i jjapprox approx approx

surface surface surface

i ji

x x dS G x x x x dS dS

Ab

1,1 1, 1 1

,1 ,

n

n n n n n

A A b

A A b

GalerkinGalerkin

Page 59: Parasitic Extraction

59

1

,

,i i j

n

jjline line line

i i j

x dS G x x dS dS

b A

1,1 1, 1 1

,1 ,

n

n n n n n

A A b

A A b

Galerkin with Piecewise constant basesGalerkin with Piecewise constant bases

1

,

,n

i j i jj

i ji

x x dS x G x x x dS dS

Ab

source panel j

test panel i

Page 60: Parasitic Extraction

60

OverviewOverview

• Setups of Parasitic Extraction ProblemsSetups of Parasitic Extraction Problems– Capacitance Extraction (electrostatic)Capacitance Extraction (electrostatic)– RL Extraction (MQS)RL Extraction (MQS)– Combined RLC Extraction (EMQS)Combined RLC Extraction (EMQS)– Electromagnetic Interference Analysis (fullwave)Electromagnetic Interference Analysis (fullwave)

• Electromagnetic solvers Electromagnetic solvers – classification (time vs. frequency, differential vs. integral)classification (time vs. frequency, differential vs. integral)– integral equation solvers in detailintegral equation solvers in detail

• basis functionsbasis functions• residual minimization (collocation and Galerkin)residual minimization (collocation and Galerkin)• linear system solutionlinear system solution• fast matrix-vector productsfast matrix-vector products

– Example: EMQS solutionExample: EMQS solution– ConclusionsConclusions

Page 61: Parasitic Extraction

61

BackgroundBackgroundKrylov subspace iterative methodsKrylov subspace iterative methods

Problem: solve Ax = b (where A is large and dense)Problem: solve Ax = b (where A is large and dense)

guess xguess x00

REPEATREPEAT– how good was my guess? Calculate residue rhow good was my guess? Calculate residue rii = b-Ax = b-Axii

– find next guess xfind next guess xi+1i+1 from the space x from the space x00+span{r+span{r00,Ar,Ar00,A,A22rr00,…,A,…,Aiirr00} } which minimizes the next residue which minimizes the next residue

UNTIL ||residue|| < desired accuracyUNTIL ||residue|| < desired accuracy

Advantages over gaussian elimination:Advantages over gaussian elimination:1) get a great control on accuracy (can stop and save 1) get a great control on accuracy (can stop and save

computation when desired accuracy is achieved) computation when desired accuracy is achieved) 2) only need a matrix vector product Ax per iteration: O(N2) only need a matrix vector product Ax per iteration: O(N22))

Page 62: Parasitic Extraction

62

BackgroundBackgroundSolving the large DENSE linear system (cont)Solving the large DENSE linear system (cont)

Algorithms: Complexity: Storage:

Gaussian elimination O(n3) O(n2)

Krylov subspace iterative methods

O(n2) O(n2)

Krylov iter. + fast matrix- vector product

O(n log(n)) O(n log(n))

• Solving the dense large linear system obtained from Solving the dense large linear system obtained from the Integral Equation method:the Integral Equation method:

Page 63: Parasitic Extraction

63

OverviewOverview

• Setups of Parasitic Extraction ProblemsSetups of Parasitic Extraction Problems– Capacitance Extraction (electrostatic)Capacitance Extraction (electrostatic)– RL Extraction (MQS)RL Extraction (MQS)– Combined RLC Extraction (EMQS)Combined RLC Extraction (EMQS)– Electromagnetic Interference Analysis (fullwave)Electromagnetic Interference Analysis (fullwave)

• Electromagnetic solvers Electromagnetic solvers – classification (time vs. frequency, differential vs. integral)classification (time vs. frequency, differential vs. integral)– integral equation solvers in detailintegral equation solvers in detail

• basis functionsbasis functions• residual minimization (collocation and Galerkin)residual minimization (collocation and Galerkin)• linear system solutionlinear system solution• fast matrix-vector productsfast matrix-vector products

– Example: EMQS solutionExample: EMQS solution– ConclusionsConclusions

Page 64: Parasitic Extraction

64

Page 65: Parasitic Extraction

65

Page 66: Parasitic Extraction

66

Page 67: Parasitic Extraction

67

Page 68: Parasitic Extraction

68

Page 69: Parasitic Extraction

69

O(nO(n22)) O(n log O(n log n)n)

Precorrected-FFT (e.g. capacitance extraction)Precorrected-FFT (e.g. capacitance extraction)

• Problem: solve iteratively Problem: solve iteratively Pq=Pq=ΦΦ

• At each iteration evaluate At each iteration evaluate matrix- vector products Pq:matrix- vector products Pq:

(1) Project charges into a 3D (1) Project charges into a 3D gridgrid

(2) calculate grid potentials (2) calculate grid potentials – it is a convolution use FFT. it is a convolution use FFT.

(3) Interpolate potentials from (3) Interpolate potentials from gridgrid

• but calculate close but calculate close interactions directly (pre-interactions directly (pre-correction step) correction step)

(1(1))

(2)(2)(3)(3)

Picture by J. Phillips

Page 70: Parasitic Extraction

70

OverviewOverview

• Setups of Parasitic Extraction ProblemsSetups of Parasitic Extraction Problems– Capacitance Extraction (electrostatic)Capacitance Extraction (electrostatic)– RL Extraction (MQS)RL Extraction (MQS)– Combined RLC Extraction (EMQS)Combined RLC Extraction (EMQS)– Electromagnetic Interference Analysis (fullwave)Electromagnetic Interference Analysis (fullwave)

• Electromagnetic solvers Electromagnetic solvers – classification (time vs. frequency, differential vs. integral)classification (time vs. frequency, differential vs. integral)– integral equation solvers in detailintegral equation solvers in detail

• basis functionsbasis functions• residual minimization (collocation and Galerkin)residual minimization (collocation and Galerkin)• linear system solutionlinear system solution• fast matrix-vector productsfast matrix-vector products

– Example: EMQS solutionExample: EMQS solution– ConclusionsConclusions

Page 71: Parasitic Extraction

71

Frequency domain integral equation methodFrequency domain integral equation methodEMQS Mixed Potential Integral EquationEMQS Mixed Potential Integral Equation

)()(ˆ0)( srrJnrJ j current and chargecurrent and chargeconservationconservation

A B

'

|'|1)'(

4)( dr

rrrJrJ

Vj

resistive effectresistive effect magnetic couplingmagnetic coupling

JJ

J JJ

)('|'|

1)(4

1SS

SSs rdr

rr'r

S charge-voltage charge-voltage relationrelation

Page 72: Parasitic Extraction

72

EMQS Basis functions + GalerkinEMQS Basis functions + Galerkin

• Standard numerical procedure: discretize volumes and Standard numerical procedure: discretize volumes and charges into piecewise constant basis functions.charges into piecewise constant basis functions.

thin volume thin volume filamentsfilamentswith constant with constant currentcurrent

small surface small surface panelspanelswith constant with constant chargecharge

• Substitute and use Collocation or Galerkin to get branch Substitute and use Collocation or Galerkin to get branch equationsequations

c

c

c

c

c

cc VqI

PLjR

00

m

mmj

jj qvI )()()()( rrrwrJ

Page 73: Parasitic Extraction

73

Mesh AnalysisMesh Analysis[Kamon et al. Trans Packaging98][Kamon et al. Trans Packaging98]

msmT

c

cc

VIMjP

LjRM

0

0

Imposing current conservation with Imposing current conservation with mesh analysismesh analysis

c

c

c

c

c

cc VqI

PLjR

00

Branch equationsBranch equations

Page 74: Parasitic Extraction

74

EMQS, mesh analysis, EMQS, mesh analysis, PreconditionersPreconditioners

• A Preconditioner must beA Preconditioner must be– a good approximation of a good approximation of

the inverse of the matrixthe inverse of the matrix– easy to calculateeasy to calculate

msmT

c

cc

VIMjP

LjRM

0

0

1

0

0diag

T

c

cc

MjP

LjRM

1

0

0 diag

T

c

cc

MjP

LjRM

Jacobi PreconditionerJacobi Preconditioner

A better choiceA better choice

M is sparse

Page 75: Parasitic Extraction

75

GMRES convergence with different preconditionersGMRES convergence with different preconditioners

Page 76: Parasitic Extraction

76

OverviewOverview

• Setups of Parasitic Extraction ProblemsSetups of Parasitic Extraction Problems– Capacitance Extraction (electrostatic)Capacitance Extraction (electrostatic)– RL Extraction (MQS)RL Extraction (MQS)– Combined RLC Extraction (EMQS)Combined RLC Extraction (EMQS)– Electromagnetic Interference Analysis (fullwave)Electromagnetic Interference Analysis (fullwave)

• Electromagnetic solvers Electromagnetic solvers – classification (time vs. frequency, differential vs. integral)classification (time vs. frequency, differential vs. integral)– integral equation solvers in detailintegral equation solvers in detail

• basis functionsbasis functions• residual minimization (collocation and Galerkin)residual minimization (collocation and Galerkin)• linear system solutionlinear system solution• fast matrix-vector productsfast matrix-vector products

– Example: EMQS solutionExample: EMQS solution– ConclusionsConclusions

Page 77: Parasitic Extraction

77

Parasitic Extraction (the two steps)Parasitic Extraction (the two steps)

ElectromagneticAnalysis (Tuesday)

million of elements

thin volume thin volume filamentsfilamentswith constant with constant currentcurrent

small surface small surface panelspanelswith constant with constant chargecharge

Model OrderReduction(Today)

tens of elements

Page 78: Parasitic Extraction

78

Parasitic ExtractionParasitic Extraction

Parasitic Extraction

thousands of wirese.g. critical pathe.g. gnd/vdd grid

tens of circuitelements for gate level spice simulation

• identify some ports• produce equivalent circuit that

models response of wires at those ports

Page 79: Parasitic Extraction

79

Conventional Design FlowConventional Design Flow

Funct. Spec

Logic Synth.

Gate-level Net.

RTL

Layout

Floorplanning

Place & Route

Front-end

Back-end

Behav. Simul.

Gate-Lev. Sim.

Stat. Wire Model

Parasitic Extrac.