MrWater98/vcd2stimuli
Folders and files
| Name | Name | Last commit date | ||
|---|---|---|---|---|
Repository files navigation
vcd2stimuli
This is a repo for verifying stimuli generated by formal trace.
How to use?
Step 1: Parse vcd to csv stimuli
usage: vcd2csv.py [-h] --vcd VCD --inputs INPUTS [--output OUTPUT]
Parse VCD file for specific inputs
options:
-h, --help show this help message and exit
--vcd VCD Path to VCD file
--inputs INPUTS Path to input list file
--output OUTPUT Path to output CSV file
e.g. python src/vcd2csv.py --vcd bench/RocketTile_Tiny_Opt/1-168/trace/1.RocketTile._assert_1.Bm.3.vcd --input bench/RocketTile_Tiny_Opt/input.list --output bench/RocketTile_Tiny_Opt/1-168/csv/Input_1-168.csv
Notice: 1-168 indicates activation of coverage1[168]. Please refer to the format of input.list to generate your personal input.list.
Step 2: Replay stimuli to check the activation
usage: main.py [-h] --top TOP --clock CLOCK --rtl RTL --csv CSV --id ID [--cmpcsv CMPCSV] [--reglist REGLIST]
options:
-h, --help show this help message and exit
--top TOP Top-level module name
--clock CLOCK clock name
--rtl RTL RTL file path
--csv CSV Stimuli CSV file
--id ID Test ID: 0-0: coverage0[0]
--cmpcsv CMPCSV Comparison CSV file
--reglist REGLIST Comparison reglist file
e.g. python src/main.py --rtl bench/RocketTile_Tiny_Opt/RocketTile_dut.v --clock clock --top RocketTile --csv bench/RocketTile_Tiny_Opt/1-168/csv/Input_1-168.csv --id 1-168
The expected result is :
[RESULT] The cover result of coverage1-168 is: 1
Requirements
cocotb, verilator