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.38 100.00 96.92 100.00 100.00 100.00


Instance's subtree :
SCORELINECONDTOGGLEFSMBRANCHASSERT
99.49 100.00 96.92 100.00 100.00 100.00 100.00


Parent :
SCORELINECONDTOGGLEFSMBRANCHASSERTNAME
97.68 100.00 90.57 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.69 100.00 98.46 100.00 100.00 100.00


Instance's subtree :
SCORELINECONDTOGGLEFSMBRANCHASSERT
98.91 100.00 98.46 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
TOTAL9696100.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
ALWAYS1745151100.00
ALWAYS2991212100.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_opentitan_top_earlgrey_flash_ctrl_0.1/rtl/flash_phy_prog.sv' or '../src/lowrisc_opentitan_top_earlgrey_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 1 1
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 1 1
306 1 1
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
Conditions656498.46
Logical656498.46
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
1CoveredT1,T2,T3

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

 LINE       126
 EXPRESSION (data_invalid_q | (pack_valid & ((~data_intg_ok))))
             -------1------   ----------------2---------------
-1--2-StatusTests
00CoveredT1,T2,T3
01CoveredT13,T61,T8
10CoveredT13,T61,T8

 LINE       126
 SUB-EXPRESSION (pack_valid & ((~data_intg_ok)))
                 -----1----   --------2--------
-1--2-StatusTests
01CoveredT1,T2,T3
10CoveredT1,T2,T3
11CoveredT13,T61,T8

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

 LINE       144
 EXPRESSION (done_i | data_invalid_q)
             ---1--   -------2------
-1--2-StatusTests
00CoveredT1,T2,T3
01CoveredT13,T61,T8
10CoveredT1,T2,T3

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

 LINE       148
 SUB-EXPRESSION (idx_sub_one == sel_i)
                -----------1----------
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT5,T21,T22

 LINE       153
 EXPRESSION (pack_valid && (idx == MaxIdx))
             -----1----    -------2-------
-1--2-StatusTests
01CoveredT1,T2,T3
10CoveredT1,T2,T3
11CoveredT1,T2,T3

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

 LINE       194
 EXPRESSION (req_i && ((|sel_i)))
             --1--    -----2----
-1--2-StatusTests
01CoveredT1,T2,T3
10CoveredT1,T2,T3
11CoveredT5,T21,T22

 LINE       204
 EXPRESSION (idx == align_next)
            ---------1---------
-1-StatusTests
0CoveredT14
1CoveredT5,T21,T22

 LINE       213
 EXPRESSION (req_i && (idx == MaxIdx))
             --1--    -------2-------
-1--2-StatusTests
01CoveredT1,T2,T3
10CoveredT1,T2,T3
11CoveredT1,T2,T3

 LINE       213
 SUB-EXPRESSION (idx == MaxIdx)
                -------1-------
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT1,T2,T3

 LINE       216
 EXPRESSION (req_i && last_i)
             --1--    ---2--
-1--2-StatusTests
01CoveredT1,T2,T3
10CoveredT1,T2,T3
11CoveredT5,T21,T22

 LINE       230
 EXPRESSION (idx == MaxIdx)
            -------1-------
-1-StatusTests
0CoveredT14
1CoveredT5,T21,T22

 LINE       237
 EXPRESSION (scramble_i ? StCalcMask : StReqFlash)
             -----1----
-1-StatusTests
0CoveredT2,T13,T61
1CoveredT1,T2,T3

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

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

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

 LINE       304
 EXPRESSION (calc_req_o && calc_ack_i)
             -----1----    -----2----
-1--2-StatusTests
01CoveredT1,T2,T3
10CoveredT2,T3,T12
11CoveredT2,T3,T12

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

 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
101CoveredT1,T2,T3
110CoveredT1,T2,T3
111CoveredT2,T3,T12

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

 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,T3,T12
StCalcMask 237 Covered T2,T3,T12
StCalcPlainEcc 215 Covered T1,T2,T3
StDisabled 193 Covered T11,T12,T13
StIdle 273 Covered T1,T2,T3
StPackData 197 Covered T1,T2,T3
StPostPack 218 Covered T5,T21,T22
StPrePack 195 Covered T5,T21,T22
StReqFlash 237 Covered T2,T3,T12
StScrambleData 244 Covered T2,T3,T12
StWaitFlash 270 Covered T2,T3,T12


