Main Content

Verilog-A is a language for modeling the high-level behavior of analog components and networks. Verilog-A describes components mathematically, for fast and accurate simulation.

RF Toolbox™ software lets you export a Verilog-A description of your circuit. You can create a Verilog-A model of any passive RF component or network and use it as a behavioral model for transient analysis in a third-party circuit simulator. This capability is useful in signal integrity engineering. For example, you can import the measured four-port S-parameters of a backplane into the toolbox, export a Verilog-A model of the backplane to a circuit simulator, and use the model to determine the performance of your driver and receiver circuitry when they are communicating across the backplane.

The Verilog-A language is a high-level language that uses modules
to describe the structure and behavior of analog systems and their
components. A *module* is a programming building
block that forms an executable specification of the system.

Verilog-A uses modules to capture high-level analog behavior of components and systems. Modules describe circuit behavior in terms of

Input and output nets characterized by predefined Verilog-A disciplines that describe the attributes of the nets.

Equations and module parameters that define the relationship between the input and output nets mathematically.

When you create a Verilog-A model of your circuit, the toolbox writes a Verilog-A module that specifies circuit's input and output nets and the mathematical equations that describe how the circuit operates on the input to produce the output.

RF Toolbox software lets you export a Verilog-A model of
an `rfmodel`

object. The toolbox provides one `rfmodel`

object, `rfmodel.rational`

,
that you can use to represent any RF component or network for export
to Verilog-A.

The `rfmodel.rational`

object represents components as rational functions in
pole-residue form, as described in the `rfmodel.rational`

reference page. This representation can include
complex poles and residues, which occur in complex-conjugate pairs.

The toolbox implements each `rfmodel.rational`

object
as a series of Laplace Transform S-domain filters in Verilog-A using
the numerator-denominator form of the Laplace transform filter:

$$H(s)=\frac{{\displaystyle \sum _{k=0}^{M}{n}_{k}{s}^{k}}}{{\displaystyle \sum _{k=0}^{N}{d}_{k}{s}^{k}}}$$

where

*M*is the order of the numerator polynomial.*M*is the order of the denominator polynomial.*n*is the coefficient of the_{k}*k*th power of*s*in the numerator.*d*is the coefficient of the_{k}*k*th power of*s*in the denominator.

The number of poles in the rational function is related to the number of Laplace transform filters in the Verilog-A module. However, there is not a one-to-one correspondence between the two. The difference arises because the toolbox combines each pair of complex-conjugate poles and the corresponding residues in the rational function to form a Laplace transform numerator and denominator with real coefficients. the toolbox converts the real poles of the rational function directly to a Laplace transform filter in numerator-denominator form.