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.