Use these short recipes as copy-paste starting points. OpenTestability ingests
Yosys JSON netlists. The repo ships a small data/input/s27.json you can use
in place of design.json to try any recipe immediately.
Installed via Nix? Every
python3 opentest <args>line below is equivalent tonix run github:ranaumarnadeem/OpenTestability -- <args>(or justopentest <args>afternix profile install).
1. Fast COP run
python3 opentest cop -i designs/s27.json -j
Use this when you need quick controllability/observability metrics for ranking weak signals.
2. End-to-end TPI flow
python3 opentest analyze_and_add_tp -i designs/s27.json --scoap -t 50 -m 10 -v
Result: an enhanced Yosys JSON netlist in the TPI output area plus verbose logs/reports.
3. Verbose diagnostics session
python3 opentest --verbose scoap -i designs/s27.json
python3 opentest --verbose cop -i designs/s27.json -j
Verbose mode writes detailed logs to results/log/ and reports to results/reports/.
4. Compare reconvergence algorithms
python3 opentest cop -i designs/s27.json -r -a basic -j
python3 opentest cop -i designs/s27.json -r -a simple -j
python3 opentest cop -i designs/s27.json -r -a advanced -j
Start with simple and move to advanced only for difficult correlation cases.
5. TPI with technology and reconvergence
# sky130 (default) — SCOAP + reconvergence + TPI
python3 opentest analyze_and_add_tp \
-i output/my_design.json \
--scoap -r -t 50 -m 10 \
--tech sky130 -v
# IHP SG13G2 130nm
python3 opentest analyze_and_add_tp \
-i output/my_design.json \
--scoap -r -t 50 -m 10 \
--tech ihp -v
--tech selects the buffer and mux cells used for test point insertion. auto detects the technology from the netlist’s cell names.
6. FaultFlow preflight — obtain reconvergence data without TPI
OpenTestability provides a machine interface for FaultFlow to call before ATPG. It runs SCOAP and reconvergence analysis, writes tpi_manifest.json with Yosys net IDs on each fanout point, and emits a JSON status line on stdout with the output file paths.
See FaultFlow Preflight Protocol for the full invocation and output contract.