find
Search VCD, FST, and GHW waveforms for cycle or edge times where a SystemVerilog expression holds; list matching times, show signal values, or count matches.
Instructions
When a search expression holds, as a table of times; show adds values, count_only counts. With @<clock> first, a match is a cycle whose ending edge samples it true (@clk x: the cycles x is high), reported at the cycle's start; without, where it becomes true (rose(x): x's edges). A bus: decode it (help decode).
Tool call template
Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {
"expr": "<expr>"
},
"name": "find"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| to | No | Stop at this time (with `backward`, down to it); default the end. | |
| expr | Yes | A search expression as in SystemVerilog: `==` `!=` `<` `&&` `||` `!`; only `rose(x)` `fell(x)` `stable(x)` `past(x)` (SVA's, no `$`); `@<clock> ` first samples each cycle: `@top.clk valid && ready`, `rose(irq) && !past(busy)` (`help expressions`). | |
| from | No | Search after (or with `backward`, before) this time; default the start. | |
| show | No | Signals whose values to list on each match: a table of the transfers. | |
| unit | No | The unit of the answer's times, `ns`, `us` (`help times`). | |
| count | No | How many lines to list; default 20. | |
| backward | No | Search toward the start: the latest matches first. | |
| count_only | No | Only count the matches; no list. |