Difference between revisions of "LTspice Genealogy - The Heritage of Simulation Ubiquity"

From LTwiki-Wiki for LTspice
m (removed accounting of Larry Nagle having to get his masters twice over)
m (note that Dr. Nagel graduated)
Line 38: Line 38:
 
* MOSFET and bipolar models overhauled and extended and subcircuits are first added (with the 2B release)
 
* MOSFET and bipolar models overhauled and extended and subcircuits are first added (with the 2B release)
 
* Was about 8k lines of FORTRAN when first released to the public domain in late 1974
 
* Was about 8k lines of FORTRAN when first released to the public domain in late 1974
* Larry Nagel departs for Bell Labs and his thesis becomes the de facto ''SPICE 2 Users Guide''
+
* Larry Nagel graduates, departs for Bell Labs and his thesis becomes the de facto ''SPICE 2 Users Guide''
  
 
=== 1975: Journey to SPICE 2G6 (the pinnacle FORTRAN version) ===
 
=== 1975: Journey to SPICE 2G6 (the pinnacle FORTRAN version) ===

Revision as of 16:01, 2 August 2013

LTspice excels, not only in its technical prowess, but also in its unique accessibility to and popularity with the masses. This page highlights the heritage of LTspice, emphasizing both the technical developments leading up to the current version of LTspice and the key events and prior trailblazers on the pathway to making SPICE the dominant simulation platform in the engineering community.


1969: Beginnings of CANCER (Computer Analysis of Nonlinear Circuits, Excluding Radiation)

  • The CANCER simulator began as the class project in the first of a series of courses taught by Ron Rohrer
    • Ever the guiding visionary, Professor Donald O. Pederson, lends much approval and encouragement to the fledgling simulation project
  • Larry Nagel wrote the netlist parser and the analysis core and was student group leader
  • Lynn Weber developed a noise analysis feature that utilized adjoint network techniques
  • Bob Berry wrote the sparse matrix LU decomposition package
  • CANCER project's key features:
    • Was the first circuit simulator to utilize sparse matrix techniques
    • Used Newton-Raphson iteration method heuristically modified for bipolar circuits (Ebers-Moll model)
    • Utilized implicit integration to accommodate widely spread time-constants of an IC
    • Integrated DC operating point analysis, small-signal AC analysis and transient analysis
  • Once the class ended, CANCER became Larry Nagel's master's project with Ron Rohrer as research adviser
  • Project presented by Ron Rohrer at the 1971 ISSCC[1], but the code was considered partially proprietary and was never publicly released

