23
MAPP: The Berkeley M odel and A lgorithm P rototyping P latform Tianshi Wang, A. Gokcen Mahmutoglu, Archit Gupta, Aadithya V. Karthik*, Jaijeet Roychowdhury EECS Department University of California, Berkeley *Sandia National Laboratories Albuquerque, NM

MAPP: The Berkeley Model and Algorithm Prototyping Platformpeople.eecs.berkeley.edu/~tianshi/talks/2017-07...Compact Modelling Provides detailed information about device operation

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: MAPP: The Berkeley Model and Algorithm Prototyping Platformpeople.eecs.berkeley.edu/~tianshi/talks/2017-07...Compact Modelling Provides detailed information about device operation

MAPP: The Berkeley Model and Algorithm Prototyping Platform

Tianshi Wang, A. Gokcen Mahmutoglu,Archit Gupta, Aadithya V. Karthik*,

Jaijeet Roychowdhury

EECS DepartmentUniversity of California, Berkeley

*Sandia National LaboratoriesAlbuquerque, NM

Page 2: MAPP: The Berkeley Model and Algorithm Prototyping Platformpeople.eecs.berkeley.edu/~tianshi/talks/2017-07...Compact Modelling Provides detailed information about device operation

T. Wang, UC Berkeley Slide 2

Compact Modelling

Provides detailed information about device operation & characteristics

Computationally intensive» EM simulation, drift-diffusion

eqns., numerical solution of PDEs, etc.

Simple enough to be incorporated in circuit simulators

Accurate enough to have predictive value for circuits

Terminal behaviour important» internal details less important

Purpose: use in circuit design» via circuit simulation

Compact Model of DeviceAnalysis/Modelling

for Individual Devices(“device simulation”)

CircuitProcess Device

Images from www.google.com/images

EDA: Electronic Design Automation

Page 3: MAPP: The Berkeley Model and Algorithm Prototyping Platformpeople.eecs.berkeley.edu/~tianshi/talks/2017-07...Compact Modelling Provides detailed information about device operation

T. Wang, UC Berkeley Slide 3

or

H. B. Palmer 1927

charge

current

capacitance

Compact Modelling

Compact Model“device-level” simulation of a capacitor(eg, finite element electrostatic)

voltage-current relationships

electrical parameter

geometrical parameters

S.L. Jang, J.S. Yuan, S.D. Yen, E. Kritchanchai, G.W. Huang “Experimental evaluation of hot electron reliability on differential Clapp-VCO” Microelectronics Reliability, Volume 53, Issue 2, February 2013, Pages 254–258

Schichman-Hodges (core)

BSIM/EKV/PSP/MVS...

s

g

d

+-

-

+

MOSFET

Page 4: MAPP: The Berkeley Model and Algorithm Prototyping Platformpeople.eecs.berkeley.edu/~tianshi/talks/2017-07...Compact Modelling Provides detailed information about device operation

T. Wang, UC Berkeley Slide 4

Simulation Algorithms

DC operating point and DC sweep small-signal AC transient: FE, BE, TRAP, LMS, GEAR, … PSS (periodic steady-state): HB, shooting noise analyses sensitivity analyses distortion analyses stochastic and statistical methods macro-modelling, MOR, “analog verification”, …

Page 5: MAPP: The Berkeley Model and Algorithm Prototyping Platformpeople.eecs.berkeley.edu/~tianshi/talks/2017-07...Compact Modelling Provides detailed information about device operation

T. Wang, UC Berkeley Slide 5

Modelling and Simulation Today motivation for MAPP

develop goodcompact models

prototype simulation algorithms

● many pitfalls:

discontinuities/smoothinesswell-posedness

● hard to debug or resolve

● problems usually discovered during simulation

you will need:

● device models: BSIM, MOS1, MOS2, … ● base algorithms: robust nonlinear solver transient, HB/shooting, …

● parsing, equation formulation, output, …

huge (waste of) effort ofre-development ofbasic capabilities

compact model developers and simulation people blame

each other

in MATLAB

A common, open-source simulation framework

Page 6: MAPP: The Berkeley Model and Algorithm Prototyping Platformpeople.eecs.berkeley.edu/~tianshi/talks/2017-07...Compact Modelling Provides detailed information about device operation

T. Wang, UC Berkeley Slide 6

