Section 18.4.4 Excluding coverage point values or transitions

MODIFY the last paragraph

 

All values or transitions associated with ignored bins are excluded from coverage. That is, each ignored value (or transition) is removed from the set of values (or transitions) associated with any coverage bin. The removal of ignored values shall occur after the distribution of values to the specified bins. Ignored values or transitions are excluded even if they are also included in another bin. An ignored value has no effect on a transition that includes the value.

 

The above may result in a bin that is associated with no values or transitions. Such empty bins are excluded from coverage (see 18.10).

 

 

Section 18.4.5 Specifying Illegal coverage point values or transitions

MODIFY the last paragraph

 

All values or transitions associated with illegal bins are excluded from coverage. That is, each illegal value (or transition) is removed from the set of values (or transitions) associated with any coverage bin. The removal of illegal values shall occur after the distribution of values to the specified bins. If they an illegal value or transition occurs, a run-time error is issued. Illegal bins take precedence over any other bins, that is, they will result in a run-time error even if they are also included in another bin. Specifying an illegal value has no effect on a transition that includes the value.

 

The above may result in a bin that is associated with no values or transitions. Such empty bins are excluded from coverage (see 18.10).

 

Section 18.10.1 Coverpoint coverage computation

ADD, prior to the paragraph that starts “It is important to understand …”

 

 If there is no value or transition associated with a bin, the bin is ignored and shall not contribute to the coverage computation. That is, the bin is excluded from both the numerator and the denominator of the coverage equation.

 

If none of the bins have an associated value or transition, the denominator of the coverage calculation is zero. In this case:

a)       The coverpoint does not contribute to the coverage computation (of the covergroup).

b)       A value of -1.0  is returned by get_coverage and get_inst_coverage.

c)       If get_coverage or get_inst_coverage are called with two arguments, zero is assigned to both arguments – the numerator and denominator.

 

For example:

 

bit [2:0] a,b;
covergroup ct;
    coverpoint b {
        option.auto_bin_max = 4;
        ignore_bins ig = { [0:1], [5:6] };
    }

endgroup

 

In this case, coverpoint b will have 4 auto bins: auto[0,1], auto[2,3], auto[4,5], auto[6,7]. The ignore_bins declaration specifies that the values 0,1,5,6 are ignored. After applying the ignore_bins, the bins are: auto[], auto[2,3], auto[4], auto[7]. Since it no longer is associated with any value, ‘auto[]’ does not contribute to coverage.

 

 

Section 18.10 Coverage computation

 

ADD, at the end of the section.

 

The rules for computation of the coverage Ci of an item may indicate that the item is to be excluded from the coverage computation. In this case, the contribution of the item is excluded from both the numerator and the denominator.

 

If all the items in a covergroup are excluded from coverage, the denominator of the coverage calculation is zero. In this case:

a)       The covergroup does not contribute to the overall coverage score.

b)       A value of -1.0 is returned by get_coverage and get_inst_coverage.

c)       If get_coverage or get_inst_coverage are called with two arguments, zero is assigned to both arguments – the numerator and denominator.