1971: SPICE 1 (Simulation Program with IC Emphasis) - direct outgrowth of CANCER

  • Ron Rohrer leaves UC Berkeley and with the Fall term, further development of CANCER (renamed SPICE) became Larry Nagel's Ph.D. project
    • Don Pederson takes over as doctoral program faculty research adviser
  • KEY EVENT: Don Pederson insisted that all further work be releasable to the public domain
  • SPICE 1 release's key features:
    • Models for bipolar transistors added Gummel-Poon equations
    • JFET and Shichman-Hodges MOSFET devices added (for Dave Hodges' MOSFET design class)
    • Fixed time step and strict Nodal Analysis (but voltage sources and inductors were supported via an ad hoc row-swap algorithm)
    • DC, AC, Transient, Noise, and Sensitivity Analyses in the same program
    • Built-in models for diodes, bipolar transistors, MOSFETs, and JFETs
  • Was about 6k lines of FORTRAN at first public informal limited beta release in late 1971
  • Official public release was May 1972 with first formal paper presented by Don Pederson at the 16th Midwest Symposium on Circuit Theory, April 12, 1973
  • SPICE 1 becomes industry standard simulation tool running on large mainframe computers

1972: SPICE 2 begins

  • First version of SPICE 2 was Larry Nagel's ongoing Ph.D. project under Don Pederson
  • Modified Nodal Analysis (MNA) added, simplifying the handling of voltage sources and inductors
  • With much input from Ellis Cohen, Larry Nagel adds dynamic memory allocation
  • Adjustable time-step control added, greatly speeding most simulations
  • MOSFET and bipolar models overhauled and extended and subcircuits are first added (with the 2B release)
  • Was about 8k lines of FORTRAN when first released to the public domain in late 1974
  • Larry Nagel graduates, departs for Bell Labs and his thesis becomes the de facto SPICE 2 Users Guide

1975: Journey to SPICE 2G6 (the pinnacle FORTRAN version)

  • Initially Ellis Cohen becomes primary contributor reworking subcircuts and adding poly sources and transmission lines
  • Shorly thereafter, the primary code development baton passes to Andrei Vladimirescu
  • First of a series of public revision releases after Nagel's version 2B begin in 1978
  • Version 2G6 ends up implementing three MOSFET models (with Sally Liu providing all the newer models):
    • MOS 1 is a simplistic model described purely by ideal square-law I-V characteristics
    • MOS 2 is an analytical model, MOS 3 is a semi-empirical model and both include second-order effects such as channel length modulation, sub threshold conduction, scattering limited velocity saturation, small-size effects, and charge-controlled capacitances
  • 2G6 released to public domain in April 1983 (and is still available today from UC Berkeley)
  • Many current commercial simulators are based on SPICE 2G6

1983: SPICE 3 begins

  • With Richard Newton as adviser, Tom Quarles begins work on SPICE 3, writing first version in RATFOR, a C-like preprocessor for FORTRAN
  • Was fully converted to C in 1985 with first early versions released in March of that year
  • Added models: MESFET, lossy transmission line and non-ideal switch
  • Arbitrary behavioral voltage and current sources added
  • Includes polynomial capacitors, inductors and voltage controlled sources
  • Allowed the use of alphabetical node labels rather than only numbers
  • Features a graphical interface for viewing results
  • New version eliminates many convergence problems
  • Added noise, distortion and pole-zero analysis, temperature sweeping, Monte Carlo and Fourier analysis
  • Not fully compatible with SPICE 2G6
  • Was about 135,000 lines of C code at first public release in 1989
  • Final version at Berkeley, SPICE 3F5, released to public in 1993
  • XSPICE was developed at Georgia Tech as an extension to the SPICE language to allow behavioral modeling of components
    • Drastically improve the speeds of mixed-mode and digital simulations

1984: PSpice (Personal Computer SPICE)

  • Developed by MicroSim to run on the first IBM PC, initially released in January 1984
  • Was the first commercial offspring of Berkeley SPICE to run directly on the PC platform
  • Last FORTRAN version was 2.06 – version 3.00 (Dec 86) was rewritten totally in C, yielding a 20% speed increase
  • Was the first SPICE program to gain wide acceptance in both industry and academia
  • Feedback from a very large customer base led to rapid convergence, speed and feature enhancements
  • KEY EVENT: A zero cost (but node-limited) student version was introduced in 1988
    • For the first time, SPICE became truly ubiquitous in the electrical engineering academic and industrial communities
  • Evolved from Berkeley SPICE 2G, but added many proprietary enhancements
    • Dec 86: nonlinear Jiles/Atherton core model, Apr 87: ideal switches, Date?: proprietary IGBT model (and many other enhancements)
    • Probe, a waveform viewer module, was added when PC VGA graphics became available
    • Schematics, a graphical front end, was added much later with version 5.00 in July 1991
  • In January 1998 MicroSim was acquired by OrCAD, which itself was subsequently purchased by Cadence Design Systems in July 1999

The Road To LTspice IV

  • 1991 DOS SwitcherCAD available from LTC (equation based)
  • 1992 First ever port to Linux of SPICE (3E2) publicaly released by Mike Engelhardt
  • 1994? Development at LTC of in-house advanced simulator begins based on Berkeley SPICE 3F4/5
    • Code extensively revised to improve performance on machines with faster processors than memory
    • Vastly improved convergence and time step control over that of Berkeley SPICE
    • Added support for important industry standard device, model and behavioral extensions
  • 1996 μPower SwitcherCAD available from LTC (simulation based)
  • Proprietary mixed-mode HDL capability added to LTC's in-house simulator
    • Efficiently handles extremely tight feedback between analog and digital sections
    • Greatly reduces node count in switched-mode IC macro models
  • 1998? SwitcherCAD released for internal review at LTC
    • Decision made to extend PSpice syntax recognition to simplify user support and ease of use with existing models

1999: LTspice/SwitcherCAD III first released to public

  • LTC's Field Application Engineers received the very first copies of LTspice in October
    • FAEs were then free to give LTspice to customers they met on a visit-by-visit basis
    • June 2001, now a web-based download, LTspice becomes widely publicized in trade journals and engineering forums
  • LTspice/SitcherCAD III key features:
    • Includes P-SPICE compatible semiconductor, device and syntax model extensions
      • Diode recombination current, bipolar quasi-saturation and JFET deep impact ionization
      • Behavioral modeling (legacy 2G6 POLY statements, arbitrary expressions, Laplace, and look-up tables)
    • Includes an original mixed mode simulator with native digital library (not X-SPICE based)
    • Inductors and capacitors come with extensive built-in parasitics available, yet don't cost any extra nodes
    • New arbitrary capacitance device (user inputs charge expression)
      • Is internally symbolically differentiated and then capacitance is integrated
    • Initial release extends MOSFET model support to BSIM 3.2.2 and BSIM 4.1 (BSIMPD 2.2 and EKV 2.6 followed shortly thereafter)
    • Also includes a native power VDMOS device model with integral nonlinear interelectrode capacitances
    • Waveform viewer with marching waveforms and dynamic waveform data compression
    • Built-in device library/database (includes many power MOSFETs, diodes, bipolars, JFETS and switch-mode controllers)
    • Built-in program update checker (bug fixes and feature additions available in near real time)

Important Follow-on Enhancements

  • KEY EVENT: In October 2001 the LTspice Yahoo users group is started by Ralph Reinhold
    • Within the first year Helmut Sennewald takes over as moderator organizing one of Yahoo's most successful technical forums
    • Includes over 30k members and rapidly approaching 100k messages (as of July 2013)
  • More noteworthy bullet points to be added here shortly (raw change log items are listed below)
Feb02: Added preliminary support for ddt(), idt(), and idtmod() analog behavioral functions.
May02: Implemented binning for all MOS and BSIM models.
May02: Wave file I/O capability added.
Jan03: Hierarchical schematics added.
Jan03: A graphical symbol editor was introduced.
Mar03: Keyboard short cuts are now user definable.
Jun03: Added an alternate solver (uses a 1/2x slower but >1000x more accurate sparse matrix package).
Jul03: Ability to export a netlist for PCB layout added.
Aug03: Implemented differential cross probing (drag the mouse between two wires).
Nov03: Probing of component instantaneous power dissipation added (alt-left click its symbol).
Jan04: Added the ability to annotate waveform plots with graphics and text.
Mar04: Windows meta file output support added. 
Apr04: Chan inductor, undocumented behavioral inductor revealed.
Dec04: Implemented .measure commands.
Feb05: .raw files can now be converted to a Fast Access format that allows new plot traces to be added.
Jun06: Added continuous derivative level 2 devices to the ideal diode and voltage controlled switch.
Nov07: There is now a diode instance parameter, N, that sets the number of devices in series.
Other: ako, param stepping, unlimited undo and redo, parametric (x-y) plotting, amp and power meters,
       Fourier analysis (both .four statements and FFT's of simulated data)

2008: LTspice IV released

  • "SwitcherCAD" is dropped from the name, simplifying the description and thereby emphasizing the general purpose nature of LTspice
  • Key features added to LTspice IV:
    • Multi-threaded solvers to better utilize current multi-core processors
    • New SPARSE matrix solvers that deploy self-authoring code
      • Code is assembled and linked on the fly
      • Approaches the theoretical flop limit of current FPU's
      • Large circuits run up to 3x faster on quad core processors
  • KEY EVENT: With 3+ million copies downloaded, LTspice becomes, by far, the de facto standard SPICE program
  • More noteworthy bullet points to be added here shortly (raw change log items are listed below)
Feb09: A symbol can now be automatically generated for a schematic.
Apr09: The data from a .step'ed .meas statements can now be reformatted to a .raw file and plotted 
       (View=>SPICE Error Log then right button menu).
Jul09: Reimplemented MOS levels 1, 2, and 3 to use the Yang-Chatterjee charge model instead of the 
       Meyer capacitance model and added warnings when using archaic MOS levels 1, 2, or 3 below 
       reasonable dimensions.
Sep10: The .op values can now be displayed on the schematic while plotting .ac or .noise data 
       (schematic right button menu->View->Place .op Data Label).
Dec11: The LTspice-Gummel-Poon now supports a parasitic PNP to accurately model the substrate 
       behavior of a vertical NPN.  
Mar13: Added a level 73 MOSFET: HiSIM-HV from Hiroshima University and STARC.