Extract AMBA AXI-Stream¶
Use extract axistream to inspect transferred AXI-Stream beats. One invocation maps one stream interface.
Which stream beats transferred?¶
wavepeek extract axistream --waves dump.fst \
--scope tb.dut.video_out \
--profile axi4-stream \
--map aclk=clk \
--map aresetn=reset_n \
--include '^video_' \
--from 20us --to 21us
Selected fields from representative rows:
@20050ns sample@20049ns tdata=32'h10203040 tkeep=4'hf tlast=1'h0
@20060ns sample@20059ns tdata=32'h50607080 tkeep=4'hf tlast=1'h1
A row appears when the mapped TVALID and TREADY handshake completes. Consecutive rows are preserved even when their payload values are identical.
TLAST is reported as a sampled payload field. The extractor does not group beats into packets or interpret TKEEP, TSTRB, TID, TDEST, or TUSER.
What if the interface has no TREADY signal?¶
Use implicit-high mode only when TREADY is physically omitted:
wavepeek extract axistream --waves dump.fst \
--scope tb.dut.trace_stream \
--profile axi4-stream \
--tready-mode implicit-high \
--map aclk=clk \
--include '^trace_' \
--from 5us --to 6us
Do not map tready in this mode. Every sampled high TVALID is treated as a transfer when mapped ARESETn is also high.
What if automatic mapping finds the wrong interface?¶
Use a scope and an interface-specific include regex. Explicit mappings can fix irregular names:
--map tvalid=out_valid --map tready=out_ready --map tdata=out_payload
Check the resolved mapping printed before the rows. Run wavepeek help extract axistream for all payload mappings and profile options.