bfm-develop

Generate SystemC TLM 2.0 BFMs with LT b_transport and AXI support.

43|9|Updated Feb 25, 2026
One-click install
npx skills add https://github.com/babyworm/rtl-agent-team --skill bfm-develop
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: bfm-develop
Source: https://github.com/babyworm/rtl-agent-team/tree/main/skills/bfm-develop
Command: npx skills add https://github.com/babyworm/rtl-agent-team --skill bfm-develop

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Automates creation of SystemC TLM-2.0 Bus Functional Models so architecture and verification teams can run fast transaction-level simulations, catch protocol bugs early, and provide stimulus/checker BFMs before RTL exists.

Core Features & Use Cases

  • LT by default, AT on demand: Implements LT b_transport for fast validation and AT non-blocking transport when timing accuracy is explicitly requested.
  • AMBA protocol support: AXI by default with options for AHB/APB/ACE and AMBA-PV extensions for realistic bus behavior.
  • Verification integration: Produces bfm/ source, CMake build scripts, smoke test results, optional DPI-C interface, and feature coverage reports mapped to iron-requirements.json for downstream consistency.

Quick Start

Implement SystemC TLM BFMs in bfm/src from architecture.md using LT b_transport and AXI by default, build the bfm with CMake, and run the smoke test to record results.

Frequently Asked Questions about bfm-develop

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I generate SystemC TLM BFMs for AMBA AXI protocol simulation?

The generated BFMs implement TLM LT b_transport by default for fast validation, and optionally support AT non-blocking transport when explicit timing accuracy is requested during architecture or verification simulations.

Does this SystemC TLM BFM generator support DPI-C co-simulation?

The BFM generator produces source code, CMake build scripts, and smoke test results. It verifies feature coverage against an iron-requirements.json file to ensure downstream consistency and validate AMBA protocol behavior.

What's the best way to model AMBA-PV extensions in a SystemC TLM BFM?

The BFM generator implements tlm_mm_interface for memory management and PEQ scheduling to handle event-driven timing. This ensures accurate transaction processing and resource cleanup in SystemC TLM 2.0 simulations.

Why do I need a bus functional model for early performance estimation?

The tool generates CMake build scripts and bfm/ source code from architecture specifications. It implements LT b_transport by default with optional AT non-blocking transport, and includes AXI/AMBA-PV extensions for realistic bus behavior modeling.