Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

vcs waveform support #183

Merged
merged 1 commit into from
Jun 2, 2022
Merged

Conversation

bensampson5
Copy link
Contributor

@bensampson5 bensampson5 commented May 26, 2022

I'd like to contribute code to add waveform support for vcs via waves=True. It dumps out an fsdb (fast signal database) file which is the synopsys waveform format. I tested this on VCS R-2020.12-SP1 and it works.

I also modified the name of the simulation executable (which vcs by default names "simv" if you don't specify anything). If you have multiple unit tests this becomes a data hazard (by overwriting a previous simv) if they're all called simv so instead I named the executable after the test name and used vcs's -o flag to give it the name.

Great work btw - I love using this package!

@bensampson5
Copy link
Contributor Author

Here's proof that it's working for me as you can see the VCS FSDB dumper being called.

INFO     cocotb:simulator.py:291      0.00ns INFO     Found test test_rtl_template_and2.cocotb_test_rtl_template_and2
INFO     cocotb:simulator.py:291      0.00ns INFO     running cocotb_test_rtl_template_and2 (1/1)
INFO     cocotb:simulator.py:291      0.00ns INFO     Hello world!
INFO     cocotb:simulator.py:291 ucli% fsdbDumpfile /home/bsampson/code/ghe/bsampson/rtl_template/build/test_rtl_template_and2.fsdb; fsdbDumpvars 0 rtl_template_and2; run; quit;
INFO     cocotb:simulator.py:291 *Verdi* Loading libsscore_vcs202012.so
INFO     cocotb:simulator.py:291 FSDB Dumper for VCS, Release Verdi_R-2020.12, Linux x86_64/64bit, 11/19/2020
INFO     cocotb:simulator.py:291 (C) 1996 - 2020 by Synopsys, Inc.
INFO     cocotb:simulator.py:291 *Verdi* : Create FSDB file '/home/bsampson/code/ghe/bsampson/rtl_template/build/test_rtl_template_and2.fsdb'
INFO     cocotb:simulator.py:291 *Verdi* : Begin traversing the scope (rtl_template_and2), layer (0).
INFO     cocotb:simulator.py:291 *Verdi* : End of traversing.
INFO     cocotb:simulator.py:291 3000000000.00ns INFO     cocotb_test_rtl_template_and2 passed
INFO     cocotb:simulator.py:291 3000000000.00ns INFO     **************************************************************************************************************
INFO     cocotb:simulator.py:291                          ** TEST                                                  STATUS  SIM TIME (ns)  REAL TIME (s)  RATIO (ns/s) **
INFO     cocotb:simulator.py:291                          **************************************************************************************************************
INFO     cocotb:simulator.py:291                          ** test_rtl_template_and2.cocotb_test_rtl_template_and2   PASS   3000000000.00           0.24   12700646997.67  **
INFO     cocotb:simulator.py:291                          **************************************************************************************************************
INFO     cocotb:simulator.py:291                          ** TESTS=1 PASS=1 FAIL=0 SKIP=0                                  3000000000.00           0.83   3622838640.47  **
INFO     cocotb:simulator.py:291                          **************************************************************************************************************
INFO     cocotb:simulator.py:291 
INFO     cocotb:simulator.py:291 $finish at simulation time                    3

@themperek themperek merged commit 1a821b4 into themperek:master Jun 2, 2022
@themperek
Copy link
Owner

Thank you!

@bensampson5 bensampson5 deleted the vcs_wave_support branch June 9, 2022 17:01
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants