LTspice

From Wikipedia, the free encyclopedia
Jump to navigation Jump to search
LTspice
Linear Technology Corporation logo.svg
Original author(s)Mike Engelhardt[1]
Developer(s)Linear Technology, Analog Devices[2]
Initial releaseOctober 1999 (1999-10)[1]
Stable release
XVII / June 7, 2019; 17 days ago (2019-06-07)[3]
Operating systemWindows 7, 8, 8.1, 10, macOS 10.7+
PlatformIA-32, x86-64
SizeWindows (41 MB), MacOS (101 MB)
Available inEnglish
TypeElectronic design automation
LicenseFreeware[4][5]
WebsiteLTspice webpage

LTspice is freeware[4][5] computer software implementing a SPICE electronic circuit simulator, produced by semiconductor manufacturer Linear Technology, now part of Analog Devices.[2] It is used in-house at Linear Technology for IC design, and the most widely distributed and used SPICE program in the industry.[3] LTspice isn't artificially crippled to limit its capabilities (no node limits, no component limits, no subcircuit limits).[3][6]

Overview[edit]

LTspice provides schematic capture to enter an electronic schematic for an electronic circuit, an enhanced SPICE type analog electronic circuit simulator, and a waveform viewer to show the results of the simulation.[2] Circuit simulation analysis based on transient, noise, AC, DC, DC transfer function, DC operating point can be performed and plotted as well as fourier analysis.[7] Heat dissipation of components can be calculated and efficiency reports can also be generated.[citation needed] It has enhancements and specialized models to speed the simulation of switched-mode power supplies (SMPS) in DC-to-DC converters.[2][8]

A user can create their own device models, import downloaded models from many electronic component manufacturers, or use a model from the device library.[9] LTspice ships with thousands of third-party models (capacitors, diodes, inductors, resistors, transistors, ferrite beads, opto-isolators, 555 timer, and more), as well as macro models for Analog Devices and Linear Technology parts (ADCs, analog switches, comparators, DACs, filters, opamps, timers, voltage references, voltage supervisors, voltage regulators, 0.01% quad resistor networks, and more).[2][6] In the device library, Analog Devices part numbers start with "AD", and Linear Technology parts start with "LT".[10]

LTspice does not generate printed circuit board (PCB) layouts, but netlists can be exported to layout programs.[11] While LTspice does support simple logic gate simulation, it is not designed specifically for simulating logic circuits.

It is used by many users in fields including radio frequency electronics, power electronics, audio electronics, digital electronics, and other disciplines.

LTspice/SwitcherCAD III[edit]

In 1999, LTspice III was released, the first public release.[1] It's designed to run on Windows 95, 98, 98SE, ME, NT4.0, 2K, XP. This version is no longer available for download from Analog Devices. Initially, LTspice III was internally released to Linear Technology's Field Application Engineers (FAE) in October 1999, who then gave it away during customer visits via CDROM media.[1] In June 2001, it was released for public downloading from the Linear Technology website.[1][8] Originally, LTspice/SwitcherCAD ran only on Microsoft Windows platforms, but since 2003 it is able to run under the Wine Windows compatibility layer on Linux.[12]

LTspice IV[edit]

In 2008, LTspice IV was released.[1][6][13] It's designed to run on Windows 2K, XP, Vista, 7 with a processor that that contains a minimum instruction set similar to a Pentium 4 processor.[14] Though IV is still available for download, it is no longer maintained. LTspice was originally called SwitcherCAD, but that name was removed when IV was released.[1] A native Apple macOS 10.7+ application was introduced in 2013.[15]

LTspice XVII[edit]

In 2016, LTspice XVII was released, and currently it's the latest version.[3] It's designed to run on 32-bit or 64-bit editions of Windows 7, 8, 8.1, 10, and macOS 10.7+.[2]

Summary of major changes from LTspice IV to LTspice XVII are:

Updates[edit]

After Analog Devices purchased Linear Technology in 2016, models for Analog Devices parts were added to the LTspice device library over time.

