Skip to content

Waveforms Agent

The Waveforms Agent helps you inspect and debug RTL simulations by analyzing waveform files (e.g. VCD and FST) through a safe, tool-backed workflow. It is designed for common verification/debug loops: listing signals, tracking transitions, measuring "how long" a condition holds, and running more advanced queries using WAL (Waveform Analysis Language).

Key Features

  • Tool-Backed Waveform Inspection: Analyze waveforms via dedicated tools (signal listing, transitions, length, and query execution).
  • Hierarchical Signal Discovery: List all signals and filter them using regex patterns.
  • Transition Tracking: Detect when a signal changes value over a time range.
  • Waveform Metrics: Compute the total simulation length in time steps.
  • Advanced Queries with WAL: Execute expressive WAL queries for search, counting, and conditional analysis.
  • Caching for Fast Iteration: Waveforms are cached and automatically reloaded when the file changes.

Supported formats

Common formats include .vcd and .fst (FST support depends on WAL capabilities in your environment).

Usage

Use the Waveforms Agent through the NEX CLI by specifying the waveform agent (for example, --agent=waveforms).

Typical flows:

  • list signals, then pick the exact signal name you care about
  • inspect transitions for a specific signal over a time window
  • run WAL expressions to search for protocol violations, stalls, illegal states, etc.