Simulating MicroElectroMechanical Systems
Transcript of Simulating MicroElectroMechanical Systems
SimulatingMicr oElectroMechanical Systems
David Bindel
UC Berkeley, CS Division
Simulating MicroElectroMechanical Systems – p.1/30
Overview
Simulation: motivations and approaches
Introducing SUGAR
Using SUGAR
Ongoing work
Conclusion
Simulating MicroElectroMechanical Systems – p.2/30
Simulation: What?
Process simulation (technology CAD)
Device simulation
System simulation
Simulating MicroElectroMechanical Systems – p.3/30
Simulation: Why?
Test “what if” ideas and initial designs
Design verification, fine tuning, and parasiticdiscovery
Different objectives mean different speed andaccuracy requirements
Simulating MicroElectroMechanical Systems – p.4/30
Simulation: How?
Solve continuum equations (finite elements,finite differences, boundary elements)
Solve simplified equations of beam and platetheory (finite elements, etc)
Solve network equations (e.g. modified nodalanalysis)
These approaches are not mutually exclusive!
Simulating MicroElectroMechanical Systems – p.5/30
SUGAR: System simulation
Goal: “Be SPICE to the MEMS world”
Fast enough for early design stages
Simple enough to attract users
Capable of simulating interesting coupledphysics
Simulating MicroElectroMechanical Systems – p.6/30
SUGAR group
Faculty Grad students Undergrads
A. Agogino D. Bindel W. KaoZ. Bai J.V. Clark A. KuoJ. Demmel D. Garmire E. ZhuS. Govindjee B. JamshidiM. Gu R. KamalianK.S.J. Pister S. Lakshmin
J. NieN. Zhou
Simulating MicroElectroMechanical Systems – p.7/30
Relatedwork
Nodas from CMU
Coventorware
SPICE, CADENCE, HDL-A, ...
ANSYS, ABAQUS, FEAP, ...
Simulating MicroElectroMechanical Systems – p.8/30
What canwemodel?
Simulating MicroElectroMechanical Systems – p.9/30
SUGAR architecture
System assembly
Models
Solvers
Matlab Web Library
Sensitivity analysis
Static analysis
Steady−state analysis
Transient analysis
Results
Netlist
Interfaces
Simulating MicroElectroMechanical Systems – p.10/30
Netlist syntax
mybeam beam2d p1 [A B] [l=100u w=2u]
mybeam is the element name (optional)
beam2d specifies the 2-d beam model
p1 specifies the properties of the POLY1MUMPS layer
A and B are the beam end-nodes
[l=100u w=2u] specifies the length (100microns) and width (2 microns).
Simulating MicroElectroMechanical Systems – p.11/30
Parameterization
param nfingers = 10
nfingers can be set by user at load time
If no value explicitly provided, use ten fingers
Simulating MicroElectroMechanical Systems – p.12/30
Subnetsand heirarchical design
Subnets are parameterized components
Subnet calls look like built-in model calls
Matches design heirarchies
Can put commonly-used subnets in a library
Simulating MicroElectroMechanical Systems – p.13/30
Subnet example
subnet XMass [A B] [finger_len=*]
[
b1 beam3d parent [A b1] [l=25u w=50u
h=6u oz=-deg(90)]
b2 beam3d parent [b1 B ] [l=25u w=50u
h=6u oz=-deg(90)]
b3 beam3d parent [b1 b2] [l=finger_len w=2u
h=6u oz= deg(0) ]
b4 beam3d parent [b1 b3] [l=finger_len w=2u
h=6u oz=deg(180)]
]
Simulating MicroElectroMechanical Systems – p.14/30
Arra ys
XSusp p1 [c(1)] [susp_len=200u]
for k=1:nfingers [
mass(k) XMass p1 [c(k) c(k+1)] [finger_len=100u]
]
XSusp p1 [c(11)] [susp_len=200u oz=pi]
Suspensions at either end
nfingers comb-finger units as defined above
Simulating MicroElectroMechanical Systems – p.15/30
Result: simplified ADXL-50
−3 −2 −1 0 1 2 3
x 10−4
−5
−4.5
−4
−3.5
−3
−2.5
−2
−1.5
−1
−0.5
0
x 10−4
X − horizontal [m]
Y −
ver
tical
[m
]
Simulating MicroElectroMechanical Systems – p.16/30
Typesof analysis
Transient response
Static equilibrium (DC analysis)
Steady-state response
Mode shape determination
Simulating MicroElectroMechanical Systems – p.17/30
Example: Modal analysis
−2.5 −2 −1.5 −1 −0.5 0 0.5 1 1.5 2 2.5
x 10−4
−2
−1
0
1
2x 10
−4
X − horizontal [m]
Y −
ver
tical
[m
]
−2.5 −2 −1.5 −1 −0.5 0 0.5 1 1.5 2
x 10−4
−1.5
−1
−0.5
0
0.5
1
1.5
2x 10
−4 Mode 3, frequency 22295.086717 Hz
X − horizontal [m]
Y −
ver
tical
[m
]
Dogbone suspension for comb drive resonator
Simulating MicroElectroMechanical Systems – p.18/30
Using the Matlab interface
0 2 4 6 8 10 12−2
−1.8
−1.6
−1.4
−1.2
−1
−0.8
−0.6
−0.4
−0.2
0x 10
−6
0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8 2
x 10−4
−8
−6
−4
−2
0
2
4
6
x 10−5
X − horizontal [m]
Y −
ver
tical
[m
]
dq = [];
for k=1:12
param.V = k;
net = cho_load(’beamgap2b.net’, param);
dq = cho_dc(net, dq);
tip(k) = cho_dq_view(dq, net, ’c’, ’y’);
end
Simulating MicroElectroMechanical Systems – p.19/30
SUGAR 3.0
SUGAR 2.0: Matlab core, C add-ons
SUGAR 3.0: C core, Matlab interfaces
Release target: some time this month?
Web service using 3.0 should be more robust
Can use SUGAR 3.0 even without Matlab
Simulating MicroElectroMechanical Systems – p.20/30
M&MEMS: SUGAR on the Web
http://sugar.millennium.berkeley.edu/
Simulating MicroElectroMechanical Systems – p.21/30
M&MEMS: Pros and cons
Pro: Only need a web browser with Java
Pro: Fixes can be applied rapidly
Pro: Potential parallelism
Con: Less flexibility than Matlab environment
Con: Too many failure points in initial version
Con: Poor response time in initial version
Simulating MicroElectroMechanical Systems – p.22/30
M&MEMS: Lessons fr om EE245
Used in Introduction to MEMS course, Fall 01(Pister)
Problems with both hardware and software
Matlab too heavyweight in this environment
Students used it anyhow!
Simulating MicroElectroMechanical Systems – p.23/30
Matisse: Integrating measurement
Set of optical measurement tools
Make available on the web as a “virtual lab”
Matisse team: R. Kant, R. Muller, C. Rembe,M. Young
Simulating MicroElectroMechanical Systems – p.24/30
Matisse: Closing the designloop
Simulating MicroElectroMechanical Systems – p.25/30
Designsynthesisand optimization
Genetic algorithms to evolve new designs
Specializing designs from a library
N. Zhou, B. Zhu, A. Agogino, and K. Pister:"Evolutionary Synthesis of MEMS(Microelectronic Mechanical Systems)Design" (ANNIE 2001). First Runner-up forNovel Smart Engineering System DesignAward.
Simulating MicroElectroMechanical Systems – p.26/30
Model reduction
Used to create macromodels from detaileddevice simulations
Also used to reduce large system models
Need to handle nonlinear effects
Z. Bai is the local expert on ROM
Simulating MicroElectroMechanical Systems – p.27/30
Impr ovedmodels
Geometric nonlinear beams
Torsion-bending coupling for single-crystal Si
Contact
More coupling effects: electrothermal,thermomechanical, electromechanical, ...
Plates, hinges, other mechanics
Improved damping models
Improved thermal models
Simulating MicroElectroMechanical Systems – p.28/30
Impr ovednumerics
Incorporate current technology: SuperLU,DASSL and IDA, etc.
Improved time integration
Scaling and improved error measures
Continuation for improved static analysis andstudy of bifurcations
Sensitivity analysis
Incorporate parallel techniques whereappropriate
Simulating MicroElectroMechanical Systems – p.29/30
Conclusions
SUGAR is already a useful design / educationtool
Lots of activity to extend SUGAR and improverobustness
Friendly users appreciated!
Simulating MicroElectroMechanical Systems – p.30/30