Every month, minor updates are released by Analog Devices for software fixes, updates for existing device models, and new device models. A user can manually update their installed copy by doing a "Sync Release" from the pulldown menu. LTspice has a "Show Change Log" screen that lists every change to the software and models since LTspice XVII was released. LTspice doesn't show any subversion numbers as many software programs do, though the software "build date" could be treated as such. For example, on 64-bit Windows, the "about" screen shows "LTspice XVII(x64)" then a build date and time.

Number conventions[edit]

In LTspice, numeric values can be expressed in four different ways: integer (i.e. 1000), real (i.e. 1000.0), scientific e-notation (i.e. 1e3, 1.0e3), scale factor notation (i.e. 1K, 1K0).[17]

If the first character after a number isn't the letter "e" for scientific e-notation or a scale factor suffix (left column of table), then trailing characters are ignored.[17] For example, 5 is treated the same as 5V / 5Volt / 5Volts / 5 Hz / 5Hertz.

Scale factors[edit]

Integer and real numbers supports a scale factor (multiplier) suffix.[17] These are based mostly on metric conventions.

The suffix (left column) can be upper / lower / mixed case, known as case insensitive.[17] For example, 1MEG / 1meg / 1Meg represents 1000000; 1k / 1K represents 1000.

Any appended text after the suffix (left column) is ignored.[17] For example, 2MegHz / 2MegaOhm represents 2000000; 3mV / 3mOhm represents 0.003; 4uF / 4uHenry represents 0.000004.

In LTspice, any suffix (left column) can replace the decimal point of a real number, a common format for printed schematics.[17][16] For example, 4K7 represents 4700, 1u8 represents 0.0000018.

