Product Documentation
Analog Library Reference
Product Version IC23.1, August 2023

6


Sources - Dependent Components

Symbol: cccs

Linear Current Controlled Current Source

A current-controlled source detects the current with a probe device. A valid probe is a component instance in the circuit that naturally computes current. For example, probes can be voltage sources (independent or controlled), inductors, transmission lines, microstrip lines, N-ports, and transformers. If the probe device computes more than one current (such as transmission lines, microstrip lines, and N-ports), the index of the probe port through which the controlling current flows needs to be specified. Positive current exits the source node and enters the sink node of the controlled source.

Component cccs uses the same values of parameters fgain, maxm, minm, m for both Spectre and hspiceD simulators.

Command-line help

spectre -h cccs

CDF Parameters

CDF Parameter Label CDF Parameter spectre auCdl auLvs hspiceD UltraSim

Name of voltage source

vref

x

-

-

x

x

Current gain

fgain

x

-

-

x

x

Initial condition

ic

-

-

-

-

x

Port

port

x

-

-

-

-

Type of transfer char

trfType

x

-

-

-

-

Multiplier

m

x

-

-

x

x

Type of Source

typesrc

x

-

-

-

-

Maximum Output Current

maxm

x

-

-

x

-

Minimum Output Current

minm

x

-

-

x

-

Absolute Output Current

absol

x

-

-

-

-

Smoothing Factor

smoothing

x

-

-

-

-

Type

csType

-

-

-

x

x

Current gain (Obsolete)

hfgain

-

-

-

x

-

Maximum output current (Obsolete)

maxi

-

-

-

x

x

Minimum output current (Obsolete)

mini

-

-

-

x

x

Scale factor

scale

-

-

-

x

x

Multiplier (Obsolete)

hm

-

-

-

x

Temperature coefficient 1

tc1

-

-

-

x

x

Temperature coefficient 2

tc2

-

-

-

x

x

Absolute value

habs

-

-

-

x

-

Initial condition

hic

-

-

-

x

-

Delta

delta

x

-

-

x

x

Number of controlling pairs

xypairs

-

-

-

x

x

Delay Time

htd

-

-

-

x

-

Absolute value

abs

x

-

-

-

x

Delay Time

td

-

-

-

-

x

Controlling Volt 1

x1 - x20

-

-

-

x

x

Syntax/Synopsis

Name ( sink src ) cccs <parameter=value> ...

Example

vcs (pos gnd) cccs gain=2.5 probe=v1 m=1
v1 is an instance of a voltage source

Additional Information

This device is supported within the altergroups. This device can also model ideal digital gates.

Symbol: ccvs

Linear Current Controlled Voltage Source

A current-controlled source senses the current with a probe device. A valid probe is a component instance in the circuit that naturally computes current. For example, probes can be voltage sources (independent or controlled), inductors, transmission lines, microstrip lines, N-ports, and transformers.

If the probe device computes more than one current (such as transmission lines, microstrip lines, and N-ports), the index of the probe port through which the controlling current flows needs to be specified. Current through the controlled voltage source is calculated and is defined to be positive if it flows from the positive terminal, through the source, to the negative terminal.

Component ccvs uses the same values of parameters hgain, maxm, and minm for both Spectre and hspiceD simulators.

Command-line help

spectre -h ccvs

CDF Parameters

CDF Parameter Label CDF Parameter spectre auCdl auLvs hspiceD UltraSim

Name of voltage source

vref

x

-

-

x

x

Transresistance

hgain

x

-

-

x

x

Initial condition

ic

-

-

-

-

x

Port

port

x

-

-

-

-

Type of transfer char

trfType

x

-

-

-

-

Multiplier

m

x

-

-

-

-

Type of Source

typesrc

x

-

-

-

-

Minimum Output Voltage

minm

x

-

-

x

-

Maximum Output Voltage

maxm

x

-

-

x

-

Absolute Output Voltage

absol

x

-

-

-

-

Smoothing Factor

smoothing

x

-

-

-

-

Type

csType

-

-

-

x

x

Transresistance (Obsolete)

hhgain

-

-

-

x

-

Maximum output voltage (Obsolete)

maxv

-

-

-

x

x

Minimum output voltage (Obsolete)

minv

