## Model RF Objects Using Verilog-A

### Overview

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.

### Behavioral Modeling Using Verilog-A

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.

### Supported Verilog-A Models

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.