transitionsLine No.CoveredTests
StCalcEcc->StReqFlash 257 Covered T2,T3,T12
StCalcMask->StScrambleData 244 Covered T2,T3,T12
StCalcPlainEcc->StCalcMask 237 Covered T2,T3,T12
StCalcPlainEcc->StReqFlash 237 Covered T2,T13,T61
StIdle->StDisabled 193 Covered T11,T12,T13
StIdle->StPackData 197 Covered T1,T2,T3
StIdle->StPrePack 195 Covered T5,T21,T22
StPackData->StCalcPlainEcc 215 Covered T1,T2,T3
StPackData->StPostPack 218 Covered T5,T21,T22
StPostPack->StCalcPlainEcc 231 Covered T5,T21,T22
StPrePack->StPackData 205 Covered T5,T21,T22
StReqFlash->StIdle 273 Covered T2,T12,T13
StReqFlash->StWaitFlash 270 Covered T2,T3,T12
StScrambleData->StCalcEcc 252 Covered T2,T3,T12
StWaitFlash->StIdle 280 Covered T2,T3,T12



Branch Coverage for Module : flash_phy_prog
Line No.TotalCoveredPercent
Branches 55 55 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 27 27 100.00
IF 299 6 6 100.00
IF 323 3 3 100.00
IF 369 2 2 100.00

WARNING: The source file /workspace/default/sim-vcs/../src/lowrisc_opentitan_top_earlgrey_flash_ctrl_0.1/rtl/flash_phy_prog.sv' or '../src/lowrisc_opentitan_top_earlgrey_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 T1,T2,T3
0 Covered T1,T2,T3


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

Branches:
-1-StatusTests
1 Covered T1,T2,T3
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,T3,T12
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 T1,T2,T3
0 0 1 Covered T1,T2,T3
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 T11,T12,T13
StIdle 0 1 - - - - - - - - - - - - - Covered T5,T21,T22
StIdle 0 0 1 - - - - - - - - - - - - Covered T1,T2,T3
StIdle 0 0 0 - - - - - - - - - - - - Covered T1,T2,T3
StPrePack - - - 1 - - - - - - - - - - - Covered T5,T21,T22
StPrePack - - - 0 - - - - - - - - - - - Covered T14
StPackData - - - - 1 - - - - - - - - - - Covered T1,T2,T3
StPackData - - - - 0 1 - - - - - - - - - Covered T5,T21,T22
StPackData - - - - 0 0 1 - - - - - - - - Covered T1,T2,T3
StPackData - - - - 0 0 0 - - - - - - - - Covered T1,T2,T3
StPostPack - - - - - - - 1 - - - - - - - Covered T5,T21,T22
StPostPack - - - - - - - 0 - - - - - - - Covered T14
StCalcPlainEcc - - - - - - - - 1 - - - - - - Covered T1,T2,T3
StCalcPlainEcc - - - - - - - - 0 - - - - - - Covered T2,T13,T61
StCalcMask - - - - - - - - - 1 - - - - - Covered T2,T3,T12
StCalcMask - - - - - - - - - 0 - - - - - Covered T2,T3,T12
StScrambleData - - - - - - - - - - 1 - - - - Covered T2,T3,T12
StScrambleData - - - - - - - - - - 0 - - - - Covered T2,T3,T12
StCalcEcc - - - - - - - - - - - - - - - Covered T2,T3,T12
StReqFlash - - - - - - - - - - - 1 1 - - Covered T2,T3,T12
StReqFlash - - - - - - - - - - - 1 0 - - Covered T2,T57,T4
StReqFlash - - - - - - - - - - - 0 - 1 - Covered T2,T12,T13
StReqFlash - - - - - - - - - - - 0 - 0 - Covered T2,T57,T4
StWaitFlash - - - - - - - - - - - - - - 1 Covered T2,T3,T12
StWaitFlash - - - - - - - - - - - - - - 0 Covered T2,T3,T12
StDisabled - - - - - - - - - - - - - - - Covered T11,T12,T13
default - - - - - - - - - - - - - - - Covered T15,T16,T14


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,T3,T12
0 0 1 - - Covered T2,T3,T12
0 0 0 1 - Covered T2,T3,T12
0 0 0 0 1 Covered T1,T2,T3
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,T3,T12
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 771105922 2434594 0 0
PostPackRule_A 771105922 1803 0 0
PrePackRule_A 771105922 1268 0 0
WidthCheck_A 2090 2090 0 0
u_state_regs_A 771105922 769488588 0 0


