Product Documentation
Spectre Circuit Simulator Components and Device Models Reference
Product Version 23.1, June 2023

z-Domain Linear Current Controlled Current Source (zcccs)

The output is defined with a transfer function given as the ratio of two polynomials in the complex variable z. Each polynomial can be specified using either its coefficients or its roots. The roots of the numerator are the zeros of the transfer function and the roots of the denominator are the poles.

You may specify polynomials either in the complex variable z or 1/z by setting optional parameter polyarg to z or inversez respectively. By default, it is set to inversez. If you choose to provide the coefficients of a polynomial, enter them as a vector in ascending order of the power of the variable z or 1/z, starting from the constant term. For example, to specify a denominator of 3z^-2 + 4z^-1 + 1, use denom=[1 4 3]. Or to specify a denominator of 4z^2 + 3z - 2, use polyarg=z denom=[2 3 4].

To specify transfer function in terms of its zeros and poles in z-plane, give them as vectors of complex numbers. You must always give the real and imaginary portions of the root, even when the root is real. You may give either both roots of a complex-conjugate pair or only one. In the latter case the conjugate complex root will be generated automatically. The order of the roots is not important. For example, to specify poles of z = 1, z = 4j, z = -4j, z = 2 + 2j, and z = 2 - 2j, use poles=[1 0 0 4 0 -4 2 2 2 -2] or, omitting conjugate poles, poles=[1 0 0 4 2 2 ].

Either the numerator or the denominator specification can be omitted. An omitted denominator or numerator is taken to be 1.

Transition time (tt) is an optional parameter that at each sampling point forces linear transition of the output to a new value within the specified time range. By default, it is set to one percent of the sampling period.

The sampling delay (td) is another optional parameter, with the default value of 0, that lets you set asynchronous sampling rates.

To use the s to z transformation, set the optional sxz parameter to one of the transformation methods - forward differences, backward differences, or bilinear. When the sxz parameter is specified, the transfer function specification is assumed to be given in the complex variable s and it will be transformed to the complex variable z using the indicated method.

Notes on gain and gainfactor

The parameter gain is interpreted either as the DC gain or, if the function has zeros or poles at the origin, as a constant factor. gain has a default value of 1, so if you do not want to specify the DC gain, you should always use parameter gainfactor to disable parameter gain. When gainfactor is specified, gain is not valid any more. For example, if the instant statement is:

s1 (1 0 control 0) svcvs numer=[1 2] denom=[3 4]

the transfer function will be 2*(2s+1)/(4s+3). Factor 2 is applied to make the DC gain of the transfer function to be 1. If you just want the transfer function to be (2s+1)/(4s+3), specify gainfactor=1 to disable the default value of gain. In this example, the statement will be:

s1 (1 0 control 0) svcvs numer=[1 2] denom=[3 4] gainfactor=1

where the transfer function is 1*(2s+1)/(4s+3). 1 is the gainfactor.

This device is not supported within altergroup.

Sample Instance Statement

va (1 0) vsource type=sine freq=10K
z2 (2 0) zcccs probe=va gain=1 ts=4.9e-5 tt=1e-5 polyarg=inservez 
numer=[1 -1] denom=[1 0]

Instance Syntax

Name  sink  src zcccs parameter=value ...

Instance Parameters

probe

Device through which the controlling current flows.

mprobe

The mprobe functions the same as probe except that it will divide the input current by the mfactor.

port=0

Index of the probe port through which the controlling current flows.

ts=1 s

Sampling period.

td=0 s

Sampling delay.

tt=0.01 ts s

Transition time.

gain=1

DC gain or constant transfer function factor. See notes on gain and gainfactor for details.

gainfactor

Factor applied to transfer function. It overwrites the parameter gain.

polyarg=inversez

Polynomial argument. Possible values are z or inversez.

sxz=none

s to z transformation. Possible values are none, backward, forward, or bilinear.

numer=[...]

Vector of numerator coefficients.

denom=[...]

Vector of denominator coefficients.

zeros=[...]

Vector of complex zeros.

poles=[...]

Vector of complex poles.

m=1

Multiplicity factor.

tc1=0 1/C

Linear temperature coefficient.

tc2=0 C-2

Quadratic temperature coefficient.

trise=0.0K

Temperature rise from ambient.

Operating-Point Parameters

i (A)

Input current.

v (V)

Output voltage.

pwr (W)

Power dissipation.

Related Topics

z-Domain Linear Voltage Controlled Current Source (zvccs)

Current Sources

Circuit Components


Return to top
 ⠀
X