diff_first_divergence
Find the first time two signals differ across waveforms or within one run, then register a cursor at that divergence for downstream calls. Uses existing waveforms only; no simulation rerun.
Instructions
Find the first time two signals hold unequal values. Works across two waveforms (passing run vs failing run) or within one waveform between two signals (expected vs actual). Auto-registers a cursor at the divergence time so downstream calls can reference it by name. Reads existing waveforms only — does NOT rerun simulation.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| signal_a | Yes | Full hierarchical signal path in wave_path_a. | |
| signal_b | Yes | Full hierarchical signal path in wave_path_b. | |
| cursor_name | No | Optional explicit cursor name. If omitted, a deterministic name (div_<sha8>) is generated. | |
| cursor_note | No | Optional note attached to the registered cursor. | |
| end_time_ps | No | End of comparison window. -1 means end of simulation. Accepts an integer (ps), a cursor reference like '@div_3a7c', or a unit literal like '12.34ns'. | |
| wave_path_a | Yes | First waveform (FSDB or VCD). | |
| wave_path_b | Yes | Second waveform. May equal wave_path_a for within-run diff. | |
| start_time_ps | No | Start of comparison window. Default 0. Accepts an integer (ps), a cursor reference like '@div_3a7c', or a unit literal like '12.34ns'. |