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.

For more information on the Verilog-A language, see the Verilog-A Reference Manual.

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)=k=0Mnkskk=0Ndksk

where

  • M is the order of the numerator polynomial.

  • M is the order of the denominator polynomial.

  • nk is the coefficient of the kth power of s in the numerator.

  • dk is the coefficient of the kth 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.

Was this topic helpful?