Code coverage is generated automatically from design source code. This verification metrics does not indicate correctness of your design – but measures how code is exercised while running regression test suites. If coverage is missing, it usually indicates either unused code or incomplete tests.
The following types of code coverage are available in Aldec Simulators:
- Statement coverage – examines each executable statement and counts the number of times it has been executed.
- Branch coverage – examines branches of each conditional statement and counts true or false conditions that have been met by a branch during simulation.
- Path coverage – examines the order of conditional statements execution and indicates whether all possible execution sequences have been verified by a testbench.
- Expression coverage – monitors logical expressions and indicates whether all possible states of a logical expression were exercised.
- Toggle coverage – monitors signals logic value changes and indicates signals that were not exercised properly by a testbench.
In Aldec Simulators, code coverage statistics are collected and can be saved into type-dependent databases or Aldec Coverage Database (ACDB) for further analysis:
- Type-dependent coverage databases (-cc – Code Coverage, -exc – Expression Coverage, -pac – Path Coverage, etc) allow viewing coverage statistics in GUI, running and viewing reports on collected data, and merging data gathered during different simulation sessions.
- ACDB is a single data repository for all data (both code and functional coverage) that allows running and viewing reports on collected data, and merging data gathered during different simulation sessions. (Click here for detailed information about coverage types that can be saved into ACDB).
Code Coverage and Toggle Coverage Viewers are dedicated standalone applications that visualize code coverage statistics gathered during simulation.