0% found this document useful (0 votes)
352 views

Functional Coverage Commands in Questasim

Functional coverage in SystemVerilog allows designers to measure the percentage of scenarios covered during simulation using covergroups, coverpoints, and crosses. Covergroups are configured from the command line using the change command. Coverage is computed using built-in methods like get_coverage() and get_inst_coverage() applied at different scopes, and the overall coverage is calculated using the $get_coverage() system function as a weighted average of individual covergroup coverage values.
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
352 views

Functional Coverage Commands in Questasim

Functional coverage in SystemVerilog allows designers to measure the percentage of scenarios covered during simulation using covergroups, coverpoints, and crosses. Covergroups are configured from the command line using the change command. Coverage is computed using built-in methods like get_coverage() and get_inst_coverage() applied at different scopes, and the overall coverage is calculated using the $get_coverage() system function as a weighted average of individual covergroup coverage values.
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 1

Verification with Functional Coverage

SystemVerilog Functional Coverage Flow

‘ coverage report’, and/or save off coverage to the Unified Coverage DataBase (UCDB) with the
‘coverage save’ command. The UCDB can then be used for reporting, merging, ranking, or other
types of verification analysis.

Configuring Covergroups, Coverpoints, and Crosses


To set values for these variables from the Questa SIM command line interface or a .do file, use
the change command. For example:
change covervar.type_option.weight 20

a type_option is not accessible with the type name and "::" in the command line interface.

Functional Coverage Computation


Predefined Coverage Methods
The SystemVerilog LRM defines two built-in methods (get_coverage() and get_inst_coverage()),
applied at the the covergroup, coverpoint, and cross scope.
Predefined Coverage System Function
the $get_coverage() built-in system function as "the overall coverage of all coverage group
types.
Numerator = sum over all covergroup types of ( type::get_coverage() value *
type::type_option.weight )
Denominator = sum over all covergroup types of ( type::type_option.weight )

You might also like