Are you looking for a singular location to merge your coverage results after running formal verification RTL simulations? Do you want to automatically track the coverage convergence to the verification plan?
Let’s explore some of the features Synopsys Verdi offers that can help answer these questions across each phase of a project.
Can my verification plans be reused?
While a lot of users manage their verification plans in spreadsheets, there are several powerful features in Synopsys Verdi which set it apart. It can import a spreadsheet as a starting point for a verification plan. Similarly, a pdf-based specification can be imported into Verdi and can be linked to checkers and tests with the goal of covering 100% of the specification. When the specification is revised, Verdi shows the delta between the two versions to be linked to new tests/checkers. Another interesting feature which promotes re-use and improves productivity is importing the IP/lower-level verification plans into the SoC/top-level plan.
Can my tests be linked to coverage?
As the tests are being developed and regressions run, Verdi can extract the pass/fail status from the coverage database and annotate that status to the tests and linked features in the verification plan.
With easy integration available to most bug tracking solutions, users can automatically track status of open bugs against the plan. Verdi also supports any user-defined metrics.
Some other features that can optimize the regression and improve coverage scores are test grading and constant analysis.
How do I analyze coverage scores?
As the testbench becomes more mature, exclusion files can be created, viewed and edited alongside the source code in Verdi’s exclusion manager. As the RTL undergoes several iterations, Adaptive Exclusions in Verdi adapts the exclusions for changed RTL and retains them for the unchanged RTL, saving several hours’ of manual effort.
How about coverage closure?
Closing the last few % of coverage is time-consuming and calls for utilizing any tools available before going down the path of writing directed tests. The Synopsys VC Formal Coverage Analyzer (FCA) app, integrated with Synopsys VCS, is one such tool which automatically generates the exclusion file for unreachable code to be analyzed in Verdi. The code coverage generated by VC Formal can also be merged with simulation coverage. As you get closer to tape-out you want to ensure there are no missing coverage points – that everything in the specification is mapped to the plan.
In summary, Synopsys Verdi provides a unified solution to view, analyze, merge coverage across Synopsys tools based on a unified compile flow and can be used during each stage of a project.