Passive Elements

Resistors

The general syntax for including a resistor element in a Star-Hspice netlist is:

General form:
Rxxx n1 n2 <mname> <R = >resistance <<TC1 = >val> <<TC2 = >val>
+ <SCALE = val> <M = val> <AC = val> <DTEMP = val> <L = val>
+ <W = val> <C = val>

where the resistance can be either a value (in units of ohms) or an equation. The only required fields are the two nodes and the resistance or the model name. If the parameter labels are used, the optional arguments may come in any order, although the nodes and model name must come first. If a resistor model is specified (see Using Passive Device Models), the resistance value is optional.

The arguments are defined as:

Rxxx

Resistor element name. Must begin with "R", which can be followed by up to 1023 alphanumeric characters.

n1

Positive terminal node name

n2

Negative terminal node name

mname

Resistor model name. This name is used in elements to reference a resistor model.

R = resistance

Resistance value at room temperature. This may be a numeric value or parameter in ohms, or a function of any node voltages, branch currents, or any independent variables such as time, frequency (HERTZ), or temperature.

TC1

First-order temperature coefficient for the resistor. Refer to Resistor Temperature Equations for temperature-dependent relations.

TC2

Second-order temperature coefficient for the resistor

SCALE

Element scale parameter; scales resistance by its value. Default = 1.0.

M

Multiplier used to simulate parallel resistors. For example, to represent two parallel instances of a resistor, set M = 2 to multiply the number of resistors by 2. Default = 1.0.

AC

AC resistance used in the AC analysis. Default = Reff.

DTEMP

Temperature difference between the element and the circuit in Celsius. Default = 0.0.

L

Resistor length in meters. Default = 0.0, if L is not specified in a resistor model.

W

Resistor width. Default = 0.0, if W is not specified in the model.

C

Capacitance connected from node n2 to bulk. Default = 0.0, if C is not specified in a resistor model.

Example

In the following example, resistor R1 is connected from node Rnode1 to node Rnode2 with a resistance of 100 ohms.

R1 Rnode1 Rnode2 100

Resistor RC1 connected from node 12 to node 17 with a resistance of 1 kilohm, and temperature coefficients of 0.001 and 0.

RC1 12 17 R = 1k TC1 = 0.001 TC2 = 0

Resistor Rterm connected from node input to ground with a resistance determined by the square root of the analysis frequency (nonzero for AC analysis only).

Rterm input gnd R = 'sqrt(HERTZ)'

Resistor Rxxx from node 98999999 to node 87654321 with a resistance of 1 ohm for DC and time-domain analyses, and 10 gigohms for AC analyses.

Rxxx 98999999 87654321 1 AC = 1e10

Capacitors

The general syntax for including a capacitor element in a Star-Hspice netlist is:

General form:
Cxxx n1 n2 <mname> <C = >capacitance <<TC1 = >val> <<TC2 = >val>
+ <SCALE = val> <IC = val> <M = val> <W = val> <L = val>
+ <DTEMP = val>
or
Cxxx n1 n2 <C = >'equation' <CTYPE = val> <above options...>
Polynomial form:
Cxxx n1 n2 POLY c0 c1... <above options...>

where the capacitance can be specified as a numeric value in units of farads, as an equation or as a polynomial of the voltage. The only required fields are the two nodes and the capacitance or model name. If the parameter labels are used, the optional arguments may come in any order, although the nodes and model name must come first. If a capacitor model is specified (see Using Passive Device Models), the capacitance value is optional.

If the equation form of the capacitance specification is used, the CTYPE parameter is used to determine the method of capacitance charge calculation. The calculation is different depending on whether a self-referential voltage is used in the equation (that is. the voltage across the capacitor whose capacitance is determined by the equation).

To avoid syntactic conflicts, if a capacitor model exists using the same name as a parameter used to specify the capacitance, the model name is taken. In the following example, C1 assumes the value of capacitance determined using the model and not the parameter.

.PARAMETER CAPXX = 1
C1 1 2 CAPXX
.MODEL CAPXX C CAP = 1

The arguments are defined as:

Cxxx

Capacitor element name. Must begin with a "C", which can be followed by up to 1023 alphanumeric characters.

n1

Positive terminal node name

n2

Negative terminal node name

mname

