MIXDES’2001Motorola Document Classification, Rev 2002.06#1
Motorola, the Stylized M, and all other trademarks indicated as such herein are trademarks of Motorola, Inc. ® Reg. U.S. Pat. & Tm. Off.All other product or service names are the property of their respective owners. © Motorola, Inc. 2001. All rights reserved.
Laurent Lemaitre, Colin Mc Andrew, Wladek [email protected]
Compact Device Modeling UsingVelilog-A and ADMS
Motorola, Geneva Modeling Center
207 route de Ferney
CH-1218 Le Grand Saconnex
MIXDES’2001Motorola Document Classification, Rev 2002.06#2
Motorola, the Stylized M, and all other trademarks indicated as such herein are trademarks of Motorola, Inc. ® Reg. U.S. Pat. & Tm. Off.All other product or service names are the property of their respective owners. © Motorola, Inc. 2001. All rights reserved.
Developments of the Compact ModelsDevice Model Implementation TodayADMS - Device Model GeneratorOverview of the Device Model GeneratorExample of Model GenerationImplementation of EKV 2.6 in ADSCurrent Status - AvailabilityConclusion
Compact Device Modeling Using Velilog-A and ADMS
Outline:
MIXDES’2001Motorola Document Classification, Rev 2002.06#3
Motorola, the Stylized M, and all other trademarks indicated as such herein are trademarks of Motorola, Inc. ® Reg. U.S. Pat. & Tm. Off.All other product or service names are the property of their respective owners. © Motorola, Inc. 2001. All rights reserved.
Developments of the Compact Models
• Number of DC model parameters vs. year of the model introduction– Significant growth of the parameter number that includes geometry (W/L) scaling– Most recent versions of the EKV, HiSIM, MM, PCIM and SP models are included
Years
1
10
100
1000
1960 1970 1980 1990 2000 2010
No
. of
Mo
del
Par
amet
ers
LEVEL1
LEVEL2
LEVEL3
BSIM
HSP28
BSIM2
BSIM3v2
BSIM3v1PCIM
MM9EKV v2.6
EKV3SP
HSP28
BSIMBSIM3v3
BSIM3v3
BSIM4BSIM3v2
BSIM2
Without scaling
Including L,W,P scaling
MM11
HiSIM
MIXDES’2001Motorola Document Classification, Rev 2002.06#4
Motorola, the Stylized M, and all other trademarks indicated as such herein are trademarks of Motorola, Inc. ® Reg. U.S. Pat. & Tm. Off.All other product or service names are the property of their respective owners. © Motorola, Inc. 2001. All rights reserved.
What is a Device Model?
Spice netlists+Process libraries (model parameters)
SimulationResultsADMS
or Manually
Built-in Device Model EquationsVBIC, EKV, SP, MOSCAP, R3, ..
DESIGNER:
PROGRAMMER:
DEVICE MODELING ENGINEER:
ElectricalCircuit
SimulatorSpectre, ADS, Mica ...
Model c-code
MIXDES’2001Motorola Document Classification, Rev 2002.06#5
Motorola, the Stylized M, and all other trademarks indicated as such herein are trademarks of Motorola, Inc. ® Reg. U.S. Pat. & Tm. Off.All other product or service names are the property of their respective owners. © Motorola, Inc. 2001. All rights reserved.
Model Implementation Today
Device Modeling Engineer:provides equations of new modelto programmer. No standard.
Programmer:hand-codes the model in source code of the electrical circuit
simulator (most of the time the language is C). No standard.
• C code must comply with the Simulator Programming Interface. Much coding needs to be done again for each simulator.
• C code involves the manual computation and coding of partial derivatives. This process is tedious and error-prone.
• Feedback to the Device Modeling Engineer is made difficult. C-code is hard to read.
• The process is a barrier to model maintenance and enhancement.
MIXDES’2001Motorola Document Classification, Rev 2002.06#6
Motorola, the Stylized M, and all other trademarks indicated as such herein are trademarks of Motorola, Inc. ® Reg. U.S. Pat. & Tm. Off.All other product or service names are the property of their respective owners. © Motorola, Inc. 2001. All rights reserved.
• ADMS is a Code Generator from a high-level language to ready-to-compile C code for simulators
• ADMS uses Verilog-AMS as a description language for devicemodels. Verilog-AMS is a behavioral description language for mixed-signal electrical circuits.• Verilog-AMS code easy to read - no extra code specific to simulators.
• Model can be easily and completely tested prior implementation!
• ADMS uses a subset of XML as an intermediate language betweenVerilog-AMS and Simulator Programming Interfaces.• Simplifies development of new features of ADMS and support of multiple
simulators
ADMS Approach
MIXDES’2001Motorola Document Classification, Rev 2002.06#7
Motorola, the Stylized M, and all other trademarks indicated as such herein are trademarks of Motorola, Inc. ® Reg. U.S. Pat. & Tm. Off.All other product or service names are the property of their respective owners. © Motorola, Inc. 2001. All rights reserved.
Parsing XMLInternaldata
Code Generator Other applications
Documentation,Circuit Test Benches
Testingprior implementation
ADMS Model Generator
C codeMica, Spectre,Hsim, ADS, …
Verilog-AMSModel Code
DTD basedvalidation
STANDARD 1: MODEL LEVEL
STANDARD 2:SIMULATOR LEVEL
MIXDES’2001Motorola Document Classification, Rev 2002.06#8
Motorola, the Stylized M, and all other trademarks indicated as such herein are trademarks of Motorola, Inc. ® Reg. U.S. Pat. & Tm. Off.All other product or service names are the property of their respective owners. © Motorola, Inc. 2001. All rights reserved.
Example – Symbolic ViewBipolar Device Model
Collector
Base
Emitter
• Branch assignment in the HBT model
MIXDES’2001Motorola Document Classification, Rev 2002.06#9
Motorola, the Stylized M, and all other trademarks indicated as such herein are trademarks of Motorola, Inc. ® Reg. U.S. Pat. & Tm. Off.All other product or service names are the property of their respective owners. © Motorola, Inc. 2001. All rights reserved.
Example – Verilog-AMS
‘define NPN +1‘define PNP –1module BIP (c,b,e);// Nodes input c,b; // input nodes output e;// output nodes electrical c,b,e; // all electrical// Branches branch (b,c) bc; branch (c,e) ce; branch (e,c) ec; branch (b,e) be;
MIXDES’2001Motorola Document Classification, Rev 2002.06#10
Motorola, the Stylized M, and all other trademarks indicated as such herein are trademarks of Motorola, Inc. ® Reg. U.S. Pat. & Tm. Off.All other product or service names are the property of their respective owners. © Motorola, Inc. 2001. All rights reserved.
Example – Verilog-AMS (cont.)// Parameters parameter real is = 1.0e-16; parameter real bf = 100; parameter real br = 1; parameter real nf = 1.0; parameter real nr = 1.0; parameter integer type = ‘NPN;// Variables real Tdev, Vtv; real Ifi, Ibf; real Iri, Ibr; real argf,expf;
MIXDES’2001Motorola Document Classification, Rev 2002.06#11
Motorola, the Stylized M, and all other trademarks indicated as such herein are trademarks of Motorola, Inc. ® Reg. U.S. Pat. & Tm. Off.All other product or service names are the property of their respective owners. © Motorola, Inc. 2001. All rights reserved.
Example – Verilog-AMS (cont.)
analog begin // Analog section Tdev = $temperature; Vtv = 1.380662e-23 * Tdev / 1.602189e-19;
if ( type == ‘NPN ) begin argf = V(be) / ( nf * Vtv );
end else if ( type == ‘PNP ) begin ...
expf = exp(argf); Ifi = is *(expf-1.0); Ibf = Ifi/bf; begin I(ce) <+ Ifi; // FORWARD Transport C-E I(be) <+ Ibf; // FORWARD Diode B-E end
MIXDES’2001Motorola Document Classification, Rev 2002.06#12
Motorola, the Stylized M, and all other trademarks indicated as such herein are trademarks of Motorola, Inc. ® Reg. U.S. Pat. & Tm. Off.All other product or service names are the property of their respective owners. © Motorola, Inc. 2001. All rights reserved.
Example – Code for Spectre
BIPOLARTRANSISTOR
inVERILOG-AMS
Ready-to-compileC code
Run admsSpectreSPECTREinterface.h
BIPdefs.hBIPinitParameter.cBIPloadJacobian.cBIPevaluateStatic.c
BIPevaluateDynamic.c
MIXDES’2001Motorola Document Classification, Rev 2002.06#13
Motorola, the Stylized M, and all other trademarks indicated as such herein are trademarks of Motorola, Inc. ® Reg. U.S. Pat. & Tm. Off.All other product or service names are the property of their respective owners. © Motorola, Inc. 2001. All rights reserved.
Example – Test-bench Circuit
• Automatically Generated by ADMS
1 V
1 V
1 kOhm
1 kOhm
1 Ohm
Cint
Eint
Bint
MIXDES’2001Motorola Document Classification, Rev 2002.06#14
Motorola, the Stylized M, and all other trademarks indicated as such herein are trademarks of Motorola, Inc. ® Reg. U.S. Pat. & Tm. Off.All other product or service names are the property of their respective owners. © Motorola, Inc. 2001. All rights reserved.
Example – Comparisons
Using mica1.2.0DC analysisNote: temp set to 27v#Bint = 650.4275mVv#Cint = 921.3462 mVv#Eint = 79.00338 mVvb#i = -349.572 uAvc#i = -78.6538 mA
Ads(ver. "170")© Agilent TechnologiesDC Operating Point: V(Bint) = 650.428 mV V(Cint) = 921.346 mV V(Eint) = 79.0034 mV vb.i = -349.572 uA vc.i = -78.6538 mA
spectre (ver. 4.4.3).DC Analysis `opPoint'Operating at T = 27 C.V(Bint) = 650.428 mVV(Cint) = 921.346 mVV(Eint) = 79.0034 mVI(vb:p) = -349.572 uAI(vc:p) = -78.6538 mA
Spectre Mica ADS
• ADMS generated model yields numerically identical results
MIXDES’2001Motorola Document Classification, Rev 2002.06#15
Motorola, the Stylized M, and all other trademarks indicated as such herein are trademarks of Motorola, Inc. ® Reg. U.S. Pat. & Tm. Off.All other product or service names are the property of their respective owners. © Motorola, Inc. 2001. All rights reserved.
The ADS EKV code was generated by ADMS tool using the EKVVerilog-AMS description: legwww.epfl.ch/ekv/verilog-a
Example - EKV ADS Implementation
MIXDES’2001Motorola Document Classification, Rev 2002.06#16
Motorola, the Stylized M, and all other trademarks indicated as such herein are trademarks of Motorola, Inc. ® Reg. U.S. Pat. & Tm. Off.All other product or service names are the property of their respective owners. © Motorola, Inc. 2001. All rights reserved.
Work in Progress
• Models available in Verilog-AMS:– R3 (Three Terminal Resistor)– MOSCAP (MOS varactor)– VBIC with self-heating (BJT)– SSIM (MOSFET, Motorola)– SP (MOSFET, PSU Prof. Gildenblatt)– EKV 2.6 (MOSFET, LEG-EPFL)
• All models are available in ADS (Agilent), Spectre(Cadence) and Mica (internal Motorola simulator)
• Some good results obtained with HSIM• Looking into: Nanosim (Synopsys) and Eldo (Mentor)
MIXDES’2001Motorola Document Classification, Rev 2002.06#17
Motorola, the Stylized M, and all other trademarks indicated as such herein are trademarks of Motorola, Inc. ® Reg. U.S. Pat. & Tm. Off.All other product or service names are the property of their respective owners. © Motorola, Inc. 2001. All rights reserved.
• ADMS is written in the C language
• ADMS planned to be open-source
• Will come with public domain models (R3, MOSCAP, VBIC)
• On-going discussions with semiconductor and CAD vendors, and device modelers, on the best way to manage and control ADMS open-source
Availability
MIXDES’2001Motorola Document Classification, Rev 2002.06#18
Motorola, the Stylized M, and all other trademarks indicated as such herein are trademarks of Motorola, Inc. ® Reg. U.S. Pat. & Tm. Off.All other product or service names are the property of their respective owners. © Motorola, Inc. 2001. All rights reserved.
• ADMS = automatic implementation of compact models into circuit simulators
• ADMS automatically generates efficient, robust, correct-by-construction code
• ADMS has been successfully used for the integration of new device models into Mica, Spectre, HSIM and ADS
• Compact models are defined by Verilog-AMS, a standard high-level behavioral language
Conclusion