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



Module Instance : tb.dut.u_eflash.gen_flash_cores[0].u_core.gen_prog_data.u_prog

Instance :
SCORELINECONDTOGGLEFSMBRANCHASSERT
99.37 100.00 96.83 100.00 100.00 100.00


Instance's subtree :
SCORELINECONDTOGGLEFSMBRANCHASSERT
99.47 100.00 96.83 100.00 100.00 100.00 100.00


Parent :
SCORELINECONDTOGGLEFSMBRANCHASSERTNAME
97.87 100.00 91.51 100.00 97.83 100.00 gen_flash_cores[0].u_core


Subtrees :
NAMESCORELINECONDTOGGLEFSMBRANCHASSERT
u_data_intg_chk 100.00 100.00 100.00
u_enc 100.00 100.00
u_plain_enc 100.00 100.00
u_state_regs 100.00 100.00 100.00 100.00



Module Instance : tb.dut.u_eflash.gen_flash_cores[1].u_core.gen_prog_data.u_prog

Instance :
SCORELINECONDTOGGLEFSMBRANCHASSERT
99.37 100.00 96.83 100.00 100.00 100.00


Instance's subtree :
SCORELINECONDTOGGLEFSMBRANCHASSERT
98.64 100.00 96.83 95.00 100.00 100.00 100.00


Parent :
SCORELINECONDTOGGLEFSMBRANCHASSERTNAME
96.36 100.00 83.96 100.00 97.83 100.00 gen_flash_cores[1].u_core


Subtrees :
NAMESCORELINECONDTOGGLEFSMBRANCHASSERT
u_data_intg_chk 97.50 100.00 95.00
u_enc 100.00 100.00
u_plain_enc 100.00 100.00
u_state_regs 100.00 100.00 100.00 100.00

Line Coverage for Module : flash_phy_prog
Line No.TotalCoveredPercent
TOTAL9393100.00
CONT_ASSIGN11111100.00
CONT_ASSIGN12211100.00
CONT_ASSIGN12611100.00
ALWAYS13033100.00
CONT_ASSIGN13811100.00
CONT_ASSIGN14311100.00
CONT_ASSIGN14411100.00
CONT_ASSIGN14711100.00
CONT_ASSIGN14811100.00
ALWAYS15166100.00
ALWAYS16433100.00
ALWAYS1745050100.00
ALWAYS2991010100.00
CONT_ASSIGN31411100.00
ALWAYS32344100.00
CONT_ASSIGN33111100.00
CONT_ASSIGN35211100.00
CONT_ASSIGN35511100.00
CONT_ASSIGN36511100.00
CONT_ASSIGN36611100.00
ALWAYS36933100.00
WARNING: The source file '/workspace/default/sim-vcs/../src/lowrisc_ip_flash_ctrl_0.1/rtl/flash_phy_prog.sv' or '../src/lowrisc_ip_flash_ctrl_0.1/rtl/flash_phy_prog.sv' was not found, so annotated line coverage report could not be generated.
Line No.CoveredStatements
111 1 1
122 1 1
126 1 1
130 1 1
131 1 1
133 1 1
138 1 1
143 1 1
144 1 1
147 1 1
148 1 1
151 1 1
152 1 1
153 1 1
155 1 1
156 1 1
158 1 1
MISSING_ELSE
164 3 3
174 1 1
176 1 1
177 1 1
178 1 1
179 1 1
180 1 1
181 1 1
182 1 1
183 1 1
184 1 1
186 1 1
189 1 1
193 1 1
194 1 1
195 1 1
196 1 1
197 1 1
MISSING_ELSE
203 1 1
204 1 1
205 1 1
MISSING_ELSE
210 1 1
211 1 1
213 1 1
215 1 1
216 1 1
218 1 1
219 1 1
220 1 1
MISSING_ELSE
226 1 1
227 1 1
230 1 1
231 1 1
MISSING_ELSE
236 1 1
237 1 1
241 1 1
243 1 1
244 unreachable
MISSING_ELSE
249 1 1
251 1 1
252 1 1
MISSING_ELSE
257 1 1
262 1 1
263 1 1
269 1 1
270 1 1
272 1 1
273 1 1
278 1 1
279 1 1
280 1 1
MISSING_ELSE
285 1 1
299 1 1
300 1 1
301 1 1
302 1 1
303 1 1
304 1 1
305 unreachable
306 unreachable
307 1 1
308 1 1
309 1 1
310 1 1
MISSING_ELSE
314 1 1
323 1 1
324 1 1
325 1 1
326 1 1
MISSING_ELSE
331 1 1
352 1 1
355 1 1
365 1 1
366 1 1
369 1 1
370 1 1
372 1 1