Capacitance model name. This name is used in elements to reference a capacitor model.

C = capacitance

Capacitance at room temperature as a numeric value or parameter in farads.

TC1

First-order temperature coefficient for the capacitor. Refer to Capacitance Temperature Equation for temperature-dependant relations.

TC2

Second-order temperature coefficient for the capacitor

SCALE

Element scale parameter, scales capacitance by its value. Default = 1.0.

IC

Initial voltage across the capacitor in volts. This value is used as the DC operating point voltage when UIC is specified in the .TRAN statement and is overridden by the .IC statement.

M

Multiplier used to simulate multiple parallel capacitors. Default = 1.0

W

Capacitor width in meters. Default = 0.0, if W is not specified in a capacitor model.

L

Capacitor length in meters. Default = 0.0, if L is not specified in a capacitor model.

DTEMP

Element temperature difference with respect to the circuit temperature in Celsius. Default = 0.0.

C = 'equation'

Capacitance at room temperature specified as a function of any node voltages, branch currents, or any independent variables such as time, frequency (HERTZ), or temperature.

CTYPE

Determines capacitance charge calculation for elements with capacitance equations. If capacitance equation is a function of v(n1,n2), set CTYPE = 1. This setting must be used correctly to ensure proper capacitance calculations and hence simulation results. Default = 0.

POLY

Keyword to specify capacitance given by a polynomial.

c0 c1...

Coefficients of a polynomial in voltage describing the capacitor value. c0 represents the magnitude of the 0th order term, c1 represents the magnitude of the 1st order term, and so on. Note that the coefficients can not be parameterized.

Example

In the following example, capacitor C1 is connected from node 1 to node 2 with a capacitance of 20 picofarads:

C1 1 2 20p

Cshunt refers to three capacitors in parallel connected from node output to ground, each with a capacitance of 100 femtofarads.

Cshunt output gnd C = 100f M = 3

Capacitor Cload connected from node driver to node output with a capacitance determined by the voltage on node capcontrol times 1E-6, and an initial voltage across the capacitor of 0 volts.

Cload driver output C = '1u*v(capcontrol)' CTYPE = 1 IC = 0v

Capacitor C99 connected from node in to node out with a capacitance determined by the polynomial C = c0 + c1*v + c2*v*v, where v is the voltage across the capacitor.

C99 in out POLY 2.0 0.5 0.01

Inductors

The general syntax for including an inductor element in a Star-Hspice netlist is:

 
General Form:
Lxxx n1 n2 <L = >inductance <<TC1 = >val> <<TC2 = >val>
+ <SCALE = val> <IC = val> <M = val> <DTEMP = val> <R = val>
or
Lxxx n1 n2 L = `equation' <LTYPE = val> <above options...>
Polynomial form:
Lxxx n1 n2 POLY c0 c1... <above options...>
Magnetic Winding form:
Lxxx n1 n2 NT = turns <above options...>

where the inductance can be either a value (in units of henries), an equation, a polynomial of the current or a magnetic winding. The only required fields are the two nodes and the inductance or model name. If the parameter labels are used, the optional arguments may come in any order, although the nodes and model name must come first. If an inductor model is specified (see Using Passive Device Models), the inductance value is optional.

The arguments are defined as:

Lxxx

Inductor element name. Must begin with L, which can be followed by up to 1023 alphanumeric characters.

n1

Positive terminal node name.

n2

Negative terminal node name.

TC1

First-order temperature coefficient for the inductor. Refer to Inductor Temperature Equation for temperature-dependent relations.

TC2

Second-order temperature coefficient for the inductor.

SCALE

Element scale parameter; scales inductance by its value. Default = 1.0.

IC

Initial current through the inductor in amperes. This value is used as the DC operating point voltage when UIC is specified in the .TRAN statement and is overridden by the .IC statement.

L = inductance

Inductance value. This may be a numeric value or parameter in henries, or a function of any node voltages, branch currents, or any independent variables such as time, frequency (HERTZ), or temperature.

M

Multiplier used to simulate parallel inductors. Default = 1.0.

DTEMP

Temperature difference between the element and the circuit in Celsius. Default = 0.0.

R

Resistance of inductor in ohms. Default = 0.0.

L = `equation '

Inductance at room temperature specified as a function of any node voltages, branch currents, or any independent variables such as time, frequency (HERTZ), or temperature.

