Module Definition
dashboard | hierarchy | modlist | groups | tests | asserts



Module Instance : tb.dut.gen_instr_ctrl.u_prim_mubi8_sync_otp_en_sram_ifetch

Instance :
SCORELINECONDTOGGLEFSMBRANCHASSERT
100.00 100.00 100.00


Instance's subtree :
SCORELINECONDTOGGLEFSMBRANCHASSERT
100.00 100.00 100.00 100.00


Parent :
SCORELINECONDTOGGLEFSMBRANCHASSERTNAME
92.50 100.00 91.92 100.00 100.00 70.59 dut


Subtrees :
NAMESCORELINECONDTOGGLEFSMBRANCHASSERT
gen_buffs[0].gen_bits[0].u_prim_buf 100.00 100.00
gen_buffs[0].gen_bits[1].u_prim_buf 100.00 100.00
gen_buffs[0].gen_bits[2].u_prim_buf 100.00 100.00
gen_buffs[0].gen_bits[3].u_prim_buf 100.00 100.00
gen_buffs[0].gen_bits[4].u_prim_buf 100.00 100.00
gen_buffs[0].gen_bits[5].u_prim_buf 100.00 100.00
gen_buffs[0].gen_bits[6].u_prim_buf 100.00 100.00
gen_buffs[0].gen_bits[7].u_prim_buf 100.00 100.00
gen_flops.u_prim_flop_2sync 100.00 100.00 100.00


Since this is the module's only instance, the coverage report is the same as for the module.
Line Coverage for Module : prim_mubi8_sync
Line No.TotalCoveredPercent
TOTAL33100.00
CONT_ASSIGN12411100.00
ALWAYS12811100.00
CONT_ASSIGN16811100.00

123 end else begin : gen_no_stable_chks 124 1/1 assign mubi = mubi_sync; Tests: T1 T2 T3  125 `ifdef INC_ASSERT 126 mubi8_t mubi_in_sva_q; 127 always_ff @(posedge clk_i) begin 128 1/1 mubi_in_sva_q <= mubi_i; Tests: T1 T2 T3  129 end 130 `ASSERT(OutputDelay_A, 131 rst_ni |-> ##3 (mubi_o == {NumCopies{$past(mubi_in_sva_q, 2)}} || 132 $past(mubi_in_sva_q, 2) != $past(mubi_in_sva_q, 1))) 133 `endif 134 end 135 end else begin : gen_no_flops 136 137 //VCS coverage off 138 // pragma coverage off 139 140 // This unused companion logic helps remove lint errors 141 // for modules where clock and reset are used for assertions only 142 // This logic will be removed for synthesis since it is unloaded. 143 mubi8_t unused_logic; 144 always_ff @(posedge clk_i or negedge rst_ni) begin 145 if (!rst_ni) begin 146 unused_logic <= MuBi8False; 147 end else begin 148 unused_logic <= mubi_i; 149 end 150 end 151 152 //VCS coverage on 153 // pragma coverage on 154 155 assign mubi = MuBi8Width'(mubi_i); 156 157 `ASSERT(OutputDelay_A, mubi_o == {NumCopies{mubi_i}}) 158 end 159 160 for (genvar j = 0; j < NumCopies; j++) begin : gen_buffs 161 logic [MuBi8Width-1:0] mubi_out; 162 for (genvar k = 0; k < MuBi8Width; k++) begin : gen_bits 163 prim_buf u_prim_buf ( 164 .in_i(mubi[k]), 165 .out_o(mubi_out[k]) 166 ); 167 end 168 1/1 assign mubi_o[j] = mubi8_t'(mubi_out); Tests: T1 T2 T3 

Assert Coverage for Module : prim_mubi8_sync
TotalAttemptedPercentSucceeded/MatchedPercent
Assertions 3 3 100.00 3 100.00
Cover properties 0 0 0
Cover sequences 0 0 0
Total 3 3 100.00 3 100.00




Assertion Details

NameAttemptsReal SuccessesFailuresIncomplete
NumCopiesMustBeGreaterZero_A 953 953 0 0
OutputsKnown_A 1186639916 1186530814 0 0
gen_flops.gen_no_stable_chks.OutputDelay_A 1186639916 1186515619 0 2859


NumCopiesMustBeGreaterZero_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 953 953 0 0
T1 1 1 0 0
T2 1 1 0 0
T3 1 1 0 0
T4 1 1 0 0
T5 1 1 0 0
T6 1 1 0 0
T7 1 1 0 0
T12 1 1 0 0
T13 1 1 0 0
T14 1 1 0 0

OutputsKnown_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 1186639916 1186530814 0 0
T1 881 806 0 0
T2 20184 14994 0 0
T3 33575 33500 0 0
T4 65883 65816 0 0
T5 67780 67715 0 0
T6 8664 6050 0 0
T7 44464 44409 0 0
T12 68618 68556 0 0
T13 38121 38055 0 0
T14 1046 994 0 0

gen_flops.gen_no_stable_chks.OutputDelay_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 1186639916 1186515619 0 2859
T1 881 803 0 3
T2 20184 14751 0 3
T3 33575 33497 0 3
T4 65883 65809 0 3
T5 67780 67712 0 3
T6 8664 5927 0 3
T7 44464 44406 0 3
T12 68618 68553 0 3
T13 38121 38052 0 3
T14 1046 991 0 3

0% 10% 20% 30% 40% 50% 60% 70% 80% 90% 100%