-

-

-

x

x

Scale factor

scale

-

-

-

x

x

Temperature coefficient 1

tc1

x

-

-

x

x

Temperature coefficient 2

tc2

x

-

-

x

x

Absolute value

habs

-

-

-

x

-

Initial condition

hic

-

-

-

x

-

Delta

delta

x

-

-

x

x

Number of controlling pairs

xypairs

-

-

-

x

x

Delay Time

htd

-

-

-

x

-

Absolute value

abs

x

-

-

-

x

Delay Time

td

-

-

-

-

x

Controlling Volt 1

x1 - x20

-

-

-

x

x

Syntax/Synopsis

Name ( p n ) ccvs <parameter=value> ...

Example

vvs (pos gnd) ccvs rm=1 probe=v1 m=1 
v1 is an instance of a voltage source

Additional Information

This device is supported within the altergroups. This device can also model ideal digital gates.

Symbol: pcccs

Polynomial Current Controlled Current Source

A vector of coefficients specifies the polynomial function that defines the relationship between the output current and the controlling currents. You must specify at least one coefficient.

For a polynomial in N variables a1, a2, ... an, the polynomial function F(a0,a1,...,an) is given by:

F = c0 + c1 * a1 + c2 * a2 + ... 
+ c(m+1) * a1^2 + c(m+2) * a1 * a2 +... 
+ c(2m+1) * a2^2 + c(2m+2) * a2 * a3 +...

where the ‘c’s are coefficients of the polynomial terms, and m is the multiplier.

Command-line help

spectre -h pcccs

CDF Parameters

CDF Parameter Label CDF Parameter spectre auCdl auLvs hspiceD UltraSim

Max Coefficient Number

polyCoef

x

-

-

-

-

Poly Coeff 0

c0

x

-

-

-

-

Poly Coeff 1

c1

x

-

-

-

-

Poly Coeff 2

c2

x

-

-

-

-

Poly Coeff 3

c3

x

-

-

-

-

Poly Coeff 4

c4

x

-

-

-

-

Number of Probes

probeCnt

x

-

-

-

-

Probe 1

p1

x

-

-

-

-

Port 1

port1

x

-

-

-

-

Probe 2

p2

x

-

-

-

-

Port 2

port2

x

-

-

-

-

Probe 3

p3

x

-

-

-

-

Port 3

port3

x

-

-

-

-

Probe 4

p4

x

-

-

-

-

Port 4

port4

x

-

-

-

-

Gain

gain

x

-

-

-

-

Multiplier

m

x

-

-

-

-

Maximum Output Current

maxm

x

-

-

-

-

Minimum Output Current

minm

x

-

-

-

-

Absolute Output Current

absol

x

-

-

-

-

Smoothing Factor

smoothing

x

-

-

-

-

Temperature coefficient 1

tc1

x

-

-

-

-

Temperature coefficient 2

tc2

x

-

-

-

-

Syntax/Synopsis

Name ( sink src ) pcccs <parameter=value> ...

Example

vpc (net1 0) pcccs probes=[vb vc ve vlp vpn] coeffs=[0 8.8e6 -8.8e6 9e6 8e6 -9e6]

Additional Information

This device is supported within the altergroups.

Symbol: pccvs

Polynomial Current Controlled Voltage Source

The polynomial function defining the relationship between the output voltage and the controlling currents is specified by a vector of coefficients. At least one coefficient must always be specified. Current through the voltage source is calculated and is defined as positive if it flows from the positive terminal, through the source, to the negative terminal.

For a polynomial in N variables a1, a2, ... an, the polynomial function F(a0,a1,...,an) is given by:

F = c0 + c1 * a1 + c2 * a2 + ... 
+ c(m+1) * a1^2 + c(m+2) * a1 * a2 +... 
+ c(2m+1) * a2^2 + c(2m+2) * a2 * a3 +...

where the ‘c’s are coefficients of the polynomial terms, and m is the multiplier.

Command-line help

spectre -h pccvs

CDF Parameters

CDF Parameter Label CDF Parameter spectre auCdl auLvs hspiceD UltraSim

Max Coefficient Number

polyCoef

x

-

-

-

-

Poly Coeff 0

c0

x

-

-

-

-

Poly Coeff 1

