This skill should be used when performing 3-way consistency checks between C reference model, BFM, and RTL simulation outputs.
<Use_When>
<Do_Not_Use_When>
<Why_This_Exists> When ref model, BFM, and RTL are developed independently, silent divergence accumulates. 3-way comparison isolates which model is wrong: if ref == BFM != RTL, RTL has a bug; if ref != BFM == RTL, ref model diverged; if ref == RTL != BFM, BFM has an issue. </Why_This_Exists>
<Execution_Policy>
skills/rtl-model-consistency/scripts/compare_3way.py for automated pairwise comparisonskills/rtl-model-consistency/templates/consistency-report.md<Tool_Usage>
Task(subagent_type="rtl-agent-team:ref-model-dev",
prompt="Run refc/build/ref_model on sim/consistency/test_vectors.bin via Bash CLI. Capture output to sim/consistency/ref_output.bin. Build first if needed: make -C refc/.")
Task(subagent_type="rtl-agent-team:bfm-dev",
prompt="Run bfm/build/bfm_smoke on sim/consistency/test_vectors.bin via Bash CLI. Capture output to sim/consistency/bfm_output.bin. Build first if needed: make -C bfm/.")
Task(subagent_type="rtl-agent-team:func-verifier",
prompt="Simulate RTL with sim/consistency/test_vectors.bin as input via Bash CLI (iverilog/cocotb). RTL ports use i_/o_ prefixes, clocks are {domain}_clk, resets are {domain}_rst_n. Capture output to sim/consistency/rtl_output.bin.")
</Tool_Usage>