Docs / Test Point Insertion Guide

TPI inserts observation and control logic so hard-to-test internal signals become easier to control and observe.

What gets added

Depending on mode and selected points, the generated design can include:

Minimal workflow

Genus mode

# 1) Generate metrics
python3 opentest --genus cop -i designs/priority_enc.v -j

# 2) Insert test points
python3 opentest --genus tpi -i <netlist.json> -m <metrics.json> -t 50 -n 10 -v

Yosys mode

python3 opentest --yosys analyze_and_add_tp -i <design.json> --scoap -t 50 -m 10 -v

Key parameters

Option Meaning Typical value
-t, --threshold Minimum testability threshold for selecting weak signals 50
-n, --max-points Maximum number of test points to insert 10
--force-type Force only observation or only control insertion optional
-v, --verbose Write detailed analysis logs and reports recommended

Simulation checklist

Drive all DFT/test inputs in your testbench:

reg test_mode;
reg tp_ctrl_0;
reg tp_ctrl_1;

initial begin
    test_mode = 1'b0;
    tp_ctrl_0 = 1'b0;
    tp_ctrl_1 = 1'b0;
end

Also ensure your circuit reset sequence initializes all state elements.

Expected behavior

  1. With test_mode = 0, functional outputs should match the original design.
  2. Observation outputs should mirror internal nodes without destabilizing normal logic.
  3. Verbose mode should produce per-run logs and reports under results/.

Troubleshooting

  1. Getting Started
  2. Examples
  3. Command Reference