OneDonePerTxn_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 771105922 2434594 0 0
T2 769368 1679 0 0
T3 3868 1 0 0
T4 0 96 0 0
T5 0 4 0 0
T6 300958 0 0 0
T7 337848 0 0 0
T8 0 1 0 0
T11 7694 0 0 0
T12 770084 65920 0 0
T17 3108 0 0 0
T18 540206 0 0 0
T19 2372 0 0 0
T20 0 100 0 0
T21 0 1 0 0
T22 0 4 0 0
T27 0 1 0 0
T28 124276 0 0 0
T43 0 262 0 0
T57 0 13 0 0
T62 0 880 0 0
T63 0 2 0 0
T111 0 4 0 0

PostPackRule_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 771105922 1803 0 0
T5 137283 3 0 0
T20 162530 0 0 0
T21 2278 1 0 0
T22 279886 4 0 0
T43 234056 0 0 0
T45 207989 0 0 0
T46 0 3 0 0
T62 399446 0 0 0
T63 21556 0 0 0
T89 0 46 0 0
T90 0 24 0 0
T95 0 31 0 0
T96 0 29 0 0
T98 2374 0 0 0
T102 312618 0 0 0
T111 13314 6 0 0
T154 57572 0 0 0
T155 5980 0 0 0
T168 0 1 0 0
T232 0 20 0 0
T271 0 2 0 0
T272 0 1 0 0
T273 1449 0 0 0

PrePackRule_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 771105922 1268 0 0
T5 274566 2 0 0
T20 325060 0 0 0
T21 4556 1 0 0
T22 279886 4 0 0
T43 234056 0 0 0
T46 0 7 0 0
T89 0 17 0 0
T90 0 20 0 0
T95 0 22 0 0
T96 0 27 0 0
T98 4748 0 0 0
T102 312618 0 0 0
T111 13314 3 0 0
T151 0 1 0 0
T154 57572 0 0 0
T155 5980 0 0 0
T163 0 1 0 0
T168 0 1 0 0
T232 0 12 0 0
T271 0 2 0 0

WidthCheck_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 2090 2090 0 0
T1 2 2 0 0
T2 2 2 0 0
T3 2 2 0 0
T6 2 2 0 0
T7 2 2 0 0
T11 2 2 0 0
T12 2 2 0 0
T17 2 2 0 0
T18 2 2 0 0
T19 2 2 0 0

u_state_regs_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 771105922 769488588 0 0
T1 3680 3358 0 0
T2 769368 769210 0 0
T3 3868 3594 0 0
T6 300958 300708 0 0
T7 337848 337558 0 0
T11 7694 6250 0 0
T12 770084 770050 0 0
T17 3108 2922 0 0
T18 540206 540076 0 0
T19 2372 2206 0 0

Line Coverage for Instance : tb.dut.u_eflash.gen_flash_cores[0].u_core.gen_prog_data.u_prog
Line No.TotalCoveredPercent
TOTAL9696100.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
ALWAYS1745151100.00
ALWAYS2991212100.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_opentitan_top_earlgrey_flash_ctrl_0.1/rtl/flash_phy_prog.sv' or '../src/lowrisc_opentitan_top_earlgrey_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 1 1
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 1 1
306 1 1
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
Conditions656396.92
Logical656396.92
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,T3,T12

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

 LINE       126
 EXPRESSION (data_invalid_q | (pack_valid & ((~data_intg_ok))))
             -------1------   ----------------2---------------
-1--2-StatusTests
00CoveredT1,T2,T3
01CoveredT13,T61,T8
10CoveredT13,T61,T8

 LINE       126
 SUB-EXPRESSION (pack_valid & ((~data_intg_ok)))
                 -----1----   --------2--------
-1--2-StatusTests
01CoveredT1,T2,T3
10CoveredT2,T3,T12
11CoveredT13,T61,T8

 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
