mirror of
https://github.com/openhwgroup/cvw
synced 2025-01-23 21:14:37 +00:00
26 lines
702 B
Systemverilog
26 lines
702 B
Systemverilog
typedef RISCV_instruction #(ILEN, XLEN, FLEN, VLEN, NHART, RETIRE) test_ins_rv64i_t;
|
|
|
|
covergroup test_fencei_cg with function sample(test_ins_rv64i_t ins);
|
|
option.per_instance = 1;
|
|
option.comment = "Fence.I";
|
|
|
|
cp_asm_count : coverpoint ins.ins_str == "fence.i" iff (ins.trap == 0 ) {
|
|
option.comment = "Number of times instruction is executed";
|
|
bins count[] = {1};
|
|
}
|
|
endgroup
|
|
|
|
function void test_fencei_sample(int hart, int issue);
|
|
test_ins_rv64i_t ins;
|
|
|
|
case (traceDataQ[hart][issue][0].inst_name)
|
|
"fenci" : begin
|
|
ins = new(hart, issue, traceDataQ);
|
|
test_fencei_cg.sample(ins);
|
|
end
|
|
endcase
|
|
|
|
endfunction
|
|
|
|
|