Skip to content

Verilog-A Introduction

Introduction

Verilog-A is an analog hardware description language (AHDL) created to model, analyze, and verify analog and mixed-signal circuits. While digital design engineers rely on Verilog or SystemVerilog, analog engineers need a way to express continuous-time behavior, device physics, circuit equations, and system-level dynamics. Verilog-A enables designers to quickly describe an analog behavior without having to know about complicated details of SPICE or designing transistor level circuits. It helps quick validation of ideas. Verilog-A is not synthesizable.

Problems with traditional SPICE

Traditional SPICE simulations use device models implemented in low-level languages like C/C++. These models are accurate but rigid, complicated, and difficult to modify. Changing or developing a new model requires recompiling the simulator which is an impractical workflow for most designers.

Verilog-A was developed to solve three major problems:

  1. Slow simulation at transistor-level As circuits grow in complexity (e.g., PLLs, ADCs, LDOs, sensor interfaces) transistor-level simulations become prohibitively slow. Verilog-A behavioral models allow designers to replace detailed subcircuits with high-level mathematical representations, improving simulation speed dramatically.

  2. Difficulty of creating custom models Researchers developing novel devices, materials, or sensors require custom equations. Verilog-A enables them to express equations directly without touching simulator internals.

  3. Need for mixed-signal modeling Analog blocks often interact with digital control systems. Verilog-A integrates naturally with Verilog in AMS simulators, making system-level simulation possible.

Verilog-A is not meant to replace SPICE. Instead, it enhances it by offering a more flexible, abstraction-friendly modeling layer.

Verilog-A against other HDLs

Although often confused due to naming, these languages serve different purposes:

Verilog (Digital Only)

Verilog HDL is designed for logic-level modeling, synthesis, and event-driven simulation. Operates using discrete values (0, 1, X, Z).

Verilog-A (Analog Only)

Models continuous-time behavior, voltages, currents, and differential equations. No clocks, events, or digital constructs. It is not synthesizable.

Verilog-AMS (Mixed-Signal)

Unifies both. A Verilog-AMS simulator runs digital Verilog and analog Verilog-A in a shared environment. It is not synthesizable. f When focusing purely on analog behavior, Verilog-A is the ideal choice.

Core Concepts of Verilog-A

Verilog-A models resemble the equations engineers use in circuit analysis but with syntactic structure. Understanding a few fundamental concepts is enough to start writing meaningful models.

Modules and Terminals

Every model begins with a module definition:

module resistor(p, n);
    inout p, n;
    electrical p, n;

The electrical discipline defines voltage and current attributes for each terminal.

More details about modules - Modules declaration

Analog Behavioral Block

All continuous-time equations belong inside an analog block:

analog begin
    I(p, n) <+ V(p, n) / R;
end

This statement enforces Ohm's law.

Contribution Statements

The <+ operator defines current or voltage contributions. It is central to the language and implements KCL and KVL implicitly.

  • Current contribution: I(a, b) <+ expression;
  • Voltage contribution: V(a, b) <+ expression;

Unlike SPICE subcircuits, Verilog-A models allow writing exact equations for behavior.

Built‑In Functions

Verilog-A includes tools for modeling dynamic behavior:

  • ddt(x) : time derivative
  • idt(x) : time integral
  • laplace_nd(input, num, den) : transfer functions
  • transition(x, td, tr) : smooth transitions
  • white_noise() and flicker_noise() : noise modeling

These functions enable modeling capacitors, inductors, filters, oscillators, and more.

Parameterization

Models become reusable through parameters:

parameter real gain = 10 from (0:inf);

Parameters can include bounds to help the simulator converge.

Use-Cases of Verilog-A

Verilog-A is used across semiconductor design, RF systems, power electronics, sensor design, and academic research. Here are the most impactful applications.

Behavioral Modeling of Analog Blocks

Many circuit blocks are defined more by functional behavior than device-level detail. Verilog-A makes it easy to describe:

Behavioral models allow massively faster simulations compared to transistor-level implementations.

Custom Device and Sensor Modeling

SPICE does not include every possible device. Researchers rely on Verilog-A to model:

Verilog-A lets researchers implement the governing physics using their own equations.

Compact Modeling

Many industry-standard compact models have Verilog-A reference implementations:

  • BSIM-BULK, BSIM-SOI
  • BSIM-CMG (FinFET)
  • PSP
  • HICUM
  • EKV

Because Verilog-A is portable across simulators, compact models written once can run on Spectre, Ngspice, ADS, Xyce, and other tools.

Mixed-Signal Verification

Modern ICs integrate digital control logic with analog circuits. Examples include:

  • ADCs and DACs
  • PMIC controllers
  • Battery monitoring ICs
  • Sensor interfaces
  • RF transceivers

Using Verilog-A, designers replace detailed analog blocks with behavior-level models to simulate interactions with digital systems. This accelerates verification cycles and reduces simulation time by orders of magnitude.

System-Level Architectural Exploration

Before committing to a full transistor-level design, engineers explore:

  • Loop filter topologies in PLLs
  • Oversampling ratios in ΔΣ ADCs
  • Gain and bandwidth tradeoffs
  • Power supply rejection (PSR)
  • Stability and compensation strategies

Verilog-A facilitates rapid prototyping of these ideas, enabling teams to make architectural decisions early.

Advantages of Verilog-A

  • Faster simulation compared to transistor-level SPICE
  • Readable and concise equation-based modeling
  • Portable across simulators
  • Easy to modify, ideal for iterative development
  • Supports high-level system modeling

Limitations

Verilog-A is powerful but not a replacement for device-level simulation:

  • It cannot capture deep physical effects without explicit equations
  • It is not suitable for digital logic modeling
  • It requires careful writing to avoid convergence issues