Why not use SPICE? SPICE: the original open-source simulator

» de-facto standard» structure: all analyses in all models» prototyping models & algorithms: takes months to years» pain to write (even for those who can)

–e.g., shooting method (S-SPICE) To be useful: modular, well-structured, flexible

» separated models, algorithms, numerics, I/Os» simple, clean interfaces» short, easy to read, easy to modify

Page 7: MAPP: The Berkeley Model and Algorithm Prototyping Platformpeople.eecs.berkeley.edu/~tianshi/talks/2017-07...Compact Modelling Provides detailed information about device operation

T. Wang, UC Berkeley Slide 7

Excerpt from dioload.c (SPICE3)

Sensitivity analysis code AC analysis code

Transientanalysisrelated code

Page 8: MAPP: The Berkeley Model and Algorithm Prototyping Platformpeople.eecs.berkeley.edu/~tianshi/talks/2017-07...Compact Modelling Provides detailed information about device operation

T. Wang, UC Berkeley Slide 8

Glimpse: Diode Model in MAPP

● executable (in Matlab)● takes 10min to write● works in all analyses

MOD.terminalsMOD.parmsMOD.explicit_outsMOD.f: function handleMOD.q: function handle…

Page 9: MAPP: The Berkeley Model and Algorithm Prototyping Platformpeople.eecs.berkeley.edu/~tianshi/talks/2017-07...Compact Modelling Provides detailed information about device operation

T. Wang, UC Berkeley Slide 9

Glimpse: Shooting Method in MAPP

object-oriented

reuses LMS (transient) code

150 lines of code

works with all devices,circuits, domains

a pleasure to write(you too can do it)

Page 10: MAPP: The Berkeley Model and Algorithm Prototyping Platformpeople.eecs.berkeley.edu/~tianshi/talks/2017-07...Compact Modelling Provides detailed information about device operation

T. Wang, UC Berkeley Slide 10

Code Structuring of MAPP

Page 11: MAPP: The Berkeley Model and Algorithm Prototyping Platformpeople.eecs.berkeley.edu/~tianshi/talks/2017-07...Compact Modelling Provides detailed information about device operation

T. Wang, UC Berkeley Slide 11

MAPP: Compact Model Prototyping

Page 12: MAPP: The Berkeley Model and Algorithm Prototyping Platformpeople.eecs.berkeley.edu/~tianshi/talks/2017-07...Compact Modelling Provides detailed information about device operation

T. Wang, UC Berkeley Slide 12

opto-electronicdevices

MAPP: Multiphysics Support

ModSpec Core(Equations)

ElectricalElectrical

Network Interface Layer

node voltages, branch currents,

KCL, KVL

OpticalOptical

Network Interface Layer

electric fields, polarizations,

modes, wavelengths,

wave continuity, ...

MechanicalMechanicalNILNIL

SpintronicSpintronicNILNIL

BiochemicalBiochemicalNILNIL

ThermalThermalNILNIL

Page 13: MAPP: The Berkeley Model and Algorithm Prototyping Platformpeople.eecs.berkeley.edu/~tianshi/talks/2017-07...Compact Modelling Provides detailed information about device operation

T. Wang, UC Berkeley Slide 16

Optical System Modelling/Simulation Example

Page 14: MAPP: The Berkeley Model and Algorithm Prototyping Platformpeople.eecs.berkeley.edu/~tianshi/talks/2017-07...Compact Modelling Provides detailed information about device operation

T. Wang, UC Berkeley Slide 17

Multiphysics Systems

kinematic NIL: “flow”: force “potential”: position

potential/flowsystems:

magnetic NIL: “flow”: magnetic flux “potential”: magnetomotive force

thermal NIL: “flow”: power flow “potential”: temperature

Spintronic systems:

vectorized spin currentsvectorized spin voltages

Chemical reaction networks

“KCLs” at nodes have d/dt terms

rates and concentrations

Kerem Yunus Camsari; Samiran Ganguly;Supriyo Datta (2013), "Modular Spintronics Library,"https://nanohub.org/resources/17831.

Page 15: MAPP: The Berkeley Model and Algorithm Prototyping Platformpeople.eecs.berkeley.edu/~tianshi/talks/2017-07...Compact Modelling Provides detailed information about device operation

T. Wang, UC Berkeley Slide 18