01CoveredT13,T61,T8
10CoveredT1,T2,T3

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

 LINE       148
 SUB-EXPRESSION (idx_sub_one == sel_i)
                -----------1----------
-1-StatusTests
0CoveredT2,T3,T12
1CoveredT5,T21,T22

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

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

 LINE       194
 EXPRESSION (req_i && ((|sel_i)))
             --1--    -----2----
-1--2-StatusTests
01CoveredT1,T2,T3
10CoveredT2,T3,T12
11CoveredT5,T21,T22

 LINE       204
 EXPRESSION (idx == align_next)
            ---------1---------
-1-StatusTests
0CoveredT14
1CoveredT5,T21,T22

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

 LINE       213
 SUB-EXPRESSION (idx == MaxIdx)
                -------1-------
-1-StatusTests
0CoveredT2,T3,T12
1CoveredT2,T3,T12

 LINE       216
 EXPRESSION (req_i && last_i)
             --1--    ---2--
-1--2-StatusTests
01CoveredT2,T3,T12
10CoveredT2,T3,T12
11CoveredT5,T21,T22

 LINE       230
 EXPRESSION (idx == MaxIdx)
            -------1-------
-1-StatusTests
0CoveredT14
1CoveredT5,T21,T22

 LINE       237
 EXPRESSION (scramble_i ? StCalcMask : StReqFlash)
             -----1----
-1-StatusTests
0CoveredT2,T13,T61
1CoveredT3,T12,T27

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

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

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

 LINE       304
 EXPRESSION (calc_req_o && calc_ack_i)
             -----1----    -----2----
-1--2-StatusTests
01CoveredT1,T2,T3
10CoveredT3,T12,T27
11CoveredT3,T12,T27

 LINE       307
 EXPRESSION (scramble_req_o && scramble_ack_i)
             -------1------    -------2------
-1--2-StatusTests
01CoveredT1,T2,T3
10CoveredT3,T12,T27
11CoveredT3,T12,T27

 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,T3,T12
110CoveredT2,T3,T12
111CoveredT2,T3,T12

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

 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 T3,T12,T27
StCalcMask 237 Covered T3,T12,T27
StCalcPlainEcc 215 Covered T2,T3,T12
StDisabled 193 Covered T11,T12,T13
StIdle 273 Covered T1,T2,T3
StPackData 197 Covered T2,T3,T12
StPostPack 218 Covered T5,T21,T22
StPrePack 195 Covered T5,T21,T22
StReqFlash 237 Covered T2,T3,T12
StScrambleData 244 Covered T3,T12,T27
StWaitFlash 270 Covered T2,T3,T12


transitionsLine No.CoveredTests
StCalcEcc->StReqFlash 257 Covered T3,T12,T27
StCalcMask->StScrambleData 244 Covered T3,T12,T27
StCalcPlainEcc->StCalcMask 237 Covered T3,T12,T27
StCalcPlainEcc->StReqFlash 237 Covered T2,T13,T61
StIdle->StDisabled 193 Covered T11,T12,T13
StIdle->StPackData 197 Covered T2,T3,T12
StIdle->StPrePack 195 Covered T5,T21,T22
StPackData->StCalcPlainEcc 215 Covered T2,T3,T12
StPackData->StPostPack 218 Covered T5,T21,T22
StPostPack->StCalcPlainEcc 231 Covered T5,T21,T22
StPrePack->StPackData 205 Covered T5,T21,T22
StReqFlash->StIdle 273 Covered T2,T12,T13
StReqFlash->StWaitFlash 270 Covered T2,T3,T12
StScrambleData->StCalcEcc 252 Covered T3,T12,T27
StWaitFlash->StIdle 280 Covered T2,T3,T12



Branch Coverage for Instance : tb.dut.u_eflash.gen_flash_cores[0].u_core.gen_prog_data.u_prog
Line No.TotalCoveredPercent
Branches 55 55 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 27 27 100.00
IF 299 6 6 100.00
IF 323 3 3 100.00
IF 369 2 2 100.00

WARNING: The source file /workspace/default/sim-vcs/../src/lowrisc_opentitan_top_earlgrey_flash_ctrl_0.1/rtl/flash_phy_prog.sv' or '../src/lowrisc_opentitan_top_earlgrey_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,T3,T12
0 Covered T1,T2,T3


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