c1

x

-

-

-

-

Poly Coeff 2

c2

x

-

-

-

-

Poly Coeff 3

c3

x

-

-

-

-

Poly Coeff 4

c4

x

-

-

-

-

Number of Probes

probeCnt

x

-

-

-

-

Probe 1

p1

x

-

-

-

-

Port 1

port1

x

-

-

-

-

Probe 2

p2

x

-

-

-

-

Port 2

port2

x

-

-

-

-

Probe 3

p3

x

-

-

-

-

Port 3

port3

x

-

-

-

-

Probe 4

p4

x

-

-

-

-

Port 4

port4

x

-

-

-

-

Gain

gain

x

-

-

-

-

Multiplier

m

x

-

-

-

-

Maximum Output Voltage

maxm

x

-

-

-

-

Minimum Output Voltage

minm

x

-

-

-

-

Absolute Output Voltage

absol

x

-

-

-

-

Smoothing Factor

smoothing

x

-

-

-

-

Temperature coefficient 1

tc1

x

-

-

-

-

Temperature coefficient 2

tc2

x

-

-

-

-

Syntax/Synopsis

Name ( p n ) pccvs <parameter=value> ...

Example

ixy (net1 0) pccvs coeffs=[0 1 0 1] probes=[vin1 vin2] gain=2

Additional Information

This device is supported within the altergroups.

Symbol: pvccs, pvccs2, pvccs3

Polynomial Voltage Controlled Current Source

A polynomial voltage controlled current source in which the symbol varies with the number of controlling voltages. A vector of coefficients specifies the polynomial function that defines the relationship between the output current and the controlling voltages. You must specify at least one coefficient. Current exits the source node and enters the sink node.

For a polynomial in M variables a1, a2, ... am, the polynomial function F(a0,a1,...,am) is given by:

F = c0 + c1 * a1 + c2 * a2 + ...
+ c(m+1) * a1^2 + c(m+2) * a1 * a2 +...
+ c(2m+1) * a2^2 + c(2m+2) * a2 * a3 +...

where the ‘c’s are coefficients of the polynomial terms, and m is the multiplier.

The coefficients should be given in the order of the polynomial terms. The order of the polynomial terms is:

  1. Lower degree term goes before higher degree term. For example, a1 is before a1^2.
  2. For the same degree terms, the term whose first variable has higher degree goes first. If the first variable has the same degree, then check the second variable, and so on. For example, for terms in 3 variables and of 4 degrees, a 1^4 goes before a1^3*a2. And a1^3*a2 goes before a1^3*a3.

If you have high degree terms, using coeff parameter may not be convenient. You can use a file to specify the nonzero coefficients. You use one line in your file to specify one coefficient. The format is to put the degree of the variables first, then the coefficient. For example, if you have term 1.5*a1*a2^2*a3, the degrees of a1, a2 and a3 are 1 2 1, the coefficient is 1.5.

So the line in your file is:

1 2 1 1.5

Command-line help

spectre -h pvccs

CDF Parameters

CDF Parameter Label CDF Parameter spectre auCdl auLvs hspiceD UltraSim

Max Coefficient Number

polyCoef

x

-

-

x

-

Poly Coeff 0

c0 - c20

x

-

-

x

-

Initial condition

ic

-

-

-

x

-

Scale factor

scale

-

-

-

x

-

Absolute value

abs

x

-

-

x

-

Gain

gain

x

-

-

-

-

Multiplier

m

x

-

-

x

-

Maximum Output Current

maxm

x

-

-

x

-

Minimum Output Current

minm

x

-

-

x

-

Absolute Output Current

absol

x

-

-

-

-

Smoothing Factor

smoothing

x

-

-

-

-

Temperature coefficient 1

tc1

x

-

-

x

-

Temperature coefficient 2

tc2

x

-

-

x

-

File containing Poly Coeffs

filecoef

x

-

-

-

-

Coeffs to be specified in

coefSpec

x

-

-

-

-

Syntax/Synopsis

Name ( sink src ps1 ns1 ... ) pvccs <parameter=value> ...

Example

v2 (net1 0 net2 0) pvccs coeffs=[0 -2e-3 - 10e-3] gain=2 m=1

Additional Information

This device is supported within altergroups.

