Click here to load reader
Upload
yeva
View
135
Download
10
Tags:
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
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
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.
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
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
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
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
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
8
Capacitive ExtractionCapacitive ExtractionWhy? E.g. Analysis of Delay of Critical PathWhy? E.g. Analysis of Delay of Critical Path
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
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
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
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
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
13
Picture Thanks to Coventor
Inductance and Resistance ExtractionInductance and Resistance ExtractionExample: IC packageExample: IC package
package
IC
wirebondinglead
frames
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
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
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!!
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
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
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
20
Combined RLC ExtractionCombined RLC ExtractionExample: current distributions on powergridExample: current distributions on powergrid
input terminals
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
22
Combined RLC ExtractionCombined RLC ExtractionExtraction Example: analysis of substrate couplingExtraction Example: analysis of substrate coupling
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)
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
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
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
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
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
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!
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
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
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)
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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)
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
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
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
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
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
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
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
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
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))
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:
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
64
65
66
67
68
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
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
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
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
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
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
75
GMRES convergence with different preconditionersGMRES convergence with different preconditioners
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
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
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
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.