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

Updated with textual code coverage report and improved xsim support. #87

Merged
merged 5 commits into from
Oct 13, 2022

Conversation

nielshaandbaek
Copy link
Contributor

@nielshaandbaek nielshaandbaek commented Sep 29, 2022

Code coverage

For sign-off purposes it is useful to have a textual code coverage available to append to the design. This PR adds that functionality, but also extends the Library definition with a boolean element ReportCov, which can be used to limit the reporting to specific files. The idea is to be able to create a coverage report for only the files associated with a specific library, but also to ignore e.g. files associated only with verification.

Xsim

The xsim support has also been improved such that compilation is now much faster, which was achieved by switching to using a project file listing all source files and removing the explicit compilation of each source file individually. In addition, the flow was also updated to support the VCD dumping functionality, starting the GUI as well as the -to and -duration flags to control a batch simulation.

@nielshaandbaek nielshaandbaek changed the title Updated to generate textual code coverage report. Updated with textual code coverage report and improved xsim support. Oct 6, 2022
Copy link
Contributor

@ganoam ganoam left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

(*) I tried a few Testbenches with the xilinx simulator and about 90% of them did not compile due to patchy support for one or the other code construct we use somewhere. I'm not sure it's worth putting much effort in supporting it.

RULES/hdl/hdl.go Outdated Show resolved Hide resolved
RULES/hdl/hdl.go Outdated Show resolved Hide resolved
Comment on lines 171 to 172
vcover report -html -output ${main_coverage_db}_covhtml \
-testdetails -details -assert -directive -cvg -codeAll $main_coverage_db.ucdb
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

(+) Add the -srcfile flag here as well?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No, the HTML report option does not support -srcfile.

RULES/hdl/xsim.go Outdated Show resolved Hide resolved
@nielshaandbaek
Copy link
Contributor Author

The main goal is to give developers a choice in case all Questa licenses are blocked. When working on some smaller component or simply trying out some experiments, the Vivado simulator works quite well. Also, running the design through two different simulators sometimes reveals problems in the testbench, at least that was the case for me when I tried it on the axi_register_bank.

Copy link
Contributor

@ganoam ganoam left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks, Looks good to me.

RULES/hdl/xsim.go Outdated Show resolved Hide resolved
RULES/hdl/xsim.go Outdated Show resolved Hide resolved
RULES/xilinx/sim_ip_export.go Outdated Show resolved Hide resolved
@nielshaandbaek nielshaandbaek merged commit d5b801c into master Oct 13, 2022
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