AXI4 & AXI-Stream
Autodetect a full AXI4 interface by prefix (AW/W/B/AR/R), or bind an AXI-Stream by TVALID/TREADY/TDATA/TLAST. Packet boundaries, beat counts, and stall regions overlay the wave.
RouteWaveDecode buses, capture live from a board with triggers, and measure signal integrity in the same window that draws the waveform. Open VCD, FST, GHW, and ILA, or stream straight from hardware. Every action is an undoable, scriptable command.
RouteWave decodes the protocol running on your signals, captures them live from real hardware, measures their integrity, and links each edge back to the RTL line that produced it — the work usually split across a waveform viewer, a logic analyzer, and a scope, in one window.
Bind a handshake, an AXI interface, or a serial line and RouteWave overlays transfers, packets, and decoded frames on the wave — with an open registry for your own protocols.
Autodetect a full AXI4 interface by prefix (AW/W/B/AR/R), or bind an AXI-Stream by TVALID/TREADY/TDATA/TLAST. Packet boundaries, beat counts, and stall regions overlay the wave.
Any valid/ready pair gets Transfer and Stall bands drawn behind the signals, with beat count and duplicate-beat detection. See back-pressure at a glance.
Built-in serial decoders with high-level-analyzer stacking — raw edges decode into frames, frames stack into transactions, transactions into protocol messages.
Describe a bus in YAML, script a decoder in Python, or drop in a compiled .so translator. The decoder registry is open — your protocol is a first-class citizen.
Frequency domain, eye diagrams, memory structures, derived signals, even decoded video — the measurements you would leave the tool for are built in.
Run an FFT on any signal and open a spectrum view for periodic content — frequency-domain analysis without leaving the trace.
Render eye diagrams and BER bathtub curves from a scan — SerDes and high-speed-link signal-integrity work in the same window as the waveform.
Read a bus as BRAM, FIFO, dual-port RAM, register file, or AXI memory. Grid layout, configurable columns, radix control, and find-by-value.
Combinational expressions — AND/OR/XOR/NAND, edge detects, compares, add/sub — become new signals. Build a virtual bus from selected bits.
Decode an H.264 elementary stream or raw YUV carried on the bus into a live video window — see the frames the RTL is actually producing.
Frequency, period, width, and duty-cycle at the cursor; find pulses by width, values by range, and every occurrence of a bus value.
Connect to a running design and watch it live: arm triggers, drive board inputs, and sniff bus traffic as it happens.
Stream from a source at a set rate and arm rising / falling / either-edge triggers in single, normal, or auto mode with pre/post windows. Auto-follow the head of the capture.
Connect a board, press / release / switch inputs from the console, and watch the response live with follow-cursor. RouteWave drives the DUT and reads its state back on the wave.
Multi-lane sniffer with per-lane chips, rate limiting, goto-by-index, and export — capture and triage bus traffic as it happens.
RouteWave reads the sidecars rr writes, so a waveform is connected to its source and its tests — the debugging loop closes inside the viewer.
triage loads the test map rr writes, jumps the cursor to a failing assert's time, drops a marker, and shows the RTL declaration behind the signal — waveform, expectation, and root cause in one action.
Load a second capture as a labelled source and compare; divergence between two simulation runs is highlighted directly on the wave. Catch a regression by looking at it.
whereis and sourcepeek open the mapped RTL declaration read-only inside RouteWave — file:line for any signal, no external editor round-trip.
Every rr sim run and rr ila capture drops sidecars next to the wave. RouteWave reads them on open — the source map, resolved parameters, memory layout, and timing anchors are already in place when the window appears.
RouteWave ships inside the SDK — rr routewave auto-installs the viewer and prefers a fresh local build — so the same window serves simulation, on-chip capture, and live streaming.
RouteWave has no hidden GUI-only state. All 95 commands run through one console, so everything you do by hand is undoable, replayable, and scriptable — record a macro, save it, and run the exact same investigation in CI or hand it to an agent.
RouteWave ships with the RouteRTL SDK — a single pip install. The viewer auto-downloads on first launch.
WSL2 on Windows 11 operates natively via WSLg.