Branches:
-1-StatusTests
1 Covered T2,T3,T12
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,T3,T12
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,T3,T12
0 0 1 Covered T2,T3,T12
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 T11,T12,T13
StIdle 0 1 - - - - - - - - - - - - - Covered T5,T21,T22
StIdle 0 0 1 - - - - - - - - - - - - Covered T2,T3,T12
StIdle 0 0 0 - - - - - - - - - - - - Covered T1,T2,T3
StPrePack - - - 1 - - - - - - - - - - - Covered T5,T21,T22
StPrePack - - - 0 - - - - - - - - - - - Covered T14
StPackData - - - - 1 - - - - - - - - - - Covered T2,T3,T12
StPackData - - - - 0 1 - - - - - - - - - Covered T5,T21,T22
StPackData - - - - 0 0 1 - - - - - - - - Covered T2,T3,T12
StPackData - - - - 0 0 0 - - - - - - - - Covered T2,T3,T12
StPostPack - - - - - - - 1 - - - - - - - Covered T5,T21,T22
StPostPack - - - - - - - 0 - - - - - - - Covered T14
StCalcPlainEcc - - - - - - - - 1 - - - - - - Covered T3,T12,T27
StCalcPlainEcc - - - - - - - - 0 - - - - - - Covered T2,T13,T61
StCalcMask - - - - - - - - - 1 - - - - - Covered T3,T12,T27
StCalcMask - - - - - - - - - 0 - - - - - Covered T3,T12,T27
StScrambleData - - - - - - - - - - 1 - - - - Covered T3,T12,T27
StScrambleData - - - - - - - - - - 0 - - - - Covered T3,T12,T27
StCalcEcc - - - - - - - - - - - - - - - Covered T3,T12,T27
StReqFlash - - - - - - - - - - - 1 1 - - Covered T2,T3,T12
StReqFlash - - - - - - - - - - - 1 0 - - Covered T2,T57,T4
StReqFlash - - - - - - - - - - - 0 - 1 - Covered T2,T12,T13
StReqFlash - - - - - - - - - - - 0 - 0 - Covered T2,T57,T4
StWaitFlash - - - - - - - - - - - - - - 1 Covered T2,T3,T12
StWaitFlash - - - - - - - - - - - - - - 0 Covered T2,T3,T12
StDisabled - - - - - - - - - - - - - - - Covered T11,T12,T13
default - - - - - - - - - - - - - - - Covered T15,T16,T14


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,T3,T12
0 0 1 - - Covered T3,T12,T27
0 0 0 1 - Covered T3,T12,T27
0 0 0 0 1 Covered T2,T3,T12
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,T3,T12
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 385552961 1220937 0 0
PostPackRule_A 385552961 866 0 0
PrePackRule_A 385552961 630 0 0
WidthCheck_A 1045 1045 0 0
u_state_regs_A 385552961 384744294 0 0


OneDonePerTxn_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 385552961 1220937 0 0
T2 384684 806 0 0
T3 1934 1 0 0
T4 0 96 0 0
T5 0 3 0 0
T6 150479 0 0 0
T7 168924 0 0 0
T8 0 1 0 0
T11 3847 0 0 0
T12 385042 33152 0 0
T17 1554 0 0 0
T18 270103 0 0 0
T19 1186 0 0 0
T20 0 48 0 0
T21 0 1 0 0
T27 0 1 0 0
T28 62138 0 0 0
T57 0 1 0 0

PostPackRule_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 385552961 866 0 0
T5 137283 3 0 0
T20 162530 0 0 0
T21 2278 1 0 0
T22 139943 2 0 0
T43 117028 0 0 0
T46 0 2 0 0
T89 0 25 0 0
T95 0 15 0 0
T96 0 14 0 0
T98 2374 0 0 0
T102 156309 0 0 0
T111 6657 4 0 0
T154 28786 0 0 0
T155 2990 0 0 0
T168 0 1 0 0
T271 0 1 0 0

