Help us improve
Share bugs, ideas, or general feedback.
From rtl-agent-team
Policy rules, signal naming conventions, assertion patterns, and verification checklists for AXI/AHB/APB bus protocols. Pure reference for RTL verification.
npx claudepluginhub babyworm/rtl-agent-team --plugin rtl-agent-teamHow this skill is triggered — by the user, by Claude, or both
Slash command
/rtl-agent-team:rtl-p5s-protocol-policyThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Protocol SVA assertions MUST use the project port naming conventions (CLAUDE.md):
Verifies RTL bus protocol compliance (AXI/AHB/APB) using formal SVA assertions and simulation-based checking. Use when integrating bus interfaces or debugging protocol violations.
Guides technical evaluation of code review feedback: read fully, restate for understanding, verify against codebase, respond with reasoning or pushback before implementing.
Share bugs, ideas, or general feedback.
Protocol SVA assertions MUST use the project port naming conventions (CLAUDE.md):
AXI signal naming (with i_/o_ prefix based on slave perspective):
i_awvalid, o_awready, i_awaddr, i_awlen, i_awsize, i_awbursti_wvalid, o_wready, i_wdata, i_wstrb, i_wlasto_bvalid, i_bready, o_brespi_arvalid, o_arready, i_araddr, i_arlen, i_arsize, i_arbursto_rvalid, i_rready, o_rdata, o_rresp, o_rlastAHB signal naming (slave perspective):
i_hsel, i_haddr, i_htrans, i_hwrite, i_hsize, i_hbursti_hwdata, o_hrdata, o_hready, o_hrespAPB signal naming (slave perspective):
i_psel, i_penable, i_pwrite, i_paddr, i_pwdatao_prdata, o_pready, o_pslverrClock/Reset: {domain}_clk (e.g., axi_clk or sys_clk), {domain}_rst_n
NOT: ACLK, ARESETn, clk_i, rst_ni
Note: For master-perspective modules, i_/o_ directions are reversed.
AWVALID) → flag as convention violation, request fix before protocol verificationi_/o_ prefix conventioni_awvalid, o_awready, sys_clk, etc.)For AXI4 full (not Lite), also check: burst length/size consistency, wrap alignment, exclusive access.
For multi-clock designs, use axi_clk/axi_rst_n in assertion clock instead of sys_clk.
Protocol assertions can also be run with SymbiYosys formal (via rtl-p5s-sva-check skill) for exhaustive coverage.
Key AXI protocol rules to verify:
See references/axi-protocol-rules.md for complete SVA assertion templates per channel,
ordering rules, AXI4 vs AXI4-Lite differences, and common violations found in practice.