Symbol: pvccsp

Parameterized Cell Based Polynomial Nonlinear Voltage Controlled Current Source

pvccsp is a Pcell-based polynomial voltage controlled current source in which the symbol varies with the number of controlling voltages. pvccsp is similar to pvccs except that it has one additional parameter (nc) that specifies the number of controlling voltage sources.

The maximum number of controlling voltages is 20. Therefore, if you specify a number greater than 20, the value of this parameter will default to 20.

Command-line help

spectre -h pvccs

CDF Parameters

CDF Parameter Label CDF Parameter spectre auCdl auLvs hspiceD UltraSim

Num of controlling voltage(s)

nc

x

-

-

-

-

Max Coefficient Number

polyCoef

x

-

-

-

-

Poly Coeff 0

c0

x

-

-

-

-

Poly Coeff 1

c1

x

-

-

-

-

Poly Coeff 2

c2

x

-

-

-

-

Poly Coeff 3

c3

x

-

-

-

-

Poly Coeff 4

c4

x

-

-

-

-

Gain

gain

x

-

-

-

-

Multiplier

m

x

-

-

-

-

Maximum Output Current

maxm

x

-

-

-

-

Minimum Output Current

minm

x

-

-

-

-

Absolute Output Current

absol

x

-

-

-

-

Smoothing Factor

smoothing

x

-

-

-

-

Temperature coefficient 1

tc1

x

-

-

-

-

Temperature coefficient 2

tc2

x

-

-

-

-

Example

Following is the netlist when the pvccs coefficient is specified as an instance parameter and not specified in a file:

G0 (net21 net23 net22 net24 ) pvccs gain=1.0  m=1 coeffs=[ 1 1 1 1 ]  min=1.0
max=3.1 abs=off tc1=0 tc2=0

Following is the netlist when the pvccs coefficient is specified in a file:

G0 (net21 net23 net22 net24 ) pvccs gain=1.0  m=1 file=”abc.coeff”  min=1.0
max=3.1 abs=off tc1=0 tc2=0

Symbol: pvcvs, pvcvs2, pvcvs3

Polynomial Voltage Controlled Voltage Source

It is a polynomial voltage controlled voltage source in which the symbol varies with the number of controlling voltages. A vector of coefficients specifies the polynomial function that defines the relationship between the output voltage and the controlling voltages. You must specify at least one coefficient. Current through the voltage source is calculated and is defined to be positive if it flows from the positive terminal, through the source, to the negative terminal.

For a polynomial in N variables a1, a2, ... an, the polynomial function F(a0,a1,...,an) is given by:

F = c0 + c1 * a1 + c2 * a2 + ... 
+ c(m+1) * a1^2 + c(m+2) * a1 * a2 +... 
+ c(2m+1) * a2^2 + c(2m+2) * a2 * a3 +...

where the ‘c’s are coefficients of the polynomial terms, and m is the multiplier.

Command-line help

spectre -h pvcvs

CDF Parameters

CDF Parameter Label CDF Parameter spectre auCdl auLvs hspiceD UltraSim

Max Coefficient Number

polyCoef

x

-

-

-

-

Poly Coeff 0

c0 - c20

x

-

-

-

-

Initial condition

ic

-

-

-

x

-

Scale factor

scale

-

-

-

x

-

Absolute value

abs

x

-

-

x

-

Gain

gain

x

-

-

-

-

Multiplier

m

x

-

-

-

-

Minimum Output Voltage

minm

x

-

-

x

-

Maximum Output Voltage

maxm

x

-

-

x

-

Absolute Output Voltage

absol

x

-

-

-

-

Smoothing Factor

smoothing

x

-

-

-

-

Temperature coefficient 1

tc1

-

-

-

x

-

Temperature coefficient 2

tc2

x

-

-

x

-

Syntax/Synopsis

Name ( p n ps1 ns1 ... ) pvcvs <parameter=value> ...

Example

v1 (p 0 c1 0) pvcvs coeffs=[0 0 0 0.1 1 1] gain=1

Additional Information

This device is supported within the altergroups.

Symbol: pvcvsp

Parameterized Cell Based Polynomial Nonlinear Voltage Controlled Voltage Source