PrePackRule_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 385552961 630 0 0
T5 137283 1 0 0
T20 162530 0 0 0
T21 2278 1 0 0
T22 139943 3 0 0
T43 117028 0 0 0
T46 0 4 0 0
T95 0 14 0 0
T96 0 11 0 0
T98 2374 0 0 0
T102 156309 0 0 0
T111 6657 3 0 0
T154 28786 0 0 0
T155 2990 0 0 0
T163 0 1 0 0
T168 0 1 0 0
T271 0 1 0 0

WidthCheck_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 1045 1045 0 0
T1 1 1 0 0
T2 1 1 0 0
T3 1 1 0 0
T6 1 1 0 0
T7 1 1 0 0
T11 1 1 0 0
T12 1 1 0 0
T17 1 1 0 0
T18 1 1 0 0
T19 1 1 0 0

u_state_regs_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 385552961 384744294 0 0
T1 1840 1679 0 0
T2 384684 384605 0 0
T3 1934 1797 0 0
T6 150479 150354 0 0
T7 168924 168779 0 0
T11 3847 3125 0 0
T12 385042 385025 0 0
T17 1554 1461 0 0
T18 270103 270038 0 0
T19 1186 1103 0 0

Line Coverage for Instance : tb.dut.u_eflash.gen_flash_cores[1].u_core.gen_prog_data.u_prog
Line No.TotalCoveredPercent
TOTAL9696100.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
ALWAYS1745151100.00
ALWAYS2991212100.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_opentitan_top_earlgrey_flash_ctrl_0.1/rtl/flash_phy_prog.sv' or '../src/lowrisc_opentitan_top_earlgrey_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 1 1
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 1 1
306 1 1
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
Conditions656498.46
Logical656498.46
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
1CoveredT1,T2,T12

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

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

 LINE       126
 SUB-EXPRESSION (pack_valid & ((~data_intg_ok)))
                 -----1----   --------2--------
-1--2-StatusTests
01CoveredT1,T2,T3
10CoveredT1,T2,T12
11CoveredT8,T9,T100

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

 LINE       144
 EXPRESSION (done_i | data_invalid_q)
             ---1--   -------2------
-1--2-StatusTests
00CoveredT1,T2,T3
01CoveredT8,T9,T100
10CoveredT2,T3,T6

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

 LINE       148
 SUB-EXPRESSION (idx_sub_one == sel_i)
                -----------1----------
-1-StatusTests
0CoveredT1,T2,T12
1CoveredT22,T111,T46

 LINE       153
 EXPRESSION (pack_valid && (idx == MaxIdx))
             -----1----    -------2-------
-1--2-StatusTests
01CoveredT1,T2,T12
10CoveredT1,T2,T12
11CoveredT1,T2,T12

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

 LINE       194
 EXPRESSION (req_i && ((|sel_i)))
             --1--    -----2----
-1--2-StatusTests
01CoveredT1,T2,T3
10CoveredT1,T2,T12
11CoveredT5,T22,T46

 LINE       204
 EXPRESSION (idx == align_next)
            ---------1---------
-1-StatusTests
0CoveredT14
1CoveredT5,T22,T46

 LINE       213
 EXPRESSION (req_i && (idx == MaxIdx))
             --1--    -------2-------
-1--2-StatusTests
01CoveredT1,T2,T12
10CoveredT1,T2,T12
11CoveredT1,T2,T12

 LINE       213
 SUB-EXPRESSION (idx == MaxIdx)
                -------1-------
-1-StatusTests
0CoveredT1,T2,T12
1CoveredT1,T2,T12

 LINE       216
 EXPRESSION (req_i && last_i)
             --1--    ---2--
-1--2-StatusTests
01CoveredT1,T2,T12
10CoveredT1,T2,T12
11CoveredT22,T111,T46

 LINE       230
 EXPRESSION (idx == MaxIdx)
            -------1-------
-1-StatusTests
0CoveredT14
1CoveredT22,T111,T46

 LINE       237
 EXPRESSION (scramble_i ? StCalcMask : StReqFlash)
             -----1----
-1-StatusTests
0CoveredT2,T57,T5
1CoveredT1,T2,T12

 LINE       270
 EXPRESSION (ack ? StWaitFlash : StReqFlash)
             -1-
-1-StatusTests
0CoveredT2,T5,T20
1CoveredT2,T12,T57

 LINE       273
 EXPRESSION (ack ? StIdle : StReqFlash)
             -1-
