bb-collect-coverage

Aggregate Verilator line, branch, and toggle coverage from coverage.dat and simulation logs.

41|9|Updated May 22, 2026
One-click install
npx skills add https://github.com/amoslee2026/Babel --skill bb-collect-coverage
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: bb-collect-coverage
Source: https://github.com/amoslee2026/Babel/tree/main/.claude/skills/bb-collect-coverage
Command: npx skills add https://github.com/amoslee2026/Babel --skill bb-collect-coverage

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes scripts (resource) and references (resource) components.

What problem does it solve?

Verilator simulations emit coverage data and logs that are hard to interpret at a glance; bb-collect-coverage consolidates them into clear coverage percentages and lists uncovered bins to guide regression efforts.

Core Features & Use Cases

  • Unified coverage metrics: computes line, branch, toggle, and functional coverage from coverage.dat and sim logs.
  • Uncovered-bin discovery: enumerates bins with zero hits to focus test expansion.
  • Design-wide reporting: outputs designs/<name>/coverage.json and designs/<name>/test_report.json aligned to the project schema.
  • Integration-ready: works as part of a Verilator regression flow and triggers sign-off when targets are met.

Quick Start

Run bb-collect-coverage with your design name, sim_log path, and coverage_dat path to generate coverage reports.

Frequently Asked Questions about bb-collect-coverage

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

FAQPage Schema
How do I compute Verilator coverage metrics from a coverage.dat file?

Verilator coverage is computed by aggregating line, branch, toggle, and functional metrics from coverage.dat and simulation logs, producing unified coverage percentages and a coverage.json file.

How do I identify uncovered bins in a Verilator regression run?

Uncovered bins are identified by aggregating metrics from coverage.dat and sim logs to enumerate bins with zero hits, guiding your test expansion efforts during Verilator regression runs.

Can I enforce target thresholds for functional and code coverage during simulation?

Yes, you can enforce target thresholds for functional and code coverage. The process reads coverage.dat and sim logs to trigger sign-off only when the specified coverage targets are met.

What is the best way to generate a unified coverage report from Verilator simulation logs?

The best way to generate a unified coverage report is to consolidate simulation logs and coverage.dat into design-wide outputs like coverage.json and test_report.json aligned to the project schema.

Does bb-collect-coverage require any specific dependencies to parse coverage data?

No, bb-collect-coverage requires no external dependencies to parse coverage data. It directly reads the Verilator coverage.dat file and simulation logs to output the coverage metrics.