Qucs-S a maturing GPL software package for circuit simulation...

33
Qucs-S a maturing GPL software package for circuit simulation and compact modelling of current and emerging technology devices Mike Brinson 1 , [email protected]. Vadim Kuznetsov 2 , [email protected] 1 Centre for Communications Technology, London Metropolitan University, UK 2 Bauman Moscow Technical University, Russia Presented at the 14th MOS-AK Workshop, ESSDERC/ESSCIRC, Lausanne, September 12, 2016 1 / 33

Transcript of Qucs-S a maturing GPL software package for circuit simulation...

Page 1: Qucs-S a maturing GPL software package for circuit simulation …ael.chungbuk.ac.kr/lectures/graduate/초고주파통신... · 2019-09-21 · Qucs-S a maturing GPL software package

Qucs-S a maturing GPL software package for circuit simulationand compact modelling of current and emerging technology

devices

Mike Brinson 1, [email protected] Kuznetsov 2, [email protected]

1Centre for Communications Technology, London Metropolitan University, UK2Bauman Moscow Technical University, Russia

Presented at the 14th MOS-AK Workshop, ESSDERC/ESSCIRC,Lausanne, September 12, 2016

September 7, 2016

1 / 33

Ahn
강조
Page 2: Qucs-S a maturing GPL software package for circuit simulation …ael.chungbuk.ac.kr/lectures/graduate/초고주파통신... · 2019-09-21 · Qucs-S a maturing GPL software package

Qucs-S a maturing GPL software package: Introduction to presentation

Background and release dates for Qucs-S/RC7

Qucs-S documentation and circuit simulation capabilitiesQus-S Help documentation: User manual and reference material,Qucs-S SPICE style components and model libraries,Qucs-S extended circuit simulation features.

Qucs-S Equation-Defined Device (EDD) and Verilog-A compactdevice modelling case studies

The Efficient Power Corporation (EPC) GaN EPC2001 power transistormodel,The MIT virtual source GaN-RF HEMT 1.0.0 model.

Qucs-S modelling tool extensions and new featuresXSPICE ”Code Model” support,Qucs-S model parameter extraction controlled by Qctave script files.

Qucs-S future developments - the way forward in 2016-2017

2 / 33

Ahn
강조
Ahn
강조
Ahn
강조
Ahn
강조
Page 3: Qucs-S a maturing GPL software package for circuit simulation …ael.chungbuk.ac.kr/lectures/graduate/초고주파통신... · 2019-09-21 · Qucs-S a maturing GPL software package

Qucs-S a maturing GPL software package: Background and release details

Original branchDevelopment Time Line

+ SPICENew branch

Qucs-0.0.19 is the next release in the Qucs series of software packages. This release is primarily GUI and quasator improvements plus general bug fixes.

Snapshot at https://sourceforge.net/projects/ qucs/files/qucs-binary/ 0.0.19-snapshots/qucs-0.0.19-rc1-win64.exe/ download

Extended Qucs circuit simulator package, including1. Improved Qucs GUI,2. Access to qucsator, Ngspice, Xyce and SPICE OPUS3. Increased number of circuit simulation types, including pole-zero analysis, distortion analysis, Harmonic Balance, steady state shooting method and Monte-Carlo statistical analysis, 4. Full range of SPICE 3f5, Ngspice, Xyce and SPICE OPUS device models,5. SPICE style component libraries,6. Equation-defined device modelling,7. Verilog-A model synthesis and "Turn Key" C++ code compiler,8. XSPICE Code model "Turn Key" compiler,9 XSPICE analogue component library,10. Nutmeg and Xyce script device modelling,11. Qucs and Octave post-simulation data processing,12. Qucs-S device parameter extraction with linked Octave packages.

Qucs-S can be found at:

https://github.com/ra3xdh/qucs/releases/tag/0.0.19S-rc7

New test suite for Qucs-S introduced. A set netlist and simulation tests available. Sources are here: https://github.com/ra3xdh/qucs-test/tree/spice4qucs

New "Qucs-S Help" Documentation:

This is a "live" document which isupdated by Qucs-S Developes as thepackage is improved.

Users can find it at - https://qucs-help.readthedocs.io/en/spice4qucs/index.html

Qucs-0.0.18 (October 2014) spice4qucs-rc1

spice4qucs-rc6