-1-StatusTests
0CoveredT2,T5,T20
1CoveredT2,T12,T57

 LINE       302
 EXPRESSION (req_o && ack)
             --1--    -2-
-1--2-StatusTests
01CoveredT1,T2,T3
10CoveredT2,T5,T20
11CoveredT2,T12,T57

 LINE       304
 EXPRESSION (calc_req_o && calc_ack_i)
             -----1----    -----2----
-1--2-StatusTests
01CoveredT3,T6,T18
10CoveredT2,T12,T8
11CoveredT2,T12,T8

 LINE       307
 EXPRESSION (scramble_req_o && scramble_ack_i)
             -------1------    -------2------
-1--2-StatusTests
01CoveredT3,T6,T18
10CoveredT2,T12,T8
11CoveredT2,T12,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
101CoveredT1,T2,T12
110CoveredT1,T2,T12
111CoveredT2,T12,T57

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

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

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 T2,T8,T62
StCalcMask 237 Covered T2,T8,T62
StCalcPlainEcc 215 Covered T1,T2,T57
StDisabled 193 Covered T11,T12,T13
StIdle 273 Covered T1,T2,T3
StPackData 197 Covered T1,T2,T57
StPostPack 218 Covered T22,T111,T46
StPrePack 195 Covered T5,T22,T46
StReqFlash 237 Covered T2,T57,T8
StScrambleData 244 Covered T2,T8,T62
StWaitFlash 270 Covered T2,T12,T57


transitionsLine No.CoveredTests
StCalcEcc->StReqFlash 257 Covered T2,T8,T62
StCalcMask->StScrambleData 244 Covered T2,T8,T62
StCalcPlainEcc->StCalcMask 237 Covered T2,T8,T62
StCalcPlainEcc->StReqFlash 237 Covered T2,T57,T5
StIdle->StDisabled 193 Covered T11,T12,T13
StIdle->StPackData 197 Covered T1,T2,T57
StIdle->StPrePack 195 Covered T5,T22,T46
StPackData->StCalcPlainEcc 215 Covered T1,T2,T57
StPackData->StPostPack 218 Covered T22,T111,T46
StPostPack->StCalcPlainEcc 231 Covered T22,T111,T46
StPrePack->StPackData 205 Covered T5,T22,T46
StReqFlash->StIdle 273 Covered T2,T12,T57
StReqFlash->StWaitFlash 270 Covered T2,T12,T57
StScrambleData->StCalcEcc 252 Covered T2,T8,T62
StWaitFlash->StIdle 280 Covered T2,T12,T57



Branch Coverage for Instance : tb.dut.u_eflash.gen_flash_cores[1].u_core.gen_prog_data.u_prog
Line No.TotalCoveredPercent
Branches 55 55 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 27 27 100.00
IF 299 6 6 100.00
IF 323 3 3 100.00
IF 369 2 2 100.00

WARNING: The source file /workspace/default/sim-vcs/../src/lowrisc_opentitan_top_earlgrey_flash_ctrl_0.1/rtl/flash_phy_prog.sv' or '../src/lowrisc_opentitan_top_earlgrey_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 T1,T2,T12
0 Covered T1,T2,T3


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

