The signal viewer

Live, GPU-drawn waveforms of the running simulation: navigation, cursors, radixes, analog traces and deposits.

The viewer opens with each debug session, or with HDL Studio: Open Signal Viewer. It shows every signal of the elaborated design, streamed while the simulation runs, and is drawn with WebGL 2.

Live signals of counter_tb: F fits, a click places the cursor, → jumps between edges, + zooms, a scope expands, A toggles an analog trace.
Input Does
expand a scope in the left pane adds its signals
Ctrl+wheel zooms around the pointer
Shift+wheel, or drag pans
double-click the waves zooms in
click places the cursor; the values in the left pane are those at the cursor
← / → jump between edges of the selected signal
Esc removes the cursor
F fits the whole run
L toggles Live: follow the simulation

While debugging, the debugger’s time is drawn as a marker distinct from the cursor, and the setting hdl.viewer.followCursor keeps it in view while you step.

Values and analog traces#

  • The radix select (and hdl.viewer.radix) shows vectors in hex, binary, unsigned or signed.
  • A, or the ∿ next to a name, turns the selected signal into an analog trace: off, steps, lines. Vectors are read as unsigned, or as two’s complement with the signed radix.
  • Double-click a signal name to deposit a value into the running simulation.

Recording and export#

  • VCD in the toolbar (or HDL Studio: Export Recorded Signals as VCD…) writes the recording for GTKWave or another tool.
  • HDL Studio: Simulate Current File with Live Signals runs a testbench with the viewer and without the debugger.
  • hdl.viewer.maxTransitions (default 2,000,000) caps the value changes kept in memory; the oldest are dropped first.

What the live viewer can see#

Live signals are read through GHDL’s VPI, which exposes bits, std_logic, booleans and vectors of them. Integers, reals, enumerations and records do not appear live; GHDL’s VCD writer has the same view of the design. For those, record a GHW file: see Waveform files.

Documentation for HDL Studio 1.0.4.