Upload
cora-cross
View
218
Download
0
Tags:
Embed Size (px)
Citation preview
1
Parasitic ExtractionParasitic ExtractionStep 1: Electromagnetic Field SolversStep 1: Electromagnetic Field Solvers
Luca Daniel
Massachusetts Institute of Technology
http://onigo.mit.edu/~dluca/2009MOMiNE
www.rle.mit.edu/cpg
2
IC Conventional Design FlowIC Conventional Design Flow
Funct. Spec
Logic Synth.
Gate-level Net.
RTL
Layout
Floorplanning
Place & Route
Front-end
Back-end
Behav. Simul.
Stat. Wire Model
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
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.
5
Overview Step1 : Field SolversOverview Step1 : Field Solvers(Tuesday and Wednesday)(Tuesday and Wednesday)
• Formulation of Parasitic Extraction Problems:Formulation of Parasitic Extraction Problems:– Capacitance Extraction (electrostatic)Capacitance Extraction (electrostatic)
– Inductance Extraction (Magneto-Quasi-Static MQS)Inductance Extraction (Magneto-Quasi-Static 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 detailsIntegral equation solvers in details• basis functionsbasis functions• equation testing (collocation vs. Galerkin)equation testing (collocation vs. Galerkin)• linear system solution (direct vs. iterative methods)linear system solution (direct vs. iterative methods)• fast matrix-vector products (eg. fastmultipole, pFFT)fast matrix-vector products (eg. fastmultipole, pFFT)• example: FastMaxwell a EMQS/Fullwave solver with pFFTexample: FastMaxwell a EMQS/Fullwave solver with pFFT
– Current Field Solvers Research DirectionsCurrent Field Solvers Research Directions
6
Overview Step 2: Model Order ReductionOverview Step 2: Model Order Reduction(Wednesday and Thursday)(Wednesday and Thursday)
• Problem SetupProblem Setup• Connection between circuits and State Space models Connection between circuits and State Space models • Reduction via eigenmode truncation methodReduction via eigenmode truncation method• Reduction via transfer function fittingReduction via transfer function fitting
– point matchingpoint matching– least squareleast square– quasi-convex optimization methodquasi-convex optimization method
• Reduction via Projection FrameworkReduction via Projection Framework– Truncated Balance RealizationsTruncated Balance Realizations– Krylov Subspace Moment MatchingKrylov Subspace Moment Matching
• need for orthogonalization (Arnoldi process)need for orthogonalization (Arnoldi process)• computational complexitycomputational complexity• passivity preservationpassivity preservation
• Reduction of Non-Linear SystemsReduction of Non-Linear Systems
7
Overview Step1 : Field SolversOverview Step1 : Field Solvers
• Formulation of Parasitic Extraction Problems:Formulation of Parasitic Extraction Problems:– Capacitance Extraction (electrostatic)Capacitance Extraction (electrostatic)
– Inductance Extraction (Magneto-Quasi-Static MQS)Inductance Extraction (Magneto-Quasi-Static 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 detailsIntegral equation solvers in details• basis functionsbasis functions• equation testing (collocation vs. Galerkin)equation testing (collocation vs. Galerkin)• linear system solution (direct vs. iterative methods)linear system solution (direct vs. iterative methods)• fast matrix-vector products (eg. fastmultipole, pFFT)fast matrix-vector products (eg. fastmultipole, pFFT)• example: FastMaxwell a EMQS/Fullwave solver with pFFTexample: FastMaxwell a EMQS/Fullwave solver with pFFT
– Current Field Solvers Research DirectionsCurrent Field Solvers Research Directions
8
Capacitance ExtractionCapacitance ExtractionExample: Intel Process Cross-sectionExample: Intel Process Cross-section
5 metal layers Ti/Al - Cu/Ti/TiN Polysilicon dielectric.from “Digital Integrated Circuits”, 2nd Edition, Rabaey, Chandrakasan, Nikolic
fringing parallel
Consider only electric field (capacitive) coupling
9
Capacititance ExtractionCapacititance ExtractionWhy? E.g. Analysis of Delay of Critical PathWhy? E.g. Analysis of Delay of Critical Path
10
Capacitance Extraction Capacitance Extraction Why do we need it?Why do we need it?
• to produce RC tree to produce RC tree network for Elmore network for Elmore delay analysisdelay analysis
• to produce RC tree to produce RC tree network for capacitive network for capacitive cross-talk analysiscross-talk analysis
R1
C1
s
R 2
C2
R 4
C4
C3
R3
Ci
Ri
1
2
3
4
i
11
Capacitance ExtractionCapacitance ExtractionProblem FormulationProblem Formulation
• Given a collection of M conductors Given a collection of M conductors
fringing parallel
qvC ?
Calculate the couplingcapacitance matrix C
12
Capacitance ExtractionCapacitance ExtractionSolution ProcedureSolution Procedure
• For i = 1 to M,For i = 1 to M,– 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
q
q
C
C
C
2
1
,
,2
,1
0
1
01iv?iq?1 q
?q ?q ?Nq
?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
13
OverviewOverview
• Formulation of Parasitic Extraction Problems:Formulation of Parasitic Extraction Problems:– Capacitance Extraction (Electrostatic)Capacitance Extraction (Electrostatic)
– Inductance Extraction (Magneto-Quasi-Static MQS)Inductance Extraction (Magneto-Quasi-Static 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 detailsIntegral equation solvers in details• 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: FastMaxwell a EMQS/Fullwave solver with pFFTexample: FastMaxwell a EMQS/Fullwave solver with pFFT
– Current Field Solvers Research DirectionsCurrent Field Solvers Research Directions
14
Picture Thanks to Coventor
Inductance and Resistance ExtractionInductance and Resistance ExtractionExample: IC packageExample: IC package
packageIC
wirebondinglead
frames& pins
PCB
15
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
16
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
17
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 above 100MHze.g. on PCB above 100MHz
– e.g. on packages above 1GHze.g. on packages above 1GHz
– e.g. on-chip above 10GHze.g. on-chip above 10GHz
– note. clock at 3GHz has significant harmonics at 10GHz!!note. clock at 3GHz has significant harmonics at 10GHz!!
18
Inductance and Resistance ExtractionInductance and Resistance ExtractionProblem FormulationProblem Formulation
• Given a collection of Given a collection of interconnected wires with interconnected wires with M input portsM input ports
Picture byPicture byM. ChouM. Chou
viLjR ??
• Calculate the MxM resistance Calculate the MxM resistance RR and the and the inductance inductance LL matrices for the ports, matrices for the ports,
• that is the real and immaginary part of that is the real and immaginary part of the impedance matrix the impedance matrix Z=R+jwLZ=R+jwL
19
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 i = 1 to MFor i = 1 to M
ivY
ivZ
ivLjR
1
1
MiM
i
i
i
i
i
Y
Y
Y
2
1
,
,2
,1
0
1
0
0
2
J
AjJ
JA
– apply a unit voltage source apply a unit voltage source at port i and short-circuit at port i and short-circuit the othersthe others
– solve solve magneto quasit-static magneto quasit-static problemproblem (MQS)(MQS) to calculate to calculate all port currentsall port currents
– that is the i-th column of that is the i-th column of the admittance matrix the admittance matrix
20
OverviewOverview
• Formulation of Parasitic Extraction Problems:Formulation of Parasitic Extraction Problems:– Capacitance Extraction (Electrostatic)Capacitance Extraction (Electrostatic)
– Inductance Extraction (Magneto-Quasi-Static MQS)Inductance Extraction (Magneto-Quasi-Static 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 detailsIntegral equation solvers in details• 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: FastMaxwell a EMQS/Fullwave solver with pFFTexample: FastMaxwell a EMQS/Fullwave solver with pFFT
– Current Field Solvers Research DirectionsCurrent Field Solvers Research Directions
21
Combined RLC ExtractionCombined RLC ExtractionExample: current distributions on powergridExample: current distributions on powergrid
input terminals
22
Combined RLC Extraction Combined RLC Extraction Example: analysis of resonances on powergridExample: analysis of resonances on powergrid
23
Combined RLC ExtractionCombined RLC ExtractionExtraction Example: analysis of substrate couplingExtraction Example: analysis of substrate coupling
24
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)
25
Combined RLC ExtractionCombined RLC ExtractionProblem FormulationProblem Formulation
• Given a collection of Given a collection of interconnected wires with interconnected wires with M portsM ports
Picture byPicture byM. ChouM. Chou
viZ ?)(
• Calculate the MxM IMPEDANCE Calculate the MxM IMPEDANCE matrix for the ports, matrix for the ports,
26
Combined RLC ExtractionCombined RLC ExtractionSolution ProcedureSolution Procedure
• Same as RL extraction.Same as RL extraction.• Typically calculate admittance matrixTypically calculate admittance matrix• For i = 1 to M:For i = 1 to M:
ivY
MiM
i
i
i
i
i
Y
Y
Y
2
1
,
,2
,1
0
1
0
jJn
J
AjJ
JA
ˆ
0
2
2– apply a unit voltage source at port i apply a unit voltage source at port i
and short-circuit the othersand short-circuit the others
– solve solve electro-magneto quasit-static electro-magneto quasit-static problem (EMQS)problem (EMQS) to calculate all port to calculate all port currentscurrents
– that is one column of the admittance that is one column of the admittance matrix matrix Y=ZY=Z-1-1
27
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
28
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
29
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 PCB’sfrom PCB’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
30
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 ICs: • clocks > 3GHz• harmonics > 30GHz • wavelengths < 1cm • dimensions > 1cm
Today’s PCB are affected by EMI:• clocks ~ 300MHz• harmonics ~ 3GHz• wavelengths ~ 10cm• dimensions ~ 10cm
d
d
this gives resonances on today’s PCB today,this gives resonances on today’s PCB today,hence it might produce resonances on future ICs!hence it might produce resonances on future ICs!
31
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
32
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 or FULL-PACKAGE or FULL-Hence need FULL-BOARD or FULL-PACKAGE or FULL-CHIP analysisCHIP analysis
1I
12 II
33
jJn
J
AjJ
JA
ˆ
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
dt
dIi
d
ct
dt
dILv i
jij ,
coupling NOT instantaneus,speed of light creates retardation
d
Need to solve FULLWAVE equations (same as for RLC extractionplus wave term)
34
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
35
The most intuitive field solver: FDTDThe most intuitive field solver: FDTDe.g. Forward Euler in 1D (easier to explain)e.g. Forward Euler in 1D (easier to explain)
t
EEH
t
HE
t
H
x
E yz
Maxwell differential equations:
In one dimension: Using forward Euler:
t
HH
x
EEn
myn
myn
mzn
mz
1
1
36
Example: 1D-FDTD with Forward Euler (cont.)Example: 1D-FDTD with Forward Euler (cont.)
1
1
1
1
1
n
my
n
mz
n
mz
n
mzn
mzn
myn
my
E
H
E
EEx
tHH
Iteration formulas:
1n
myH
n
myHn
mzE 1n
mzE
t
x
n+1
n
m m+1space
time
37
Electromagnetic Solvers Classification Electromagnetic Solvers Classification
Differential Differential Integral Integral
MethodsMethods MethodsMethods
Time-domainTime-domain FDTDFDTD PEECPEEC
MethodsMethods Finite DifferenceFinite Difference Partial ElementPartial Element
Time DomainTime Domain Equivalent Equivalent CircuitsCircuits
Frequency-domainFrequency-domain FEMFEM MoM, PEECMoM, PEEC
MethodsMethods Finite ElementFinite Element Method of MomentsMethod of Moments
MethodMethod
38
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 frequency
all significant modes and thenall significant modes and then points of interestpoints of interest
take an FFTtake an FFT
can produce insightfulcan produce insightful can exploit new techniques can exploit new techniques
animationsanimations for model order reductionfor model order reduction
39
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 boundary
boundary conditionsboundary conditions conditionsconditions
40
OverviewOverview
• Formulation of Parasitic Extraction Problems:Formulation of Parasitic Extraction Problems:– Capacitance Extraction (electrostatic)Capacitance Extraction (electrostatic)
– Inductance Extraction (Magneto-Quasi-Static MQS)Inductance Extraction (Magneto-Quasi-Static 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 detailsIntegral equation solvers in details• basis functionsbasis functions• equation testing (collocation vs. Galerkin)equation testing (collocation vs. Galerkin)• linear system solution (direct vs. iterative methods)linear system solution (direct vs. iterative methods)• fast matrix-vector products (eg. fastmultipole, pFFT)fast matrix-vector products (eg. fastmultipole, pFFT)• example: FastMaxwell a EMQS/Fullwave solver with pFFTexample: FastMaxwell a EMQS/Fullwave solver with pFFT
– Current Field Solvers Research DirectionsCurrent Field Solvers Research Directions
41
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
EJ
H
E
EjH
HjE
0
jJn
J
AjJ
JA
ˆ
0
22
22
A
42
AjJ
JA 22
22
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
AB
'|'|
)'(4
)( |'|
drrr
rJrJ rr
V
jej
resistive effectresistive effect magnetic couplingmagnetic coupling
JJ
J J
J
)('|'|
)(4
1 |'|
SSSS
rr
s rdrrr
'rSS
S
je charge-voltage charge-voltage relationrelation
43
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
AB
'|'|
)'(4
)( |'|
drrr
rJrJ rr
V
jej
resistive effectresistive effect magnetic couplingmagnetic coupling
JJ
J J
J
)('|'|
)(4
1 |'|
SSSS
rr
s rdrrr
'rSS
S
je charge-voltage charge-voltage relationrelation
QUASI-STATIC
QUASI-STATIC
44
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
AB
'
|'|
1)'(
4
)(dr
rrrJ
rJV
j
resistive effectresistive effect magnetic couplingmagnetic coupling
JJ
J J
J
)('|'|
1)(
4
1SS
SSs rdr
rr'r
S charge-voltage charge-voltage relationrelation
MQS MAGNETO QUASI-STATIC
)()(ˆ srrJn j
45
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
AB
'
|'|
1)'(
4
)(dr
rrrJ
rJV
j
resistive effectresistive effect magnetic couplingmagnetic coupling
JJ
J J
J
)('|'|
1)(
4
1SS
SSs rdr
rr'r
S charge-voltage charge-voltage relationrelation
ELECTRO-STATIC
ELECTRO-STATIC
46
OverviewOverview
• Formulation of Parasitic Extraction Problems:Formulation of Parasitic Extraction Problems:– Capacitance Extraction (electrostatic)Capacitance Extraction (electrostatic)
– Inductance Extraction (Magneto-Quasi-Static MQS)Inductance Extraction (Magneto-Quasi-Static 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 detailsIntegral equation solvers in details• basis functionsbasis functions• equation testing (collocation vs. Galerkin)equation testing (collocation vs. Galerkin)• linear system solution (direct vs. iterative methods)linear system solution (direct vs. iterative methods)• fast matrix-vector products (eg. fastmultipole, pFFT)fast matrix-vector products (eg. fastmultipole, pFFT)• example: FastMaxwell a EMQS/Fullwave solver with pFFTexample: FastMaxwell a EMQS/Fullwave solver with pFFT
– Current Field Solvers Research DirectionsCurrent Field Solvers Research Directions
47
Basis FunctionsBasis Functions
• Basis for vector spaceBasis for vector space
N
iii
NN w
121 if basis a is ,,,
)()()(function if basis a is ),(),(1
21 xwxxxxi
ii
• Basis functions for functional vector spaceBasis functions for functional vector space
• ExamplesExamples– exponentialsexponentials– cos, sincos, sin– polynomialpolynomial
xje
)sin(),cos(,1 xx
)(x )(x
x x
– pieacewise constantpieacewise constant – pieacewise linearpieacewise linear
...,,,,1 32 xxx
48
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. Electrostatic problem for Capacitance ExtractionE.g. Electrostatic problem for Capacitance Extraction
)',( xxG Green’s Function
wi
49
OverviewOverview
• Formulation of Parasitic Extraction Problems:Formulation of Parasitic Extraction Problems:– Capacitance Extraction (electrostatic)Capacitance Extraction (electrostatic)
– Inductance Extraction (Magneto-Quasi-Static MQS)Inductance Extraction (Magneto-Quasi-Static 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 detailsIntegral equation solvers in details• basis functionsbasis functions• equation testing (collocation vs. Galerkin)equation testing (collocation vs. Galerkin)• linear system solution (direct vs. iterative methods)linear system solution (direct vs. iterative methods)• fast matrix-vector products (eg. fastmultipole, pFFT)fast matrix-vector products (eg. fastmultipole, pFFT)• example: FastMaxwell a EMQS/Fullwave solver with pFFTexample: FastMaxwell a EMQS/Fullwave solver with pFFT
– Current Field Solvers Research DirectionsCurrent Field Solvers Research Directions
50
1
,
,i i
n
c j cj
i j
panel j
x 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 Testing)(Centroid Collocation Testing)
1
,
,i i
n
t j t jj approx
surface
i j
x G x x x dS
A
n
jjj
surface
dSxxxGx1
')'()',()(
icxicx
icxicx
w1
wn
wj
wj
wj
51
1
,
,i i
n
t j tj line j
i j
x G x x dS
A
Centroid Collocation Testing Centroid Collocation Testing Is the Matrix symmetric?Is the Matrix symmetric?
1,21 2 ')',( AdSxxGpanel
2x1x
icxicx
1x2x
Centroid Collocation generates a non-symmetric matrix
')',(2 12,1 dSxxGA
panel
wj
52
Panel j
icx Collocationpoint
,
1
i
i j
pa cnel j x xA dS
,
i jc centr
j
id
i
o
Panel Area
x xA
One point
quadrature Approximation
x
yz
t
4
,1 in
0.25*
i jc o
i jj p
Ar a
x xA
e
Four point
quadrature Approximation
Calculating Matrix ElementsCalculating Matrix Elements
53
Panel j=i
icx Collocationpoint
,
1
i
i i
pa cnel i x xA dS
,
0
i i
i i
c c
Panel AreaA
x x
One point quadrature
Approximation
x
yz
, is an integrable singularity1
i
i i
panel i cx xA dS
Calculating the “Self-Term”Calculating the “Self-Term”
54
Panel j=i
icx Collocationpoint
,
1
i
i i
pa cnel i x xA dS
x
yz
Disk of radius R surrounding
collocation point
,
1 1
i ic c
i 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
12
1
i
R
d k cis
dS rdrd Rrx x
Calculating the “Self Term” Calculating the “Self Term” Tricks of the tradeTricks of the trade
55
1,1 1, 1 1
,1 ,
n
n n n n n
A A b
A A b
Galerkin Testing with Piecewise constant basesGalerkin Testing with Piecewise constant bases
source panel jtest panel i
n
jjj
surface
dSxxxGx1
')'()',()(
1
,
,i i j
n
jjline line line
i i j
x dS G x x dS dS
b A
ipanel ipanel jpanel
1
,
,n
i j i jj
i ji
x x dS x G x x x dS dS
Ab
wj
wj
wj
w1
wn
56
panel 2panel 1
Galerkin Testing Galerkin Testing Is the Matrix symmetric?Is the Matrix symmetric?
Galerkin generates always a symmetric matrixif the Green function is symmetric G(x,x’)=G(x’,x)
1 22,1 ')',(
panel paneldSdSxxGA 1,22 1
')',( AdSdSxxGpanel panel
1
,
,i i j
n
jjline line line
i i j
x dS G x x dS dS
b A
ipanel ipanel jpanel
wj
57
OverviewOverview
• Formulation of Parasitic Extraction Problems:Formulation of Parasitic Extraction Problems:– Capacitance Extraction (electrostatic)Capacitance Extraction (electrostatic)
– Inductance Extraction (Magneto-Quasi-Static MQS)Inductance Extraction (Magneto-Quasi-Static 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 detailsIntegral equation solvers in details• basis functionsbasis functions• equation testing (collocation vs. Galerkin)equation testing (collocation vs. Galerkin)• linear system solution (direct vs. iterative methods)linear system solution (direct vs. iterative methods)• fast matrix-vector products (eg. fastmultipole, pFFT)fast matrix-vector products (eg. fastmultipole, pFFT)• example: FastMaxwell a EMQS/Fullwave solver with pFFTexample: FastMaxwell a EMQS/Fullwave solver with pFFT
– Current Field Solvers Research DirectionsCurrent Field Solvers Research Directions
58 58
Solution technique Computational Complexity
LU decomposition (Gaussian Elimination)
Dense: O(N3) time, O(N2) memorye.g. 10months, 80GB, for N=100,000
Iterative methods
Bottleneck: matrix-vector productO(k N2) time and memory
e.g. 7days, 80GB, for N=100,000 k=10
bxA
Computational Complexity (time and memory)Computational Complexity (time and memory)
59
Linear System SolutionLinear System SolutionKrylov 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)
i=0i=0 guess xguess xii
REPEATREPEAT– how good was my guess? Calculate residue how good was my guess? Calculate residue rrii=b-Ax=b-Axii
– find next guess xfind next guess xi+1i+1 from the space from the space xx00+span{r+span{r00,Ar,Ar00,A,A22rr00,…,A,…,Aiirr00} which minimizes the } which minimizes the next residue 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 2) only need a matrix vector product AxAxi i per iteration. Hence per iteration. Hence
computational complexity is O(Ncomputational complexity is O(N22))
60
Suppose Ax=b converges slowly
Try PAx = Pb for some P (left pre-conditioner matrix)
If PA = I then convergence happens in one stephowever P=A-1 is VERY hard to compute
If PA ≈ I then we hope convergence happens in “few” steps
Any general idea for picking P?
:such that ~
Pick AAA
~ a)
factor!or invert easy to is ~
b) A1~
:onerPreconditi AP
e.g. if A is diagonally dominantits diagonal is: - a good approximation of A- and easy to invert
)(diag ~
AA
Linear System SolutionLinear System SolutionPreconditioners for iterative methodsPreconditioners for iterative methods
61
Integral Equation Preconditioning
1
0
0diagonerPreconditi _____
(Jacobi)oner Preconditi Diagonal ------
onerpreconditi No -.-.-.-
TM
j
PLjR
M
62 62
Solution technique Computational Complexity
LU decompositionDense: O(N3) time, O(N2) memory
e.g. 10months, 80GB, for N=100,000
Iterative methods + “fast” matrix-vector product
O(k N log N) time and memorye.g. 8hours, 0.3GB for N=100,000 k=10
Iterative methods
Bottleneck: matrix-vector productO(k N2) time and memory
e.g. 7days, 80GB, for N=100,000 k=10
bxA
Computational Complexity (time and memory)Computational Complexity (time and memory)
63
OverviewOverview
• Formulation of Parasitic Extraction Problems:Formulation of Parasitic Extraction Problems:– Capacitance Extraction (electrostatic)Capacitance Extraction (electrostatic)
– Inductance Extraction (Magneto-Quasi-Static MQS)Inductance Extraction (Magneto-Quasi-Static 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 detailsIntegral equation solvers in details• basis functionsbasis functions• equation testing (collocation vs. Galerkin)equation testing (collocation vs. Galerkin)• linear system solution (direct vs. iterative methods)linear system solution (direct vs. iterative methods)• fast matrix-vector products (eg. fastmultipole, pFFT)fast matrix-vector products (eg. fastmultipole, pFFT)• example: FastMaxwell a EMQS/Fullwave solver with pFFTexample: FastMaxwell a EMQS/Fullwave solver with pFFT
– Current Field Solvers Research DirectionsCurrent Field Solvers Research Directions
64
Fast-Multipole: Simplified ExampleFast-Multipole: Simplified Example
31
51
41
31
21
21
161
61
51
41
31
21
18.3
1
18.3
Example: Thin Metal Strip
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
Piecewise ConstantBasis Function
Structure: Diagonals (Toeplitz)
1
1
j
jj Sx
Sxx
0
1
1,66,1 5
16 Panel Area
61
Axx
Acc
4
16,2 A
8.32 1,11,1 AA
,
i jc centr
j
id
i
o
Panel Area
x xA
centroid collocationwith one point quadrature
65
Use Iterative methods: need matrix vector product
The cost of the entire matrix-vector product is O(N ·log2N)
... provided we can get the clusters cheaply.
w1 w2 w3 w4 w5 w6 w7 w8 w9 w10 w11 w12 w13 w14 w15 w16
N = 16
5 products4 sums≈ O(log2N)
16
2
1
w
w
w
A
16151
431
321
211 18.3 wwwwwx
5.115.55.21
8.3 1611109876543211
wwwwwwwwwwwwx
Fast-Multipole: Simplified ExampleFast-Multipole: Simplified Example
Find σ(x) on strip ↔ Find weights w1, w2, … w16 (charge on each panel)
Assume Ψ(x) = 1 given everywhere on the metal strip
66
Fast-Multipole: Simplified ExampleFast-Multipole: Simplified Example
8 sums
w1 w2 w3 w4 w5 w6 w7 w8 w9 w10 w11 w12 w13 w14 w15 w16
w1 + w2 w3 + w4 w5 + w6 w7 + w8 w9 + w10 w11 + w12 w13 + w14 w15 + w16
w1 + w2 + w3 + w4 w5 + w6 + w7 + w8 w9 + w10 + w11 + w12 w13 + w14 + w15 + w16
w1 + w2 + w3 + w4 + w5 + w6 + w7 + w8 w9 + w10 + w11 + w12 + w13 + w14 + w15 + w16
4 sums
2 sums
14 sums
≈ O(N) sums
67
Fast-Multipole: Simplified ExampleFast-Multipole: Simplified Example
5.105.55.32
1
1
18.3
1
1 1611109876543212
wwwwwwwwwwwwx
5.65.32
18.3
5.25.516131211
109876541
8wwww
wwwwwwww
x
w1 w2 w3 w4 w5 w6 w7 w8 w9 w10 w11 w12 w13 w14 w15 w16
How do we use those sums?
w1 w2 w3 w4 w5 w6 w7 w8 w9 w10 w11 w12 w13 w14 w15 w16
Each test point requires O(log2N) → total cost O(N · log2N)
68
N
N
N N2
N
69
Fast-Multipole: Multipole representationFast-Multipole: Multipole representation
R
1 Potential
2
1 Potential
R
4
1 Potential
R
Monopole Single charge in center of cluster with sum of all chargesj = 1
DipoleTwo Chargesj = 2
QuadrapoleFour Chargesj = 4
70
N
N
71
72
N
N2
N
73
What if we need to solve a different equation?What if we need to solve a different equation?
022
xx
exxG
xxj
,Can use multipole expansions but every time I change the Green function I need to come up with multipole expansions.
Helmholtz Equation (Full Wave Equation)
Fast Multipole is UNFORTUNATELYGreen Function dependent!
02 Laplace Equation (Capacitance Extraction)
xx
xxG
1,
74
Precorrected FFT: A Simplified ExamplePrecorrected FFT: A Simplified Example
Example: Thin Metal Strip
Recognize Discrete Convolution Sum
Toeplitz
h is the unit sample response
wj Ψih[ ]
W(eiω) Ψ(eiω)H(e iω)
FFT
= W(eiω) H(e iω)
FFT –1
The convolution can be calculated efficiently using 3 FFT [O(N log2N)]
This works only if G(x,x') = G(|x – x'|) translation invariant
d
jjiji Awx
1,
51
4151
4151
41
ij
h
jiji
ji AAjixx
AreaA
ji
,,1
hwhwxd
jjiji
1
1 2 3 4 5 6 d1
1
FFT
75
P-FFT matrix vector product
Problem: solve iteratively Aw=Ψ
At each iteration evaluate matrix- vector products Aw using the following 6 steps: Grid generation Projection Convolution Interpolation Direct computation Pre-correction
76
P-FFT matrix vector product
Problem: solve iteratively Aw=Ψ
At each iteration evaluate matrix- vector products Aw using the following 6 steps: Grid generation Projection Convolution Interpolation Direct computation Pre-correction
77
P-FFT matrix vector product
Problem: solve iteratively Aw=Ψ
At each iteration evaluate matrix- vector products Aw using the following 6 steps: Grid generation Projection Convolution Interpolation Direct computation Pre-correction
Calculate potentials on grid pointsdue to charges on grid points with FFT O(nO(n22)) O(n log O(n log
n)n)
78
P-FFT matrix vector product
Problem: solve iteratively Aw=Ψ
At each iteration evaluate matrix- vector products Aw using the following 6 steps: Grid generation Projection Convolution Interpolation Direct computation Pre-correction
79
P-FFT matrix vector product
Problem: solve iteratively Aw=Ψ
At each iteration evaluate matrix- vector products Aw using the following 6 steps: Grid generation Projection Convolution Interpolation Direct computation Pre-correction
80
P-FFT matrix vector product
Problem: solve iteratively Aw=Ψ
At each iteration evaluate matrix- vector products Aw using the following 6 steps: Grid generation Projection Convolution Interpolation Direct computation Pre-correction
81
OverviewOverview
• Formulation of Parasitic Extraction Problems:Formulation of Parasitic Extraction Problems:– Capacitance Extraction (electrostatic)Capacitance Extraction (electrostatic)
– Inductance Extraction (Magneto-Quasi-Static MQS)Inductance Extraction (Magneto-Quasi-Static 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 detailsIntegral equation solvers in details• basis functionsbasis functions• equation testing (collocation vs. Galerkin)equation testing (collocation vs. Galerkin)• linear system solution (direct vs. iterative methods)linear system solution (direct vs. iterative methods)• fast matrix-vector products (eg. fastmultipole, pFFT)fast matrix-vector products (eg. fastmultipole, pFFT)• examples of integral equation solversexamples of integral equation solvers
– Current Field Solvers Research DirectionsCurrent Field Solvers Research Directions
82
Electromagnetic Integral Equation SolversCode Formu-
lationAnalysis Substrate/
dielectricsExtract Acceleration Public
domain
IES3
[Kapur97]
Surface EQS Green’s Function
C SVD Compression
No
FastCap
[Nabors91]
Surface EQS Green’s Function
C Fast-Multipole Yes
M.I.T.
FastHenry
[Kamon94]
Volume MQS None R, L Fast-Multipole Yes
M.I.T.
ASITIC
[Niknejad97]
Volume MQS Simplified GF
R, L none Yes
EMX
[Kapur04]
Surface Fullwave Dyadic GF Z Fast-Multipole No
EMSurf
[IBM]
Surface Fullwave None Z P-FFT Yes
FastImp
[Zhu03]
Surface Fullwave None Z P-FFT Yes
M.I.T.
FastMaxwell
[Moselhy07]
Volume EMQS +
Fullwave
Dyadic GF Z P-FFT Yes
M.I.T.
83
+ + ++ + + + + + +J
J J
J
FastMaxwell: MPIE Formulation
0
ˆ
r
j
J
n J
2,S
G r r r d r
3,A
V
j G r r r d r
J
J
Current/charge conservation
Charge-voltage relation
Resistive term Magnetic coupling
AB
+ ++ + ++ + + + + + + +++ + ++
Dyadic/scalar Green’s
functions for substrate
84
Piece-Wise Constant Basis FunctionsPEEC [Ruehli 74]
Volume filaments carrying constant
current
3,A
V
j G r r r d r
J
J
( ) F FR j L I V
85
Discretization [Ruehli 74]
0
0 P
F
P
F
P q
R j L I V
Volume filaments carrying constant
current
Surface Panels carrying
constant charge
2,S
G r r r d r p pP q ( ) F FR j L I V
86
Mesh Analysis [Kamon 97]
Imposing current conversation by writing KVL
0
0T
m m
R j L
I VPM
j
M
Mesh Matrix
A x b=
87
Integral Equation Preconditioning
1
0
0diagonerPreconditi _____
(Jacobi)oner Preconditi Diagonal ------
onerpreconditi No -.-.-.-
TM
j
PLjR
M
88
FastMaxwell validation against measurements on a FastMaxwell validation against measurements on a fabricated RF inductor [El Moselhy Daniel DAT07]fabricated RF inductor [El Moselhy Daniel DAT07]
• Piecewise constant basis + Galerkin • PFFT matrix vector product O(NlogN)• can handle tens of coupled RF inductors
Fabricated and measuredRF inductors to verifythe field solver
89
FastMaxwell performance on large structures [El Moselhy, Daniel DATE07]
Structure Num. unknowns Memory in (MB) Time
Inductor Array 128, 033 2.5GB 3 hours
Stacked Inductor Array 139, 000 3GB 3 hours
30X30 grid 330,000 6GB 8 hours
On public domain: www.rle.mit.edu/cpg/fastmaxwell.htm
90
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: FastMaxwell a EMQS/Fullwave solver with pFFTExample: FastMaxwell a EMQS/Fullwave solver with pFFT
– Current Field Solvers Research DirectionsCurrent Field Solvers Research Directions
91
Step 1. Interconnect Field Solvers
DeterministicSolvers
FASTCAP91(fastmultipole),
FRW92(Floating
Random Walk)
IES397 (SVD)
FASTHENRY94(fastmultipole) FASTIMP05
(pFFT),
EMSurf IBM(pFFT)
EQS(capacitance
electriccoupling)
MQS(inductance
magneticcoupling)
EMQS andFullwave
(full imped.EM coupling)
Substratecoupling
and losses
FASTMAXWELL (pFFT)Daniel DATE07 best paper nomin.
ASITIC97 (no acceleration),
92
How do we efficiently compute the capacitances of ALL these configurations?
• The different lines correspond to different settings for lithographic dose and focus
• All patterns are topologically similar but metrically different
On/Off-chip Variations
93
Step 1. Interconnect Field Solvers
DeterministicSolvers
FASTCAP91(fastmultipole),
FRW92(Floating
Random Walk)
IES397 (SVD)
FASTHENRY94(fastmultipole) FASTIMP05
(pFFT),
EMSurf IBM(pFFT)
VariationalSolvers
Adjoint SensitivityWang97,
EQS(capacitance
electriccoupling)
MQS(inductance
magneticcoupling)
EMQS andFullwave
(full imped.EM coupling)
Substratecoupling
and losses
FASTMAXWELL (pFFT)Daniel DATE07 best paper nomin.
ASITIC97 (no acceleration),
(in red our contributions)
94
Variational Field Solvers
bxA
Field Solvers discretize Field Solvers discretize geometry and produce geometry and produce large linear systemlarge linear system
Field SolversField Solvers
p p
1
surface
x dx x
x S
Wcross section
,...),( hW ,...),( hW
95
Finite Difference Sensitivity Analysis e.g. for capacitance extraction
bpxpA )()( Decouple random variables
(SVD or Principal Component Analysis)Lp
bxA )()(
)()( xdC T the capacitance is just the sum of some charges
dx
xdC T )()( 0
Sensitivity Matrix
dC
C
)( 0
i
iiT
id
xedxd
C
)()ˆ( 00 approximate with finite difference
Advantages: very simple to implementDisadvantages: very expensive (need to solve N+1 systems)
bedxedA iiii )ˆ()ˆ( 00
96
Adjoint Sensitivity Analysis [Wang97] e.g. for capacitance extraction
bpxpA )()( Decouple random variables
(SVD or Principal Component AnalysisLp
bxA )()(
)()( xdC T the capacitance is just the sum of some charges
dx
xdC T )()( 0
0)()( 00
x
AxA
bxA )()( differentiate
)()( 01
0
xA
Ax
dxA
AxdC T )()()()( 01
00
dxA
AdxdC TT )()()()( 01
00
T
dA T )( 0solvetypically availableanalytically
Only need TWO system solves: bxA )()( 00 dA T )( 0
97
Step 1. Interconnect Field Solvers
DeterministicSolvers
FASTCAP91(fastmultipole),
FRW92(Floating
Random Walk)
IES397 (SVD)
FASTHENRY94(fastmultipole) FASTIMP05
(pFFT),
EMSurf IBM(pFFT)
VariationalSolvers
Adjoint SensitivityWang97, FRW specialized
Green functionsDaniel ICCAD08
EQS(capacitance
electriccoupling)
MQS(inductance
magneticcoupling)
EMQS andFullwave
(full imped.EM coupling)
Substratecoupling
and losses
FASTMAXWELL DATE07 (pFFT)best paper nomin.
FRW Recycling Daniel ICCAD08
ASITIC97 (no acceleration),
98
Capacitance Using Gauss Theorem
12)( CdnEQ
E
1 2
3
Gaussian Surface
6
54
78
• C12 can be calculated as the charge on the Gaussian surface around 1 when V1=V3=0V and V2=1V
99
A Standard NON-variation aware Capacitance Method: Floating Random Walk (FRW) [Iverson92]
1 2
3
Gaussian Surface
111, drrrrGr
22211 , drrrrGr
33322 , drrrrGr
44433 , drrrrGr
55544 , drrrrGr
554521211 ,,, rrrGdrrrGdrrrGdrr
6
54
78
100
The majority of the paths are not affected by dimension variations: they can be recycled! [Moselhy08]
1 2
3
Gaussian Surface
6
54
78
101
1
3
2
Gaussian Surface
Full path recycle and continuation for shrinking path-termination-conductors [Moselhy08]
6
54
78
102
1 2Gaussian Surface
Edge perturbation is not affecting contribution of THIS PATH to coupling capacitance C12, since it does not terminate on perturbed edge.
3
Paths can be fully recycled for shrinking path-limiting-conductors, or all small variations [Moselhy08]
6
54
78
103
1 2Gaussian Surface
Perturbation affects path:
need to recompute part of it.
3
Partial path recycling and continuationfor growing conductors limiting the path [Moselhy08]
6
54
78
104
Results [El Moselhy Daniel ICCAD08]
Simulation time to extract 9 configurations is less than 2x nominal time
Accuracy Speed
105
100
101
102
103
104
105
10610
-4
10-3
10-2
10-1
100
Number of Similar Configurations
No
rma
lize
d R
un
Tim
e/C
on
figu
ratio
nResults [El Moselhy Daniel ICCAD08]
Average time required for a new configuration is less that 0.1% that required for nominal configuration
extrapolated6
Simulation time to extract 100,000 configurations
is less than 50x of time for nominal configuration
(2000x speed up from fastcap)
106
On/Off-chip Variations
• Irregular geometries: On-chip • Rough-surfaces: On-package and on-board
[Courtesy of IBM and Cadence] [Braunisch06]
107
Step 1. Interconnect Field Solvers
DeterministicSolvers
FASTCAP91(fastmultipole),
FRW92(Floating
Random Walk)
IES397 (SVD)
FASTHENRY94(fastmultipole) FASTIMP05
(pFFT),
EMSurf IBM(pFFT)
VariationalSolvers
Adjoint SensitivityWang97, FRW specialized
Green functionsDaniel ICCAD08
EQS(capacitance
electriccoupling)
MQS(inductance
magneticcoupling)
EMQS andFullwave
(full imped.EM coupling)
Substratecoupling
and losses
FASTMAXWELL (pFFT)Daniel DATE07 best paper nomin.
FRW Recycling Daniel ICCAD08
StochasticSolvers
SGM Ghanem91, FASTSIES05,
Newmann Exp.Daniel EPEP07
best papernomin.
Daniel DAC08 Speedup x1000
ASITIC97 (no acceleration),
(in red our contributions)
108
1 1.5 2 2.5 3 3.5 40
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
Input Impedance
PD
F
Stochastic Field Solvers
Stochastic Field Solver
Stochastic Field Solver
Geometry of interconnect structure
Distribution describing the geometrical variations
Statistics of interconnect input impedance
-3 -2 -1 0 1 2 30
0.05
0.1
0.15
0.2
0.25
0.3
0.35
0.4
Width
PD
F
widthinput impedance
PD
F PD
F
System matrix dependent on the geometry
Unknown vector of currents and charges
bpxpA
bpApx 1
C
pCppP
H
T
5.0
1
2
5.0exp
Wcross section
109
Stochastic Galerkin Method FEM mechanics [Ghanem91]
expand in terms of orthogonal polynomials
write as a summation of same polynomials
Substitute in original equation and equate the
coefficients to compute the unknowns
need to decouple random variables
K
jjjxx
0
bpxpA
K
kkkAA
0
Lp
1LProblem 1: expensive multidimensional integral
Problem 2: very large linear system
110
Stochastic Galerkin Method for Integrated Circuit Parasitic Extraction [Daniel DAC08]
expand in terms of orthogonal polynomials
write as a summation of same polynomials
Substitute in original equation and equate the
coefficients to compute the unknowns
need to decouple random variables
K
jjjxx
0
bpxpA
K
kkkAA
0
Lp
1LProblem 1: expensive multidimensional integral
Problem 2: very large linear system
Our solutions [DAC 08]:
• problem 1: use specialized inner product
• problem 2: use Neumann expansion
111
Our Results: Accuracy Validation
• Microstrip line W=50um, L=0.5mm, H=15um
• sigma=3um, correlation length=50um
• mean: 0.0122, std (MC, SGM) = 0.001, std (New algorithm)= 0.00097
0.008 0.009 0.01 0.011 0.012 0.013 0.014 0.015 0.016 0.017 0.0180
50
100
150
200
250
300
350
400
450
500
DC Resistance in
Prob
abilit
y D
ensi
ty F
unct
ion
New Algorithm
Monte Carlo
SFE + Thm. 1SGM +
112
Results: Complexity Validation
Example TechniqueProperties for 5%
accuracyMemory Time
Long Microstrip line
DC Only
400 unknowns
Monte Carlo
Neumann*
SGM
New Algorithm
10, 000
2nd order
96 iid, 4753 o.p.
96 iid, 4753 o.p.
1.2 MB
1.2 MB
(72 GB)
1.2 MB
2.4 hours
0.25 hours
-
0.5 hours
Transmission Line
10 freq. points
800 unknowns
Monte Carlo
Neumann*
SGM
New Algorithm
10, 000
2nd order
105 iid, 5671 o.p.
105 iid, 5671 o.p.
10 MB
10 MB
(300 TB)
10 MB
16 hours
24 hours
-
7 hours
Two-turn Inductor
10 freq. points
2750 unknowns
Monte Carlo
Neumann*
SGM
New Algorithm
10, 000
2nd order
400 iid, 20604*
400 iid, 20604*
121 MB
121 MB
(800 PB)
121 MB
(150 hours) X 4p
(828 hours) X 4p
-
8 hours X 4p
113
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.
114
SummarySummary
• 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: FastMaxwell a EMQS/Fullwave solver with pFFTExample: FastMaxwell a EMQS/Fullwave solver with pFFT
– Current Field Solvers Research DirectionsCurrent Field Solvers Research Directions