LTI MOR Example in MAPPEquation formulation for

the RC line circuitExtract C/G matrices,

Arnoldi MOREquation formulation for

the reduced-order system

AC simulation AC simulation

Page 16: MAPP: The Berkeley Model and Algorithm Prototyping Platformpeople.eecs.berkeley.edu/~tianshi/talks/2017-07...Compact Modelling Provides detailed information about device operation

T. Wang, UC Berkeley Slide 19

Homotopy Analysis on Goto Paircurrents

stable

unstable

Page 17: MAPP: The Berkeley Model and Algorithm Prototyping Platformpeople.eecs.berkeley.edu/~tianshi/talks/2017-07...Compact Modelling Provides detailed information about device operation

T. Wang, UC Berkeley Slide 22

Finding Folds with Homotopy

memristor(RRAM, CBRAM, PCM...)

NC-FET

ESDsnapback

Page 18: MAPP: The Berkeley Model and Algorithm Prototyping Platformpeople.eecs.berkeley.edu/~tianshi/talks/2017-07...Compact Modelling Provides detailed information about device operation

T. Wang, UC Berkeley Slide 23

Phase-macromodel Simulation in MAPP

captures phase response nicelydetails: Bhansali/Roychowdhury, “Gen-Adler: the Generalized Adler's equation for injection locking analysis in oscillators”. Proc. ASPDAC, 2009.

Model osc.in MAPP

Simulate PSS:shooting or HB

Extract PPVs

Gen-Adler Analysis

DClocking range

TRANphase dynamics

not justelectrical ones

Observe InjectionLocking properties

Standard TRAN simulation:

Phase-based TRAN:

Page 19: MAPP: The Berkeley Model and Algorithm Prototyping Platformpeople.eecs.berkeley.edu/~tianshi/talks/2017-07...Compact Modelling Provides detailed information about device operation

T. Wang, UC Berkeley Slide 24

Simulation Algorithms in MAPP: More Examples

details: Wu/Roychowdhury, “Efficient per-element distortion contribution analysis via Harmonic Balance adjoints”. Proc. CICC 2014.

Page 20: MAPP: The Berkeley Model and Algorithm Prototyping Platformpeople.eecs.berkeley.edu/~tianshi/talks/2017-07...Compact Modelling Provides detailed information about device operation

T. Wang, UC Berkeley Slide 25

MAPP: Public Release

Open Source download: https://github.com/jaijeet/MAPP

License» primary: GPL-v3» alternative licensing available

– eg, SRC contract terms apply for SRC company use» contributors can specify their own alternative

licensing terms for their contributions

Page 21: MAPP: The Berkeley Model and Algorithm Prototyping Platformpeople.eecs.berkeley.edu/~tianshi/talks/2017-07...Compact Modelling Provides detailed information about device operation

T. Wang, UC Berkeley Slide 26

MAPP: Features Works entirely in MATLAB/Octave

» C++ version to be released» mex interfaces to link C++ devices and circuit DAEs into MATLAB

Help system (start with help MAPP)» quick start walk-through

Automatic differentiation (vecvalder)» help MAPPautodiff

Executable multiphysics device specification (ModSpec)» examples, tutorial: part of help

DC, AC, transient analyses» also noise, homotopy, HB, shooting, PPV, MOR, etc.

(initial version released at PHLOGON.eecs.berkeley.edu)

Automated testing system exercising suite of tests

Page 22: MAPP: The Berkeley Model and Algorithm Prototyping Platformpeople.eecs.berkeley.edu/~tianshi/talks/2017-07...Compact Modelling Provides detailed information about device operation

T. Wang, UC Berkeley Slide 27

MAPP: Intended Uses Developing simulation-ready device models

» including multiphysics devices, network connectivity Quickly prototyping new simulation algorithms

» hours/days to implement a new analysis– assess strengths/limitations before investing resources to

implement in “real simulators” Learning or teaching modelling/simulation

» MATLAB → broadly accessible» help system, tutorials, supporting resources

Page 23: MAPP: The Berkeley Model and Algorithm Prototyping Platformpeople.eecs.berkeley.edu/~tianshi/talks/2017-07...Compact Modelling Provides detailed information about device operation

T. Wang, UC Berkeley Slide 28

Summary

https://github.com/jaijeet/MAPP