Part 6 · Agents & Protocol IP · Intermediate

Protocol Agent Patterns Hub: APB, AXI, Streaming, and Multi-Interface Reuse

Hub - protocol-specific agent architecture patterns, APB/AXI/streaming trade-offs, comparison framework, multi-interface environment composition, and debug strategy.

Overview

Different protocols require different agent internals even when the outer UVM structure looks similar. APB emphasizes simple request timing, AXI emphasizes channel decoupling and ordering policy, and streaming protocols emphasize throughput and backpressure.

This hub presents practical reusable patterns for each protocol class, then shows how to compare and compose them in multi-interface environments.

Sub-lessons in this topic

  1. apb-agent-pattern - single-channel control bus agent structure and timing.

  2. axi-agent-pattern - multi-channel out-of-order-capable agent design.

  3. streaming-agent-pattern - valid/ready throughput pipelines and packet framing.

  4. protocol-comparison-table - side-by-side architectural comparison for design decisions.

  5. multi-interface-env - composing heterogeneous protocol agents in one environment.

  6. protocol-pattern-debug - cross-protocol debug framework and failure signatures.

Pattern map

diagram
Legend: [VIP] [AGT] [DRV] [MON] [TLM]

            protocol family drives agent internals

APB [VIP]:
  single request channel
  simple sequencing
  deterministic ordering

AXI [VIP]:
  5 channels (AW/W/B/AR/R)
  independent handshakes
  outstanding txn tracking

STREAM [VIP]:
  valid/ready data beat flow
  packet boundaries (optional tlast-like)
  throughput/backpressure focus
diagram
[AGT] common shell vs protocol-specific core

common shell:
  cfg + agent wrapper + mode switch + monitor.ap

protocol core:
  item fields
  driver state machine(s)
  monitor reconstruction logic
  checker assumptions
  coverage dimensions
diagram
[SOC] composition target

chip_env
  apb_ctrl_agent      (cfg/status path)
  axi_mem_agent       (high-bandwidth data path)
  stream_video_agent  (packetized throughput path)

goal:
  consistent UVM shell with protocol-specific correctness

Key takeaways

  • Protocol-specific behavior belongs inside a consistent reusable agent shell.

  • APB, AXI, and streaming agents differ most in driver/monitor internals.

  • A comparison framework helps choose the right architecture early.

  • Cross-protocol environments require explicit integration contracts per interface.

Common pitfalls

  • Copying one protocol driver style blindly into another protocol family.

  • Assuming single-channel sequencing scales to multi-channel AXI behavior.

  • Ignoring throughput/backpressure concerns in streaming agents.

  • Mixing protocol-specific assumptions into generic wrapper logic.