Cond Coverage for Module : flash_phy_prog
TotalCoveredPercent
Conditions636196.83
Logical636196.83
Non-Logical00
Event00

 LINE       111
 EXPRESSION ((data_sel == Actual) ? data_i[(flash_phy_pkg::BusWidth - 1):0] : ({flash_phy_pkg::BusWidth {1'b1}}))
             ----------1---------
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT2,T4,T18

 LINE       111
 SUB-EXPRESSION (data_sel == Actual)
                ----------1---------
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT2,T4,T18

 LINE       126
 EXPRESSION (data_invalid_q | (pack_valid & ((~data_intg_ok))))
             -------1------   ----------------2---------------
-1--2-StatusTests
00CoveredT1,T2,T3
01CoveredT12,T9,T10
10CoveredT12,T9,T10

 LINE       126
 SUB-EXPRESSION (pack_valid & ((~data_intg_ok)))
                 -----1----   --------2--------
-1--2-StatusTests
01CoveredT1,T2,T3
10CoveredT2,T4,T18
11CoveredT12,T9,T10

 LINE       143
 EXPRESSION (ack_i | data_invalid_q)
             --1--   -------2------
-1--2-StatusTests
00CoveredT1,T2,T3
01Not Covered
10CoveredT1,T2,T3

 LINE       144
 EXPRESSION (done_i | data_invalid_q)
             ---1--   -------2------
-1--2-StatusTests
00CoveredT1,T2,T3
01CoveredT12,T9,T10
10CoveredT1,T2,T3

 LINE       148
 EXPRESSION ((idx > '0) ? (idx_sub_one == sel_i) : 1'b0)
             -----1----
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT2,T4,T18

 LINE       148
 SUB-EXPRESSION (idx_sub_one == sel_i)
                -----------1----------
-1-StatusTests
0CoveredT2,T4,T18
1CoveredT6,T8,T41

 LINE       153
 EXPRESSION (pack_valid && (idx == MaxIdx))
             -----1----    -------2-------
-1--2-StatusTests
01CoveredT2,T4,T18
10CoveredT2,T4,T18
11CoveredT2,T4,T18

 LINE       153
 SUB-EXPRESSION (idx == MaxIdx)
                -------1-------
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT2,T4,T18

 LINE       194
 EXPRESSION (req_i && ((|sel_i)))
             --1--    -----2----
-1--2-StatusTests
01CoveredT1,T2,T3
10CoveredT2,T4,T18
11CoveredT6,T8,T41

 LINE       204
 EXPRESSION (idx == align_next)
            ---------1---------
-1-StatusTests
0CoveredT11,T15
1CoveredT6,T8,T41

 LINE       213
 EXPRESSION (req_i && (idx == MaxIdx))
             --1--    -------2-------
-1--2-StatusTests
01CoveredT2,T4,T18
10CoveredT2,T4,T18
11CoveredT2,T4,T18

 LINE       213
 SUB-EXPRESSION (idx == MaxIdx)
                -------1-------
-1-StatusTests
0CoveredT2,T4,T18
1CoveredT2,T4,T18

 LINE       216
 EXPRESSION (req_i && last_i)
             --1--    ---2--
-1--2-StatusTests
01CoveredT2,T4,T18
10CoveredT2,T4,T18
11CoveredT6,T8,T41

 LINE       230
 EXPRESSION (idx == MaxIdx)
            -------1-------
-1-StatusTests
0CoveredT11,T15
1CoveredT6,T8,T41

 LINE       237
 EXPRESSION (scramble_i ? StCalcMask : StReqFlash)
             -----1----
-1-StatusTests
0CoveredT6,T19,T36
1CoveredT2,T4,T18

 LINE       270
 EXPRESSION (ack ? StWaitFlash : StReqFlash)
             -1-
-1-StatusTests
0CoveredT2,T4,T18
1CoveredT2,T4,T18

 LINE       273
 EXPRESSION (ack ? StIdle : StReqFlash)
             -1-
-1-StatusTests
0CoveredT2,T4,T18
1CoveredT2,T4,T18

 LINE       302
 EXPRESSION (req_o && ack)
             --1--    -2-
-1--2-StatusTests
01CoveredT1,T2,T3
10CoveredT2,T4,T18
11CoveredT2,T4,T18

 LINE       304
 EXPRESSION (calc_req_o && calc_ack_i)
             -----1----    -----2----
-1--2-StatusTests
01UnreachableT1,T2,T3
10CoveredT2,T4,T18
11UnreachableT2,T4,T18

 LINE       307
 EXPRESSION (scramble_req_o && scramble_ack_i)
             -------1------    -------2------
-1--2-StatusTests
01CoveredT1,T2,T3
10CoveredT2,T4,T18
11CoveredT2,T4,T18

 LINE       355
 EXPRESSION (ecc_i ? ecc_data : ({{flash_phy_pkg::EccWidth {1'b1}}, ecc_data_in}))
             --1--
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT1,T2,T3

 LINE       365
 EXPRESSION (req_i && ack_o && last_i)
             --1--    --2--    ---3--
-1--2--3-StatusTests
011Not Covered
101CoveredT2,T4,T18
110CoveredT2,T4,T18
111CoveredT2,T4,T18

 LINE       366
 EXPRESSION (txn_done ? '0 : (done ? ((done_cnt_q + 16'b1)) : done_cnt_q))
             ----1---
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT2,T4,T18

 LINE       366
 SUB-EXPRESSION (done ? ((done_cnt_q + 16'b1)) : done_cnt_q)
                 --1-
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT1,T2,T3

FSM Coverage for Module : flash_phy_prog
Summary for FSM :: state_q
TotalCoveredPercent
States 11 11 100.00 (Not included in score)
Transitions 15 15 100.00
Sequences 0 0

State, Transition and Sequence Details for FSM :: state_q
statesLine No.CoveredTests
StCalcEcc 252 Covered T2,T4,T18
StCalcMask 237 Covered T2,T4,T18
StCalcPlainEcc 215 Covered T2,T4,T18
StDisabled 193 Covered T12,T13,T14
StIdle 273 Covered T1,T2,T3
StPackData 197 Covered T2,T4,T18
StPostPack 218 Covered T6,T8,T41
StPrePack 195 Covered T6,T8,T41
StReqFlash 237 Covered T2,T4,T18
StScrambleData 244 Covered T2,T4,T18
StWaitFlash 270 Covered T2,T4,T18


transitionsLine No.CoveredTests
StCalcEcc->StReqFlash 257 Covered T2,T4,T18
StCalcMask->StScrambleData 244 Covered T2,T4,T18
StCalcPlainEcc->StCalcMask 237 Covered T2,T4,T18
StCalcPlainEcc->StReqFlash 237 Covered T6,T19,T36
StIdle->StDisabled 193 Covered T12,T13,T14
StIdle->StPackData 197 Covered T2,T4,T18
StIdle->StPrePack 195 Covered T6,T8,T41
StPackData->StCalcPlainEcc 215 Covered T2,T4,T18
StPackData->StPostPack 218 Covered T6,T8,T41
StPostPack->StCalcPlainEcc 231 Covered T6,T8,T41
StPrePack->StPackData 205 Covered T6,T8,T41
StReqFlash->StIdle 273 Covered T2,T4,T18
StReqFlash->StWaitFlash 270 Covered T2,T4,T18
StScrambleData->StCalcEcc 252 Covered T2,T4,T18
StWaitFlash->StIdle 280 Covered T2,T4,T18



Branch Coverage for Module : flash_phy_prog
Line No.TotalCoveredPercent
Branches 53 53 100.00
TERNARY 111 2 2 100.00
TERNARY 148 2 2 100.00
TERNARY 355 2 2 100.00
TERNARY 366 3 3 100.00
IF 130 2 2 100.00
IF 151 4 4 100.00
IF 164 2 2 100.00
CASE 186 26 26 100.00
IF 299 5 5 100.00
IF 323 3 3 100.00
IF 369 2 2 100.00

WARNING: The source file /workspace/default/sim-vcs/../src/lowrisc_ip_flash_ctrl_0.1/rtl/flash_phy_prog.sv' or '../src/lowrisc_ip_flash_ctrl_0.1/rtl/flash_phy_prog.sv was not found/opened, so annotated branch coverage report could not be generated.

LineNo. Expression -1-: 111 ((data_sel == Actual)) ?

Branches:
-1-StatusTests
1 Covered T2,T4,T18
0 Covered T1,T2,T3


LineNo. Expression -1-: 148 ((idx > '0)) ?

Branches:
-1-StatusTests
1 Covered T2,T4,T18
0 Covered T1,T2,T3


LineNo. Expression -1-: 355 (ecc_i) ?

Branches:
-1-StatusTests
1 Covered T1,T2,T3
0 Covered T1,T2,T3


LineNo. Expression -1-: 366 (txn_done) ? -2-: 366 (done) ?

Branches:
-1--2-StatusTests
1 - Covered T2,T4,T18
0 1 Covered T1,T2,T3
0 0 Covered T1,T2,T3


LineNo. Expression -1-: 130 if ((!rst_ni))

Branches:
-1-StatusTests
1 Covered T1,T2,T3
0 Covered T1,T2,T3


LineNo. Expression -1-: 151 if ((!rst_ni)) -2-: 153 if ((pack_valid && (idx == MaxIdx))) -3-: 156 if (pack_valid)

Branches:
-1--2--3-StatusTests
1 - - Covered T1,T2,T3
0 1 - Covered T2,T4,T18
0 0 1 Covered T2,T4,T18
0 0 0 Covered T1,T2,T3


LineNo. Expression -1-: 164 if ((!rst_ni))

Branches:
-1-StatusTests
1 Covered T1,T2,T3
0 Covered T1,T2,T3


LineNo. Expression -1-: 186 case (state_q) -2-: 189 if (prim_mubi_pkg::mubi4_test_true_loose(disable_i)) -3-: 194 if ((req_i && (|sel_i))) -4-: 196 if (req_i) -5-: 204 if ((idx == align_next)) -6-: 213 if ((req_i && (idx == MaxIdx))) -7-: 216 if ((req_i && last_i)) -8-: 219 if (req_i) -9-: 230 if ((idx == MaxIdx)) -10-: 237 (scramble_i) ? -11-: 243 if (calc_ack_i) -12-: 251 if (scramble_ack_i) -13-: 269 if (last_i) -14-: 270 (ack) ? -15-: 273 (ack) ? -16-: 278 if (done)

Branches:
-1--2--3--4--5--6--7--8--9--10--11--12--13--14--15--16-StatusTests
StIdle 1 - - - - - - - - - - - - - - Covered T12,T13,T14
StIdle 0 1 - - - - - - - - - - - - - Covered T6,T8,T41
StIdle 0 0 1 - - - - - - - - - - - - Covered T2,T4,T18
StIdle 0 0 0 - - - - - - - - - - - - Covered T1,T2,T3
StPrePack - - - 1 - - - - - - - - - - - Covered T6,T8,T41
StPrePack - - - 0 - - - - - - - - - - - Covered T11,T15
StPackData - - - - 1 - - - - - - - - - - Covered T2,T4,T18
StPackData - - - - 0 1 - - - - - - - - - Covered T6,T8,T41
StPackData - - - - 0 0 1 - - - - - - - - Covered T2,T4,T18
StPackData - - - - 0 0 0 - - - - - - - - Covered T2,T4,T18
StPostPack - - - - - - - 1 - - - - - - - Covered T6,T8,T41
StPostPack - - - - - - - 0 - - - - - - - Covered T11,T15
StCalcPlainEcc - - - - - - - - 1 - - - - - - Covered T2,T4,T18
StCalcPlainEcc - - - - - - - - 0 - - - - - - Covered T6,T19,T36
StCalcMask - - - - - - - - - 1 - - - - - Unreachable T2,T4,T18
StCalcMask - - - - - - - - - 0 - - - - - Covered T2,T4,T18
StScrambleData - - - - - - - - - - 1 - - - - Covered T2,T4,T18
StScrambleData - - - - - - - - - - 0 - - - - Covered T2,T4,T18
StCalcEcc - - - - - - - - - - - - - - - Covered T2,T4,T18
StReqFlash - - - - - - - - - - - 1 1 - - Covered T2,T4,T18
StReqFlash - - - - - - - - - - - 1 0 - - Covered T2,T4,T18
StReqFlash - - - - - - - - - - - 0 - 1 - Covered T2,T4,T18
StReqFlash - - - - - - - - - - - 0 - 0 - Covered T2,T4,T18
StWaitFlash - - - - - - - - - - - - - - 1 Covered T2,T4,T18
StWaitFlash - - - - - - - - - - - - - - 0 Covered T2,T4,T18
StDisabled - - - - - - - - - - - - - - - Covered T12,T13,T14
default - - - - - - - - - - - - - - - Covered T16,T17,T11


LineNo. Expression -1-: 299 if ((!rst_ni)) -2-: 302 if ((req_o && ack)) -3-: 304 if ((calc_req_o && calc_ack_i)) -4-: 307 if ((scramble_req_o && scramble_ack_i)) -5-: 309 if (pack_valid)

Branches:
-1--2--3--4--5-StatusTests
1 - - - - Covered T1,T2,T3
0 1 - - - Covered T2,T4,T18
0 0 1 - - Unreachable T2,T4,T18
0 0 0 1 - Covered T2,T4,T18
0 0 0 0 1 Covered T2,T4,T18
0 0 0 0 0 Covered T1,T2,T3


LineNo. Expression -1-: 323 if ((!rst_ni)) -2-: 325 if (plain_ecc_en)

Branches:
-1--2-StatusTests
1 - Covered T1,T2,T3
0 1 Covered T2,T4,T18
0 0 Covered T1,T2,T3


LineNo. Expression -1-: 369 if ((!rst_ni))

Branches:
-1-StatusTests
1 Covered T1,T2,T3
0 Covered T1,T2,T3


Assert Coverage for Module : flash_phy_prog
TotalAttemptedPercentSucceeded/MatchedPercent
Assertions 5 5 100.00 5 100.00
Cover properties 0 0 0
Cover sequences 0 0 0
Total 5 5 100.00 5 100.00




Assertion Details

NameAttemptsReal SuccessesFailuresIncomplete
OneDonePerTxn_A 723634320 1864774 0 0
PostPackRule_A 723634320 33133 0 0
PrePackRule_A 723634320 15556 0 0
WidthCheck_A 1970 1970 0 0
u_state_regs_A 723634320 721992564 0 0


OneDonePerTxn_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 723634320 1864774 0 0
T2 148350 175 0 0
T3 10352 0 0 0
T4 6022 1 0 0
T5 202366 0 0 0
T6 6144 2 0 0
T7 1683786 0 0 0
T8 360314 1168 0 0
T18 462380 209 0 0
T19 1056686 1188 0 0
T20 2866 0 0 0
T32 0 3 0 0
T33 0 1 0 0
T36 417266 100 0 0
T37 0 302 0 0
T41 0 1006 0 0
T49 0 183 0 0
T52 1320 0 0 0
T59 0 162 0 0
T67 0 50 0 0

PostPackRule_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 723634320 33133 0 0
T6 6144 2 0 0
T7 1683786 0 0 0
T8 720628 460 0 0
T19 1056686 0 0 0
T20 2866 0 0 0
T21 0 2 0 0
T32 0 2 0 0
T36 417266 0 0 0
T37 767508 0 0 0
T41 383686 405 0 0
T45 0 1 0 0
T46 0 384 0 0
T49 410838 0 0 0
T52 2640 0 0 0
T59 0 7 0 0
T66 0 451 0 0
T111 0 53 0 0
T181 0 36 0 0
T234 0 2 0 0

PrePackRule_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 723634320 15556 0 0
T6 3072 1 0 0
T7 841893 0 0 0
T8 720628 216 0 0
T19 528343 0 0 0
T20 1433 0 0 0
T32 2105 1 0 0
T33 2281 1 0 0
T36 208633 0 0 0
T37 767508 0 0 0
T41 383686 232 0 0
T45 0 1 0 0
T46 0 232 0 0
T49 410838 0 0 0
T50 7355 0 0 0
T52 1320 0 0 0
T59 446071 4 0 0
T66 0 181 0 0
T68 0 1 0 0
T111 98982 33 0 0
T112 1381 0 0 0
T147 0 81 0 0
T181 0 75 0 0
T206 0 1 0 0

WidthCheck_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 1970 1970 0 0
T1 2 2 0 0
T2 2 2 0 0
T3 2 2 0 0
T4 2 2 0 0
T5 2 2 0 0
T6 2 2 0 0
T7 2 2 0 0
T18 2 2 0 0
T19 2 2 0 0
T20 2 2 0 0

u_state_regs_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 723634320 721992564 0 0
T1 6452 6312 0 0
T2 296700 279422 0 0
T3 20704 20394 0 0
T4 6022 5784 0 0
T5 202366 202084 0 0
T6 6144 6004 0 0
T7 1683786 1683472 0 0
T18 462380 441212 0 0
T19 1056686 1056670 0 0
T20 2866 2698 0 0

Line Coverage for Instance : tb.dut.u_eflash.gen_flash_cores[0].u_core.gen_prog_data.u_prog
Line No.TotalCoveredPercent
TOTAL9393100.00
CONT_ASSIGN11111100.00
CONT_ASSIGN12211100.00
CONT_ASSIGN12611100.00
ALWAYS13033100.00
CONT_ASSIGN13811100.00
CONT_ASSIGN14311100.00
CONT_ASSIGN14411100.00
CONT_ASSIGN14711100.00
CONT_ASSIGN14811100.00
ALWAYS15166100.00
ALWAYS16433100.00
ALWAYS1745050100.00
ALWAYS2991010100.00
CONT_ASSIGN31411100.00
ALWAYS32344100.00
CONT_ASSIGN33111100.00
CONT_ASSIGN35211100.00
CONT_ASSIGN35511100.00
CONT_ASSIGN36511100.00
CONT_ASSIGN36611100.00
ALWAYS36933100.00
WARNING: The source file '/workspace/default/sim-vcs/../src/lowrisc_ip_flash_ctrl_0.1/rtl/flash_phy_prog.sv' or '../src/lowrisc_ip_flash_ctrl_0.1/rtl/flash_phy_prog.sv' was not found, so annotated line coverage report could not be generated.
Line No.CoveredStatements
111 1 1
122 1 1
126 1 1
130 1 1
131 1 1
133 1 1
138 1 1
143 1 1
144 1 1
147 1 1
148 1 1
151 1 1
152 1 1
153 1 1
155 1 1
156 1 1
158 1 1
MISSING_ELSE
164 3 3
174 1 1
176 1 1
177 1 1
178 1 1
179 1 1
180 1 1
181 1 1
182 1 1
183 1 1
184 1 1
186 1 1
189 1 1
193 1 1
194 1 1
195 1 1
196 1 1
197 1 1
MISSING_ELSE
203 1 1
204 1 1
205 1 1
MISSING_ELSE
210 1 1
211 1 1
213 1 1
215 1 1
216 1 1
218 1 1
219 1 1
220 1 1
MISSING_ELSE
226 1 1
227 1 1
230 1 1
231 1 1
MISSING_ELSE
236 1 1
237 1 1
241 1 1
243 1 1
244 unreachable
MISSING_ELSE
249 1 1
251 1 1
252 1 1
MISSING_ELSE
257 1 1
262 1 1
263 1 1
269 1 1
270 1 1
272 1 1
273 1 1
278 1 1
279 1 1
280 1 1
MISSING_ELSE
285 1 1
299 1 1
300 1 1
301 1 1
302 1 1
303 1 1
304 1 1
305 unreachable
306 unreachable
307 1 1
308 1 1
309 1 1
310 1 1
MISSING_ELSE
314 1 1
323 1 1
324 1 1
325 1 1
326 1 1
MISSING_ELSE
331 1 1
352 1 1
355 1 1
365 1 1
366 1 1
369 1 1
370 1 1
372 1 1


Cond Coverage for Instance : tb.dut.u_eflash.gen_flash_cores[0].u_core.gen_prog_data.u_prog
TotalCoveredPercent
Conditions636196.83
Logical636196.83
Non-Logical00
Event00

 LINE       111
 EXPRESSION ((data_sel == Actual) ? data_i[(flash_phy_pkg::BusWidth - 1):0] : ({flash_phy_pkg::BusWidth {1'b1}}))
             ----------1---------
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT2,T18,T6

 LINE       111
 SUB-EXPRESSION (data_sel == Actual)
                ----------1---------
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT2,T18,T6

 LINE       126
 EXPRESSION (data_invalid_q | (pack_valid & ((~data_intg_ok))))
             -------1------   ----------------2---------------
-1--2-StatusTests
00CoveredT1,T2,T3
01CoveredT12,T9,T10
10CoveredT12,T9,T10

 LINE       126
 SUB-EXPRESSION (pack_valid & ((~data_intg_ok)))
                 -----1----   --------2--------
-1--2-StatusTests
01CoveredT1,T2,T3
10CoveredT2,T18,T6
11CoveredT12,T9,T10

 LINE       143
 EXPRESSION (ack_i | data_invalid_q)
             --1--   -------2------
-1--2-StatusTests
00CoveredT1,T2,T3
01Not Covered
10CoveredT1,T2,T3

 LINE       144
 EXPRESSION (done_i | data_invalid_q)
             ---1--   -------2------
-1--2-StatusTests
00CoveredT1,T2,T3
01CoveredT12,T9,T10
10CoveredT1,T2,T3

 LINE       148
 EXPRESSION ((idx > '0) ? (idx_sub_one == sel_i) : 1'b0)
             -----1----
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT2,T18,T6

 LINE       148
 SUB-EXPRESSION (idx_sub_one == sel_i)
                -----------1----------
-1-StatusTests
0CoveredT2,T18,T6
1CoveredT6,T8,T41

 LINE       153
 EXPRESSION (pack_valid && (idx == MaxIdx))
             -----1----    -------2-------
-1--2-StatusTests
01CoveredT2,T18,T6
10CoveredT2,T18,T6
11CoveredT2,T18,T6

 LINE       153
 SUB-EXPRESSION (idx == MaxIdx)
                -------1-------
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT2,T18,T6

 LINE       194
 EXPRESSION (req_i && ((|sel_i)))
             --1--    -----2----
-1--2-StatusTests
01CoveredT1,T2,T3
10CoveredT2,T18,T6
11CoveredT8,T41,T59

 LINE       204
 EXPRESSION (idx == align_next)
            ---------1---------
-1-StatusTests
0CoveredT11,T15
1CoveredT8,T41,T59

 LINE       213
 EXPRESSION (req_i && (idx == MaxIdx))
             --1--    -------2-------
-1--2-StatusTests
01CoveredT2,T18,T6
10CoveredT2,T18,T6
11CoveredT2,T18,T6

 LINE       213
 SUB-EXPRESSION (idx == MaxIdx)
                -------1-------
-1-StatusTests
0CoveredT2,T18,T6
1CoveredT2,T18,T6

 LINE       216
 EXPRESSION (req_i && last_i)
             --1--    ---2--
-1--2-StatusTests
01CoveredT2,T18,T19
10CoveredT2,T18,T6
11CoveredT6,T8,T41

 LINE       230
 EXPRESSION (idx == MaxIdx)
            -------1-------
-1-StatusTests
0CoveredT11,T15
1CoveredT6,T8,T41

 LINE       237
 EXPRESSION (scramble_i ? StCalcMask : StReqFlash)
             -----1----
-1-StatusTests
0CoveredT6,T19,T36
1CoveredT2,T18,T8

 LINE       270
 EXPRESSION (ack ? StWaitFlash : StReqFlash)
             -1-
-1-StatusTests
0CoveredT2,T18,T6
1CoveredT2,T18,T6

 LINE       273
 EXPRESSION (ack ? StIdle : StReqFlash)
             -1-
-1-StatusTests
0CoveredT2,T18,T6
1CoveredT2,T18,T6

 LINE       302
 EXPRESSION (req_o && ack)
             --1--    -2-
-1--2-StatusTests
01CoveredT1,T2,T3
10CoveredT2,T18,T6
11CoveredT2,T18,T6

 LINE       304
 EXPRESSION (calc_req_o && calc_ack_i)
             -----1----    -----2----
-1--2-StatusTests
01UnreachableT1,T2,T3
10CoveredT2,T18,T8
11UnreachableT2,T18,T8

 LINE       307
 EXPRESSION (scramble_req_o && scramble_ack_i)
             -------1------    -------2------
-1--2-StatusTests
01CoveredT1,T2,T3
10CoveredT2,T18,T8
11CoveredT2,T18,T8

 LINE       355
 EXPRESSION (ecc_i ? ecc_data : ({{flash_phy_pkg::EccWidth {1'b1}}, ecc_data_in}))
             --1--
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT1,T2,T3

 LINE       365
 EXPRESSION (req_i && ack_o && last_i)
             --1--    --2--    ---3--
-1--2--3-StatusTests
011Not Covered
101CoveredT2,T18,T6
110CoveredT2,T18,T6
111CoveredT2,T18,T6

 LINE       366
 EXPRESSION (txn_done ? '0 : (done ? ((done_cnt_q + 16'b1)) : done_cnt_q))
             ----1---
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT2,T18,T6

 LINE       366
 SUB-EXPRESSION (done ? ((done_cnt_q + 16'b1)) : done_cnt_q)
                 --1-
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT1,T2,T3

FSM Coverage for Instance : tb.dut.u_eflash.gen_flash_cores[0].u_core.gen_prog_data.u_prog
Summary for FSM :: state_q
TotalCoveredPercent
States 11 11 100.00 (Not included in score)
Transitions 15 15 100.00
Sequences 0 0

State, Transition and Sequence Details for FSM :: state_q
statesLine No.CoveredTests
StCalcEcc 252 Covered T2,T18,T8
StCalcMask 237 Covered T2,T18,T8
StCalcPlainEcc 215 Covered T2,T18,T6
StDisabled 193 Covered T12,T13,T14
StIdle 273 Covered T1,T2,T3
StPackData 197 Covered T2,T18,T6
StPostPack 218 Covered T6,T8,T41
StPrePack 195 Covered T8,T41,T59
StReqFlash 237 Covered T2,T18,T6
StScrambleData 244 Covered T2,T18,T8
StWaitFlash 270 Covered T2,T18,T6


transitionsLine No.CoveredTests
StCalcEcc->StReqFlash 257 Covered T2,T18,T8
StCalcMask->StScrambleData 244 Covered T2,T18,T8
StCalcPlainEcc->StCalcMask 237 Covered T2,T18,T8
StCalcPlainEcc->StReqFlash 237 Covered T6,T19,T36
StIdle->StDisabled 193 Covered T12,T13,T14
StIdle->StPackData 197 Covered T2,T18,T6
StIdle->StPrePack 195 Covered T8,T41,T59
StPackData->StCalcPlainEcc 215 Covered T2,T18,T6
StPackData->StPostPack 218 Covered T6,T8,T41
StPostPack->StCalcPlainEcc 231 Covered T6,T8,T41
StPrePack->StPackData 205 Covered T8,T41,T59
StReqFlash->StIdle 273 Covered T2,T18,T6
StReqFlash->StWaitFlash 270 Covered T2,T18,T6
StScrambleData->StCalcEcc 252 Covered T2,T18,T8
StWaitFlash->StIdle 280 Covered T2,T18,T6



Branch Coverage for Instance : tb.dut.u_eflash.gen_flash_cores[0].u_core.gen_prog_data.u_prog
Line No.TotalCoveredPercent
Branches 53 53 100.00
TERNARY 111 2 2 100.00
TERNARY 148 2 2 100.00
TERNARY 355 2 2 100.00
TERNARY 366 3 3 100.00
IF 130 2 2 100.00
IF 151 4 4 100.00
IF 164 2 2 100.00
CASE 186 26 26 100.00
IF 299 5 5 100.00
IF 323 3 3 100.00
IF 369 2 2 100.00

WARNING: The source file /workspace/default/sim-vcs/../src/lowrisc_ip_flash_ctrl_0.1/rtl/flash_phy_prog.sv' or '../src/lowrisc_ip_flash_ctrl_0.1/rtl/flash_phy_prog.sv was not found/opened, so annotated branch coverage report could not be generated.

LineNo. Expression -1-: 111 ((data_sel == Actual)) ?

Branches:
-1-StatusTests
1 Covered T2,T18,T6
0 Covered T1,T2,T3


LineNo. Expression -1-: 148 ((idx > '0)) ?

Branches:
-1-StatusTests
1 Covered T2,T18,T6
0 Covered T1,T2,T3


LineNo. Expression -1-: 355 (ecc_i) ?

Branches:
-1-StatusTests
1 Covered T1,T2,T3
0 Covered T1,T2,T3


LineNo. Expression -1-: 366 (txn_done) ? -2-: 366 (done) ?

Branches:
-1--2-StatusTests
1 - Covered T2,T18,T6
0 1 Covered T1,T2,T3
0 0 Covered T1,T2,T3


LineNo. Expression -1-: 130 if ((!rst_ni))

Branches:
-1-StatusTests
1 Covered T1,T2,T3
0 Covered T1,T2,T3


LineNo. Expression -1-: 151 if ((!rst_ni)) -2-: 153 if ((pack_valid && (idx == MaxIdx))) -3-: 156 if (pack_valid)

Branches:
-1--2--3-StatusTests
1 - - Covered T1,T2,T3
0 1 - Covered T2,T18,T6
0 0 1 Covered T2,T18,T6
0 0 0 Covered T1,T2,T3


LineNo. Expression -1-: 164 if ((!rst_ni))

Branches:
-1-StatusTests
1 Covered T1,T2,T3
0 Covered T1,T2,T3


LineNo. Expression -1-: 186 case (state_q) -2-: 189 if (prim_mubi_pkg::mubi4_test_true_loose(disable_i)) -3-: 194 if ((req_i && (|sel_i))) -4-: 196 if (req_i) -5-: 204 if ((idx == align_next)) -6-: 213 if ((req_i && (idx == MaxIdx))) -7-: 216 if ((req_i && last_i)) -8-: 219 if (req_i) -9-: 230 if ((idx == MaxIdx)) -10-: 237 (scramble_i) ? -11-: 243 if (calc_ack_i) -12-: 251 if (scramble_ack_i) -13-: 269 if (last_i) -14-: 270 (ack) ? -15-: 273 (ack) ? -16-: 278 if (done)

Branches:
-1--2--3--4--5--6--7--8--9--10--11--12--13--14--15--16-StatusTests
StIdle 1 - - - - - - - - - - - - - - Covered T12,T13,T14
StIdle 0 1 - - - - - - - - - - - - - Covered T8,T41,T59
StIdle 0 0 1 - - - - - - - - - - - - Covered T2,T18,T6
StIdle 0 0 0 - - - - - - - - - - - - Covered T1,T2,T3
StPrePack - - - 1 - - - - - - - - - - - Covered T8,T41,T59
StPrePack - - - 0 - - - - - - - - - - - Covered T11,T15
StPackData - - - - 1 - - - - - - - - - - Covered T2,T18,T6
StPackData - - - - 0 1 - - - - - - - - - Covered T6,T8,T41
StPackData - - - - 0 0 1 - - - - - - - - Covered T2,T18,T6
StPackData - - - - 0 0 0 - - - - - - - - Covered T2,T18,T6
StPostPack - - - - - - - 1 - - - - - - - Covered T6,T8,T41
StPostPack - - - - - - - 0 - - - - - - - Covered T11,T15
StCalcPlainEcc - - - - - - - - 1 - - - - - - Covered T2,T18,T8
StCalcPlainEcc - - - - - - - - 0 - - - - - - Covered T6,T19,T36
StCalcMask - - - - - - - - - 1 - - - - - Unreachable T2,T18,T8
StCalcMask - - - - - - - - - 0 - - - - - Covered T2,T18,T8
StScrambleData - - - - - - - - - - 1 - - - - Covered T2,T18,T8
StScrambleData - - - - - - - - - - 0 - - - - Covered T2,T18,T8
StCalcEcc - - - - - - - - - - - - - - - Covered T2,T18,T8
StReqFlash - - - - - - - - - - - 1 1 - - Covered T2,T18,T6
StReqFlash - - - - - - - - - - - 1 0 - - Covered T2,T18,T6
StReqFlash - - - - - - - - - - - 0 - 1 - Covered T2,T18,T6
StReqFlash - - - - - - - - - - - 0 - 0 - Covered T2,T18,T6
StWaitFlash - - - - - - - - - - - - - - 1 Covered T2,T18,T6
StWaitFlash - - - - - - - - - - - - - - 0 Covered T2,T18,T6
StDisabled - - - - - - - - - - - - - - - Covered T12,T13,T14
default - - - - - - - - - - - - - - - Covered T16,T17,T11


LineNo. Expression -1-: 299 if ((!rst_ni)) -2-: 302 if ((req_o && ack)) -3-: 304 if ((calc_req_o && calc_ack_i)) -4-: 307 if ((scramble_req_o && scramble_ack_i)) -5-: 309 if (pack_valid)

Branches:
-1--2--3--4--5-StatusTests
1 - - - - Covered T1,T2,T3
0 1 - - - Covered T2,T18,T6
0 0 1 - - Unreachable T2,T18,T8
0 0 0 1 - Covered T2,T18,T8
0 0 0 0 1 Covered T2,T18,T6
0 0 0 0 0 Covered T1,T2,T3


LineNo. Expression -1-: 323 if ((!rst_ni)) -2-: 325 if (plain_ecc_en)

Branches:
-1--2-StatusTests
1 - Covered T1,T2,T3
0 1 Covered T2,T18,T6
0 0 Covered T1,T2,T3


LineNo. Expression -1-: 369 if ((!rst_ni))

Branches:
-1-StatusTests
1 Covered T1,T2,T3
0 Covered T1,T2,T3


Assert Coverage for Instance : tb.dut.u_eflash.gen_flash_cores[0].u_core.gen_prog_data.u_prog
TotalAttemptedPercentSucceeded/MatchedPercent
Assertions 5 5 100.00 5 100.00
Cover properties 0 0 0
Cover sequences 0 0 0
Total 5 5 100.00 5 100.00




Assertion Details

NameAttemptsReal SuccessesFailuresIncomplete
OneDonePerTxn_A 361817160 947537 0 0
PostPackRule_A 361817160 18365 0 0
PrePackRule_A 361817160 8890 0 0
WidthCheck_A 985 985 0 0
u_state_regs_A 361817160 360996282 0 0


OneDonePerTxn_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 361817160 947537 0 0
T2 148350 175 0 0
T3 10352 0 0 0
T4 3011 0 0 0
T5 101183 0 0 0
T6 3072 1 0 0
T7 841893 0 0 0
T8 0 621 0 0
T18 231190 209 0 0
T19 528343 791 0 0
T20 1433 0 0 0
T32 0 2 0 0
T36 208633 47 0 0
T37 0 302 0 0
T41 0 514 0 0
T49 0 183 0 0

PostPackRule_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 361817160 18365 0 0
T6 3072 1 0 0
T7 841893 0 0 0
T8 360314 185 0 0
T19 528343 0 0 0
T20 1433 0 0 0
T21 0 2 0 0
T32 0 2 0 0
T36 208633 0 0 0
T37 383754 0 0 0
T41 191843 235 0 0
T46 0 200 0 0
T49 205419 0 0 0
T52 1320 0 0 0
T59 0 6 0 0
T66 0 203 0 0
T111 0 23 0 0
T234 0 1 0 0

PrePackRule_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 361817160 8890 0 0
T8 360314 111 0 0
T32 2105 0 0 0
T33 2281 0 0 0
T37 383754 0 0 0
T41 191843 138 0 0
T46 0 110 0 0
T49 205419 0 0 0
T50 7355 0 0 0
T59 446071 4 0 0
T66 0 117 0 0
T68 0 1 0 0
T111 98982 16 0 0
T112 1381 0 0 0
T147 0 81 0 0
T181 0 39 0 0
T206 0 1 0 0

WidthCheck_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 985 985 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
T18 1 1 0 0
T19 1 1 0 0
T20 1 1 0 0

u_state_regs_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 361817160 360996282 0 0
T1 3226 3156 0 0
T2 148350 139711 0 0
T3 10352 10197 0 0
T4 3011 2892 0 0
T5 101183 101042 0 0
T6 3072 3002 0 0
T7 841893 841736 0 0
T18 231190 220606 0 0
T19 528343 528335 0 0
T20 1433 1349 0 0

Line Coverage for Instance : tb.dut.u_eflash.gen_flash_cores[1].u_core.gen_prog_data.u_prog
Line No.TotalCoveredPercent
TOTAL9393100.00
CONT_ASSIGN11111100.00
CONT_ASSIGN12211100.00
CONT_ASSIGN12611100.00
ALWAYS13033100.00
CONT_ASSIGN13811100.00
CONT_ASSIGN14311100.00
CONT_ASSIGN14411100.00
CONT_ASSIGN14711100.00
CONT_ASSIGN14811100.00
ALWAYS15166100.00
ALWAYS16433100.00
ALWAYS1745050100.00
ALWAYS2991010100.00
CONT_ASSIGN31411100.00
ALWAYS32344100.00
CONT_ASSIGN33111100.00
CONT_ASSIGN35211100.00
CONT_ASSIGN35511100.00
CONT_ASSIGN36511100.00
CONT_ASSIGN36611100.00
ALWAYS36933100.00
WARNING: The source file '/workspace/default/sim-vcs/../src/lowrisc_ip_flash_ctrl_0.1/rtl/flash_phy_prog.sv' or '../src/lowrisc_ip_flash_ctrl_0.1/rtl/flash_phy_prog.sv' was not found, so annotated line coverage report could not be generated.
Line No.CoveredStatements
111 1 1
122 1 1
126 1 1
130 1 1
131 1 1
133 1 1
138 1 1
143 1 1
144 1 1
147 1 1
148 1 1
151 1 1
152 1 1
153 1 1
155 1 1
156 1 1
158 1 1
MISSING_ELSE
164 3 3
174 1 1
176 1 1
177 1 1
178 1 1
179 1 1
180 1 1
181 1 1
182 1 1
183 1 1
184 1 1
186 1 1
189 1 1
193 1 1
194 1 1
195 1 1
196 1 1
197 1 1
MISSING_ELSE
203 1 1
204 1 1
205 1 1
MISSING_ELSE
210 1 1
211 1 1
213 1 1
215 1 1
216 1 1
218 1 1
219 1 1
220 1 1
MISSING_ELSE
226 1 1
227 1 1
230 1 1
231 1 1
MISSING_ELSE
236 1 1
237 1 1
241 1 1
243 1 1
244 unreachable
MISSING_ELSE
249 1 1
251 1 1
252 1 1
MISSING_ELSE
257 1 1
262 1 1
263 1 1
269 1 1
270 1 1
272 1 1
273 1 1
278 1 1
279 1 1
280 1 1
MISSING_ELSE
285 1 1
299 1 1
300 1 1
301 1 1
302 1 1
303 1 1
304 1 1
305 unreachable
306 unreachable
307 1 1
308 1 1
309 1 1
310 1 1
MISSING_ELSE
314 1 1
323 1 1
324 1 1
325 1 1
326 1 1
MISSING_ELSE
331 1 1
352 1 1
355 1 1
365 1 1
366 1 1
369 1 1
370 1 1
372 1 1


Cond Coverage for Instance : tb.dut.u_eflash.gen_flash_cores[1].u_core.gen_prog_data.u_prog
TotalCoveredPercent
Conditions636196.83
Logical636196.83
Non-Logical00
Event00

 LINE       111
 EXPRESSION ((data_sel == Actual) ? data_i[(flash_phy_pkg::BusWidth - 1):0] : ({flash_phy_pkg::BusWidth {1'b1}}))
             ----------1---------
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT4,T6,T19

 LINE       111
 SUB-EXPRESSION (data_sel == Actual)
                ----------1---------
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT4,T6,T19

 LINE       126
 EXPRESSION (data_invalid_q | (pack_valid & ((~data_intg_ok))))
             -------1------   ----------------2---------------
-1--2-StatusTests
00CoveredT1,T2,T3
01CoveredT9,T10,T231
10CoveredT9,T10,T231

 LINE       126
 SUB-EXPRESSION (pack_valid & ((~data_intg_ok)))
                 -----1----   --------2--------
-1--2-StatusTests
01CoveredT1,T2,T3
10CoveredT4,T6,T19
11CoveredT9,T10,T231

 LINE       143
 EXPRESSION (ack_i | data_invalid_q)
             --1--   -------2------
-1--2-StatusTests
00CoveredT1,T2,T3
01Not Covered
10CoveredT1,T2,T3

 LINE       144
 EXPRESSION (done_i | data_invalid_q)
             ---1--   -------2------
-1--2-StatusTests
00CoveredT1,T2,T3
01CoveredT9,T10,T231
10CoveredT3,T4,T5

 LINE       148
 EXPRESSION ((idx > '0) ? (idx_sub_one == sel_i) : 1'b0)
             -----1----
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT4,T6,T19

 LINE       148
 SUB-EXPRESSION (idx_sub_one == sel_i)
                -----------1----------
-1-StatusTests
0CoveredT4,T6,T19
1CoveredT6,T8,T41

 LINE       153
 EXPRESSION (pack_valid && (idx == MaxIdx))
             -----1----    -------2-------
-1--2-StatusTests
01CoveredT4,T19,T36
10CoveredT4,T6,T19
11CoveredT4,T6,T19

 LINE       153
 SUB-EXPRESSION (idx == MaxIdx)
                -------1-------
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT4,T6,T19

 LINE       194
 EXPRESSION (req_i && ((|sel_i)))
             --1--    -----2----
-1--2-StatusTests
01CoveredT1,T2,T3
10CoveredT4,T6,T19
11CoveredT6,T8,T41

 LINE       204
 EXPRESSION (idx == align_next)
            ---------1---------
-1-StatusTests
0CoveredT11,T15
1CoveredT6,T8,T41

 LINE       213
 EXPRESSION (req_i && (idx == MaxIdx))
             --1--    -------2-------
-1--2-StatusTests
01CoveredT4,T19,T36
10CoveredT4,T6,T19
11CoveredT4,T6,T19

 LINE       213
 SUB-EXPRESSION (idx == MaxIdx)
                -------1-------
-1-StatusTests
0CoveredT4,T6,T19
1CoveredT4,T6,T19

 LINE       216
 EXPRESSION (req_i && last_i)
             --1--    ---2--
-1--2-StatusTests
01CoveredT4,T19,T36
10CoveredT4,T19,T36
11CoveredT6,T8,T41

 LINE       230
 EXPRESSION (idx == MaxIdx)
            -------1-------
-1-StatusTests
0CoveredT11,T15
1CoveredT6,T8,T41

 LINE       237
 EXPRESSION (scramble_i ? StCalcMask : StReqFlash)
             -----1----
-1-StatusTests
0CoveredT6,T19,T36
1CoveredT4,T8,T45

 LINE       270
 EXPRESSION (ack ? StWaitFlash : StReqFlash)
             -1-
-1-StatusTests
0CoveredT4,T19,T36
1CoveredT4,T6,T19

 LINE       273
 EXPRESSION (ack ? StIdle : StReqFlash)
             -1-
-1-StatusTests
0CoveredT4,T19,T36
1CoveredT4,T6,T19

 LINE       302
 EXPRESSION (req_o && ack)
             --1--    -2-
-1--2-StatusTests
01CoveredT1,T2,T3
10CoveredT4,T19,T36
11CoveredT4,T6,T19

 LINE       304
 EXPRESSION (calc_req_o && calc_ack_i)
             -----1----    -----2----
-1--2-StatusTests
01UnreachableT3,T4,T5
10CoveredT4,T8,T45
11UnreachableT4,T8,T45

 LINE       307
 EXPRESSION (scramble_req_o && scramble_ack_i)
             -------1------    -------2------
-1--2-StatusTests
01CoveredT3,T4,T5
10CoveredT4,T8,T45
11CoveredT4,T8,T45

 LINE       355
 EXPRESSION (ecc_i ? ecc_data : ({{flash_phy_pkg::EccWidth {1'b1}}, ecc_data_in}))
             --1--
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT1,T2,T3

 LINE       365
 EXPRESSION (req_i && ack_o && last_i)
             --1--    --2--    ---3--
-1--2--3-StatusTests
011Not Covered
101CoveredT4,T6,T19
110CoveredT4,T6,T19
111CoveredT4,T6,T19

 LINE       366
 EXPRESSION (txn_done ? '0 : (done ? ((done_cnt_q + 16'b1)) : done_cnt_q))
             ----1---
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT4,T6,T19

 LINE       366
 SUB-EXPRESSION (done ? ((done_cnt_q + 16'b1)) : done_cnt_q)
                 --1-
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT3,T4,T5

FSM Coverage for Instance : tb.dut.u_eflash.gen_flash_cores[1].u_core.gen_prog_data.u_prog
Summary for FSM :: state_q
TotalCoveredPercent
States 11 11 100.00 (Not included in score)
Transitions 15 15 100.00
Sequences 0 0

State, Transition and Sequence Details for FSM :: state_q
statesLine No.CoveredTests
StCalcEcc 252 Covered T4,T8,T45
StCalcMask 237 Covered T4,T8,T45
StCalcPlainEcc 215 Covered T4,T6,T19
StDisabled 193 Covered T12,T13,T14
StIdle 273 Covered T1,T2,T3
StPackData 197 Covered T4,T6,T19
StPostPack 218 Covered T6,T8,T41
StPrePack 195 Covered T6,T8,T41
StReqFlash 237 Covered T4,T6,T19
StScrambleData 244 Covered T4,T8,T45
StWaitFlash 270 Covered T4,T6,T19


transitionsLine No.CoveredTests
StCalcEcc->StReqFlash 257 Covered T4,T8,T45
StCalcMask->StScrambleData 244 Covered T4,T8,T45
StCalcPlainEcc->StCalcMask 237 Covered T4,T8,T45
StCalcPlainEcc->StReqFlash 237 Covered T6,T19,T36
StIdle->StDisabled 193 Covered T12,T13,T14
StIdle->StPackData 197 Covered T4,T6,T19
StIdle->StPrePack 195 Covered T6,T8,T41
StPackData->StCalcPlainEcc 215 Covered T4,T6,T19
StPackData->StPostPack 218 Covered T6,T8,T41
StPostPack->StCalcPlainEcc 231 Covered T6,T8,T41
StPrePack->StPackData 205 Covered T6,T8,T41
StReqFlash->StIdle 273 Covered T4,T6,T19
StReqFlash->StWaitFlash 270 Covered T4,T6,T19
StScrambleData->StCalcEcc 252 Covered T4,T8,T45
StWaitFlash->StIdle 280 Covered T4,T6,T19



Branch Coverage for Instance : tb.dut.u_eflash.gen_flash_cores[1].u_core.gen_prog_data.u_prog
Line No.TotalCoveredPercent
Branches 53 53 100.00
TERNARY 111 2 2 100.00
TERNARY 148 2 2 100.00
TERNARY 355 2 2 100.00
TERNARY 366 3 3 100.00
IF 130 2 2 100.00
IF 151 4 4 100.00
IF 164 2 2 100.00
CASE 186 26 26 100.00
IF 299 5 5 100.00
IF 323 3 3 100.00
IF 369 2 2 100.00

WARNING: The source file /workspace/default/sim-vcs/../src/lowrisc_ip_flash_ctrl_0.1/rtl/flash_phy_prog.sv' or '../src/lowrisc_ip_flash_ctrl_0.1/rtl/flash_phy_prog.sv was not found/opened, so annotated branch coverage report could not be generated.

LineNo. Expression -1-: 111 ((data_sel == Actual)) ?

Branches:
-1-StatusTests
1 Covered T4,T6,T19
0 Covered T1,T2,T3


LineNo. Expression -1-: 148 ((idx > '0)) ?

Branches:
-1-StatusTests
1 Covered T4,T6,T19
0 Covered T1,T2,T3


LineNo. Expression -1-: 355 (ecc_i) ?

Branches:
-1-StatusTests
1 Covered T1,T2,T3
0 Covered T1,T2,T3


LineNo. Expression -1-: 366 (txn_done) ? -2-: 366 (done) ?

Branches:
-1--2-StatusTests
1 - Covered T4,T6,T19
0 1 Covered T3,T4,T5
0 0 Covered T1,T2,T3


LineNo. Expression -1-: 130 if ((!rst_ni))

Branches:
-1-StatusTests
1 Covered T1,T2,T3
0 Covered T1,T2,T3


LineNo. Expression -1-: 151 if ((!rst_ni)) -2-: 153 if ((pack_valid && (idx == MaxIdx))) -3-: 156 if (pack_valid)

Branches:
-1--2--3-StatusTests
1 - - Covered T1,T2,T3
0 1 - Covered T4,T6,T19
0 0 1 Covered T4,T6,T19
0 0 0 Covered T1,T2,T3


LineNo. Expression -1-: 164 if ((!rst_ni))

Branches:
-1-StatusTests
1 Covered T1,T2,T3
0 Covered T1,T2,T3


LineNo. Expression -1-: 186 case (state_q) -2-: 189 if (prim_mubi_pkg::mubi4_test_true_loose(disable_i)) -3-: 194 if ((req_i && (|sel_i))) -4-: 196 if (req_i) -5-: 204 if ((idx == align_next)) -6-: 213 if ((req_i && (idx == MaxIdx))) -7-: 216 if ((req_i && last_i)) -8-: 219 if (req_i) -9-: 230 if ((idx == MaxIdx)) -10-: 237 (scramble_i) ? -11-: 243 if (calc_ack_i) -12-: 251 if (scramble_ack_i) -13-: 269 if (last_i) -14-: 270 (ack) ? -15-: 273 (ack) ? -16-: 278 if (done)

Branches:
-1--2--3--4--5--6--7--8--9--10--11--12--13--14--15--16-StatusTests
StIdle 1 - - - - - - - - - - - - - - Covered T12,T13,T14
StIdle 0 1 - - - - - - - - - - - - - Covered T6,T8,T41
StIdle 0 0 1 - - - - - - - - - - - - Covered T4,T6,T19
StIdle 0 0 0 - - - - - - - - - - - - Covered T1,T2,T3
StPrePack - - - 1 - - - - - - - - - - - Covered T6,T8,T41
StPrePack - - - 0 - - - - - - - - - - - Covered T11,T15
StPackData - - - - 1 - - - - - - - - - - Covered T4,T6,T19
StPackData - - - - 0 1 - - - - - - - - - Covered T6,T8,T41
StPackData - - - - 0 0 1 - - - - - - - - Covered T4,T19,T36
StPackData - - - - 0 0 0 - - - - - - - - Covered T4,T19,T36
StPostPack - - - - - - - 1 - - - - - - - Covered T6,T8,T41
StPostPack - - - - - - - 0 - - - - - - - Covered T11,T15
StCalcPlainEcc - - - - - - - - 1 - - - - - - Covered T4,T8,T45
StCalcPlainEcc - - - - - - - - 0 - - - - - - Covered T6,T19,T36
StCalcMask - - - - - - - - - 1 - - - - - Unreachable T4,T8,T45
StCalcMask - - - - - - - - - 0 - - - - - Covered T4,T8,T45
StScrambleData - - - - - - - - - - 1 - - - - Covered T4,T8,T45
StScrambleData - - - - - - - - - - 0 - - - - Covered T4,T8,T45
StCalcEcc - - - - - - - - - - - - - - - Covered T4,T8,T45
StReqFlash - - - - - - - - - - - 1 1 - - Covered T4,T6,T19
StReqFlash - - - - - - - - - - - 1 0 - - Covered T4,T19,T36
StReqFlash - - - - - - - - - - - 0 - 1 - Covered T4,T6,T19
StReqFlash - - - - - - - - - - - 0 - 0 - Covered T4,T19,T36
StWaitFlash - - - - - - - - - - - - - - 1 Covered T4,T6,T19
StWaitFlash - - - - - - - - - - - - - - 0 Covered T4,T6,T19
StDisabled - - - - - - - - - - - - - - - Covered T12,T13,T14
default - - - - - - - - - - - - - - - Covered T16,T17,T11


LineNo. Expression -1-: 299 if ((!rst_ni)) -2-: 302 if ((req_o && ack)) -3-: 304 if ((calc_req_o && calc_ack_i)) -4-: 307 if ((scramble_req_o && scramble_ack_i)) -5-: 309 if (pack_valid)

Branches:
-1--2--3--4--5-StatusTests
1 - - - - Covered T1,T2,T3
0 1 - - - Covered T4,T6,T19
0 0 1 - - Unreachable T4,T8,T45
0 0 0 1 - Covered T4,T8,T45
0 0 0 0 1 Covered T4,T6,T19
0 0 0 0 0 Covered T1,T2,T3


LineNo. Expression -1-: 323 if ((!rst_ni)) -2-: 325 if (plain_ecc_en)

Branches:
-1--2-StatusTests
1 - Covered T1,T2,T3
0 1 Covered T4,T6,T19
0 0 Covered T1,T2,T3


LineNo. Expression -1-: 369 if ((!rst_ni))

Branches:
-1-StatusTests
1 Covered T1,T2,T3
0 Covered T1,T2,T3


Assert Coverage for Instance : tb.dut.u_eflash.gen_flash_cores[1].u_core.gen_prog_data.u_prog
TotalAttemptedPercentSucceeded/MatchedPercent
Assertions 5 5 100.00 5 100.00
Cover properties 0 0 0
Cover sequences 0 0 0
Total 5 5 100.00 5 100.00




Assertion Details

NameAttemptsReal SuccessesFailuresIncomplete
OneDonePerTxn_A 361817160 917237 0 0
PostPackRule_A 361817160 14768 0 0
PrePackRule_A 361817160 6666 0 0
WidthCheck_A 985 985 0 0
u_state_regs_A 361817160 360996282 0 0


OneDonePerTxn_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 361817160 917237 0 0
T4 3011 1 0 0
T5 101183 0 0 0
T6 3072 1 0 0
T7 841893 0 0 0
T8 360314 547 0 0
T18 231190 0 0 0
T19 528343 397 0 0
T20 1433 0 0 0
T32 0 1 0 0
T33 0 1 0 0
T36 208633 53 0 0
T41 0 492 0 0
T52 1320 0 0 0
T59 0 162 0 0
T67 0 50 0 0

PostPackRule_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 361817160 14768 0 0
T6 3072 1 0 0
T7 841893 0 0 0
T8 360314 275 0 0
T19 528343 0 0 0
T20 1433 0 0 0
T36 208633 0 0 0
T37 383754 0 0 0
T41 191843 170 0 0
T45 0 1 0 0
T46 0 184 0 0
T49 205419 0 0 0
T52 1320 0 0 0
T59 0 1 0 0
T66 0 248 0 0
T111 0 30 0 0
T181 0 36 0 0
T234 0 1 0 0

PrePackRule_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 361817160 6666 0 0
T6 3072 1 0 0
T7 841893 0 0 0
T8 360314 105 0 0
T19 528343 0 0 0
T20 1433 0 0 0
T32 0 1 0 0
T33 0 1 0 0
T36 208633 0 0 0
T37 383754 0 0 0
T41 191843 94 0 0
T45 0 1 0 0
T46 0 122 0 0
T49 205419 0 0 0
T52 1320 0 0 0
T66 0 64 0 0
T111 0 17 0 0
T181 0 36 0 0

WidthCheck_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 985 985 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
T18 1 1 0 0
T19 1 1 0 0
T20 1 1 0 0

u_state_regs_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 361817160 360996282 0 0
T1 3226 3156 0 0
T2 148350 139711 0 0
T3 10352 10197 0 0
T4 3011 2892 0 0
T5 101183 101042 0 0
T6 3072 3002 0 0
T7 841893 841736 0 0
T18 231190 220606 0 0
T19 528343 528335 0 0
T20 1433 1349 0 0

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