Qucs-0.0.19 (September 2016) Qucs-S (September 2016)

3 / 33

Page 4: Qucs-S a maturing GPL software package for circuit simulation …ael.chungbuk.ac.kr/lectures/graduate/초고주파통신... · 2019-09-21 · Qucs-S a maturing GPL software package

Qucs-S a maturing GPL software package: Latest release impact

4 / 33

Page 5: Qucs-S a maturing GPL software package for circuit simulation …ael.chungbuk.ac.kr/lectures/graduate/초고주파통신... · 2019-09-21 · Qucs-S a maturing GPL software package

Qucs-S a maturing GPL software package: Functional block diagram

5 / 33

Page 6: Qucs-S a maturing GPL software package for circuit simulation …ael.chungbuk.ac.kr/lectures/graduate/초고주파통신... · 2019-09-21 · Qucs-S a maturing GPL software package

Qucs-S a maturing GPL software package: Qucs-S Help documentation

6 / 33

Page 7: Qucs-S a maturing GPL software package for circuit simulation …ael.chungbuk.ac.kr/lectures/graduate/초고주파통신... · 2019-09-21 · Qucs-S a maturing GPL software package

Qucs-S a maturing GPL software package: Ngspice, Xyce and SPICEOPUSbuilt in components

7 / 33

Page 8: Qucs-S a maturing GPL software package for circuit simulation …ael.chungbuk.ac.kr/lectures/graduate/초고주파통신... · 2019-09-21 · Qucs-S a maturing GPL software package

Qucs-S a maturing GPL software package: Available semiconductor devicemodels

8 / 33

Page 9: Qucs-S a maturing GPL software package for circuit simulation …ael.chungbuk.ac.kr/lectures/graduate/초고주파통신... · 2019-09-21 · Qucs-S a maturing GPL software package

Qucs-S a maturing GPL software package: Simulation control icons

9 / 33

Page 10: Qucs-S a maturing GPL software package for circuit simulation …ael.chungbuk.ac.kr/lectures/graduate/초고주파통신... · 2019-09-21 · Qucs-S a maturing GPL software package

Qucs-S a maturing GPL software package: XSPICE analogue componentmodels

10 / 33

Page 11: Qucs-S a maturing GPL software package for circuit simulation …ael.chungbuk.ac.kr/lectures/graduate/초고주파통신... · 2019-09-21 · Qucs-S a maturing GPL software package

Qucs-S a maturing GPL software package: Qucs-S extended circuitsimulation Part 1. SPICE .OP to visual DC by pressing key ”F8”

11 / 33

Page 12: Qucs-S a maturing GPL software package for circuit simulation …ael.chungbuk.ac.kr/lectures/graduate/초고주파통신... · 2019-09-21 · Qucs-S a maturing GPL software package

Qucs-S a maturing GPL software package: Qucs-S extended circuitsimulation Part 2. Noise spectral response

12 / 33

Page 13: Qucs-S a maturing GPL software package for circuit simulation …ael.chungbuk.ac.kr/lectures/graduate/초고주파통신... · 2019-09-21 · Qucs-S a maturing GPL software package

Qucs-S a maturing GPL software package: Qucs-S extended circuitsimulation Part 3. Multi-tone Harmonic balance analysis

13 / 33

Page 14: Qucs-S a maturing GPL software package for circuit simulation …ael.chungbuk.ac.kr/lectures/graduate/초고주파통신... · 2019-09-21 · Qucs-S a maturing GPL software package

Qucs-S a maturing GPL software package: Qucs-S extended circuitsimulation Part 4. Direct support for SPICE libraries

14 / 33

Page 15: Qucs-S a maturing GPL software package for circuit simulation …ael.chungbuk.ac.kr/lectures/graduate/초고주파통신... · 2019-09-21 · Qucs-S a maturing GPL software package

Qucs-S a maturing GPL software package: Compact device modelling toolsPart 1. Equation-Defined behvioural modelling and Verilog-A model codesynthesis

15 / 33

Page 16: Qucs-S a maturing GPL software package for circuit simulation …ael.chungbuk.ac.kr/lectures/graduate/초고주파통신... · 2019-09-21 · Qucs-S a maturing GPL software package

Qucs-S a maturing GPL software package: Compact device modelling Part2. Qucs-S EDD model of the Efficient Power Corporation (EPC) GaNEPC2001 power transistor