LTYPE

Determines inductance flux calculation for elements with inductance equations. If inductance equation is a function of i(Lxxx), set LTYPE = 1. This setting must be used correctly to ensure proper inductance calculations and hence simulation results. Default = 0.

POLY

Keyword to specify inductance given by a polynomial.

c0 c1...

Coefficients of a polynomial in current describing the inductor value. c0 represents the magnitude of the 0th order term, c1 represents the magnitude of the 1st order term, and so on.

NT = turns

Number representing the number of turns of an inductive magnetic winding.

Example

In the following example, inductor L1 is connected from node coilin to node coilout with an inductance of 100 nanohenries.

L1 coilin coilout 100n

Inductor Lloop connected from node 12 to node 17 with an inductance of 1 microhenry, and temperature coefficients of 0.001 and 0.

Lloop 12 17 L = 1u TC1 = 0.001 TC2 = 0

Inductor Lcoil connected from node input to ground with an inductance determined by the product of the current through the inductor and 1E-6.

Lcoil input gnd L = '1u*i(input)' LTYPE = 0

Inductor L99 connected from node in to node out with an inductance determined by the polynomial L = c0 + c1*i + c2*i*i, where i is the current through the inductor. The inductor is also specified to have a DC resistance of 10 ohms.

L99 in out POLY 4.0 0.35 0.01 R = 10

Inductor L connected from node 1 to node 2 as a magnetic winding element with 10 turns of wire.

L 1 2 NT = 10

Mutual Inductors

The general syntax for including a mutual inductor element in a Star-Hspice netlist is:

General form:
Kxxx Lyyy Lzzz <K = >coupling
Mutual Core form:
Kaaa Lbbb <Lccc ... <Lddd>> mname <MAG = magnetization>

where "coupling" is a unitless value from zero to one representing the coupling strength. If the parameter labels are used, the optional arguments may come in any order, although the nodes and model name must come first. If an inductor model is specified (see Using Passive Device Models), the inductance value is optional.

The arguments are defined as:

Kxxx

Mutual inductor element name. Must begin with "K", which can be followed by up to 1023 alphanumeric characters.

Lyyy

Name of the first of two coupled inductors.

Lzzz

Name of the second of two coupled inductors.

K = coupling

Coefficient of mutual coupling. K is a unitless number with magnitude greater than 0 and less than or equal to 1. If K is negative, the direction of coupling is reversed. This reversal is equivalent to reversing the polarity of either of the coupled inductors. The K = coupling syntax should be used when using a parameterized value or an equation.

Kaaa

Saturable core element name. Must begin with "K", which can be followed by up to 1023 alphanumeric characters.

Lbbb, Lccc, Lddd

The names of the windings about the Kaaa core. One winding element is required, and each winding element must have the magnetic winding syntax.

mname

Saturable core model name. See Using Passive Device Models for model information.

MAG =
magnetization

Initial magnetization of the saturable core. Can be set to +1, 0 and -1, where +/- 1 refer to positive and negative values of the model parameter BS (see Using Passive Device Models).

The coupling coefficient should be determined by the user based on any geometric and spatial information known. The final coupling inductance will be determined by dividing the coupling coefficient by the square-root of the product of the two self-inductances.

When using the mutual inductor element to calculate the coupling between more than two inductors, Star-Hspice can automatically calculate an approximate second-order coupling. See the third example below for a specific situation.


NOTE: The automatic inductance calculation is only an estimation and is accurate for a subset of geometries. The second-order coupling coefficient is simply the product of the two first-order coefficients, which is not correct for many geometries.
Example

Inductors Lin and Lout are coupled with a coefficient of 0.9.

K1 Lin Lout 0.9

Inductors Lhigh and Llow are coupled with a coefficient equal to the value of the parameter COUPLE.

Kxfmr Lhigh Llow K = COUPLE

The two mutual inductors K1 and K2 couple L1 and L2, and L2 and L3, respectively. The coupling coefficients are 0.98 and 0.87. Star-Hspice automatically calculates the mutual inductance between L1 and L3, with a coefficient of 0.98*0.87 = 0.853.

K1 L1 L2 0.98
K2 L2 L3 0.87
 
Star-Hspice Manual - Release 2001.2 - June 2001