Frequently Asked Questions
Can I run a Spice simulation?
[ Schematic / Spice ]
Spice simulation is a complex subject. Simulation requires a source schematic. The program can provide appropriate schematics but configuring a schematic for Spice simulation can be challenging. This document offers an overview of how the program links to third party Spice simulation programs.
Much detail will not be covered here, simply because there is a comprehensive resource to be found under [Help], [Contents] on the [Index] tab under the 'Spice' entry. Multiple linked pages give a detailed insight into the configuration and use of Spice schematics.
The program is configurable to link to a variety of third party Spice simulation programs by configuring the [Simulation] menu available from schematic designs. There are often quite subtle differences in the way different simulation programs accept data so the correct program must be set up for exported netlists to function. To create these netlists Easy-PC includes a Spice parser for each type of netlist. The parser collects its information from specialised value names dedicated to supporting this function. A full list of these names and their use is included in the Spice help pages. The parser locates the appropriate value fields and combines the contents into the netlist. These value fields will, amongst other data, describe the appropriate Spice model provided by the third party simulator which may use a different part number from thedevice in the schematic.
Another critical parameter is 'SpicePinOrder'. Pins may be ordered by pin name as well as pin number, a useful facility as it's the pin numbers of the original schematic symbol which are otherwise required, but these are often hidden because the pcb numbering is displayed by default. It's critical that this is correct and corresponds to the order defined in the Spice library as devices with crossed connections will not function correctly.
The most common problems with schematics failing to simulate, apart from mapping errors, are a failure to provide a reference ground, failure to provide a d.c. path, and creating zero ohm loops. Finally using the wrong model can also cause issues:
1) The simplest way to guarantee a ground connection is to use a net name of '0' which is recognised by all Spice simulation programs as a ground reference.
2) A d.c. path must be provided to any 'floating' parts of a design. Typically this occurs where there's a transformer in the circuit. Bridging the transformer, or linking any other floating section of the design to the reference using a very high value resistor is usually the simplest way to overcome this as it provides a reference voltage (albeit tenuous).
3) Zero ohm loops occur when an ideal component differs from the real world equivalent. The usual culprit is some form of inductor, where an ideal component has zero resistance but a real world component does have a low but finite resistance. So, include a low value series resistor in any loop of the circuit which otherwise doesn't have any resistance. Essentially this will be any tuned circuit and any transformar primary or secondary winding. Resitance in the primary is not reflected back to the secondary in the simulation, and vice versa.
4) Many Spice models have their own specific characteristics, so you need to be aware of compatibility issues when using third party Spice models. For example, LT Spice voltage probes differ from those used by Simetrix, so a probe from one of these programs won't be recognised by the other. This sort of mismatch can be difficult to find, so it's a possibility that must be considered if design doesn't simulate as expected.