16 / 33

Page 17: Qucs-S a maturing GPL software package for circuit simulation …ael.chungbuk.ac.kr/lectures/graduate/초고주파통신... · 2019-09-21 · Qucs-S a maturing GPL software package

Qucs-S a maturing GPL software package: Compact device modelling Part3. Qucs-S EDD model of the Efficient Power Corporation (EPC) GaNEPC2001 power transistor; DC test bench and typical output simulationcurves

17 / 33

Page 18: Qucs-S a maturing GPL software package for circuit simulation …ael.chungbuk.ac.kr/lectures/graduate/초고주파통신... · 2019-09-21 · Qucs-S a maturing GPL software package

Qucs-S a maturing GPL software package: Compact device modelling Part4. Synthesis of Verilog-A code for the Efficient Power Corporation (EPC)GaN EPC2001 power transistor

18 / 33

Page 19: Qucs-S a maturing GPL software package for circuit simulation …ael.chungbuk.ac.kr/lectures/graduate/초고주파통신... · 2019-09-21 · Qucs-S a maturing GPL software package

Qucs-S a maturing GPL software package: Compact device modelling Part5. AC gate matching network, test bench and typical simulation results

19 / 33

Page 20: Qucs-S a maturing GPL software package for circuit simulation …ael.chungbuk.ac.kr/lectures/graduate/초고주파통신... · 2019-09-21 · Qucs-S a maturing GPL software package

Qucs-S a maturing GPL software package: Compact device modelling Part6. Switching response test bench and typical simulation results

20 / 33

Page 21: Qucs-S a maturing GPL software package for circuit simulation …ael.chungbuk.ac.kr/lectures/graduate/초고주파통신... · 2019-09-21 · Qucs-S a maturing GPL software package

Qucs-S a maturing GPL software package: Verilog-A modeling of the MITvirtual source GaN-RF HEMT 1.0.0: Problems simulating with ADMS;workarounds and typical simulationdData - Part 1. Introduction

The Analogue Device Model Synthesizer (ADMS) version 2.3.5 is used byQucs/Qucs-S, Ngspice, Xyce and Gnucap GPL circuit simulators.

ADMS is based on a subset of Verilog-A HDL selected for compact devicemodelling.

Although the Verilog-A HDL is standardised there is no guarantee thatindividual simulator implementations allow the same dialect of Verilog-Afor modelling purposes, for example Qucs/Qucs-S Verilog-A models caninclude component noise while Ngspice does not implement thermal, shotor flicker noise.

Normally emerging technology Verilog-A compact models have to bemodified, often by hand, to compile without error: specific areas whichcan cause problems are

Internal node collapsing,Voltage limiting,Setting initial conditions,Model equations that include complex combinations of analogue functions,Thermal effects due to power dissipation.

21 / 33

Ahn
강조
Page 22: Qucs-S a maturing GPL software package for circuit simulation …ael.chungbuk.ac.kr/lectures/graduate/초고주파통신... · 2019-09-21 · Qucs-S a maturing GPL software package

Qucs-S a maturing GPL software package: Verilog-A Modeling of the MITVirtual Source GaN-RF HEMT 1.0.0: Problems simulating with ADMS;workarounds and typical simulation data - Part 2. Model parameterstatement error workarounds

ADMS parameter statements DO NOT ALLOW reference to previouslydefined model parameters.

22 / 33

Page 23: Qucs-S a maturing GPL software package for circuit simulation …ael.chungbuk.ac.kr/lectures/graduate/초고주파통신... · 2019-09-21 · Qucs-S a maturing GPL software package

Qucs-S a maturing GPL software package: Verilog-A Modeling of the MITVirtual Source GaN-RF HEMT 1.0.0: Problems simulating with ADMS;workarounds and typical simulation data - Part 3. RemovingV (n) < +statements

ADMS DOES NOT ALLOW voltage contributions of the formV (n) < +I (n)R, where R is a resistance in Ω,

OR statements of the form V (n) < +0.0,

Resistors, for example 0.001, are used to short nodes (node collapsing),with I (n) < +V (N)/0.001.

23 / 33

Page 24: Qucs-S a maturing GPL software package for circuit simulation …ael.chungbuk.ac.kr/lectures/graduate/초고주파통신... · 2019-09-21 · Qucs-S a maturing GPL software package

