Кавер-группы не отображаются в отчете о покрытии QuestaSim - PullRequest
0 голосов
/ 09 мая 2020

Я не могу получить отчет о покрытии для групп покрытия, которые я определил в своем классе в SystemVerilog, используя QuestaSim.

Моя тестовая программа приведена ниже:

testfcov.sv

program automatic testfcov(busif.TB bus);
    class Transaction;
        rand bit [5:0] dst;
        rand bit [3:0] src;
    endclass

    Transaction tr;

    covergroup CoverDst;
        coverpoint tr.dst;
    endgroup

    initial begin
        CoverDst cd;
        cd = new();
        repeat(4) begin
            tr = new();
            assert(tr.randomize());

            @bus.cb;

            bus.cb.dst <= tr.dst;
            bus.cb.src <= tr.src;

            cd.sample();
        end
        $stop;
    end
endprogram

busif.sv

interface busif(input clk);
    logic [5:0] dst;
    logic [3:0] src;

    clocking cb @(posedge clk);
        output dst;
        output src;
    endclocking
    modport TB(clocking cb);
endinterface

tb_coverage.sv

`include "testfcov.sv"
module tb_coverage;

    reg clk;

    initial begin
        clk = 0;
        forever #10 clk = ~clk;
    end

    busif bif(clk);
    testfcov tf(bif);

endmodule

Я использовал следующий скрипт для компиляции и моделирования.

quit -sim
vlog -work work -novopt -sv -stats=none {testfcov.sv}
vlog -work work -novopt -sv -stats=none {busif.sv}
vlog -work work -novopt -sv -stats=none {tb_coverage.sv}
vopt tb_coverage -o opttop +cover
vsim -coverage opttop -do "coverage save -onexit coverage.ucdb;"  
run -all

I сформировали следующий отчет о выходе:

Coverage Report Summary Data by file

=================================================================================
=== File: busif.sv
=================================================================================
    Enabled Coverage            Active      Hits    Misses % Covered
    ----------------            ------      ----    ------ ---------
    Stmts                            1         1         0     100.0
    Branches                         0         0         0     100.0
    FEC Condition Terms              0         0         0     100.0
    FEC Expression Terms             0         0         0     100.0
    FSMs                                                       100.0
        States                       0         0         0     100.0
        Transitions                  0         0         0     100.0
    Toggle Bins                     20        11         9      55.0

=================================================================================
=== File: tb_coverage.sv
=================================================================================
    Enabled Coverage            Active      Hits    Misses % Covered
    ----------------            ------      ----    ------ ---------
    Stmts                            4         4         0     100.0
    Branches                         0         0         0     100.0
    FEC Condition Terms              0         0         0     100.0
    FEC Expression Terms             0         0         0     100.0
    FSMs                                                       100.0
        States                       0         0         0     100.0
        Transitions                  0         0         0     100.0
    Toggle Bins                      2         2         0     100.0

=================================================================================
=== File: testfcov.sv
=================================================================================
    Enabled Coverage            Active      Hits    Misses % Covered
    ----------------            ------      ----    ------ ---------
    Stmts                            8         8         0     100.0
    Branches                         0         0         0     100.0
    FEC Condition Terms              0         0         0     100.0
    FEC Expression Terms             0         0         0     100.0
    FSMs                                                       100.0
        States                       0         0         0     100.0
        Transitions                  0         0         0     100.0
    Toggle Bins                      0         0         0     100.0


TOTAL COVERGROUP COVERAGE: 6.2%  COVERGROUP TYPES: 1

TOTAL ASSERTION COVERAGE: 100.0%  ASSERTIONS: 1

Total Coverage By File (code coverage only, filtered view): 79.5%

Я не могу найти отчет, касающийся группы обложек CoverDst, определенной в файле testfcov.sv. Я произвольно выбираю tr объект транзакции только четыре раза, поэтому невозможно, чтобы он имел 100% покрытие.

Кто-нибудь может подсказать мне, как мне найти отчет о покрытии, соответствующий моим группам покрытия, в отчете о покрытии QuestaSim?

...