pvcvsp is a Pcell-based polynomial voltage controlled voltage source in which the symbol varies with the number of controlling voltages. This component is similar to pvcvs except that it has one additional parameter (nc) that specifies the number of the controlling voltage sources.

The maximum number of controlling voltages is 20. Therefore, if you specify a number greater than 20, the value of this parameter will default to 20.

CDF Parameters

CDF Parameter Label CDF Parameter spectre auCdl auLvs hspiceD UltraSim

Num of controlling voltage(s)

nc

x

-

-

-

-

Max Coefficient Number

polyCoef

x

-

-

-

-

Poly Coeff 0

c0

x

-

-

-

-

Poly Coeff 1

c1

x

-

-

-

-

Poly Coeff 2

c2

x

-

-

-

-

Poly Coeff 3

c3

x

-

-

-

-

Poly Coeff 4

c4

x

-

-

-

-

Gain

gain

x

-

-

-

-

Multiplier

m

x

-

-

-

-

Minimum Output Voltage

min

x

-

-

-

-

Maximum Output Voltage

max

x

-

-

-

-

Absolute Output Voltage

abs

x

-

-

-

-

Smoothing Factor

delta

x

-

-

-

-

Temperature coefficient 1

tc1

x

-

-

-

-

Temperature coefficient 2

tc2

x

-

-

-

-

Example

Following is the netlist when the pvcvs coefficient is passed as an instance parameter and not specified in a file:

E0 (net21 net23 net22 net24 ) pvcvs gain=1.0  m=1 coeffs=[ 1 1 1 1 ]  min=1.0
max=3.1 abs=off tc1=0 tc2=0

Following is the netlist when the PVCVS coefficient is specified in a file:

E0 (net21 net23 net22 net24 ) pvcvs gain=1.0  m=1 file=”abc.coeff”  min=1.0
max=3.1 abs=off tc1=0 tc2=0
The parameters, polyCoef and coefSpec, are not netlisted.

Symbol: vccs

Linear Voltage Controlled Current Source

Positive current exits the source node and enters the sink node.

Component vccs uses the same values of parameters ggain, maxm, minm, and m for both Spectre and hspiceD simulators.

Command-line help

spectre -h vccs

CDF Parameters

CDF Parameter Label CDF Parameter spectre auCdl auLvs hspiceD UltraSim

Transconductance

ggain

x

-

-

x

x

Initial condition

ic

-

-

-

-

x

Multiplier

m

x

-

-

x

x

Type

csType

-

-

-

x

x

Transconductance (Obsolete)

hggain

-

-

-

x

-

Maximum output current (Obsolete)

maxi

-

-

-

x

x

Minimum output current (Obsolete)

mini

-

-

-

x

x

Maximum output current

maxm

x

-

-

x

-

Minimum output current

minm

x

-

-

x

-

Scale factor

scale

-

-

-

x

x

Multiplier (Obsolete)

hm

-

-

-

x

-

Temperature coefficient 1

tc1

-

-

-

x

x

Temperature coefficient 2

tc2

-

-

-

x

x

Absolute value

habs

-

-

-

x

-

Initial condition

hic

-

-

-

x

-

Pwl type

pwlType

-

-

-

x

x

Delta

delta

x

-

-

x

x

Number of controlling pairs

xypairs

-

-

-

x

x

Delay Time

htd

-

-

-

x

-

Absolute value

abs

x

-

-

-

x

Delay Time

td

-

-

-

-

x

Type of input of source

inputtype

x

-

-

-

-

Syntax/Synopsis

Name ( sink src ps ns ) vccs <parameter=value> ...

Example

v1 (1 0 2 3) gm=-1 m=2

Additional Information

This device is supported within the altergroups.

Voltage-Controlled Current Sources (G-Elements)

Voltage-Controlled Capacitor

G
xx 
n+
 
n- vccap pwl(1) in+
 
in- [delta = 
val
] [scale = 
val
]
+ [m = val] [tc1 = val] [tc2 = val] x1, y1, x2, y2 ... [ic = val]

Voltage-Controlled Current Source

Behavioral

G
xx 
n+
 
n- [vccs] cur = ’
equation
’ [max = 
val
] [min = 
val
] [scale = 
val
]

Linear

G
xx 
n+
 
n-
 