SPICE
Suffix[17]
Metric
Name
English
Name
Power
of 10
Numeric
Value
Notes and Common Mistakes
T tera Trillion 1012 1000000000000
G giga Billion 109 1000000000
MEG mega Million 106 1000000 Wrong use of m / meg / mil are common mistakes in all SPICE programs
K kilo Thousand 103 1000
m milli Thousandth 10−3 0.001 "1m" & "1M" doesn't mean "1 megaohm, instead "1MEG" is correct[17]
u or µ micro Millionth 10−6 0.000001 Older SPICE software doesn't support the µ (Mu) character[16]
n nano Billionth 10−9 0.000000001
p pico Trillionth 10−12 0.000000000001
f femto Quadrillionth 10−15 0.000000000000001 "1f" & "1F" doesn't mean "1 farad, instead "1" is correct[17]
mil thou 25.4 x 10−6 0.0000254 mil is a thousandth of an inch (0.001") which is 25.4 μm[17]

Compatibility[edit]

Although LTspice was originally based upon Berkeley SPICE 3f5 source code,[1] it no longer does, thus some of its features may create non-portable files. It should be noted that competitor SPICE programs have non-portable features too.

LTspice features that may not be supported by some SPICE programs:

  • Unicode characters in schematics, netlists, plot.[3] This is a new feature in LTspice XVII, thus older versions of LTspice don't support Unicode.[3]
  • µ (Mu) character as an alternate symbol for micro (10−6) scale factor, which is Unicode decimal 181 (hex 0xB5). See option setting at LTspice -> Tools -> Control Panel -> Netlist Options -> Convert 'µ' to 'u'.[16]
  • Suffix replacing decimal point. See option setting at LTspice -> Tools -> Control Panel -> SPICE -> Accept 3K4 as 3.4K.[16]

LTspice doesn't support the following features:

  • LTspice doesn't support scale factors of "atto" 10−18, "peta" 1015, or "exa" 1018.
  • HSPICE supports 'a' for "atto" 10−18, which must be replaced with 'e-18' to be compatible with LTspice and other SPICE software.
  • HSPICE supports 'X' as a synonym for "meg" 106, which must be replaced with 'e6' or 'MEG'to be compatible with LTspice and other SPICE software.

Node name conventions[edit]

In LTspice, a node/net (connection point) on the schematic can be labeled by using the Label Net tool button or F4 key. The "Label Net" wizard has three choices for a label, two predefined graphical symbols (GND, COM), or a user-defined node/net name.[18]

The two graphical symbols represent:

  • GND - The ground symbol assigns a node with a special global net name of "0".[18]
  • COM - The COM symbol assigns a mode with a net name of "COM", which doesn't have any special significance.[18]

Historically, SPICE and older version of LTspice software only supported printable ASCII characters for node/net names, then LTspice XVII added support for Unicode characters.[3]

A user-defined name supports two optional features that can be prepended to the text name:

  • _ - An underscore causes an overbar to be placed above the entire name, which commonly means an active low signal. For example, "_RESET" is shown on the schematic as "RESET".[19]
  • $G_ - This means a node is global, no matter where the name occurs in the circuit hierarchy. For example, "$G_ENABLE" / "$G_ERROR". It should be noted the ground symbol is treated in a similar way, but it doesn't have "$G_" prepended to it.[18]

When a node/net name is placed on a schematic, it will have one of five different visual representations. Two are automatically determined, while three others are chosen by the "Port Type" field in the "Label Net" wizard.[18]

  • None - Bare text. This is the default.[20]
  • Global - "Rectangle" around the text. This is automatically shown for a global net name that starts with "$G_".[20]
  • Input - "Rectangle with triangle end" around the text. This is chosen by the "Port Type" field in the "Label Net" wizard.[20]
  • Output - "Rectangle with triangle on other end" around the text. This is chosen by the "Port Type" field in the "Label Net" wizard.[20]
  • Bidirectional - "Rectangle with triangle on two ends" around the text. This is chosen by the "Port Type" field in the "Label Net" wizard.[20]

File format[edit]

Many of the LTspice files are stored as an ASCII text file, which can be viewed or edited with any ASCII text editor programs. One of the side benefits of an ASCII file format is that a schematic can be listed in a printed document / book / magazine / datasheet / research paper / homework assignment, which allows the reader to recreate LTspice files without electronic file distribution.

LTspice filename extensions:[21]

  • asc - schematic. It consists of a netlist based on SPICE text-based commands.[21]
  • asy - electronic symbol shown in a schematic.[21]
  • cir - external netlist input.[21]
  • fft - FFT binary output.[21]
  • lib - model library subcircuits.[22]
  • plt - waveform viewer plot settings.[21]
  • raw - binary output, optional ASCII output.[21]
  • sub - subcircuit.[22]
  • lib / sub / mod / model - device model. While any file extension is allowed, users tend to gravitate towards common ones.[21]

Example[edit]

The following example can be viewed by copying each into two different text files. For each, copy the text in the gray box from this article, paste into an ASCII text editor, saving as a text file. Both files must have the same "base name" and sit in the same directory. To see it, opening the "asc" file with LTspice then click the "Run" button inside LTspice software.

  • LTspice_RC.asc
  • LTspice_RC.plt

Schematic file[edit]

LTspice schematics are stored as an ASCII text file with a filename extension of "asc".[21]

The following example shows the contents from a small LTspice schematic file for a simple RC circuit with four schematic symbols: V1 is 10 volt DC voltage source, R1 is 1K ohm resistor, C1 is 1 uF capacitor, ground. The bottom three TEXT lines are: 1) a transient simulation directive with a stop time parameter of 10 ms (.tran 10mS), 2) a SPICE directive to set the initial condition of RC "out" net to zero volts (.ic v(OUT)=0V), and 3) a text comment (title).

Version 4
SHEET 1 880 680
WIRE 224 96 128 96
WIRE 128 160 128 96
WIRE 224 192 224 176
WIRE 288 192 224 192
WIRE 224 208 224 192
WIRE 128 288 128 240
WIRE 224 288 224 272
WIRE 224 288 128 288
WIRE 224 304 224 288
FLAG 224 304 0
FLAG 288 192 OUT
IOPIN 288 192 Out
SYMBOL res 208 80 R0
SYMATTR InstName R1
SYMATTR Value 1K
SYMBOL cap 208 208 R0
SYMATTR InstName C1
SYMATTR Value 1uF
SYMATTR SpiceLine V=50
SYMBOL voltage 128 144 R0
WINDOW 123 0 0 Left 0
WINDOW 39 0 0 Left 0
WINDOW 0 7 10 Left 2
WINDOW 3 -20 57 Left 2
SYMATTR InstName V1
SYMATTR Value 10V
TEXT 120 344 Left 2 !.tran 10mS
TEXT 120 376 Left 2 !.ic v(OUT)=0V
TEXT 8 72 Left 2 ;RC Circuit - LTspice - Wikipedia

