Glassory Backup Contents • 1 Bipolar Junction Transistor (BJT) • 2 Capacitance Meter • 3 Capacitor • 4 Controlled Limiter Block • 5 Controlled Sine Wave Oscillator • 6 Controlled Sources • 7 Controlled Square Wave Oscillator • 8 Controlled Triangle Wave Oscillator • 9 Current and Voltage Sources • 10 Current-Controlled Switch • 11 Differentiator Block • 12 Diode • 13 Divider Block • 14 Frequency Meter • 15 Gain Block • 16 Ground • 17 Hysteresis Block • 18 Inductance Meter • 19 Inductive Coupling • 20 Inductor • 21 Integrator Block • 22 Junction Field Effect Transistor (JFET) • 23 Limiter Block • 24 Linear Current-Controlled Current Source (CCCS) • 25 Linear Current-Controlled Voltage Source (CCVS) • 26 Linear Voltage-Controlled Current Source (VCCS) • 27 Linear Voltage-Controlled Voltage Source (VCVS) • 28 Lossless Transmission Line • 29 Lossy Transmission Line • 30 Magnetic Core • 31 Marker • 32 MESFET • 33 MOSFET • 34 Multiplier Block • 35 Mutual Inductor • 36 Nonlinear Dependent Sources • 37 Nonlinear Resistor, Conductor, Capacitor, and Inductor • 38 Operational Amplifier (Op Amp) • 39 Piecewise Linear (PWL) Controlled Source • 40 Resistor • 41 S-Domain Transfer Function Block • 42 Summer Block • 43 Thermometer • 44 Transmission lines • 45 Uniform RC Transmission Line • 46 Voltage-Controlled Switch • 47 XSpice Devices and their models • 48 Zener Diode The BJT is an active device which has up to 4 pins. The three standard pins are base, emitter, and collector. These are given in the default symbol. The substrate, which is grounded by default, is the fourth pin. To use the BJT with the substrate, create a new 4-pin BJT using the Device Editor and Symbol Editor. The standard device parameters are AREA, OFF, IC, and T. They are described below: AREA area factor (optional) (If not specified, the default value is 1.0.) OFF initial condition for the DC analysis (optional) initial condition (optional) (Used when a transient analysis is desired, which starts from other IC than the quiescent operating point.) T operating temperature of the device (optional) Area factor scales the model parameters RE and RC. IC VBE is the initial voltage from base emitter. IC VCE is the initial voltage from collector to emitter. TEMP is the overriding temperature. These parameters are based on the Gummel and Poon integral-charge model. If these parameters are not specified, then it will reduce to the simpler Ebers-Moll model. The process model is mandatory for the BJT. Descriptions of the process model parameters are given in the following table: NAME IS BF NF VAF IKF ISE NE BR NR VAR IKR ISC NC RB IRB RBM RE RC CJE VJE MJE TF XTF PARAMETER transport saturation current ideal maximum forward beta forward current emission coefficient forward Early voltage corner forward beta high current roll-off B-E leakage saturation current B-E leakage emission coefficient ideal maximum reverse beta reverse current emission coefficient reverse Early voltage corner reverse beta high current roll-off B-C leakage saturation current B-C leakage emission coefficient zero bias base resistance current where base resistance falls halfway to minimum value minimum base resistance at high currents emitter resistance collector resistance B-E zero bias depletion capacitance B-E built-in potential B-E junction exponential factor ideal forward transit time coefficient for bias dependence of TF UNITS DEFAULT EXAMPLE A 1.0e-16 1.0e-15 100 100 1.0 1 V infinite 200 A infinite 0.01 A 0 1.0e-13 1.5 2 1 0.1 1 1 V infinite 200 A infinite 0.01 A 0 1.0e-13 2 1.5 ohms 0 100 A infinite 0.1 ohms RB 10 ohms 0 1 ohms 0 10 F 0 2pF V 0.75 0.6 0.33 0.33 sec 0 0.1ns 0 VTF ITF PTF CJC VJC MJC voltage describing VBC dependence of TF high-current parameter for effect on TF excess phase at freq=1.0/(TF*2PI)Hz B-C zero bias depletion capacitance B-C built-in potential B-C junction exponential factor of B-C depletion capacitance connected to internal XCJC fraction base node TR ideal reverse transit time CJS zero bias collector-substrate capacitance VJS substrate junction built-in potential MJS substrate junction exponential factor XTB forward and reverse beta temp. exponent EG energy gap for temperature effect on IS XTI temperature exponent for effect on IS KF flicker-noise coefficient AF flicker-noise exponent FC coefficient for forward bias depletion capacitance formula TNOM parameter measurement temperature V A degree F V infinite 0 0 0 0.75 0.33 2pF 0.5 0.5 1 sec F V 0 0 0.75 0 0 eV 1.11 3 0 1 0.5 deg. C 27 10ns 2pF 0.5 50 The Capacitance Meter measures the total capacitance between a circuit node and the ground. The input pin of the device is connected to the measurement node. The output voltage of the device is then a scaled value equal to the total capacitance seen on its input multiplied by the gain parameter. This model is primarily intended as a building block for other models which must sense a capacitance value and alter their behavior based upon it. Model Identifier: cmeter Netlist Format: A<device_name> <in_pin> <out_pin> <model_name> .model <model_name> cmeter {<gain = value>} Example: A1 1 2 cap_meter .model cap_meter cmeter gain = 1 Parameters: The only parameter is the gain with a default value of 1.0. Capacitors are used to store electrical energy. They can filter or remove AC signals or block DC current without disrupting AC signals. A capacitor's ability to store energy is termed capacitance and is measured in Farads, with values from pF to mF. The only time current flows through a capacitor is when the charge is collected on, or is removed from, its parallel plates. This means that the voltage across the capacitor is changing, which doesn't conform to DC analysis. In a physical circuit, there is a transition stage during which capacitors charge up to their final values. The result is the same as if these capacitors did not exist and the connections to them were left dangling. In other words, in a (steady-state) DC analysis, a capacitor behaves like an open circuit. Therefore, it is important that no section of the circuit is isolated from the capacitors. Every circuit node needs some path for DC current to the ground. A capacitor's transient behavior is described by the equation: i(t) = C * (dv(t)/dt) Its initial voltage is only important when the simulator performs a transient analysis, and the "Use Initial Conditions" checkbox is checked. An capacitor's AC behavior is described by the equation: i=j?*C*v All capacitor names must begin with C. Netlist Format: C<device_name> <N+> <N-> <value> Example: C1 1 2 10p B2.Spice A/D provides two types of capacitors: simple and semiconductor. Simple Capacitor The standard capacitor parameters are N+, N-, VALUE, and IC. In a simple capacitor, VALUE must be specified and it is the capacitance in Farads. IC is the initial condition (optional) for the capacitor voltage. Semiconducting Capacitor This allows for the calculation of capacitance from geometric information and the specifications of the process in the model specification of the capacitor. If width isn't specificied, then the default width given in the model is used. The optional initial condition ic is the initial voltage across the capacitor for transient simulations. The model parameters are as follows: CJ, junction bottom capacitance; CJSW, junction sidewall capacitance; DEFW, default device width; NARROW, narrowing due to side etching, and CAP, nominal capacitance for monte carlo. The capacitance is computed as: CAP = CJ * (LENGTH - NARROW) * (WIDTH - NARROW)+ 2 * CJSW * (LENGTH + WIDTH 2NARROW) * CAP To modify the model parameters, first double click on the capacitor to edit its top-level model parameters, then choose the button in the process model section to Edit from Table and this will open a window in which you can edit CJ, CJSW, NARROW, DEFW, and CAP. The Controlled Limiter is a single-input, single-output block similar to the Gain Block. However, the output of the Controlled Limiter function is restricted to the range specified by the output lower and upper limits. This model operates in DC, AC and Transient analysis modes. Note that the limit range is the value below the Upper Limit Control input signal (CNTL_UPPER) and above the Lower Limit Control input signal (CNTL_LOWER) at which smoothing of the output signal begins. A minimum positive value of voltage difference must exist between the CNTL_UPPER and CNTL_LOWER inputs at all times. The main difference between the Controlled Limiter Block and the Limiter Block is that the former's limits are set by input control voltages, while the latter's limits are set as numerical parameters. Also note that the Controlled Limiter function examines the input values of CNTL_UPPER and CNTL_LOWER to make sure that they are spaced far enough apart to guarantee the existence of a linear range between them. The range is calculated as the difference between (cntl_upper upper_delta - limit_range) and (cntl_lower + lower_delta + limit_range) and must be greater than or equal to zero. When the limit_range is specified as a fractional value, the limit_range used in the above is taken as the calculated fraction of the difference between cntl_upper and cntl_lower. Still, the potential exists for too great a limit_range value to be specified for proper operation, in which case the model will return an error message. Model Identifier: climit Netlist Format: A<device_name> <in_pin> <cntl_upper_pin> <cntl_lower_pin> <out_pin> <model_name> .model <model_name> climit {<param1 = value> < param2 = value> ...} Example: A1 1 2 3 4 controlled_limit_block .model controlled_limit_block climit in_offset = 0.0 gain = 1.0 upper_delta = 0.0 lower_delta = 0.0 Parameters: Name in_offset gain Description input offset gain Default 0.0 1.0 upper_delta lower_delta limit_range fraction output upper delta output lower delta upper and lower sm. Range smoothing %/abs switch 0.0 0.0 1.0e-6 False This is a four-terminal function generator with a sinusoidal wave output, whose frequency is controlled by an input voltage. The functional dependency of the output frequency on the input voltage is piecewise linear and is defined as a two-dimensional table similar to a piecewise linear (PWL) controlled source. In the "frequency vs. voltage" curve, the array "cntl_array" defines voltage values in Volts and the array "freq_array" defines the corresponding frequencies in Hz. This function has parameterizable values of low and high peak output voltage. Model Identifier: sine Netlist Form: A<device_name> %vd(<cntl_in_pin> <cntl_in_ref_pin>) %vd(<out_pin> <out_ref_pin>) <model_name> .model <model_name> sine cntl_array = [<value1> <value2>] freq_array = [<value1> <value2>] {<param1 = value> < param2 = value> ...} Example: A1 %vd(1 3) %vd(2 4) sine .model sine sine cntl_array = [0 1] freq_array = [1 1000] Parameters: Name Cntl_array Freq_array Out_low Out_high Description control array frequency array output peak low value output peak high value Default Notes [0 1] required [1 1000] required -1.0 1.0 Circuits can contain linear dependent sources characterized by one of the following equations (where g, e, f, and h are constants representing transconductance, voltage gain, current gain, and transresistance, respectively): i=gv v=ev i=fi v=hi For further information, refer to: Linear Current Controlled Current Source (CCCS) Linear Voltage Controlled Current Source (VCCS) Linear Current Controlled Voltage Source (CCVS) Linear Voltage Controlled Voltage Source (VCVS) This is a four-terminal function generator with a square wave output, whose frequency is controlled by an input voltage. The functional dependency of the output frequency on the input voltage is piecewise linear and is defined as a two-dimensional table similar to a piecewise linear (PWL) controlled source. In the "frequency vs. voltage" curve, the array "cntl_array" defines voltage values in Volts and the array "freq_array" defines the corresponding frequencies in Hz. Model Identifier: square Netlist Format: A<device_name> %vd(<cntl_in_pin> <cntl_in_ref_pin>) %vd(<out_pin> <out_ref_pin>) <model_name> .model <model_name> square cntl_array = [<value1> <value2>] freq_array = [<value1> <value2>] {<param1 = value> < param2 = value> ...} Example: A1 %vd(1 3) %vd(2 4) square .model square square cntl_array = [0 1] freq_array = [1 1000] Parameters: Name Cntl_array Freq_array Out_low Out_high Duty_cycle Rise_time Fall_time Description control array frequency array output peak low value output peak high value Duty cycle Output rise time Output fall time Default Notes [0 1] required [0 1000] required -1.0 1.0 0.5 1.0e-9 1.0e-9 This is a four-terminal function generator with a triangle wave output, whose frequency is controlled by an input voltage. The functional dependency of the output frequency on the input voltage is piecewise linear and is defined as a two-dimensional table similar to a piecewise linear (PWL) controlled source. In the "frequency vs. voltage" curve, the array "cntl_array" defined voltage values in Volts and the array "freq_array" defines the corresponding frequencies in Hz. Model Identifier: triangle Netlist Format: A<device_name> %vd(<cntl_in_pin> <cntl_in_ref_pin>) %vd(<out_pin> <out_ref_pin>) <model_name> .model <model_name> tirangle cntl_array = [<value1> <value2>] freq_array = [<value1> <value2>]{<param1 = value> < param2 = value> ...} Example: A1 %vd(1 4) %vd(2 3) triangle .model triangle triangle cntl_array = [0 1] freq_array = [1 1000] Parameters: Name Cntl_array Freq_array Out_low Out_high Rise_duty Description control array frequency array output peak low value output peak high value Rise time duty cycle Default Notes [0 1] required [0 1000] required -1.0 1.0 0.5 Sources have a DC value, a transient behavior, an AC behavior, and distortion parameters. The transient type, AC parameters, and distortion parameters are defined on the first tab of the source's property dialog. The DC value of a voltage source is its initial transient value. For a source with a sinusoidal transient behavior, for example, the DC value will be equal to its transient offset voltage. The AC parameters are magnitude and phase. These are used during the AC Frequency Sweep analysis. The distortion parameters, two sets of magnitude and phase, are used during the distortion analysis. The transient expression can be a pulse, sinusoid, exponential, or piecewise linear. Each of these is described after the current source. Switches are devices that exhibit high resistance when open (OFF state) and low resistance when closed (ON state). The switch model allows an almost ideal switch to be specified. With careful selection of the on and off resistances, they can effectively represent zero and infinite resistances in comparison to other circuit elements, while sustaining the model condition of a positive, finite value. There are two versions of Current-Controlled Switch: two-terminal and four-terminal. For the two-terminal device, you must specify the name of the controlling Ammeter or voltage source, as well as the turn-on and turn-off currents in Amperes and on and off resistance values in Ohms. The four-terminal device already provides nodes for a controlling ammeter, and you just specify the rest of parameters. When the current through the switch or controlling device is greater or equal to the turn-on current, the switch closes. When the current through the switch or controlling device is less than or equal to the turn off current, the switch opens. NAME I_ON I_OFF RON ROFF PARAMETER turn-on current turn-off current closed resistance open resistance UNITS Amps Amps ohms ohms DEFAULT 0.0 0.0 1.0 1/GMIN The Differentiator Block approximates the time derivative of an input signal by calculating the incremental slope of that signal since the previous time point. Gain and output offset parameters are also included to allow for tailoring of the required signal. Output upper and lower limits are also included to prevent convergence erros resulting from excessively large output values. The incremental value of output below the output_upper_limit and above the output_lower_limit at which smoothing begins is specified via the limit_range parameter. In AC analysis, the value returned is equal to the radian frequency of analysis multiplied by the gain. Model Identifier: d_dt Netlist Format: A<device_name> <in_pin> <out_pin> <model_name> .model <model_name> d_dt out_lower_limit = <value> out_upper_limit = <value> {<param1 = value> < param2 = value> ...} Example: A1 1 2 differentiator .model differentiator d_dt out_lower_limit = -1t out_upper_limit = 1t Parameters: Name Description Default Notes gain gain 1.0 out_offset output offset 0.0 out_lower_limit output lower limit -1t required out_upper_limit output upper limit 1t required limit_range upper and lower limit smoothing range 1.0e-6 Diodes allow current flow only in one direction, following their symbol's arrow, and thus can be used as simple solid state switches in AC circuits. The standard device parameters are AREA, OFF, IC, and T. They are described below: AREA area factor (optional) (If not specified, the default value is 1.0.) OFF initial condition for the DC analysis (optional) initial condition (optional) (Used when a transient analysis is desired, which starts from other IC than the quiescent operating point.) T operating temperature of the device (optional) The process models can be either junction diodes or Schottky barrier diodes. Area factor scales the model parameters IS, RS, CJO, and IBV. VD is the initial voltage, and TEMP is the overriding temperature. Descriptions of the process model parameters are given in the following table: Name IS RS N TT CJO VJ M Parameters saturation current ohmic resistance emission coefficient transit-time zero-bias junction capacitance junction potential grading coefficient Units A Ohm seconds F V - EG XTI KF AF BV IBV TNOM FC activation energy saturation current temp. exp. flicker noise coefficient flicker noise exponent reverse breakdown voltage current at breakdown voltage parameter measurement temperature coefficient for forward-bias depletion capacitance formula eV V A degrees C - The Divider Block has two inputs. Each of the numerator and denominator inputs is added to its respective offset and then multiplied by its respective input gain (with default values of 1). Next, the loaded numerator signal is divided by the loaded denominator signal. The result is multiplied by the output gain and then added to the output offset. To avoid division by zero, the divider function sets the denominator signal greater than zero through the lower limit parameter. This limit is approached through a quadratic smoothing function, the domain of which may be specified as a fraction of the lower limit value or as an absolute value. The divider function operates in DC, AC, and Transient analysis modes. In AC analysis, however, it is important to remember that results are invalid unless the denominator input is a DC voltage. Model Identifier: divide Netlist Format: A<device_name> <num_pin> <den_pin> <out_pin> <model_name> .model <model_name> divide {<param1 = value> < param2 = value> ...} Example: A1 1 2 3 divider_block .model divider_block divide den_offset = 0.0 den_gain = 1.0 Parameters: Name num_offset num_gain den_offset den_gain den_lower_limit den_domain fraction out_gain out_offset Description numerator offset numerator gain denominator offset denominator gain denominator lower limit denominator smoothing domain smoothing fraction/absolute value switch output gain output offset Default 0.0 1.0 0.0 1.0 1.0e-10 1.0e-10 False 1.0 0.0 The Frequency Meter is a four-pin shunt device that is connected in parallel with an AC source just like a voltmeter and measures the operating frequency of the AC circuit. The input pins are connected across the AC source. The voltage across the output pins is equal to the frequency of the source in Hertz within a scale factor SF. Note that the Frequency Meter is designed to work with a single-tone AC source of unit amplitude. If the amplitude of the source is not one, multiply the SF parameter by the non-unit source amplitude value. The output voltage of the Frequency Meter can be used in conjunction with linear or nonlinear dependent sources to model frequency-dependent quantities. Model Identifier: fmeter Parameters: The only parameter is the scale factor SF with a default value of 1.0. Set SF = 1e-6 to read out the frequency in MHz. Set SF = 1e-9 to read out the frequency in GHz. Set SF = 6.283185 (2*pi) to read out the angular frequency ω in radian/s. This model is a simple gain block with optional offsets on the input and the output. In_offset is added to the input, the sum of which is then multiplied by the gain, and the output offset is added to produce the final output. The gain block model will operate in DC, AC, and Transient analysis modes. Model Identifier: gain Netlist Format: A<device_name> <in_pin> <out_pin> <model_name> .model <model_name> gain {<param1 = value> < param2 = value> ...} Example: A1 1 2 gain_block .model gain_block gain in_offset = 0.0 out_offset = 0.0 Parameters: Name in_offset gain out_offset Description input offset gain out_offset Default 0.0 1.0 0.0 Ground has a voltage of zero (0) and is used as a reference to compute electrical values in the circuit. All circuits must be grounded to be properly simulated. There is no limit on the number of grounds you may use in a circuit. All components connected to ground are referenced to a common point and treated as linked through ground. The Hysteresis block is a simple buffer stage that provides hysteresis of the output with respect to the input. The in_low and in_high parameter values. The output values are limited to out_lower_limit and out_upper_limit. The value of \93hyst\94 is added to the in_low and in_high points in order to specify the points at which the slope of the hysteresis function would normally change abruptly as the input transitions from a low to a high value. Likewise, the value of \93hyst\94 is subtracted from the in_high and in_low values in order to specify the points at which the slope of the hysteresis function would normally change abruptly as the input transitions from a high to a low value. In fact, the slope of the hysteresis function is never allowed to change abruptly but is smoothly varied whenever the input_dowmain smoothing parameter is set greater than zero. Model Identifier: hyst Netlist Format: A<device_name> <in_pin> <out_pin> <model_name> .model <model_name> hyst {<param1 = value> < param2 = value> ...} Example: A1 1 2 hysteresis_block .model hysteresis_block hyst in_low = 0.0 in_high = 1.0 Parameters: Name In_low in_high hyst out_lower_limit out_upper_limit input_domain fraction Description input low value input high value hysteresis output lower limit output upper limit input smoothing domain smoothing fraction/absolute value switch Default 0.0 1.0 0.1 0.0 1.0 0.01 true The Inductance Meter measures the total inductance between a circuit node and the ground. The input pin of the device is connected to the measurement node. The output voltage of the device is then a scaled value equal to the total inductance seen on its input multiplied by the gain parameter. This model is primarily intended as a building block for other models which must sense an inductance value and alter their behavior based upon it. Care must be exercised when connecting an Inductance Meter to the inductors of a circuit. This is due to the fact that inductors are treated by SPICE as current sources. This can cause a problem when an inductor is connected in series with a current source, or in series with a voltmeter, or in series with another inductor. Model Identifier: lmeter Netlist Format: A<device_name> <in_pin> <out_pin> <model_name> .model <model_name> imeter {<gain = value>} Example: A1 1 2 inductance_meter .model inductance_meter lmeter gain = 1 Parameters: The only parameter is the gain with a default value of 1.0. The Inductive Coupling transformer couples any two existing inductors. It doesn't have any nodes because it doesn't actually represent inductors, only the coupling between them. This is useful if you want to couple two inductors that are in different parts of the circuit, or if you want to couple more than two inductors together, use more than one of these, with each one coupling a pair of inductors. The standard parameters are Inductor1, Inductor2, and K. Inductor1 is the name of first inductor, Inductor2 is the name of the second inductor, and K is the coefficient of coupling, 0 < K ≤ 1. Inductors are used to store magnetic energy. An inductor's ability to counteract current changes passing through it is called its inductance (L), which is measured in Henrys. In a (steady-state) DC analysis, the inductor acts like a short circuit. It is indeed treated as a current source, which can be problematic if an inductor is connected in series with a current source, or in series with a voltmeter, or in series with another inductor. The resistor may be of negligible value or one that accounts for the coil resistance of the inductor. In AC and transient analyses, the inductor develops a voltage across it in response to the changing magnetic flux within its coil. An inductor's transient behavior is described by the equation: v(t) = L*(di(t)/dt) The inductor's initial condition is optional. It is the initial value of the inductor current in Amperes that flows from node N+ through the inductor to node N-. The only time that the initial current matters is when the simulator performs a transient analysis, and the "Use Initial Conditions" checkbox is checked. An inductor's AC behavior is described by the equation: v=jω*L*i All inductor names must begin with L. Netlist Format: L<device_name> <N+> <N-> <value> Example: L1 1 2 10u The Integrator Gain and input offset parameters are also included to allow for tailoring of the required signa. Output upper and lower limits are also included to prevent convergence errors resulting from excessively large output values. Note that these limits specify integrator behavior similar to that found in an operational amplifier-based integration stage, in that once a limit is reached, additional storage does not occur. Thus the input of a negative value to an integrator which is currently driving at the out_upper_limit level will immediately cause a drop in the output, regardless of how long the integrator was previously summing positive inputs. The incremental value of output below the output_upper_limit and above the output_lower_limit at which smoothing begins is specified via the limit_range parameter. In AC analysis, the value returned is equal to the gain divided by the radian frequency of analysis. Note that truncation error checking is included in the \93int\94 block. This should provide for a more accurate simulation for the time integration function, since the model will inherently request smaller time increments between simulation points if truncation errors would otherwise be excessive. Model Identifier: int Netlist Format: A<device_name> <in_pin> <out_pin> <model_name> .model <model_name> int out_lower_limit = <value> out_upper_limit = <value> {<param1 = value> < param2 = value> ...} Example: A1 1 2 integrator_block .model integrator_block int out_lower_limit = -1t out_upper_limit = 1t Parameters: Name gain in_offset out_lower_limit out_upper_limit limit_range out_ic Description gain output offset output lower limit output upper limit upper and lower limit smoothing range output initial condition Default Notes 1.0 0.0 -1t required 1t required 1.0e-6 0.0 The JFET is the simplest transistor device and has three pins: gate, drain and source. The JFET defaults are based on the Shichman and Hodges FET model. This is a square-law device because of the expression relating the drain current to the gate-to-source voltage: Idrain=*(VGS-Vthreshold)2. In real JFETs, near the saturation point, the drain currents vary with the drain voltages. This can be modeled by the following formula: Idrain=*(VGS-VTO)2*(1+*VDS), which yields an increasing drain current for increasing values of VDS. The gate-to-source and gate-to-drain junctions each have a nonlinear capacitor. The zero-bias capacitance value is selected for each junction. The standard device parameters are AREA, OFF, IC, and T. They are described below: AREA area factor (optional) (If not specified, the default value is 1.0.) OFF initial condition for the DC analysis (optional) initial condition (optional) (Used when a transient analysis is desired, which starts from other IC than the quiescent operating point.) T operating temperature of the device (optional) The process model parameters are listed in the following table: NAME VTO BETA LAMBDA RD RS CGS CGD PB IS B KF AF FC TNOM PARAMETER threshold voltage transconductance parameters channel-length modulation parameter drain ohmic resistance source ohmic resistance zero-bias G-S junction capacitance zero-bias G-D junction capacitance gate junction potential gate junction saturation current doping tail parameter flicker-noise coefficient flicker-noise exponent coefficient for forward-bias depletion capacitance formula parameter measurement temperature UNITS V A/V2 1/V ohms ohms F F V A DEFAULT -2 1.0e-4 0 0 0 0 0 1 1.0e-14 1 0 1 0.5 deg. C 27 EXAMPLE -2 1.0e-3 1.0e-4 100 100 5pF 1pF 0.6 1.0e-14 1.1 50 The Limiter is a single-input, single-output block similar to the Gain Block. However, the output of the Limiter function is restricted to the range specified by the output lower and upper limits. This model operates in DC, AC and Transient analysis modes. Note that the limit range is the value below the UPPER LIMIT and above the LOWER LIMIT at which smoothing of the output signal begins. For this model, then, the limit range represents the delta with respect to the output level at which smoothing occurs. Thus, for an input gain of 2.0 and output limits of 1.0 and -1.0 volts, the output will begin to smooth out at ?+/-0.9 volts, which occurs when the input value is at 0.4V. Model Identifier: limit Netlist Format: A<device_name> <in_pin> <out_pin> <model_name> .model <model_name> limit {<param1 = value> < param2 = value> ...} Example: A1 1 2 limit_block .model limit_block limit in_offset = 0.0 gain = 1.0 out_lower_limit = -1t out_upper_limit = 1t Parameters: Name in_offset gain out_lower_limit out_upper_limit limit_range fraction Description input offset gain output lower limit output upper limit upper and lower smoothing range smoothing fraction/absolute value switch Default 0.0 1.0 0.0 1.0 1.0e-6 False The CCCS is a current source whose current is directly proportional to the current across a controlling Ammeter or a voltage source. There are two versions: two-terminal and four-terminal. For the two-terminal device, you must specify the name of the controlling Ammeter or voltage source, as well as the current gain, which has a default value of one. The four-terminal device already provides nodes for a controlling ammeter, and you just specify the current gain. Model Identifier: cccs Netlist Format: F<device_name> <N+> <N-> <controlling_device_name> <value> Example: F1 1 0 V1 1.0 The CCVS is a voltage source whose voltage is directly proportional to the current through a controlling ammeter or a voltage source. There are two versions: two-terminal and four-terminal. For the two-terminal device, you must specify the name of the controlling Ammeter or voltage source, as well as the trans-resistance gain, which has a default value of one. The four-terminal device already provides nodes for a controlling ammeter, and you just specify the trans-resistance gain. Model Identifier: ccvs Netlist Format: H<device_name> <N+> <N-> <controlling_device_name> <value> Example: H1 1 0 V1 1.0 The VCCS is a current source whose current is directly proportional to the voltage across a controlling voltmeter or the voltage between two circuit nodes. There are two versions: two-terminal and four-terminal. For the two-terminal device, you must specify the name of the controlling voltmeter or the two controlling nodes, as well as the trans-conductance gain, which has a default value of one. The four-terminal device already provides nodes for a controlling voltmeter, and you just specify the trans-conductance gain. Model Identifier: vccs Netlist Format: G<device_name> <N+> <N-> <NC+> <NC-> <value> Example: G1 1 0 2 0 1.0 The VCVS is a voltage source whose voltage is directly proportional to the voltage across a controlling voltmeter of the voltage between two circuit nodes. There are two versions: two-terminal and four-terminal. For the two-terminal device, you must specify the name of the controlling voltmeter or the two controlling nodes, as well as the voltage gain, which has a default value of one. The four-terminal device already provides nodes for a controlling voltmeter, and you just specify the voltage gain. Model Identifier: vcvs Netlist Format: E<device_name> <N+> <N-> <NC+> <NC-> <value> Example: E1 1 0 2 0 1.0 The lossless transmission line device models only one propagating mode. Should all four nodes of the actual circuit be distinct, two modes may be activated and this device would be insufficient. To circumvent this potential problem, two transmission line devices are required. Optional initial condition parameters are the voltage and current at each of the transmission line ports. Due to implementation details, you may produce more accurate simulation with the lossy transmission line device with zero loss. The standard parameters are Z0, TD, F, NL, IC. They are described below: Z0 characteristic impedance TD transmission delay F frequency electrical length of the transmission line with respect to the wavelength in the line at NL normalized frequency F. (If F is specified, but NL is not, the default is 0.25.) IC initial condition (Specifies the voltage and current at each of the transmission line ports.) It is a two-port convolution model for single-conductor lines. MNAME is the process model name, which includes a set of pre-specified options as described below. The lossy transmission device models a uniform constant-parameter distributed line, with parameters as described in the following chart: NAME R L C LEN LININTERP QUADINTERP MIXEDINTERP COMPACTREL COMPACTABS NOCONTROL STEPLIMIT NOSTEPLIMIT PARAMETER UNITS DEFAULT EXAMPLE resistance /length Ohm /m 0.0 0.2 inductance/length henrys/m 0.0 9.13e-9 capacitance/length farads/m 0.0 3.65e-12 length of line m none 1.0 use linear interpolation flag not set set use quadratic interpolation flag not set set use linear when quadratic seems bad flag not set set special reltol for straight line checking flag RETOL 1.0e-3 special abstol for straight line checking flag ABSTOL 1.0e-9 don't do complex time control flag not set set always limit timestep to 0.8*(delay of line) don't always limit timestep to 0.8*(delay of line) flag not set set use Newton-Raphson method for timestep TRUNCNR flag not set set calculation in LTRAtrunc limit timestep to keep impulse-response TRUNCDONTCUT don't flag not set set errors low The RLC (uniform transmission line with series loss only), RC (uniform RC line), LC (lossless transmission line), and RG (distributed series resistance and parallel conductance only) lines have been implemented. The length (LEN) must be given. COMPACTREL and COMPACTABS control the compaction of past history values used in convolution. Larger values for these lower accuracy but improve speed. These are used with the TRYTOCOMPACT option. This device is used as a building block to create a wide variety of inductive and magnetic circuit models. It is almost always to be used in conjunction with the "lcouple" model to build up systems which simulate the behavior of linear and nonlinear magnetic components. There are two fundamental modes of operation for the core model. These are the "PWL" mode (which is the default and most likely to be of use to you) and the "Hysteresis" mode. PWL Mode (mode = 1) In the PWL mode, the model takes a voltage as input which it treats as a magnetomotive force (mmf) value. This value is divided by the total effective length of the core to produce a value for the Magnetic Field Intensity, H, which is then used to find the corresponding Flux Density, B, using the piecewise linear relationship described by you in the H_array / B_array coordinate pairs. B is then multiplied by the cross-sectional area of the core to find the Flux value, which is output as a current. The pertinent mathematical equations are: H = mmf / L, where L = Length (in apmere-turns/meter) B = f(H) Φ = B * A, where A = Area The B value is derived from a piecewise linear transfer function described to the model by the H_array and B_array coordinate pairs. This transfer function does not include hysteretic effects; for that, you would need to substitute a HYST model for the core. The magnetic flux value Φ in turn is used by the "lcouple" code model to obtain a value for the voltage reflected back across its terminals to the driving electrical circuit. Hysteresis Mode (mode = 2) In the Hysteresis mode, the model takes a voltage as input which it treats as a magnetomotive force (mmf) value. This value is used as input to the equivalent of a hysteresis code model block. The parameters defining the input low and high values, the output low and high values, and the amount of hysteresis are as in that model. The output from this mode, as in PWL mode, is a current value which is seen across the magnetic core port. One final note to be made about the two core models is that certain parameters are specific to one or the other. In particular, the in_low, in_high, out_lower_limit, out_upper_limit, and hysteresis parameters are not available in PWL mode. Likewise, the H_array, B_array, area, ad length values are unavailable in Hysteresis mode. The input_domain and fraction parameters are common to both modes (though their behavior is somewhat different; for explanation of the input_domain and fraction values for the Hysteresis mode, please refer to the Hysteresis Block discussion. Model Identifier: core Netlist Format: A<device_name> <mc1 _pin> <mc2_pin> <model_name> .model <model_name> core area = <value> length = <value> H_array = [<value1> <value2>] B_array = [<value1> <value2>] {<param1 = value> < param2 = value> ...} Example: A1 1 2 core .model core core area = 1 length = 1 H_array = [0 1] B_array = [0 1] Parameters: Name H_array B_array Area Length Input_domain Fraction Description magnetic field array flux density array cross-sectional area core length input smoothing domain smoothing fraction/abs switch Default [0 1] [0 1] 1 1 0.01 True Notes required required required required Mode In_low In_high Hyst Out_lower_limit Out_upper_limit mode switch (1=pwl, 2=hyst) input low value input high value hysteresis output lower limit output upper limit 1 0.0 1.0 0.1 0.0 1.0 The marker serves several purposes: • It can appear as a default plot in simulations if the "Voltage Probe" box is checked. • It can be used to set the initial voltage or voltage guess at the node it is connected to. • It can be used as a port for a subcircuit when you choose the checkbox labeled "Use as Subcircuit Port" is checked. • It can be used to explicitly set a node number in place of the arbitrarily assigned node number by the program. In this case, make sure the "Set Node Index" box is checked. Otherwise, it will act as just a voltage probe. • It can be used to connect different parts of a circuit in place of wires. To use markers as virtual connectors, place them at points where wires would otherwise connect. Then set the Part Title of the two (or more) markers to the same name, and they will act as a single circuit node. The MESFET is a Schottky-barrier gate FET with six times greater electron mobility than silicon. MESFETs are important devices for creating high frequency circuits. They function by creating a potential barrier between the gate and the channel when the metal gate contacts the gallium-arsenide substrate. Electron velocity saturates for fields approximately ten times lower than with silicon. The Curtice model includes linear and saturated operation. The standard parameters are AREA, OFF, IC, and T. They are described below: AREA area factor (optional) (If not specified, the default value is 1.0.) OFF initial condition for the DC analysis (optional) initial condition (optional) (Used when a transient analysis is desired, which starts from other IC than the quiescent operating point.) T operating temperature of the device (optional) All the MESFET process model parameters are described in the following table: NAME VTO BETA B ALPHA LAMBDA RD RS CGS CGD PB KF AF FC PARAMETER UNITS pinch-off voltage V transconductance parameter A/V2 doping tail extending parameter 1/V saturation voltage parameter 1/V channel-length modulation parameter 1/V drain ohmic resistance Ohm source ohmic resistance Ohm zero-bias G-S junction capacitance F zero-bias G-D junction capacitance F gate junction potential V flicker noise coefficient flicker noise exponent coefficient for forward-bias depletion capacitance formula - DEFAULT -2 1.0e-4 0.3 2 0 0 0 0 0 1 0 1 0.5 EXAMPLE -2 1.0e-3 0.3 2 1.0e-4 100 100 5pF 1pF 0.6 The MOSFET is an active device that has up to 4 pins. The three standard pins are gate, drain, and source. These are given in the default symbol. The bulk node, which is grounded by default, is the fourth pin. The MOSFET with the bulk is named mos_n_lvl1_4 (the lvl1 is for level 1, the n for nmos, and the 4 for 4 pins.) The standard parameters are L, W, AD, AS, PD, PS, NRD, NRS, OFF, IC, and T. They are described below: L W AD,AS PD,PS channel length, in meters channel width, in meters areas of the drain and source diffusions, in meters2 perimeters of drain and source junctions, in meters(They default to 0.0.) equivalent number of squares of the drain and source diffusions (These values multiply NRD,NRS the sheet resistance for an accurate representation of parasitic series drain and source resistance of each transistor. The default value is 1.0.) OFF initial condition for the DC analysis (optional) initial condition (optional) (Used when a transient analysis is desired, which starts from IC other than the quiescent operating point.) T operating temperature of the device (optional) There are five different default models: square-law I-V characteristic, analytical, semi-empirical, and BSIM and BSIM2 (Berkeley Short-channel IGFET Model), which include second-order effects such as channel-length modulation, subthreshold conduction, scattering-limited velocity saturation, small-size effects, and charge-controlled capacitance. The process parameter LEVEL specifies which of the models is chosen as indicated below: LEVEL 1 LEVEL 2 LEVEL 3 LEVEL 4 LEVEL 5 LEVEL 6 Schichman-Hodges MOS2 MOS3 BSIM BSIM2 MOS6 The process model parameters for levels 1,2,3, and 6 are listed in the following table: NAME LEVEL VTO KP GAMMA PHI LAMBDA RD RS CBD CBS IS PB PARAMETER CJSW model index zero-bias threshold voltage transconductance parameter bulk threshold parameter surface potential channel-length modulation (level 1 & 2 only) drain ohmic resistance source ohmic resistance zero-bias B-D junction capacitance zero-bias B-S junction capacitance bulk junction saturation current bulk junction potential gate-source overlap capacitance per meter channel width gate-drain overlap capacitance per meter channel width gate-bulk overlap capacitance per meter channel length drain & source diffusion sheet resistance zero-bias bulk junction bottom capacitance per meter2 junction area bulk junction bottom grading coefficient zero-bias bulk junction sidewall capacitance per meter junction perimeter MJSW bulk junction sidewall grading coefficient JS bulk junction saturation current per meter2 of junction area oxide thickness substrate doping surface state density fast surface state density type gate material(+1 if opp. substrate, 0 if A1 gate, -1 if same as substrate) metallurgical junction depth lateral diffusion surface mobility critical field for mobility degradation (level2 only) critical field exponent in mobility degradation (level2 only) transverse field coefficient (deleted for level2) maximum drift velocity of carriers CGSO CGDO CGBO RSH CJ MJ TOX NSUB NSS NFS TPG XJ LD UO UCRIT UEXP UTRA VMAX UNITS DEFAULT EXAMPLE V A/V2 V1/2 V 1/V ohms ohms F F A V 1 0.0 2e-5 0.0 0.6 0.0 0.0 0.0 0.0 0.0 1.0e-14 0.8 1.0 3.1e-5 0.37 0.65 0.02 1.0 1.0 20fF 20fF 1.0e-15 0.87 F/m 0.0 4.0e-11 F/m 0.0 4.0e-11 F/m 0.0 2e-10 ohm/area 0.0 10.0 F/m2 0.0 2e-4 0.5 0.5 0.0 1.0e-9 F/m 0.5, 0.33 (level1), (level2,3) A/m2 meter 1/cm3 1/cm2 1/cm2 1.0e-8 1.0e-7 0.0 0.0 0.0 1.0e-7 4.0e15 1.0e10 1.0e10 1.0 meter meter cm2/Vs V/cm m/s 0.0 0.0 600 1.0e4 1 0.8 700 1.0e4 0.0 0.1 0.0 0.0 0.3 5.0e4 NEFF KF AF FC DELTA THETA ETA KAPPA TNOM total channel-charge (fixed and mobile) coefficient (level2 only) flicker noise coefficient flicker noise exponent coefficient for forward bias depletion capacitance formula width effect on threshold voltage (level2,3) mobility modulation (level3 only) static feedback (level3 only) saturation field factor (level3 only) parameter measurement temperature 1.0 5.0 0.0 1.0 1.0e-26 1.2 0.5 1/V deg. C 0.0 0.0 0.0 0.2 27 1.0 0.1 1.0 0.5 50 The BSIM model has no default parameters, and leaving one out is considered an error. The additional process model parameters for level 4 and 5 models are listed in the following table: NAME VFB PHI K1 K2 ETA MUZ DL DW U0 U1 X2MZ X2E X3E X2U0 X2U1 MUS X2MS X3MS X3U1 TOX TEMP VDD CGDO CGSO CGBO XPART N0 NB ND RSH JS PB MJ PBSW PARAMETER flat-band voltage surface inversion potential body effect coefficient drain/source depletion charge-sharing coefficient zero-bias drain-induced barrier-lowering coefficient zero-bias mobility shortening of channel narrowing of channel zero-bias transverse-field mobility degradation coefficient zero-bias velocity saturation coefficient sens. of mobility to substrate bias at Vds=0 sens. of drain-induced barrier lowering effect to substrate bias sens. of drain-induced barrier lowering effect to drain bias at Vds= Vdd sens. of transverse field mobility degradation to substrate bias sens. of velocity saturation effect to substrate bias mobility at zero substrate bias and at Vds= Vdd sens. of mobility to substrate bias at Vds= Vdd sens. of mobility to drain bias at Vds= Vdd sens. of velocity saturation effect on drain bias at Vds= Vdd gate oxide thickness temperature at which parameters were measured measurement bias range gate-drain overlap capacitance per meter channel width gate-source overlap capacitance per meter channel width gate-bulk overlap capacitance per meter channel length gate-oxide capacitance-charge model flag zero-bias subthreshold slope coefficient sens. of subthreshold slope to substrate bias sens. of subthreshold slope to drain bias drain and source diffusion sheet resistance source drain junction current density built-in potential of source drain junction grading coefficient of source drain junction built-in potential of source drain junction sidewall UNITS V V V1/2 cm2/V-s m m V-1 m/V cm2/V2-s V-1 V-1 V-2 mV-2 cm2/V2-s cm2/V2-s cm2/V2-s mV-2 m deg. C V F/m F/m F/m ohms/area A/m2 V V MJSW grading coefficient of source drain junction sidewall CJ source drain junction capacitance per unit area F/ m2 CJSW source drain junction sidewall capacitance per unit length F/m WDF source drain junction default width m DELL source drain junction length reduction m XPART=0 selects a 40/60 drain/source charge partition; XPART=1 selects a 0/100 partition. The Multiplier Block has two inputs. Each input is added to its respective offset and then multiplied by the specified input gain (with default values of 1). These are then multiplied along with the output gain and the result is added to the output offset. Note that the input offsets and input gains are specified as vectors. The multiplier function operates in DC, AC, and Transient analysis modes. In AC analysis, however, it is important to remember that results are invalid unless one of the inputs is a DC voltage. Model Identifier: mult Netlist Format: A<device_name> [<in_pin1> <in_pin2> {...}] <out_pin> <model_name> .model <model_name> mult {<param1 = value> < param2 = value> ...} Example: A1 [1 2] 3 mult_block .model mult_block mult in_offset = [0.0 0.0] in_gain = [1.0 1.0] out_gain = 1.0 out_offset = 0.0 Parameters: Name in_offset in_gain out_gain out_offset Description input offset vector input gain vector output gain output offset Default [0.0 0.0] [1.0 1.0] 1.0 0.0 The mutual inductor is a pair of inductors that are coupled. L1 and L2 are the names of two inductors. Specify the inductance of inductor L1, the inductance of inductor L2, the initial current through each, and the coupling coefficient. Nonlinear dependent (arbitrary) sources use an equation or mathematical expression to describe their behavior. One and only one of the two forms: V=<expr> or I=<expr> must be given. Netlist Format: B<device_name> v = <expression> B<device_name> i = <expression> Examples: v = I(v1) + 3* I(v2) I = v(i1) + 3* v(2) + 5 * v(3) ^2 The first example is a current-controlled voltage source. The v on the left side of the equation indicates that it is a voltage source. I(v1) and I(v2) are the currents through voltage sources named v1 and v2, respectively. The second example is a voltage-controlled current source. v(2) and v(3) represents the voltages at nodes 2 and 3, respectively, and v(i1) represents the voltage across a current source named i1. The following mathematical functions defined for real variables can be used in the expressions: abs, acos, acosh, asin, asinh, atan, atanh, cos, cosh, exp, ln, log, sin, sinh, sqrt, tan. The function "u" is the unit step and "uramp" is the integral of the unit step. The unit step is one if its argument is greater than zero and zero if its argument is less than zero. The ramp function (uramp) is 0 for argument values less than zero and equal to the argument for argument values greater than zero. The following operators are permissible: +, -, *, /, ^, and unary-. To get time into an expression, integrate the current from a constant current source with a capacitor and use the voltage across the capacitor. The nonlinear resistor model allows the resistor to described by a table relating I to V, where I is the current through the resistor, and V is the voltage across the resistor. The Non-linear conductor: This model allows the conductor to described by a table relating I to V, where I is the current through the conductor, and V is the voltage across the conductor. The non-linear capacitor model allows the capacitor to described by a table relating V to Q, where Q is the charge contained in the capacitor, and V is the voltage across the capacitor. C, the non-linear capacitance, is defined as dQ/dV. The non-linear inductor model allows the inductor to described by a table relating I to Flux, where Flux is the flux in the inductor, and I is the current across the inductor. L, the non-linear inductance, is defined as d Flux / dI. This component is an amplifier with very high voltage gain, very high input impedance and very low output impedance. The Op Amp in the devices menu is based on the algorithm found in the book Macromodeling with Spice, authored by Connelly & Choi, published by Prentice Hall, section 3.3. The parameters for the default op-amp are those of the 741 op-amp. The Op Amp model is converted from a set of parameters which you enter into the program, into a subcircuit. The +VS pin should be connected to positive power, and the negative vertical pin should be connected to negative power to properly power the Op Amp. Sometimes, if the circuit is not converging, the reason will be that the power supplies are hooked up backwards. To check which power supply is supposed to be positive, choose the Show Pin Names option in the Edit menu's Options dialog. Also, sometimes the simulation doesn't converge if there is no DC path from the output of the Op Amp to ground. There are many more op-amps from parts vendors. To see a list, browse the parts, and set the category filter to opamp, and apply filter. OpAmp parameters NAME dm_res_in cm_res_in DC_dm_gain CMRR in_off_curr in_bias_curr res_out pos_slew neg_slew cap_in off_volt_in f_pole1 f_pole2 f_pole3 f_zero f_pole4 curr_src_max PARAMETER Differential mode input resistance Common mode input resistance DC differential mode gain Common mode rejection ratio Input offset current Input bias current Output resistance Positive slew rate Negative slew rate Input capacitance Input offset voltage Frequency of the first pole Frequency of the second pole Frequency of the third pole Frequency of the zero Frequency of the fourth pole Maximum source current UNITS OHM OHM dB dB A A OHM V/us V/us F V Hz Hz Hz Hz Hz A curr_sink_ input_type Maximum sink current input type (n or p) A The Piecewise Linear (PWL) Controlled Source is a single-input and single-output function generator whose output is not necessarily linear for all input values. Instead, it follows an I/O relationship that is specified by the x_array and y_array coordinates. The x_array and y_array values represent vectors of coordinate points on the x and y axes, respectively. The x_array values are progressively increasing input coordinate points, and the associated y_array values represent the outputs at those points. There may be as few as two pairs specified, or as many as memory and simulation speed allow. In order to fully specify outputs for values of Vin outside of the bounds of the PWL function, the PWL controlled source model extends the slope found between the lowest two coordinate pairs and the highest two coordinate pairs. This has the effect of making the transfer function completely linear for Vin less than x_array[0] and Vin greater than x_array[n]. It also has the potentially subtle effect of unrealistically causing an output to reach a very large or small value for large inputs. You should thus keep in mind that the PWL Source does not inherently provide a limiting capability. In order to diminish the potential for divergence of simulations when using the PWL block, a form of smoothing around the x_array and y_array coordinate points is necessary. This is due to the iterative nature of the simulator and its reliance on smooth first derivatives of transfer functions in order to arrive at a matrix solution. Consequently, the two parameters "input_domain" and "fraction" are included to allow you some control over the amount and nature o the smoothing performed. Fraction is a switch that is either TRUE or FALSE. When TRUE (the default setting), the simulator assumes that the specified input_domain value is to be interpreted as a fractional figure. Otherwise, it is interpreted as an absolute value. Thus, if fraction = TRUE and input_domain = 0.10, the simulator assumes that the smoothing radius about each coordinate point is to be set equal to 10% of the length of either the x_array segment above each coordinate point, or the x_array segment below each coordinate point. The specific segment length chosen will be the smallest of these two for each coordinate point. If fraction = FALSE and input_domain = 0.10, then the simulator will begin smoothing the transfer function at 0.10 volts (or amperes) below each x_array coordinate and will continue the smoothing process for another 0.10 volts (or amperes) above each x_array coordinate point. Model Identifier: pwl Netlist Format: A<device_name> %vd(<in_pin> <in_ref_pin>) %vd(<out_pin> <out_ref_pin>) <model_name> .model <model_name> pwl x_array = [<value1> <value2> ...] y_array = [<value1> <value2> ...] {<param1 = value> < param2 = value> ...} Example: A1 %vd(2 3) %vd(1 4) pwl .model pwl pwl x_array = [0 1] y_array = [0 1] Parameters: Name x_array y_array input_domain fraction Description x-element array y-element array input smoothing domain smoothing %/abs switch Default Notes [0 1] required [0 1] required 0.01 True Resistors are passive devices that dissipate power. Their resistance value varies depending on how much power they can dissipate and is measured in Ohms. The transient, DC and AC behaviors of a resistor are all described by the same equation: v=R*i where v is the voltage across the resistor, i is the current passing through the resistor, and R is the resistance. The value of R must be nonzero. All resistor names must begin with R. Netlist Format: R<device_name> <N+> <N-> <value> Example: R1 1 2 1k B2.Spice A/D provides three types of resistor: Simple, User-Defined (Real Resistor) and Semiconductor. Simple Resistor The resistance of the simple resistor is a single value. You can also set the Monte Carlo tolerance for this resistor. User-Defined Resistor This is primarily a temperature-dependent resistor. You can access it from the Parts Menu. It has two process model parameters: TC1 first-order temperature coefficient, and TC2 second-order temperature coefficient. The value of the temperature-dependent resistance is computed using the quadratic equation: R(T) = R(T0) * [ 1 + TC1 * (T - T0) + TC2 * (T-T0)^2 ] Semiconductor Resistor This allows for both the modeling of temperature effects and the calculation of resistance from geometric characteristics and the specifications of the process in the model specification of the resistor. If width isn't specified, then the default width given in the model is used. The temp value is the temperature and it's optional. If it's not given, the temperature in the .Options line will be used. The model parameters are as follows: TC1, first order temperature coefficient; TC2, second order temperature coefficient; RSH, sheet resistance; DEFW, default width; TNOM, the parameter measurement temperature; NARROW, narrowing due to side etching, and RES, the resistance multiplier for Monte Carlo analysis. To modify the model parameters, first double click on the resistor to edit its top-level model parameters, then choose the button in the process model section to Edit from table and this will open a window in which you can edit TC1, TC2, RSH, RES, etc. The resistance is computed as: R(T0) = (RSH) * [(L - NARROW) / (W - NARROW)] * RES R(T) = R(T0) * [ 1 + TC1 * (T - T0) + TC2 * (T-T0)^2 ] The s-domain transfer function is a single input and output transfer function in the Laplace transform variable \93s\94 that allows for flexible modulation of the frequency-domain characteristics of a signal. The code model may be configured to produce an arbitrary s-domain transfer function with the following restrictions: 1. The degree of the numerator polynomial cannot exceed that of the denominator polynomial in the variable \93s\94. 2. The coefficients for a polynomial must be stated explicitly. That is, if a coefficient is zero, it must be included as an input to the num_coeff or den_coeff vector. Gain and input offset parameters are included to allow for tailoring of the required signal. Internal signal values and the output value of the s-domain transfer function do not have limits, so you are cautioned to specify gain and coefficient values that will not cause the model to produce excessively large values. In AC analysis, the value returned is equal to the real and imaginary components of the total s-domain transfer function at each frequency of interest. The denormalized_freq term allows you to specify coefficients for a normalized filter (i.e., one in which the frequency of interest is 1 rad/s) Once these coefficients are included, specifying the denormalized frequency value \93shifts\94 the corner frequency to the actual one of interest. Truncation error checking is included in the s-domain transfer block. This should provide for more accurate simulations, since the model will inherently request smaller time increments between simulations points if truncation errors would otherwise be excessive. The order of the coefficient parameters is from that associated with the highest-powered term decreasing to that of the lowest. Model Identifier: s_xfer Netlist Format: A<device_name> <in_pin> <out_pin> <model_name> .model <model_name> s_xfer num_coeff = [<value1> {<value2>}...] den_coeff = [<value1> {<value2>}...] + int_ic = [<value1> {<value2>}...] {<param1 = value> < param2 = value> ...} Example: A 1 2 A_transfer_function .model A_transfer_function s_xfer num_coeff = [1] den_coeff = [1] int_ic = [0.0] Parameters: Name In_offset Gain Num_coeff Den_coeff Int_ic Denormalized_freq Description input offset gain numerator polynomial coefficients denominator polynomial coefficients integrator stage initial conditions denormalized corner freq. (radians) for 1 rad/s coeffs Default 0.0 1.0 [1] [1] [0.0] 1.0 Notes required required required The Summer Block has two inputs. Each input is added to its respective offset and then multiplied by the specified input gain (with default values of 1). These are then summed, multiplied by the output gain and added to the output offset. Note that the input offsets and input gains are specified as vectors. The summer function operates in DC, AC, and Transient analysis modes. Model Identifier: summer Netlist Format: A<device_name> <in_pin> <out_pin> <model_name> .model <model_name> summer {<param1 = value> < param2 = value> ...} Example: A1 [1 2] 3 summer .model summer summer in_offset = [0 0] in_gain = [1 1] out_gain = 1.0 out_offset = 0.0 Parameters: Name in_offset in_gain out_gain out_offset Description input offset vector input gain vector output gain output offset Default [0 0] [1 1] 1.0 0.0 The Thermometer is a two-pin device that measures the operating temperature of a circuit. The voltage across the device pins is equal to SPICE's operating temperature in degrees centigrade. The output voltage of the Thermometer can be used in conjunction with linear or nonlinear dependent sources to model temperature-dependent quantities. Model Identifier: thermo Parameters: This device has no parameters. Transmission lines are bi-directional, ideal delay lines, with A and B ports, and + and - port nodes, which define the polarity of a positive voltage at that port. The transmission line's length can be specified either by TD (a delay in seconds), or by F and NL (a frequency and the corresponding relative wavelength). During transient analysis, the internal step time is limited to no more than \BD the smallest time delay. Thus short transmission lines lead to long run times. Transmission lines can be of three main types, Lossless, Lossy or Uniform RC. Each of these is described in its own section. The standard parameters are L, and N. They are described below: Two of the nodes are the element nodes connected by the RC line. The third is the node to which the capacitances are connected. L is the length of the RC line in meters. N is the number of lumped segments to use in modeling the RC line. This device is derived from a model proposed by Gertzberrg. It expands the URC line into a network of lumped RC segments with internally generated nodes. These segments increase toward the middle of the URC line in a geometric progression with K as the proportionality constant. The URC line is made up entirely of resistor and capacitor segments, unless the ISPERL parameter has a non-zero value. In this case, capacitors are replaced by reverse biased diodes with an equivalent zero-bias junction capacitance, a saturation current of ISPERL amps per meter of transmission line, and optional series resistance of RSPERL ohms per meter. Parameters are giving in the chart below: NAME K FMAX RPERL CPERL ISPERL RSPERL PARAMETER propagation constant maximum frequency of interest resistance per unit length capacitance per unit length saturation current per unit length diode resistance per unit length UNITS DEFAULT 2 Hz 1.0G Ohm /m 1000 F/m 1.0e-15 A/m 0 Ohm/m 0 EXAMPLE 1.2 6.5Meg 10 1pF - Switches are devices that exhibit high resistance when open (OFF state) and low resistance when closed (ON state). The switch model allows an almost ideal switch to be specified. With careful selection of the on and off resistances, they can effectively represent zero and infinite resistances in comparison to other circuit elements, while sustaining the model condition of a positive, finite value. There are two versions of Voltage-Controlled Switch: two-terminal and four-terminal. For the two-terminal device, you must specify the name of the controlling Voltmeter or controlling voltage nodes, as well as the turn-on and turn-off voltages in Volts and on and off resistance values in Ohms. The four-terminal device already provides nodes for a controlling voltmeter, and you just specify the rest of parameters. When the voltage across the switch or controlling device is greater or equal to the turn-on current, the switch closes. When the voltage across the switch or controlling device is less than or equal to the turn off current, the switch opens. NAME V_ON V_OFF RON ROFF PARAMETER turn-on voltage turn-off voltage on resistance off resistance UNITS Volts Volts ohms ohms DEFAULT 0.5 0.0 1.0 1Gig XSpice devices have the following form: A<device_name> <node1> <node2> ... <model_name> e.g., A2 1 2 transfer_function Note that XSpice devices must start with the "A" designation, much as a resistor starts with an "R". Some devices will have grouped (or vector) pins and are designated by being placed inside square brackets. In the example shown below, the 1 and 2 pins are grouped. Pin 3 is not. A1 [1 2] 3 summer Some models will have voltage differential pairs of pins and will be denoted by a %vd( ). In the following example pins 1 and 4 are differential pairs, as well as pins 2 and 3. Differential pairs must go between parentheses (). A1 %vd(1 4) %vd(2 3) triangle Refer to individual devices for more information. Each XSpice device will also have a model associated with it. Each model will have the following form: .model <model_name> <model_identifier> {<pname1 = pval1>} {<pname2 = pval2>} ... e.g., .model transfer_function s_xfer in_offset = 0.0 gain = 1.0 Model_name refers to the name given in the device line. Model_identifier is an internal designation and must be of an existing designation Refer to each device's example for the correct designation. Parameter values are optional. If they aren't specified, then the default will be used. Some devices have parameters that require a value and must be specified. Refer to individual devices for any required parameters. The Zener Diode models the DC characteristics of most zeners. Since most data sheets for zener diodes do not give detailed characteristics in the forward region, only a single point defines the forward characteristicThe saturation current refers to the relatively constant reverse current that is produced when the voltage across the zener is negative, but breakdown has not been reached. The reverse leakage current determines the slight increase in reverse current as the voltage across the zener becomes more negative. It is modeled as a resistance parallel to the zener with value v_breakdown / i_rev. Note that the limt_switch parameter engages an internal limiting function for the zener. This can, in some cases, prevent the simulator from converging to an unrealistic solution if the voltage across or current into the device is excessive. If use of this feature fails to yield acceptable results, the convlimit option should be tried (add the following statement to the SPICE input deck: .options convlimit) Model Identifier: zener Netlist Format: A<device_name> <z_pin> <z_out_pin> <model_name> .model <model_name> zener v_breakdown = 1 {<param1 = value> < param2 = value> ...} Example: A1 1 2 zener .model zener zener v_breakdown = 1 Parameters: Name v_breakdown i_breakdown i_sat N_forward limit_switch Description breakdown voltage breakdown current saturation current forward emission coefficient switch for on-board limiting (convergence aid) List of B2.Spice A/D Keyboard Shortcuts of Generic Digital and Mixed-Mode Devices Default Notes 1 required 2.0e-2 1.0e-12 1.0 False Back to B2.Spice A/D Wiki Main Page Glossary