Qucs-S a maturing GPL software package: Verilog-A Modeling of the MITVirtual Source GaN-RF HEMT 1.0.0: Problems simulating with ADMS;workarounds and typical simulation data - Part 4. DC characteristics

24 / 33

Page 25: Qucs-S a maturing GPL software package for circuit simulation …ael.chungbuk.ac.kr/lectures/graduate/초고주파통신... · 2019-09-21 · Qucs-S a maturing GPL software package

Qucs-S a maturing GPL software package: Verilog-A Modeling of the MITVirtual Source GaN-RF HEMT 1.0.0: Problems simulating with ADMS;workarounds and typical simulation data - Part 5. Simulating thermalself-heating effects induced by internal power dissipation

The ADMS dialect of Verilog-A does not implement the pwr(dt)statement,

Device self-heating is often modelled with a parallel RC network where thevolt drop across the RC combination represents the change in devicetemperature due to internal power dissipation,

Tth = RthPd + Temp(Pd = 0), where Tth is the device temperature atpower dissipation Pd(W ).

25 / 33

Page 26: Qucs-S a maturing GPL software package for circuit simulation …ael.chungbuk.ac.kr/lectures/graduate/초고주파통신... · 2019-09-21 · Qucs-S a maturing GPL software package

Qucs-S a maturing GPL software package: Verilog-A Modeling of the MITVirtual Source GaN-RF HEMT 1.0.0: Problems simulating with ADMS;workarounds and typical simulation data - Part 6. Variation of thermalresistance Rth and its effect on DC characteristics

26 / 33

Page 27: Qucs-S a maturing GPL software package for circuit simulation …ael.chungbuk.ac.kr/lectures/graduate/초고주파통신... · 2019-09-21 · Qucs-S a maturing GPL software package

Qucs-S a maturing GPL software package: Modelling tool additions andnew features

Qucs-S includes for the first time a turn-key XSPICE ”codelevel modelling” package for use with the Ngspice and SPICEOPUS circuit simulators,

Qucs-S has also been extended to include a new Qucs/Octaveintegrated tool set for compact device model and circuitmacromodel parameter extraction. The technique employed isbased on data fitting and optimization using measured, ormanufacturers published device data, compared againstsimulated circuit data.

27 / 33

Page 28: Qucs-S a maturing GPL software package for circuit simulation …ael.chungbuk.ac.kr/lectures/graduate/초고주파통신... · 2019-09-21 · Qucs-S a maturing GPL software package

Qucs-S a maturing GPL software package: XSPICE ”Code Model” supportsubsystem

The XSPICE generic device component is the foundation forPrecompiled XSPICE device (*.cm) library support, andDynamic XSPICE ”Code Model” compilation system which allows CodeModel sources to be attached to a schematic and compiled automatically atsimulation time.

.MODEL

XSPICE Generic device

spice_netlist()

Schematic

Component

spice_netlist()

.spinit fileSPICE Netlist

Ngspice simulator

Qucs GUI

Datavisualization

Precompiled CodeModel library

28 / 33

Page 29: Qucs-S a maturing GPL software package for circuit simulation …ael.chungbuk.ac.kr/lectures/graduate/초고주파통신... · 2019-09-21 · Qucs-S a maturing GPL software package

Qucs-S a maturing GPL software package: XSPICE Generic Devicecomponent

The XSPICE generic device component is a building block for theconstruction of user-defined A-devices. It is defined by a comma separatedport list, plus XSPICE port designators. These are attached to a SPICE.MODEL statement

XSPICEv0 v1

A1PortList=v,vModel=Amp1

.MODEL

SpiceModel1Line_1 =.MODEL Amp1 ggain(gain=10 out_offset=0.01)

XSPICE CodeModel

XSP_CMod1File=/home/vvk/projects/xspice_icm/cfunc.modFile=/home/vvk/projects/xspice_icm/ifspec.ifs

void cm_ggain(ARGS) Mif_Complex_t ac_gain; if(ANALYSIS != MIF_AC) OUTPUT(out) = PARAM(out_offset)+PARAM(gain)* (INPUT(in)+PARAM(in_offset)); PARTIAL(out,in) = PARAM(gain); else ac_gain.real = PARAM(gain); ac_gain.imag= 0.0; AC_GAIN(out,in) = ac_gain;

