If a rawfile is not specified, then output plots (in "line-printer" form) and tables can be printed according to the .PRINT, .PLOT, and .FOUR control lines, described next. .PLOT, .PRINT, and .FOUR lines are meant for compatibility with Spice2.
option | effect |
ABSTOL=x | resets the absolute current error tolerance of the program.
The default value is 1 picoamp. |
BADMOS3 | Use the older version of the MOS3 model with the "kappa" discontinuity. |
CHGTOL=x | resets the charge tolerance of the program. The default value is 1.0e-14. |
DEFAD=x | resets the charge tolerance of the program. The default value is 1.0e-14. |
DEFAS=x | resets the value for MOS source diffusion area; the default is 0.0. |
DEFL=x | resets the value for MOS source diffusion area; the default is 0.0. |
DEFW=x | resets the value for MOS channel width; the default is 100.0 micrometer |
GMIN=x | resets the value of GMIN, the minimum conductance allowed by the program. The default value is 1.0e-12. |
ITL1=x | resets the dc iteration limit. The default is 100. |
ITL2=x | resets the dc transfer curve iteration limit. The default is 50. |
ITL3=x | resets the lower transient analysis iteration limit. the default value is 4. (Note: not implemented in Spice3). |
ITL4=x | resets the transient analysis timepoint iteration limit. the default is 10. |
ITL5=x | resets the transient analysis total iteration limit. the default is 5000. Set ITL5=0 to omit this test. (Note: not implemented in Spice3). |
KEEPOPINFO | Retain the operating point information when either an
AC, Distortion, or Pole-Zero analysis is run. This is particularly useful if the circuit is large and you do not want to run a (redundant) ".OP" analysis. |
METHOD=name | ets the numerical integration method used by SPICE.
Possible names are "Gear" or "trapezoidal" (or just "trap"). The default is trapezoidal. |
PIVREL=x | resets the relative ratio between the largest column entry and
an acceptable pivot value. The default value is 1.0e-3.
In the numerical pivoting algorithm the allowed minimum pivot value is determined by EPSREL=AMAX1(PIVREL*MAXVAL, PIVTOL) where MAXVAL is the maximum element in the column where a pivot is sought (partial pivoting). |
PIVTOL=x | resets the absolute minimum value for a matrix entry to be accepted as a pivot. The default value is 1.0e-13. |
RELTOL=x | resets the relative error tolerance of the program. The default value is 0.001 (0.1%). |
TEMP=x | Resets the operating temperature of the circuit. The default value is 27 deg C (300 deg K). TEMP can be overridden by a temperature specification on any temperature dependent instance. |
TNOM=x | resets the nominal temperature at which device parameters are measured. The default value is 27 deg C (300 deg K). TNOM can be overridden by a specification on any temperature dependent device model. |
TRTOL=x | resets the transient error tolerance. The default value is 7.0. This parameter is an estimate of the factor by which SPICE overestimates the actual truncation error. |
TRYTOCOMPACT | Applicable only to the LTRA model. When specified, the simulator tries to condense LTRA transmission lines' past history of input voltages and currents. |
VNTOL=x | resets the absolute voltage error tolerance of the program. The default value is 1 microvolt. |
option | effect |
ACCT | causes accounting and run time statistics to be printed |
LIST | causes the summary listing of the input data to be printed |
NOMOD | suppresses the printout of the model parameters |
NOPAGE | suppresses page ejects |
NODE | causes the printing of the node table. |
OPTS | causes the option values to be printed. |
The IC line is for setting transient initial conditions. It has two different interpretations, depending on whether the UIC parameter is specified on the .TRAN control line. Also, one should not confuse this line with the .NODESET line. The .NODESET line is only to help dc convergence, and does not affect final bias solution (except for multi-stable circuits). The two interpretations of this line are as follows:
1. When the UIC parameter is specified on the .TRAN line, then the node voltages specified on the .IC control line are used to compute the capacitor, diode, BJT, JFET, and MOSFET initial conditions. This is equivalent to specifying the IC=... parameter on each device line, but is much more convenient. The IC=... parameter can still be specified and takes precedence over the .IC values. Since no dc bias (initial transient) solution is computed before the transient analysis, one should take care to specify all dc source voltages on the .IC control line if they are to be used to compute device initial conditions.
2. When the UIC parameter is not specified on the .TRAN control line, the dc bias (initial transient) solution is computed before the transient analysis. In this case, the node voltages specified on the .IC control line is forced to the desired initial values during the bias solution. During transient analysis, the constraint on these node voltages is removed. This is the preferred method since it allows SPICE to compute a consistent dc solution.
The DC line defines the dc transfer curve source and sweep limits (again with capacitors open and inductors shorted). SRCNAM is the name of an independent voltage or current source. VSTART, VSTOP, and VINCR are the starting, final, and incrementing values respectively. The first example causes the value of the voltage source VIN to be swept from 0.25 Volts to 5.0 Volts in increments of 0.25 Volts. A second source (SRC2) may optionally be specified with associated sweep parameters. In this case, the first source is swept over its range for each value of the second source. This option can be useful for obtaining semiconductor device output characteristics. See the second example circuit description in Appendix A.
If the optional parameter F2OVERF1 is not specified, .DISTO does a harmonic
analysis - i.e., it analyses distortion in the circuit using only a single
input frequency F1, which is swept as specified by arguments of the .DISTO
command exactly as in the .AC command. Inputs at this frequency may be
present at more than one input source, and their magnitudes and phases
are specified by the arguments of the DISTOF1 keyword in the input file
lines for the input sources (see the description for independent sources).
(The arguments of the DISTOF2 keyword are not relevant in this case). The
analysis produces information about the A.C. values of all node voltages
and branch currents at the harmonic frequencies 2 F1 and 3 F1, vs. the
input frequency F1 as it is swept. (A value of 1 (as a complex distortion
output) signifies cos( 2 (2 F1)
t) at 2 F1 and cos (2
(3 F1)
t ) at 3 F1, using the convention that 1 at the input fundamental frequency
is equivalent to cos( 2
F1 t
).) The distortion component desired (2 F1 or 3 F1) can be selected using
commands in nutmeg, and then printed or plotted. (Normally, one is interested
primarily in the magnitude of the harmonic components, so the magnitude
of the AC distortion value is looked at). It should be noted that these
are the A.C. values of the actual harmonic components, and are not equal
to HD2 and HD3. To obtain HD2 and HD3, one must divide by the corresponding
A.C. values at F1, obtained from an .AC line. This division can be done
using nutmeg commands.
If the optional F2OVERF1 parameter is specified, it should be a real number between (and not equal to) 0.0 and 1.0; in this case, .DISTO does a spectral analysis. It considers the circuit with sinusoidal inputs at two different frequencies F1 and F2. F1 is swept according to the .DISTO control line options exactly as in the .AC control line. F2 is kept fixed at a single frequency as F1 sweeps - the value at which it is kept fixed is equal to F2OVERF1 times FSTART. Each independent source in the circuit may potentially have two (superimposed) sinusoidal inputs for distortion, at the frequencies F1 and F2. The magnitude and phase of the F1 component are specified by the arguments of the DISTOF1 keyword in the source's input line (see the description of independent sources); the magnitude and phase of the F2 component are specified by the arguments of the DISTOF2 keyword. The analysis produces plots of all node voltages/branch currents at the intermodulation product frequencies F1 + F2, F1 - F2, and (2 F1) - F2, vs the swept frequency F1. The IM product of interest may be selected using the setplot command, and displayed with the print and plot commands. It is to be noted as in the harmonic analysis case, the results are the actual AC voltages and currents at the intermodulation frequencies, and need to be normalized with respect to .AC values to obtain the IM parameters.
If the DISTOF1 or DISTOF2 keywords are missing from the description of an independent source, then that source is assumed to have no input at the corresponding frequency. The default values of the magnitude and phase are 1.0 and 0.0 respectively. The phase should be specified in degrees.
It should be carefully noted that the number F2OVERF1 should ideally
be an irrational number, and that since this is not possible in practice,
efforts should be made to keep the denominator in its fractional representation
as large as possible, certainly above 3, for accurate results (i.e., if
F2OVERF1 is represented as a fraction A/B, where A and B are integers with
no common factors, B should be as large as possible; note that A < B
because F2OVERF1 is constrained to be < 1). To illustrate why, consider
the cases where F2OVERF1 is 49/100 and 1/2. In a spectral analysis, the
outputs produced are at F1 + F2, F1 - F2 and 2 F1 - F2. In the latter case,
F1 - F2 = F2, so the result at the F1-F2 component is erroneous because
there is the strong fundamental F2 component at the same frequency. Also,
F1 + F2 = 2 F1 - F2 in the latter case, and each result is erroneous individually.
This problem is not there in the case where F2OVERF1 = 49/100, because
F1-F2 = 51/100 F1 < > 49/100 F1 = F2. In this case, there are two very
closely spaced frequency components at F2 and F1 - F2. One of the advantages
of the Volterra series technique is that it computes distortions at mix
frequencies expressed symbolically (i.e. n F1
m F2), therefore one is able to obtain the strengths of distortion components
accurately even if the separation between them is very small, as opposed
to transient analysis for example. The disadvantage is of course that if
two of the mix frequencies coincide, the results are not merged together
and presented (though this could presumably be done as a postprocessing
step). Currently, the interested user should keep track of the mix frequencies
himself or herself and add the distortions at coinciding mix frequencies
together should it be necessary.
The .NOISE control line produces two plots - one for the Noise Spectral Density curves and one for the total Integrated Noise over the specified frequency range. All noise voltages/currents are in squared units V2/Hz and A2/Hz for spectral density, V2 and A2 for integrated noise).
In interactive mode, the command syntax is the same except that the first field is PZ instead of .PZ. To print the results, one should use the command 'print all'.
UIC (use initial conditions) is an optional keyword which indicates that the user does not want SPICE to solve for the quiescent operating point before beginning the transient analysis. If this keyword is specified, SPICE uses the values specified using IC=... on the various elements as the initial transient condition and proceeds with the analysis. If the .IC control line has been specified, then the node voltages on the .IC line are used to compute the initial conditions for the devices. Look at the description on the .IC control line for its interpretation when UIC is not specified.
V(N1<,N2>)
VR - real part
VI - imaginary part
VM - magnitude
VP - phase
VDB - 20 log10(magnitude)
There is no limit on the number of .PRINT lines for each type of analysis.
The Plot line defines the contents of one plot of from one to eight output variables. PLTYPE is the type of analysis (DC, AC, TRAN, NOISE, or DISTO) for which the specified outputs are desired. The syntax for the OVI is identical to that for the .PRINT line and for the plot command in the interactive mode.
The overlap of two or more traces on any plot is indicated by the letter X.
When more than one output variable appears on the same plot, the first variable specified is printed as well as plotted. If a printout of all variables is desired, then a companion .PRINT line should be included.
There is no limit on the number of .PLOT lines specified for each type of analysis.