Veryl registryveryl-lang/vip · vipSource ↗

Keyboard shortcuts

Press or to navigate between chapters

Press ? to show this help

Press Esc to hide this help

axi4_checker

clocked component

Passive AXI4 protocol checker on the monitor modport. On top of the per-channel handshake-stability rules it enforces burst legality: WLAST/RLAST aligning with AxLEN, bursts staying inside a 4 KiB page, legal AxBURST/AxSIZE. It tracks responses per ID, so it accepts interleaved out-of-order reads and out-of-order write responses, and flags a BID/RID with no outstanding request. Exclusive transactions (AxLOCK) must be power-of-two, ≤ 16 beats, ≤ 128 bytes and size-aligned, and EXOKAY may only answer an exclusive access.

Parameters


TIMEOUT u64 optional Cycles a channel may stall without READY before a hang is reported.
REPORT str optional If set, the end-of-test coverage summary is written to this path.

Ports


clk input clock Bus clock.
rst input reset Bus reset; while asserted all VALIDs must stay low.
axi modport $std::axi4_if.monitor

Requires


file

Usage


inst u0: $comp::axi4_checker (clk, rst, axi: );