[vccs] in+
 
in- 
transconductance
 [max = 
val
] [min = 
val
]
+ [m = val] [scale = val] [tc1 = val] [tc2 = val] [abs = 1] [ic = val]

Piece-Wise Linear

G
xx 
n+
 
n- [vccs] pwl(1) in+
 
in- [delta = 
val
] [scale = 
val
]
+ [m = val] [tc1 = val] [tc2 = val] x1, y1, x2, y2 ... [ic = val]

Polynomial

G
xx 
n+
 
n- [vccs] poly(
ndim
) in+
 
in-
 ...
 
inndim+ inndim-
 
+ [tc1 = 
val
] [tc2 = 
val
] [scale = 
val
] [max = 
val
]
+ [min = 
val
] [abs = 
1
] 
p0 [p1 ...]
 [ic = 
vals
]

Delay Element

G
xx 
n+
 
n- [vccs] 
delay 
in+
 
in- td = 
val

+ [tc1 = 
val
] [tc2 = 
val
] [scale = 
val
] [npdelay = 
val
]

Voltage-Controlled Resistor

Linear

G
xx 
n+
 
n- vcr in+
 
in- 
transfactor
 [max = 
val
] [min = 
val
]
+ [m = val] [scale = val] [tc1 = val] [tc2 = val] [ic = val]

Piece-Wise Linear

G
xx 
n+
 
n- vcr pwl(1) in+
 
in- [delta = 
val
] [scale = 
val
]
+ [m = val] [tc1 = val] [tc2 = val] x1, y1, x2, y2 ... [ic = val]
Gxx n+ n- vcr npwl(1) in+ in- [delta = val] [scale = val]
+ [m = val] [tc1 = val] [tc2 = val] x1, y1, x2, y2 ... [ic = val]
Gxx n+ n- vcr ppwl(1) in+ in- [delta = val] [scale = val]
+ [m = val] [tc1 = val] [tc2 = val] x1, y1, x2, y2 ... [ic = val]

Polynomial

G
xx 
n+
 
n- vcr poly(
ndim
) in+
 
in- ... 
inndim+ inndim-

+ [tc1 = 
val
] [tc2 = 
val
] [scale = 
val
] [max = 
val
]
+ [min = 
val
] [abs = 1] p0 [p1 ...] [ic = 
val
s]

Description

Defines voltage-controlled current sources (VCCSs), voltage-controlled resistors (VCRs), and voltage-controlled capacitors (VCCAPs) in behavioral, linear, piece-wise linear, poly, and delay forms. In the behavioral function, the equation can contain terms of node voltages. In linear form, the output value is estimated with ‘[v(in+)-v(in-)]’ multiplied by transfactor or transconductance, followed by the scale and temperature adjustment, before confined with the abs, min, and max parameters. In the piece-wise linear function, at least two pairs of voltage-current (or voltage-resistance, voltage-capacitance) points are required.

Arguments

n+, n-

Terminals of controlled element.

in+, in-

Positive and negative controlling nodes.

vcr, vccap, vccs

Keywords for the voltage-controlled resistor, capacitor, and current source elements.

vcr, vccap, and vccs are reserved words that cannot be used as node names.

cur = ’equation’

Current of the controlled element flowing from n+ to n-. It can be

  • An expression with parameters and functions of node voltages
  • Branch currents of other elements
  • Time, frequency, or temperature

max = val

Maximum value of the controlled current or resistance.

min = val

Minimum value of the controlled current or resistance.

transconductance

Voltage to current conversion factor.

transfactor

Voltage to resistance conversion factor.

scale = val

Scaling factor; scales current by its value (default = 1.0).

m = val

Multiplier (default = 1).

tc1 = val

First-order temperature coefficient for the element.

tc2 = val

Second-order temperature coefficient for the element.

abs

Output current takes its absolute value if abs = 1.

ic = val

Initial value of the current source (default = 0.0).

delta = val

A value used to smooth corners of the piece-wise linear function. The default is 1/4 of the smallest distance between break points, and is not to exceed 1/2 of this value.

x1...

Voltage drops between the controlling nodes in+ and in-. They must be in ascending order.

y1...

Element output value corresponding to x1...

npdelay

The number of data points used in delay simulations.

