compact device modeling using velilog-a and adms · 1000 1960 1970 1980 1990 2000 2010 no. of model...

Post on 29-Aug-2018

215 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

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 GrabinskiLaurent.Lemaitre@motorola.com

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

top related