Plot file[edit]

LTspice waveform viewer plot settings are stored as an ASCII text file with a filename extension of "plt".[21] If this optional plot file is present, then all plot planes will automatically be displayed after the "Run" button is pressed, otherwise the user will need to click on each net to see the waveform(s). To create a plot file on Windows, after a plot graph is displayed, right-click on it and choose "File", then choose "Save Plot Settings".[23]

The following example for the above schematic shows settings for a "transient analysis" simulation with two waveforms on one plot plane consisting of the RC voltage at "out" net and current through resistor R1, which are labeled V(out) and I(R1) at the top of the plot graph.

[Transient Analysis]
{
   Npanes: 1
   {
      traces: 2 {524290,0,"V(out)"} {34603011,1,"I(R1)"}
      X: ('m',0,0,0.001,0.01)
      Y[0]: (' ',0,0,1,10)
      Y[1]: ('m',0,0,0.001,0.01)
      Volts: (' ',0,0,0,0,1,10)
      Amps: ('m',0,0,0,0,0.001,0.01)
      Log: 0 0 0
      GridStyle: 1
   }
}

See also[edit]

References[edit]

  1. ^ a b c d e f g h "LTspice Genealogy - The Heritage of Simulation Ubiquity". LTwiki. Archived from the original on December 2, 2018.
  2. ^ a b c d e f "LTspice". Analog Devices. Archived from the original on December 3, 2018.
  3. ^ a b c d e f g h i j k l m "LTspice XVII Introduction". LTwiki. Archived from the original on December 2, 2018.
  4. ^ a b Mike Engelhardt: LTspice IV Help → F.A.Q. → License and Distribution. (Help of software version 4.19u of 4 September 2013)
  5. ^ a b Mike Engelhardt: LTspice IV Help → Introduction → License Agreement/Disclaimer. (Help of software version 4.19u of 4 September 2013)
  6. ^ a b c "Linear released LTspice IV for multicore processors". EE Herald. February 13, 2009. Archived from the original on December 2, 2018.
  7. ^ "Simulation Command". LTwiki. Archived from the original on May 13, 2019.
  8. ^ a b "Linear Technology announces SwitcherCAD III a fully functional Spice Simulator for switcher applications". AboutSpice.com. May 16, 2001. Archived from the original on December 4, 2018.
  9. ^ "Third-party Models". LTwiki. Archived from the original on May 13, 2019.
  10. ^ "General Ordering Information" (PDF). Linear Technology. September 18, 2008. Archived from the original (PDF) on October 3, 2016.
  11. ^ "PCB Netlist Extraction". LTwiki. Archived from the original on May 13, 2019.
  12. ^ news:sci.electronics.cad: LTspice/SwitcherCAD III now runs on Linux accessdate=September 27, 2013
  13. ^ Pell, Rich (January 13, 2009). "Free SPICE software exploits multicore processors". EE Times. Retrieved January 17, 2011.
  14. ^ news:sci.electronics.cad: Announce: Multi-threaded LTspice accessdate=September 27, 2013
  15. ^ "LTspice IV Is Now Native on Mac OS X". Evaluation Engineering. November 9, 2013.
  16. ^ a b c d e "LTspice - Control Panel". LTwiki. Archived from the original on December 4, 2018.
  17. ^ a b c d e f g h i j "LTspice - General Conventions". LTwiki. Archived from the original on December 4, 2018.
  18. ^ a b c d e "Label a node name". LTwiki. Archived from the original on December 8, 2018.
  19. ^ "LTspice: Undocumented Shortcuts". Analog Devices. Archived from the original on December 8, 2018.
  20. ^ a b c d e "Port Type drawing". LTwiki. Retrieved December 9, 2018.
  21. ^ a b c d e f g h i j What are the different LTspice file types; LTwiki.
  22. ^ a b Subcircuit structure guide; Audio perfection.
  23. ^ Save Plot Configurations; LTwiki.

Further reading[edit]

Books with LTspice chapters

External links[edit]