The npwl and ppwl functions are used to interchange the n+ and n- nodes, but use the same transfer function.

npwl

For the in- node connected to n+, if v(n+,n-) < 0, then the controlling voltage is v(in+,in-). Otherwise, the controlling voltage is v(in+,n-).

For the in- node connected to n-, if v(n+,n-) > 0, then the controlling voltage is v(in+,in-). Otherwise, the controlling voltage is v(in+,n+).

ppwl

For the in- node, connected to n+, if v(n+,n-) > 0, then the controlling voltage is v(in+,in-). Otherwise, the controlling voltage is v(in+,n-).

For the in- node, connected to n-, if v(n+,n-) < 0, then the controlling voltage is v(in+,in-). Otherwise, the controlling voltage is v(in+,n+).

If the in- node does not connect to either n+ or n-, the Virtuoso UltraSim simulator changes npwl and ppwl to pwl.

Examples

In the following example

G1 1 2 cur = ’3.0*sin(v(7)/2)+v(6)^2’

defines a VCCS connected to nodes 1 and 2, with its current dependent on the voltage of nodes 6 and 7 in the given form.

In the next example

G2 1 2 vccs 5 0 0.5 max = 5 min = 0 m = 2 ic = 0

defines a VCCS connected to nodes 1 and 2. Its current is initialized as 0, and is half of the voltage at node 5. The current is also confined within 0 and 5 amps. The output current is multiplied by 2.

In the next example

G3 1 2 vccs pwl(1) 5 0 delta = 0.2 0, 0 0.5,1 1.5,1.5 scale = 1.e-3

defines a VCCS connected to nodes 1 and 2, its current controlled by the voltage at node 5. The current is calculated in a piece-wise linear function with a smoothing parameter of 0.2, and is scaled by 1.e-3 upon output.

In the next example

Gres 1 2 vcr pwl(1) 5 4 m = 3 0,0 1,1k 2,1.5k 3,1.8k 4,2.0k 5,2.0k ic = 1k

defines a VCR connected to nodes 1 and 2, with its resistance dependent on the voltage difference between nodes 5 and 4 in a piece-wise linear form. The initial resistance is 1k. The output resistance is decreased by 2/3.

In the next example

Gcap 1 2 vccap pwl(1) 5 4 m = 3 scale = 1.e-12 0,0 1,10 2,15 3,18 4,20 5,20 ic = 10

defines a VCCAP connected to nodes 1 and 2, with its capacitance dependent on the voltage difference between nodes 5 and 4 in a piece-wise linear form. The initial capacitance is set to 10 p after being scaled with 1e-12. The output capacitance is increased by a factor of 3.

In the next example

Gnmos d s vcr npwl(1) g s m =3 0,5g 1,5meg 2,5k 3,1k 5,50

tells the Virtuoso UltraSim simulator to model the source-drain resistor of the n-channel MOSFET which is used as a switch. Based on the npwl function, the resistor value (Gnmos) does not change when changing the position of the d and s nodes.

Symbol: vccsp

Parameterized Cell Based Voltage Controlled Current Source

vccsp is a Pcell-based voltage controlled current source in which the symbol varies with the number of controlling voltages. vccsp is similar to vccs except that it has one additional parameter (nc) that specifies the number of controlling voltage sources.

The maximum number of controlling voltages is 20. Therefore, if you specify a number greater than 20, the value of this parameter will default to 20.

CDF Parameters

CDF Parameter Label CDF Parameter spectre auCdl auLvs hspiceD UltraSim

Num of controlling voltage(s)

nc

x

-

-

-

-

Transconductance

ggain

x

-

-

-

-

Multiplier

m

x

-

-

-

-

Type of Source    

typesrc

x

-

-

-

-

Minimum Output Voltage

min

x

-

-

-

-

Maximum Output Voltage

max

x

-

-

-

-

Absolute Output Voltage

abs

x

-

-

-

-

Smoothing Factor

delta

x

-

-

-

-

Temperature coefficient 1

tc1

x

-

-

-

-

Temperature coefficient 2

tc2

x

-

-

-

-

Example

Following is the netlist for the linear transfer characteristic:

G0  (net011 net012 net09 net010) vcvs type=vcvs  m=1  gain =1.0 min=1 max=4 abs=off tc1= 0 tc2=0

