Author Topic: MacSpice 3f5 is a complex Circuit Simulator for Mac Classic or Mac OS X  (Read 2316 times)

0 Members and 1 Guest are viewing this topic.

Software Santa

  • Administrator
  • *****
  • Posts: 4257
MacSpice 3f5 is a complex Circuit Simulator for Mac Classic or Mac OS X

MacSpice 3f5

by Charles D. H. Williams


MacSpice simulates and analyses electronic circuits that can range in complexity from a single resistor to an integrated circuit comprising tens-of-thousands of devices. It has users who range in experience from school-age enthusiasts to retired integrated circuit designers. It is used at various universities internationally for research and teaching.

MacSpice has native support for both PowerPC and Intel architecture Apple Macintosh computers. It is derived from, and compatible with, Berkeley Spice 3f5. MacSpice incorporates many improvements to Spice 3f5 – from simple bug-fixes to entirely new commands, algorithms and solution strategies. For example: the memory leaks that affected Spice 3f4 have been cured; new algorithms have been developed to facilitate the simulation of large circuits, and to reduce simulation time; MacSpice provides a robust multi-parameter optimizer and facilities for inter-process communication with other applications.

What MacSpice Does

Circuit simulation is a way of building and testing virtual models of electronic devices. It is usually cheaper and quicker to simulate a design than to build a prototype. MacSpice, like most circuit simulators, requires a text-file description of the circuit as input. This 'netlist' is a list of components and the nodes they connect to. Users may prepare netlists with a text editor, or derive them from a circuit diagram using a third-party schematic-capture application. MacSpice then builds a numerical model of the circuit and analyses this.

A command interpreter (shell) is used to specify the types of analyses that are required and how the results should be processed, saved or displayed. The high quality of the MacSpice command interpreter makes the automation of tasks straightforward.

Simulation is a tool, not a magic-wand. The quality of the results depends on the accuracy of the netlist and the device models use. Within Spice most devices are ideal – its resistor, for example, has just one property: resistance. A real resistor has parasitic inductance and capacitance; if these have a significant influence on the circuit, they must be added explicitly to the netlist.

Frequently Asked Questions

Why does MacSpice require netlists and not have graphical schematic entry?

MacSpice is a Spice simulator, not a schematic capture application. If you need schematic capture, you may wish to consider:

    * DesignWorks Pro (Commercial)
    * Electric VLSI Design System (Open Source)
    * Magic VLSI Editor (Compiles for X Windows under Xdarwin)
    * xcircuit (Open Source) also available as MacPorts or Fink packages

Is there a Windows version of MacSpice?

No. However, it does have a half-sister called WinSpice which is also derived from Berkeley 3f4 but by a different developer – Mike Smith.

How do I interrupt an analysis?

Use the standard command-. key combination by pressing the 'Apple' key simultaneously with the 'full stop' key.

How do I close all the graph windows?

The 'Close' action changes to 'Close All' when the 'option' modifier key is pressed.

Why does this release run slower than another Spice?

It probably doesn't, at least not when the comparison is done fairly. Competitors often benefit because they contain bugs that have been fixed in MacSpice.
One example arises when the TMAX specification is omitted from transient analysis. MacSpice uses the smaller of TSTEP or (TSTOP-TSTART)/50.0, as specified in the Spice 3f5 User's Guide. The uncorrected Berkeley code uses the larger of these values, and therefore calculates at fewer time points. If this is what is required (and it often is) TSTART and TMAX must be specified explicitly.

Another example is that many Spice 3f5 ports, including the early versions of MacSpice, overlook the creation of internal nodes for devices. In the case of BSIM3 models when RSH!=0 there are typically four times as many internal nodes as there are external nodes, so not bothering with internal nodes gives a significant speed advantage, and unreliable answers.

What should I do in the event of a crash?

Use the 'Check for Updates...' item in the MacSpice menu to make sure you have the most recent version.
After a crash, the next time it is run MacSpice should ask for permission to transmit the crash log which will have been created in '˜:Library:Logs:' to the developer.

Why don't copied and pasted graphs ungroup in OmniGraffle?

MacSpice puts classic (PICT 2) structures on the clipboard and not all MacOS X applications can handle these.

Is MacSpice Free Software?

There is no charge made for non-commercial use of MacSpice, but it is not Free Software in the FSF sense.

May I have a copy of the MacSpice source?

The current version of MacSpice is not open source. However, the source code for a previous version of MacSpice 3f4 is on sourceforge.