home *** CD-ROM | disk | FTP | other *** search
-
-
-
- SPICE(1) UNIX Programmer's Manual SPICE(1)
-
-
-
- NAME
- spice - circuit simulator
-
- SYNOPSIS
- spice [ -n ] [ -t term ] [ -m mfbcap ] [ -r rawfile] [ -b ]
- [ -i ] [ input file ... ]
-
- DESCRIPTION
- This manual page describes the commands available for
- interactive use of SPICE3. For details of circuit descrip-
- tions and the process of simulating a circuit, see the
- SPICE3 User's Manual. The commands available are a superset
- of those available for nutmeg - only the additional commands
- available in SPICE3 are described here.
-
- Arguments are:
-
- -n (or -N)
- Don't try to source the file ".spiceinit" upon startup.
- Normally SPICE3 tries to find the file in the current
- directory, and if it is not found then in the user's
- home directory.
-
- -t term (or -T term)
- The program is being run on a terminal with mfb name
- term.
-
- -m mfbcap (or -M mfbcap)
- Use mfbcap as the file containing terminal descrip-
- tions, instead of the default (~cad/lib/mfbcap). This
- option and the -m option may also be used with the set
- command. Note that is the environment variable MFBCAP
- is set then it becomes the default mfbcap file, instead
- of ~cad/lib/mfbcap.
-
- -b (or -B)
- Run in batch mode. SPICE3 will read the standard input
- or the specified input file and do the simulation. Note
- that if the standard input is not a terminal, SPICE3
- will default to batch mode, unless the -i flag is
- given.
-
- -s (or -S)
- Run in server mode. This is like batch mode, except
- that a temporary rawfile is used and then written to
- the standard output, preceded by a line with a single
- "@", after the simulation is done. This mode is used by
- the spice daemon.
-
- -i (or -I)
- Run in interactive mode. This is useful if the standard
- input is not a terminal but interactive mode is
-
-
-
- Printed 12/9/85 20 January 1985 1
-
-
-
-
-
-
- SPICE(1) UNIX Programmer's Manual SPICE(1)
-
-
-
- desired. Command completion is not available unless the
- standard input is a terminal, however.
-
- -r rawfile (or -R rawfile)
- Use rawfile as the default file into which the results
- of the simulation are saved.
-
- Further arguments are taken to be SPICE3 input decks, which
- are read and saved. (If batch mode is requested then they
- are run immediately.)
-
- SPICE3 will accept any SPICE2 input decks, and output ascii
- plots, fourier analyses, and node printouts as specified in
- .plot, .four, and .print cards. If a out parameter is given
- on a .width card, the effect is the same as set width = ....
- Since SPICE3 ascii plots do not use multiple ranges, how-
- ever, if vectors together on a .plot card have different
- ranges they will not provide as much information as they
- would in SPICE2. The output of SPICE3 is also much less ver-
- bose than SPICE2, in that the only data printed is that
- requested by the above cards.
-
- Vector names are the same as in nutmeg, with this addition:
- a name such as @name[param], where name is either the name
- of a device instance or model, denotes the value of the
- param parameter of the device or model. See the SPICE3
- User's Manual for details of what parameters are available.
- The value is a vector of length 1.
-
- SPICE3 commands are as follows (these are only those com-
- mands not also available in nutmeg - consult the nutmeg
- manual page for more commands):
-
- setcirc [circuit name]
- Change the current circuit. The current circuit is the
- one that is used for the simulation commands below.
- When a circuit is loaded with the source command (see
- below) it becomes the current circuit.
-
- op [.op card args]
- Do an operating point analysis.
-
- tran [.tran card args]
- Do a transient analysis.
-
- ac [.ac card args]
- Do an ac analysis.
-
- dc [.dc card args]
- Do a dc transfer curve analysis.
-
- listing [logical] [physical] [deck]
-
-
-
- Printed 12/9/85 20 January 1985 2
-
-
-
-
-
-
- SPICE(1) UNIX Programmer's Manual SPICE(1)
-
-
-
- Print a listing of the current circuit. If the logical
- argument is given, the listing is with all continuation
- lines collapsed into one line, and if the physical
- argument is given the lines are printed out as they
- were found in the file. The default is logical. A deck
- listing is just like the physical listing, except
- without the line numbers it recreates the input file
- verbatim (except that it does not preserve case).
-
- edit [file]
- Print the current SPICE3 deck into a file, call up the
- editor on that file and allow the user to modify it,
- and then read it back in, replacing the origonal deck.
- If a filename is given, then edit that file and load
- it, making the circuit the current one.
-
- device devname ...
- Print out all the available parameters for the named
- devices.
-
- continue
- Continue after a stop.
-
- state XXX
- Print the state of the circuit. (unimplemented)
-
- save [all] [output ...] or .save [all] [output ...]
- Save a set of outputs, discarding the rest. If a node
- has been mentioned in a save command, it will appear in
- the working plot after a run has completed, or in the
- rawfile if spice is run in batch mode. If a node is
- traced or plotted (see below) it will also be saved.
- For backward compatibility, if there are no save com-
- mands given, all outputs are saved.
-
- stop [ after n] [ when something cond something ] ...
- Set a breakpoint. The argument after n means stop after
- n iteration number n, and the argument when something
- cond something means stop when the first something is
- in the given relation with the second something, the
- possible relations being eq or = (equal to), ne or <>
- (not equal to), gt or > (greater than), lt or < (less
- than), ge or >= (greater than or equal to), and le or
- <= (less than or equal to). IO redirection is disabled
- for the stop command, since the relational operations
- conflict with it (it doesn't produce any output any-
- way). The somethings above may be node names in the
- running circuit, or real values. (You can do stop after
- 1 lt 0, although it isn't much use.) If more than one
- condition is given, e.g. stop after 4 when v(1) > 4
- when v(2) < 2, the conjunction of the conditions is
- implied.
-
-
-
- Printed 12/9/85 20 January 1985 3
-
-
-
-
-
-
- SPICE(1) UNIX Programmer's Manual SPICE(1)
-
-
-
- trace [ node ...]
- Trace nodes. Every iteration the value of the node is
- printed to the standard output.
-
- iplot [ node ...]
- Incrementally plot the values of the nodes while SPICE3
- runs.
-
- step [number]
- Iterate number times, or once, and then stop.
-
- status
- Display all of the traces and breakpoints currently in
- effect.
-
- delete [debug number ...]
- Delete the specified breakpoints and traces. The debug
- numbers are those shown by the status command. (Unless
- you do status > file, in which case the debug numbers
- aren't printed.)
-
- reset
- Throw out any intermediate data in the circuit (e.g,
- after a breakpoint or after one or more analyses have
- been done already), and re-parse the deck. The circuit
- can then be re-run. (Note: this command used to be end
- in SPICE 3a5 and earlier versions -- end is now used
- for control structures (stay tuned...)).
-
- run [rawfile]
- Run the simulation as specified in the input file. If
- there were any of the control cards .ac, .op, .tran, or
- .dc, they are executed. The output is put in rawfile if
- it was given, in addition to being available interac-
- tively.
-
- source file
- Read the SPICE3 input file file. Nutmeg and SPICE3 com-
- mands may be included in the file, and are executed
- when read. Needless to say, device names may not have
- names that are identical with nutmeg command names. The
- first line in any input file is considered a title line
- and not parsed but kept as the name of the circuit. The
- exception to this rule is the file .spiceinit.
-
- There are several set variables that SPICE3 uses but nutmeg
- does not. They are:
-
- modelcard
- The name of the model card (normally
- .model).
-
-
-
-
- Printed 12/9/85 20 January 1985 4
-
-
-
-
-
-
- SPICE(1) UNIX Programmer's Manual SPICE(1)
-
-
-
- noaskquit
- Do not check to make sure that there are no
- circuits suspended and no plots unsaved.
- Normally SPICE3 will warn the user when he
- tries to quit if this is the case.
-
- nobjthack
- Assume that BJT's have 4 nodes.
-
- noparse
- Don't attempt to parse decks when they are
- read in (useful for debugging). Of course,
- they cannot be run if they are not parsed.
-
- nosubckt
- Don't expand subcircuits.
-
- renumber
- Renumber input lines when a deck has
- .include's.
-
- spdebug
- Print spice debugging information (as
- opposed to front-end debugging information
- and C-shell parser debugging information...)
-
- subend
- The card to end subcircuits (normally
- .ends).
-
- subinvoke
- The prefix to invoke subcircuits (normally
- x).
-
- substart
- The card to begin subcircuits (normally
- .subckt).
-
- There are a number of rusage parameters available, in addi-
- tion to the ones available in nutmeg:
-
- ducks
- How many ducks have been used.
-
- If there are subcircuits in the input file, SPICE3 expands
- instances of them. A subcircuit is delimited by the cards
- .subckt and .ends, or whatever the value of the variables
- substart and subend is, respectively. An instance of a sub-
- circuit is created by specifying a device with type 'x' -
- the device line is written
-
- xname node1 node2 ... subcktname
-
-
-
- Printed 12/9/85 20 January 1985 5
-
-
-
-
-
-
- SPICE(1) UNIX Programmer's Manual SPICE(1)
-
-
-
- where the nodes are the node names that replace the formal
- parameters on the .subckt line. All nodes that are not for-
- mal parameters are prepended with the name given to the
- instance and a ':', as are the names of the devices in the
- subcircuit. If there are several nested subcircuits, node
- and device names look like subckt1:subckt2:...:name. If the
- variable subinvoke is set, then it is used as the prefix
- that specifies instances of subcircuits, instead of 'x'.
-
- VMS NOTES
- The standard suffix for rawspice files in VMS is ".raw".
-
- SEE ALSO
- nutmeg(1), sconvert(1), spice(1), mfb(3), spop(1),
- mfb2lpr(1), mhc(3), SPICE3 User's Guide
-
- AUTHORS
- SPICE3: Tom Quarles (quarles@cad.berkeley.edu)
- User interface: Wayne Christopher (faustus@cad.berkeley.edu)
-
- BUGS
- SPICE3 will recognise all the notations used in SPICE2 .plot
- cards, and will translate vp(1) into ph(v(1)), and so forth.
- However, if there are spaces in these names it won't work.
- Hence v(1, 2) and (-.5, .5) aren't recognised.
-
- BJT's can have either 3 or 4 nodes, which makes it difficult
- for the subcircuit expansion routines to decide what to
- rename. If the fourth parameter has been declared as a model
- name, then it is assumed that there are 3 nodes, otherwise
- it is considered a node. To disable this kludge, you can set
- the variable "nobjthack", which will force BJT's to have 4
- nodes (for the purposes of subcircuit expansion, at least).
-
- The @name[param] notation doesn't work with trace, iplot,
- etc. yet.
-
- CAVEATS
- SPICE3 files specified on the command line are read in
- before the .spiceinit file is read. Thus if you define
- aliases there that you call in a SPICE3 source file men-
- tioned on the command line, they won't be recognised.
-
-
-
-
-
-
-
-
-
-
-
-
-
- Printed 12/9/85 20 January 1985 6
-
-
-
-