Following is the netlist for the PWL transfer characteristic when the voltage or voltage pair is not specified in a file:

G0  (net011 net012 net09 net010) vcvs type=vcvs  m=1 pwl=[1 1 2 4] scale=1 delta=0 tc1=0 tc2=0

Following is the netlist for the PWL transfer characteristic when the voltage or voltage pair is specified in a file:

G0  (net011 net012 net09 net010) vcvs type=vcvs  m=1 file=”abc” scale=1 delta=0 tc1=0 tc2=0
The parameters, trfType and iVectSpec are not netlisted.

Symbol: vcvs

Linear Voltage Controlled Voltage Source

Current through the voltage source is calculated and is defined to be positive if it flows from the positive terminal, through the source, to the negative terminal.

Component vcvs uses the same values of parameters egain, maxm, and minm for both Spectre and hspiceD simulators.

Command-line help

spectre -h vcvs

CDF Parameters

CDF Parameter Label CDF Parameter spectre auCdl auLvs hspiceD UltraSim

Voltage gain

egain

x

-

-

x

x

Initial condition

ic

-

-

-

-

x

Multiplier

m

x

-

-

-

-

Type

csType

-

-

-

x

x

Voltage gain (obsolete)

hegain

-

-

-

x

-

Maximum output voltage (obsolete)

maxv

-

-

-

x

x

Minimum output voltage (obsolete)

minv

-

-

-

x

x

Maximum output current

maxm

x

-

-

x

-

Minimum output current

minm

x

-

-

x

-

Scale factor

scale

-

-

-

x

x

Temperature coefficient 1

tc1

-

-

-

x

x

Temperature coefficient 2

tc2

-

-

-

x

x

Absolute value

habs

-

-

-

x

-

Initial condition

hic

-

-

-

x

-

Delta

delta

x

-

-

x

x

Number of controlling pairs

xypairs

-

-

-

x

x

Delay Time

htd

-

-

-

x

-

Absolute value

abs

x

-

-

-

x

Delay Time

td

-

-

-

-

x

Syntax/Synopsis

Name ( p n ps ns ) vcvs <parameter=value> ...

Example

e1 (out1 0 pos neg) vcvs gain=10

Additional Information

This device is supported within the altergroups. This device can also model ideal digital gates.

Symbol: vcvsp

Parameterized Cell Based Voltage Controlled Voltage Source

vcvsp is a Pcell-based voltage controlled voltage source in which the symbol varies with the number of controlling voltages.

The maximum number of controlling voltages is 20. Therefore, if you specify a number greater than 20, the value of this parameter will default to 20.

CDF Parameters

CDF Parameter Label CDF Parameter spectre auCdl auLvs hspiceD UltraSim

Num of controlling voltage(s)

nc

x

-

-

-

-

Type of transfer char

trfType

x

-

-

-

-

Voltage gain

egain

x

-

-

-

-

Multiplier

m

x

-

-

-

-

Type of source

typesrc

x

-

-

-

-

Minimum Output Voltage

min

x

-

-

-

-

Maximum Output Voltage

max

x

-

-

-

-

Absolute Output Voltage

abs

x

-

-

-

-

Smoothing Factor

delta

x

-

-

-

-

Temperature coefficient 1

tc1

x

-

-

-

-

Temperature coefficient 2

tc2

x

-

-

-

-

Example

Following is the netlist for linear transfer characteristic:

G0  (net011 net012 net09 net010) vcvs type=vcvs  m=1  gain =1.0 min=1 max=4 abs=off tc1= 0 tc2=0

Following is the netlist for PWL transfer characteristic when the voltage or voltage pair is not specified in a file but passed as an instance parameter:

G0  (net011 net012 net09 net010) vcvs type=vcvs  m=1 pwl=[1 1 2 4]   scale=1 delta=0 tc1=0 tc2=0

Following is the netlist for PWL transfer characteristic when the voltage or voltage pair is not specified in a file:

G0  (net011 net012 net09 net010) vcvs type=vcvs  m=1 file=”abc”   scale=1 delta=0 tc1=0 tc2=0
The parameters, trfType and iVectSpec, are not netlisted.


Return to top
 ⠀
X