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.
fgain, maxm, minm, m for both Spectre and hspiceD simulators.Command-line help
CDF Parameters
| CDF Parameter Label | CDF Parameter | spectre | auCdl | auLvs | hspiceD | UltraSim |
|---|---|---|---|---|---|---|
Syntax/Synopsis
Name ( sink src ) cccs <parameter=value> ...
Example
vcs (pos gnd) cccs gain=2.5 probe=v1 m=1
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.
hgain, maxm, and minm for both Spectre and hspiceD simulators.Command-line help
CDF Parameters
| CDF Parameter Label | CDF Parameter | spectre | auCdl | auLvs | hspiceD | UltraSim |
|---|---|---|---|---|---|---|
Syntax/Synopsis
Name ( p n ) ccvs <parameter=value> ...
Example
vvs (pos gnd) ccvs rm=1 probe=v1 m=1
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
CDF Parameters
| CDF Parameter Label | CDF Parameter | spectre | auCdl | auLvs | hspiceD | UltraSim |
|---|---|---|---|---|---|---|
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
CDF Parameters
| CDF Parameter Label | CDF Parameter | spectre | auCdl | auLvs | hspiceD | UltraSim |
|---|---|---|---|---|---|---|
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:
-
Lower degree term goes before higher degree term. For example,
a1is beforea1^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^4goes beforea1^3*a2. Anda1^3*a2goes beforea1^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.
1 2 1 1.5
Command-line help
CDF Parameters
| CDF Parameter Label | CDF Parameter | spectre | auCdl | auLvs | hspiceD | UltraSim |
|---|---|---|---|---|---|---|
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.
Command-line help
CDF Parameters
| CDF Parameter Label | CDF Parameter | spectre | auCdl | auLvs | hspiceD | UltraSim |
|---|---|---|---|---|---|---|
Example
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
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
CDF Parameters
| CDF Parameter Label | CDF Parameter | spectre | auCdl | auLvs | hspiceD | UltraSim |
|---|---|---|---|---|---|---|
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.
CDF Parameters
| CDF Parameter Label | CDF Parameter | spectre | auCdl | auLvs | hspiceD | UltraSim |
|---|---|---|---|---|---|---|
Example
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
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
Symbol: vccs

Linear Voltage Controlled Current Source
Positive current exits the source node and enters the sink node.
ggain, maxm, minm, and m for both Spectre and hspiceD simulators.Command-line help
CDF Parameters
| CDF Parameter Label | CDF Parameter | spectre | auCdl | auLvs | hspiceD | UltraSim |
|---|---|---|---|---|---|---|
|
|
||||||
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
Gxx n+n-vccappwl(1)in+in-[delta=val ] [ scale=val ] + [ m= val] [tc1= val] [tc2= val] x1, y1, x2, y2 ... [ic= val]
Voltage-Controlled Current Source
Gxx n+n-[vccs]cur= ’equation ’ [ max=val ] [ min=val ] [ scale=val ]
Gxx n+n-[ vccs]in+in-transconductance [ max=val ] [ min=val ] + [ m= val] [scale= val] [tc1= val] [tc2= val] [abs= 1] [ic= val]
Gxx n+n-[vccs]pwl(1)in+in-[delta=val ] [ scale=val ] + [ m= val] [tc1= val] [tc2= val] x1, y1, x2, y2 ... [ic= val]
Gxx 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 ]
Gxx n+n-[vccs]delay in+in-td=val + [ tc1=val ] [ tc2=val ] [ scale=val ] [ npdelay=val ]
Voltage-Controlled Resistor
Gxx n+n-vcrin+in-transfactor [ max=val ] [ min=val ] + [ m= val] [scale= val] [tc1= val] [tc2= val] [ic= val]
Gxx n+n-vcrpwl(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]
Gxx n+n-vcrpoly(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
The npwl and ppwl functions are used to interchange the n+ and n- nodes, but use the same transfer function.
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+).
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+).
in- node does not connect to either n+ or n-, the Virtuoso UltraSim simulator changes npwl and ppwl to pwl.Examples
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.
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.
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.
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.
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.
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.
CDF Parameters
| CDF Parameter Label | CDF Parameter | spectre | auCdl | auLvs | hspiceD | UltraSim |
|---|---|---|---|---|---|---|
Example
G0 (net011 net012 net09 net010) vcvs type=vcvs m=1 gain =1.0 min=1 max=4 abs=off tc1= 0 tc2=0
G0 (net011 net012 net09 net010) vcvs type=vcvs m=1 pwl=[1 1 2 4] scale=1 delta=0 tc1=0 tc2=0
G0 (net011 net012 net09 net010) vcvs type=vcvs m=1 file=”abc” scale=1 delta=0 tc1=0 tc2=0
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.
egain, maxm, and minm for both Spectre and hspiceD simulators.Command-line help
CDF Parameters
| CDF Parameter Label | CDF Parameter | spectre | auCdl | auLvs | hspiceD | UltraSim |
|---|---|---|---|---|---|---|
|
|
||||||
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.
CDF Parameters
| CDF Parameter Label | CDF Parameter | spectre | auCdl | auLvs | hspiceD | UltraSim |
|---|---|---|---|---|---|---|
Example
G0 (net011 net012 net09 net010) vcvs type=vcvs m=1 gain =1.0 min=1 max=4 abs=off tc1= 0 tc2=0
G0 (net011 net012 net09 net010) vcvs type=vcvs m=1 pwl=[1 1 2 4] scale=1 delta=0 tc1=0 tc2=0
G0 (net011 net012 net09 net010) vcvs type=vcvs m=1 file=”abc” scale=1 delta=0 tc1=0 tc2=0
Return to top