Branches:
-1-StatusTests
1 Covered T1,T2,T12
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,T12,T57
0 1 Covered T2,T3,T6
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 T1,T2,T12
0 0 1 Covered T1,T2,T12
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 T11,T12,T13
StIdle 0 1 - - - - - - - - - - - - - Covered T5,T22,T46
StIdle 0 0 1 - - - - - - - - - - - - Covered T1,T2,T12
StIdle 0 0 0 - - - - - - - - - - - - Covered T1,T2,T3
StPrePack - - - 1 - - - - - - - - - - - Covered T5,T22,T46
StPrePack - - - 0 - - - - - - - - - - - Covered T14
StPackData - - - - 1 - - - - - - - - - - Covered T1,T2,T12
StPackData - - - - 0 1 - - - - - - - - - Covered T22,T111,T46
StPackData - - - - 0 0 1 - - - - - - - - Covered T1,T2,T12
StPackData - - - - 0 0 0 - - - - - - - - Covered T1,T2,T12
StPostPack - - - - - - - 1 - - - - - - - Covered T22,T111,T46
StPostPack - - - - - - - 0 - - - - - - - Covered T14
StCalcPlainEcc - - - - - - - - 1 - - - - - - Covered T1,T2,T12
StCalcPlainEcc - - - - - - - - 0 - - - - - - Covered T2,T57,T5
StCalcMask - - - - - - - - - 1 - - - - - Covered T2,T12,T8
StCalcMask - - - - - - - - - 0 - - - - - Covered T2,T12,T8
StScrambleData - - - - - - - - - - 1 - - - - Covered T2,T12,T8
StScrambleData - - - - - - - - - - 0 - - - - Covered T2,T12,T8
StCalcEcc - - - - - - - - - - - - - - - Covered T2,T12,T8
StReqFlash - - - - - - - - - - - 1 1 - - Covered T2,T12,T57
StReqFlash - - - - - - - - - - - 1 0 - - Covered T2,T5,T20
StReqFlash - - - - - - - - - - - 0 - 1 - Covered T2,T12,T57
StReqFlash - - - - - - - - - - - 0 - 0 - Covered T2,T5,T20
StWaitFlash - - - - - - - - - - - - - - 1 Covered T2,T12,T57
StWaitFlash - - - - - - - - - - - - - - 0 Covered T2,T12,T57
StDisabled - - - - - - - - - - - - - - - Covered T11,T12,T13
default - - - - - - - - - - - - - - - Covered T15,T16,T14


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,T12,T57
0 0 1 - - Covered T2,T12,T8
0 0 0 1 - Covered T2,T12,T8
0 0 0 0 1 Covered T1,T2,T12
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,T12,T57
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 385552961 1213657 0 0
PostPackRule_A 385552961 937 0 0
PrePackRule_A 385552961 638 0 0
WidthCheck_A 1045 1045 0 0
u_state_regs_A 385552961 384744294 0 0


OneDonePerTxn_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 385552961 1213657 0 0
T2 384684 873 0 0
T3 1934 0 0 0
T5 0 1 0 0
T6 150479 0 0 0
T7 168924 0 0 0
T11 3847 0 0 0
T12 385042 32768 0 0
T17 1554 0 0 0
T18 270103 0 0 0
T19 1186 0 0 0
T20 0 52 0 0
T22 0 4 0 0
T28 62138 0 0 0
T43 0 262 0 0
T57 0 12 0 0
T62 0 880 0 0
T63 0 2 0 0
T111 0 4 0 0

PostPackRule_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 385552961 937 0 0
T22 139943 2 0 0
T43 117028 0 0 0
T45 207989 0 0 0
T46 0 1 0 0
T62 399446 0 0 0
T63 21556 0 0 0
T89 0 21 0 0
T90 0 24 0 0
T95 0 16 0 0
T96 0 15 0 0
T102 156309 0 0 0
T111 6657 2 0 0
T154 28786 0 0 0
T155 2990 0 0 0
T232 0 20 0 0
T271 0 1 0 0
T272 0 1 0 0
T273 1449 0 0 0

PrePackRule_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 385552961 638 0 0
T5 137283 1 0 0
T20 162530 0 0 0
T21 2278 0 0 0
T22 139943 1 0 0
T43 117028 0 0 0
T46 0 3 0 0
T89 0 17 0 0
T90 0 20 0 0
T95 0 8 0 0
T96 0 16 0 0
T98 2374 0 0 0
T102 156309 0 0 0
T111 6657 0 0 0
T151 0 1 0 0
T154 28786 0 0 0
T155 2990 0 0 0
T232 0 12 0 0
T271 0 1 0 0

WidthCheck_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 1045 1045 0 0
T1 1 1 0 0
T2 1 1 0 0
T3 1 1 0 0
T6 1 1 0 0
T7 1 1 0 0
T11 1 1 0 0
T12 1 1 0 0
T17 1 1 0 0
T18 1 1 0 0
T19 1 1 0 0

u_state_regs_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 385552961 384744294 0 0
T1 1840 1679 0 0
T2 384684 384605 0 0
T3 1934 1797 0 0
T6 150479 150354 0 0
T7 168924 168779 0 0
T11 3847 3125 0 0
T12 385042 385025 0 0
T17 1554 1461 0 0
T18 270103 270038 0 0
T19 1186 1103 0 0

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