Source code: cfunc.mod file

29 / 33

Page 30: Qucs-S a maturing GPL software package for circuit simulation …ael.chungbuk.ac.kr/lectures/graduate/초고주파통신... · 2019-09-21 · Qucs-S a maturing GPL software package

Qucs-S a maturing GPL software package: XSPICE Turn-Key ModelGeneration; compiler system dataflow diagram

cfunc.modifspec.ifs XSPICE CodeModel

.MODEL

XSPICE Generic device

spice_netlist()

Schematic

Extract CodeModels*.mod and *.ifs

Make rulesfile *.mk

CodeModels library

source tree

$WORKDIR/qucs_cmlib/ Makefile XSP_CMod1 cfunc.mod ifspec.ifs XSP_CMod2 cfunc.mod ifspec.ifs dlmain.c modpath.lst udnpath.lst

Component

spice_netlist()

.spinit file

qucs_xspice.cm

Compilation

SPICE Netlist

Ngspice simulator

Qucs GUI

Data visualization

30 / 33

Page 31: Qucs-S a maturing GPL software package for circuit simulation …ael.chungbuk.ac.kr/lectures/graduate/초고주파통신... · 2019-09-21 · Qucs-S a maturing GPL software package

Qucs-S a maturing GPL software package: Ngspice/Xyce/SPICEOPUSdevice parameter extraction from maufacturers data, or measurements,controlled by Octave Script Files; structure diagram

31 / 33

Page 32: Qucs-S a maturing GPL software package for circuit simulation …ael.chungbuk.ac.kr/lectures/graduate/초고주파통신... · 2019-09-21 · Qucs-S a maturing GPL software package

Qucs-S a maturing GPL software package: Future developments - the wayforward in 2016-2017

Qucs-S is a relatively stable circuit simulator and compactmodelling tool, incorporating the best features of Qucs,Ngspice. Xyce and SPICE OPUS. The next development phasewill concentrate on the following:

Testing the package and improving the ”feature coverage” by the Qucs-Stest suit,Adding the missing sections to the ”Qucs-S Help” documentation,Introduction of XSPICE and Xyce digital models as the first step towardsmaking Qucs-S a true mixed-mode electronic system and circuit simulationand modelling package,Improvements to XSPICE CodeModel development system, including newXXX.mod and XXX.ifs templates generated from model schematics,Continue development of the Qucs-S built-in libraries.

It is expected that the next development phase will last aroundone year with a series of release candidates published at regularintervals.

32 / 33

Page 33: Qucs-S a maturing GPL software package for circuit simulation …ael.chungbuk.ac.kr/lectures/graduate/초고주파통신... · 2019-09-21 · Qucs-S a maturing GPL software package

Qucs-S a maturing GPL software package: Endnote - A brief look into thefuture

1

X1Device=BUFVCC=5

0X4Device=LOGIC0

= 1

X13Device=XOR

&

X5Device=AND2VCC=5

≥ 1

X9Device=OR2VCC=5

= 1

X19Device=NXOR

A -> D

X16Device=DPrVCC=5

&

&

&

&

X21Device=ANDOR4X2VCC=5

&

X7Device=NAND2VCC=5

1

X2Device=INVVCC=5

1

X3Device=LOGIC1

&

X6Device=AND4VCC=5

&

X8Device=NAND4VCC=5

≥ 1

X10Device=OR4VCC=5

≥ 1

X12Device=NOR4VCC=5

En

G

D0

D1

MUX

Z

X23Device=MUX2TO1VCC=5

MUX

D2

D0

G1

G0

D1

D3

En

Z

X22Device=MUX4TO1VCC=5

0

12

345

67

PG

X18Device=PG01234567D0=0D1=0D2=0D3=0D4=0D5=0D6=0D7=0VCC=5

0

2

1

3

PG

X24Device=PG0123D0=0D1=0D2=0D3=0VCC=5

≥ 1

X11Device=NOR2VCC=5

in1

in2

carryin

sumOut

carryOut

X20Device=FADDERVCC=5

Qucsator Ngspice SPICE OPUS Xyce

ANALOGUE and DIGITAL device and IC models

Ngspice and SPICE OPUSXSPICE digital IC models

Xyce behaviouraldigital IC models

In the next development phase

Transistor level digital models

Qucs-S True mixed-mode simulation and modelling

33 / 33