Resistors
The value of resistance used in the actual simulation is the set value of resistance multiplied by its "M" value. "M" is a multiplier.
Additionally, SuperSpice supports two main extensions to Spice3/XSpice with regard to resistors.
Semiconductor Resistors
Semiconductor resisters are resistors with specifications related to integrated circuit design. These resistors are specified by length and width of resistor with its specific resistance specified in a .model. This resistance is given by:
R = RSH * (L_NAROW_L)/(W_NARROW_W)
The value of resistance used in the simulation is R * M.
Semiconductor Resistors - 1/f Noise
It is assumed that there is a fundamental noise current dependant on the square root of the resistor dc current:
In = KIdcA per sqrtHz
and that the noise power spectrum has a factor of 1/f
Thus, 1/f is calculated as:
Vn2 = IAFdc.KF.R2 / (W.L.F)
Where KF an AF are specified in the .model file
AC Frequency Dependant Resister
An AC resistance that varies with the square root of frequency. This is used in many models of inductors. To use this feature, connect a resistor to semiconductor resistor model with the following syntax:
.model AnyResisterName r(sqrthz=k rsh=value)
sqrthz
"k" is the numerical constant that specifies the resistance constant in the equation:
R=k.sqrt(f)
R, which is now a function of frequency, will be used as the value in the AC analysis of the circuit. This value is not used for op, dc or transient analysis.
rsh
rsh specifies the resistance that is used in all analysis other then an AC analysis, and "value" is the value of this resistance.
The resistor must be called from a node line with L=1 and W=1
Example:
.subckt InductorModel 1 3
L1 1 2 1.2u
R1 2 3 FrequencyResistor L=1 W=1
.model FrequencyResistor r(sqrthz=10 rsh=1k)
.ends
Two state resistor
This resistor lets different values of resister to be used in the AC and Transient runs. The main purpose of this resistor is as a feedback loop "loop cutter". This allows the same schematic to be used when AC, DC and Transient runs are used together. Its use achieves the ability to break the loop for AC open loop gain plots, yet still have correct closed loop topology for transient and DC conditions.
Similar to the above frequency dependant resistor, the ac value is specified in a model as:
.model resistor_switch r(rac=1k rsh=10k)
rac is the value used in AC runs, rsh is the value used in all other runs.
Example:
This model forms a T switch that connects the input to the output for dc, tran, and op but opens the connection for ac.
.SUBCKT LoopCutter_XN Vin Vout
RSeries1 Vin Vmid SeriesResistor L=1 W=1
RSeries2 Vmid Vout SeriesResistor L=1 W=1
RShunt Vmid 0 ShuntResistor L=1 W=1
.MODEL ShuntResistor r(rac=1e-3 RSH=1e9)
.MODEL SeriesResistor r(rac=1e9 RSH=1e-3)
.ends
There is a symbol and model for this function in the SuperSpice library.
See also Resistor Labels