Simulating MicroElectroMechanical Systems

30
Simulating MicroElectroMechanical Systems David Bindel UC Berkeley, CS Division Simulating MicroElectroMechanical Systems – p.1/30

Transcript of Simulating MicroElectroMechanical Systems

Page 1: Simulating MicroElectroMechanical Systems

SimulatingMicr oElectroMechanical Systems

David Bindel

UC Berkeley, CS Division

Simulating MicroElectroMechanical Systems – p.1/30

Page 2: Simulating MicroElectroMechanical Systems

Overview

Simulation: motivations and approaches

Introducing SUGAR

Using SUGAR

Ongoing work

Conclusion

Simulating MicroElectroMechanical Systems – p.2/30

Page 3: Simulating MicroElectroMechanical Systems

Simulation: What?

Process simulation (technology CAD)

Device simulation

System simulation

Simulating MicroElectroMechanical Systems – p.3/30

Page 4: Simulating MicroElectroMechanical Systems

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

Page 5: Simulating MicroElectroMechanical Systems

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

Page 6: Simulating MicroElectroMechanical Systems

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

Page 7: Simulating MicroElectroMechanical Systems

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

Page 8: Simulating MicroElectroMechanical Systems

Relatedwork

Nodas from CMU

Coventorware

SPICE, CADENCE, HDL-A, ...

ANSYS, ABAQUS, FEAP, ...

Simulating MicroElectroMechanical Systems – p.8/30

Page 9: Simulating MicroElectroMechanical Systems

What canwemodel?

Simulating MicroElectroMechanical Systems – p.9/30

Page 10: Simulating MicroElectroMechanical Systems

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

Page 11: Simulating MicroElectroMechanical Systems

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

Page 12: Simulating MicroElectroMechanical Systems

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

Page 13: Simulating MicroElectroMechanical Systems

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

Page 14: Simulating MicroElectroMechanical Systems

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

Page 15: Simulating MicroElectroMechanical Systems

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

Page 16: Simulating MicroElectroMechanical Systems

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

Page 17: Simulating MicroElectroMechanical Systems

Typesof analysis

Transient response

Static equilibrium (DC analysis)

Steady-state response

Mode shape determination

Simulating MicroElectroMechanical Systems – p.17/30

Page 18: Simulating MicroElectroMechanical Systems

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

Page 19: Simulating MicroElectroMechanical Systems

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

Page 20: Simulating MicroElectroMechanical Systems

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

Page 21: Simulating MicroElectroMechanical Systems

M&MEMS: SUGAR on the Web

http://sugar.millennium.berkeley.edu/

Simulating MicroElectroMechanical Systems – p.21/30

Page 22: Simulating MicroElectroMechanical Systems

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

Page 23: Simulating MicroElectroMechanical Systems

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

Page 24: Simulating MicroElectroMechanical Systems

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

Page 25: Simulating MicroElectroMechanical Systems

Matisse: Closing the designloop

Simulating MicroElectroMechanical Systems – p.25/30

Page 26: Simulating MicroElectroMechanical Systems

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

Page 27: Simulating MicroElectroMechanical Systems

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

Page 28: Simulating MicroElectroMechanical Systems

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

Page 29: Simulating MicroElectroMechanical Systems

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

Page 30: Simulating MicroElectroMechanical Systems

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