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


Instance's subtree :
SCORELINECONDTOGGLEFSMBRANCHASSERT
98.65 100.00 96.92 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
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
1CoveredT1,T2,T17

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

 LINE       126
 EXPRESSION (data_invalid_q | (pack_valid & ((~data_intg_ok))))
             -------1------   ----------------2---------------
-1--2-StatusTests
00CoveredT1,T2,T3
01CoveredT116,T7,T175
10CoveredT116,T7,T175

 LINE       126
 SUB-EXPRESSION (pack_valid & ((~data_intg_ok)))
                 -----1----   --------2--------
-1--2-StatusTests
01CoveredT1,T2,T3
10CoveredT1,T2,T17
11CoveredT116,T7,T175

 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
01CoveredT116,T7,T175
10CoveredT1,T2,T3

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

 LINE       148
 SUB-EXPRESSION (idx_sub_one == sel_i)
                -----------1----------
-1-StatusTests
0CoveredT1,T2,T17
1CoveredT17,T6,T38

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

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

 LINE       194
 EXPRESSION (req_i && ((|sel_i)))
             --1--    -----2----
-1--2-StatusTests
01CoveredT1,T2,T3
10CoveredT1,T2,T17
11CoveredT17,T18,T6

 LINE       204
 EXPRESSION (idx == align_next)
            ---------1---------
-1-StatusTests
0CoveredT13
1CoveredT17,T18,T6

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

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

 LINE       216
 EXPRESSION (req_i && last_i)
             --1--    ---2--
-1--2-StatusTests
01CoveredT1,T2,T17
10CoveredT1,T2,T17
11CoveredT17,T6,T38

 LINE       230
 EXPRESSION (idx == MaxIdx)
            -------1-------
-1-StatusTests
0CoveredT13
1CoveredT17,T6,T38

 LINE       237
 EXPRESSION (scramble_i ? StCalcMask : StReqFlash)
             -----1----
-1-StatusTests
0CoveredT2,T17,T4
1CoveredT1,T2,T35

 LINE       270
 EXPRESSION (ack ? StWaitFlash : StReqFlash)
             -1-
-1-StatusTests
0CoveredT1,T2,T17
1CoveredT1,T2,T17

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

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

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

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

 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,T17
110CoveredT1,T2,T17
111CoveredT1,T2,T17

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

 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 T1,T2,T35
StCalcMask 237 Covered T1,T2,T35
StCalcPlainEcc 215 Covered T1,T2,T17
StDisabled 193 Covered T10,T11,T12
StIdle 273 Covered T1,T2,T3
StPackData 197 Covered T1,T2,T17
StPostPack 218 Covered T17,T6,T38
StPrePack 195 Covered T17,T18,T6
StReqFlash 237 Covered T1,T2,T17
StScrambleData 244 Covered T1,T2,T35
StWaitFlash 270 Covered T1,T2,T17


transitionsLine No.CoveredTests
StCalcEcc->StReqFlash 257 Covered T1,T2,T35
StCalcMask->StScrambleData 244 Covered T1,T2,T35
StCalcPlainEcc->StCalcMask 237 Covered T1,T2,T35
StCalcPlainEcc->StReqFlash 237 Covered T2,T17,T4
StIdle->StDisabled 193 Covered T10,T11,T12
StIdle->StPackData 197 Covered T1,T2,T17
StIdle->StPrePack 195 Covered T17,T18,T6
StPackData->StCalcPlainEcc 215 Covered T1,T2,T17
StPackData->StPostPack 218 Covered T17,T6,T38
StPostPack->StCalcPlainEcc 231 Covered T17,T6,T38
StPrePack->StPackData 205 Covered T17,T18,T6
StReqFlash->StIdle 273 Covered T1,T2,T17
StReqFlash->StWaitFlash 270 Covered T1,T2,T17
StScrambleData->StCalcEcc 252 Covered T1,T2,T35
StWaitFlash->StIdle 280 Covered T1,T2,T17



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,T17
0 Covered T1,T2,T3


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

Branches:
-1-StatusTests
1 Covered T1,T2,T17
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 T1,T2,T17
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,T17
0 0 1 Covered T1,T2,T17
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 T10,T11,T12
StIdle 0 1 - - - - - - - - - - - - - Covered T17,T18,T6
StIdle 0 0 1 - - - - - - - - - - - - Covered T1,T2,T17
StIdle 0 0 0 - - - - - - - - - - - - Covered T1,T2,T3
StPrePack - - - 1 - - - - - - - - - - - Covered T17,T18,T6
StPrePack - - - 0 - - - - - - - - - - - Covered T13
StPackData - - - - 1 - - - - - - - - - - Covered T1,T2,T17
StPackData - - - - 0 1 - - - - - - - - - Covered T17,T6,T38
StPackData - - - - 0 0 1 - - - - - - - - Covered T1,T2,T17
StPackData - - - - 0 0 0 - - - - - - - - Covered T1,T2,T17
StPostPack - - - - - - - 1 - - - - - - - Covered T17,T6,T38
StPostPack - - - - - - - 0 - - - - - - - Covered T13
StCalcPlainEcc - - - - - - - - 1 - - - - - - Covered T1,T2,T35
StCalcPlainEcc - - - - - - - - 0 - - - - - - Covered T2,T17,T4
StCalcMask - - - - - - - - - 1 - - - - - Covered T1,T2,T35
StCalcMask - - - - - - - - - 0 - - - - - Covered T1,T2,T35
StScrambleData - - - - - - - - - - 1 - - - - Covered T1,T2,T35
StScrambleData - - - - - - - - - - 0 - - - - Covered T1,T2,T35
StCalcEcc - - - - - - - - - - - - - - - Covered T1,T2,T35
StReqFlash - - - - - - - - - - - 1 1 - - Covered T1,T2,T17
StReqFlash - - - - - - - - - - - 1 0 - - Covered T1,T2,T17
StReqFlash - - - - - - - - - - - 0 - 1 - Covered T1,T2,T17
StReqFlash - - - - - - - - - - - 0 - 0 - Covered T2,T17,T4
StWaitFlash - - - - - - - - - - - - - - 1 Covered T1,T2,T17
StWaitFlash - - - - - - - - - - - - - - 0 Covered T1,T2,T17
StDisabled - - - - - - - - - - - - - - - Covered T10,T11,T12
default - - - - - - - - - - - - - - - Covered T14,T15,T16


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 T1,T2,T17
0 0 1 - - Covered T1,T2,T35
0 0 0 1 - Covered T1,T2,T35
0 0 0 0 1 Covered T1,T2,T17
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 T1,T2,T17
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 764443562 2437465 0 0
PostPackRule_A 764443562 1923 0 0
PrePackRule_A 764443562 1364 0 0
WidthCheck_A 2062 2062 0 0
u_state_regs_A 764443562 762857800 0 0


OneDonePerTxn_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 764443562 2437465 0 0
T1 95245 70 0 0
T2 418194 100 0 0
T3 1130222 0 0 0
T4 419736 100 0 0
T5 135586 0 0 0
T6 10648 8 0 0
T10 7632 0 0 0
T17 152394 25 0 0
T18 49036 2 0 0
T19 419800 100 0 0
T24 0 2 0 0
T35 93497 436 0 0
T38 0 10 0 0
T39 0 1 0 0
T40 0 1 0 0

PostPackRule_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 764443562 1923 0 0
T4 419736 0 0 0
T6 10648 5 0 0
T11 7098 0 0 0
T17 152394 10 0 0
T18 49036 0 0 0
T19 419800 0 0 0
T20 1781624 0 0 0
T30 260926 0 0 0
T35 186994 0 0 0
T38 0 7 0 0
T39 0 1 0 0
T53 2484 0 0 0
T58 0 3 0 0
T65 0 3 0 0
T66 0 7 0 0
T74 0 24 0 0
T92 0 8 0 0
T97 0 10 0 0
T177 0 41 0 0
T211 0 2 0 0

PrePackRule_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 764443562 1364 0 0
T4 419736 0 0 0
T6 10648 5 0 0
T11 7098 0 0 0
T17 152394 11 0 0
T18 49036 1 0 0
T19 419800 0 0 0
T20 1781624 0 0 0
T30 260926 0 0 0
T35 186994 0 0 0
T38 0 4 0 0
T39 0 1 0 0
T53 2484 0 0 0
T58 0 2 0 0
T65 0 3 0 0
T66 0 6 0 0
T74 0 12 0 0
T92 0 8 0 0
T97 0 6 0 0
T177 0 25 0 0
T211 0 2 0 0

WidthCheck_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 2062 2062 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
T10 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 764443562 762857800 0 0
T1 190490 183222 0 0
T2 418194 418060 0 0
T3 1130222 1129922 0 0
T4 419736 419626 0 0
T5 135586 135316 0 0
T6 10648 10488 0 0
T10 7632 6362 0 0
T17 152394 152202 0 0
T18 49036 46390 0 0
T19 419800 419664 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
1CoveredT1,T2,T17

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

 LINE       126
 EXPRESSION (data_invalid_q | (pack_valid & ((~data_intg_ok))))
             -------1------   ----------------2---------------
-1--2-StatusTests
00CoveredT1,T2,T3
01CoveredT116,T175,T237
10CoveredT116,T175,T237

 LINE       126
 SUB-EXPRESSION (pack_valid & ((~data_intg_ok)))
                 -----1----   --------2--------
-1--2-StatusTests
01CoveredT1,T2,T3
10CoveredT1,T2,T17
11CoveredT116,T175,T237

 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
01CoveredT116,T175,T237
10CoveredT1,T2,T3

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

 LINE       148
 SUB-EXPRESSION (idx_sub_one == sel_i)
                -----------1----------
-1-StatusTests
0CoveredT1,T2,T17
1CoveredT17,T6,T38

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

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

 LINE       194
 EXPRESSION (req_i && ((|sel_i)))
             --1--    -----2----
-1--2-StatusTests
01CoveredT1,T2,T3
10CoveredT1,T2,T17
11CoveredT17,T18,T6

 LINE       204
 EXPRESSION (idx == align_next)
            ---------1---------
-1-StatusTests
0CoveredT13
1CoveredT17,T18,T6

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

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

 LINE       216
 EXPRESSION (req_i && last_i)
             --1--    ---2--
-1--2-StatusTests
01CoveredT1,T2,T17
10CoveredT1,T2,T17
11CoveredT17,T6,T38

 LINE       230
 EXPRESSION (idx == MaxIdx)
            -------1-------
-1-StatusTests
0CoveredT13
1CoveredT17,T6,T38

 LINE       237
 EXPRESSION (scramble_i ? StCalcMask : StReqFlash)
             -----1----
-1-StatusTests
0CoveredT2,T17,T4
1CoveredT1,T2,T35

 LINE       270
 EXPRESSION (ack ? StWaitFlash : StReqFlash)
             -1-
-1-StatusTests
0CoveredT1,T2,T17
1CoveredT1,T2,T17

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

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

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

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

 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,T17
110CoveredT1,T2,T17
111CoveredT1,T2,T17

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

 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 T1,T2,T35
StCalcMask 237 Covered T1,T2,T35
StCalcPlainEcc 215 Covered T1,T2,T17
StDisabled 193 Covered T10,T11,T12
StIdle 273 Covered T1,T2,T3
StPackData 197 Covered T1,T2,T17
StPostPack 218 Covered T17,T6,T38
StPrePack 195 Covered T17,T18,T6
StReqFlash 237 Covered T1,T2,T17
StScrambleData 244 Covered T1,T2,T35
StWaitFlash 270 Covered T1,T2,T17


transitionsLine No.CoveredTests
StCalcEcc->StReqFlash 257 Covered T1,T2,T35
StCalcMask->StScrambleData 244 Covered T1,T2,T35
StCalcPlainEcc->StCalcMask 237 Covered T1,T2,T35
StCalcPlainEcc->StReqFlash 237 Covered T2,T17,T4
StIdle->StDisabled 193 Covered T10,T11,T12
StIdle->StPackData 197 Covered T1,T2,T17
StIdle->StPrePack 195 Covered T17,T18,T6
StPackData->StCalcPlainEcc 215 Covered T1,T2,T17
StPackData->StPostPack 218 Covered T17,T6,T38
StPostPack->StCalcPlainEcc 231 Covered T17,T6,T38
StPrePack->StPackData 205 Covered T17,T18,T6
StReqFlash->StIdle 273 Covered T1,T2,T17
StReqFlash->StWaitFlash 270 Covered T1,T2,T17
StScrambleData->StCalcEcc 252 Covered T1,T2,T35
StWaitFlash->StIdle 280 Covered T1,T2,T17



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 T1,T2,T17
0 Covered T1,T2,T3


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

Branches:
-1-StatusTests
1 Covered T1,T2,T17
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 T1,T2,T17
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,T17
0 0 1 Covered T1,T2,T17
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 T10,T11,T12
StIdle 0 1 - - - - - - - - - - - - - Covered T17,T18,T6
StIdle 0 0 1 - - - - - - - - - - - - Covered T1,T2,T17
StIdle 0 0 0 - - - - - - - - - - - - Covered T1,T2,T3
StPrePack - - - 1 - - - - - - - - - - - Covered T17,T18,T6
StPrePack - - - 0 - - - - - - - - - - - Covered T13
StPackData - - - - 1 - - - - - - - - - - Covered T1,T2,T17
StPackData - - - - 0 1 - - - - - - - - - Covered T17,T6,T38
StPackData - - - - 0 0 1 - - - - - - - - Covered T1,T2,T17
StPackData - - - - 0 0 0 - - - - - - - - Covered T1,T2,T17
StPostPack - - - - - - - 1 - - - - - - - Covered T17,T6,T38
StPostPack - - - - - - - 0 - - - - - - - Covered T13
StCalcPlainEcc - - - - - - - - 1 - - - - - - Covered T1,T2,T35
StCalcPlainEcc - - - - - - - - 0 - - - - - - Covered T2,T17,T4
StCalcMask - - - - - - - - - 1 - - - - - Covered T1,T2,T35
StCalcMask - - - - - - - - - 0 - - - - - Covered T1,T2,T35
StScrambleData - - - - - - - - - - 1 - - - - Covered T1,T2,T35
StScrambleData - - - - - - - - - - 0 - - - - Covered T1,T2,T35
StCalcEcc - - - - - - - - - - - - - - - Covered T1,T2,T35
StReqFlash - - - - - - - - - - - 1 1 - - Covered T1,T2,T17
StReqFlash - - - - - - - - - - - 1 0 - - Covered T1,T2,T17
StReqFlash - - - - - - - - - - - 0 - 1 - Covered T1,T2,T17
StReqFlash - - - - - - - - - - - 0 - 0 - Covered T2,T17,T4
StWaitFlash - - - - - - - - - - - - - - 1 Covered T1,T2,T17
StWaitFlash - - - - - - - - - - - - - - 0 Covered T1,T2,T17
StDisabled - - - - - - - - - - - - - - - Covered T10,T11,T12
default - - - - - - - - - - - - - - - Covered T14,T15,T16


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 T1,T2,T17
0 0 1 - - Covered T1,T2,T35
0 0 0 1 - Covered T1,T2,T35
0 0 0 0 1 Covered T1,T2,T17
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 T1,T2,T17
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 382221781 1238350 0 0
PostPackRule_A 382221781 959 0 0
PrePackRule_A 382221781 664 0 0
WidthCheck_A 1031 1031 0 0
u_state_regs_A 382221781 381428900 0 0


OneDonePerTxn_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 382221781 1238350 0 0
T1 95245 70 0 0
T2 209097 50 0 0
T3 565111 0 0 0
T4 209868 46 0 0
T5 67793 0 0 0
T6 5324 4 0 0
T10 3816 0 0 0
T17 76197 9 0 0
T18 24518 1 0 0
T19 209900 54 0 0
T35 0 268 0 0
T38 0 4 0 0
T39 0 1 0 0

PostPackRule_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 382221781 959 0 0
T4 209868 0 0 0
T6 5324 2 0 0
T11 3549 0 0 0
T17 76197 4 0 0
T18 24518 0 0 0
T19 209900 0 0 0
T20 890812 0 0 0
T30 130463 0 0 0
T35 93497 0 0 0
T38 0 3 0 0
T39 0 1 0 0
T53 1242 0 0 0
T65 0 2 0 0
T66 0 2 0 0
T74 0 4 0 0
T92 0 1 0 0
T177 0 21 0 0
T211 0 2 0 0

PrePackRule_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 382221781 664 0 0
T4 209868 0 0 0
T6 5324 3 0 0
T11 3549 0 0 0
T17 76197 5 0 0
T18 24518 1 0 0
T19 209900 0 0 0
T20 890812 0 0 0
T30 130463 0 0 0
T35 93497 0 0 0
T38 0 4 0 0
T53 1242 0 0 0
T65 0 2 0 0
T66 0 2 0 0
T74 0 1 0 0
T92 0 2 0 0
T177 0 10 0 0
T211 0 2 0 0

WidthCheck_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 1031 1031 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
T10 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 382221781 381428900 0 0
T1 95245 91611 0 0
T2 209097 209030 0 0
T3 565111 564961 0 0
T4 209868 209813 0 0
T5 67793 67658 0 0
T6 5324 5244 0 0
T10 3816 3181 0 0
T17 76197 76101 0 0
T18 24518 23195 0 0
T19 209900 209832 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
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,T17,T4

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

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

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

 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
01CoveredT7,T9,T238
10CoveredT2,T3,T5

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

 LINE       148
 SUB-EXPRESSION (idx_sub_one == sel_i)
                -----------1----------
-1-StatusTests
0CoveredT2,T17,T4
1CoveredT17,T6,T38

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

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

 LINE       194
 EXPRESSION (req_i && ((|sel_i)))
             --1--    -----2----
-1--2-StatusTests
01CoveredT1,T2,T3
10CoveredT2,T17,T4
11CoveredT17,T6,T39

 LINE       204
 EXPRESSION (idx == align_next)
            ---------1---------
-1-StatusTests
0CoveredT13
1CoveredT17,T6,T39

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

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

 LINE       216
 EXPRESSION (req_i && last_i)
             --1--    ---2--
-1--2-StatusTests
01CoveredT2,T17,T4
10CoveredT2,T17,T4
11CoveredT17,T6,T38

 LINE       230
 EXPRESSION (idx == MaxIdx)
            -------1-------
-1-StatusTests
0CoveredT13
1CoveredT17,T6,T38

 LINE       237
 EXPRESSION (scramble_i ? StCalcMask : StReqFlash)
             -----1----
-1-StatusTests
0CoveredT2,T17,T4
1CoveredT35,T24,T210

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

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

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

 LINE       304
 EXPRESSION (calc_req_o && calc_ack_i)
             -----1----    -----2----
-1--2-StatusTests
01CoveredT5,T35,T21
10CoveredT35,T24,T210
11CoveredT35,T24,T210

 LINE       307
 EXPRESSION (scramble_req_o && scramble_ack_i)
             -------1------    -------2------
-1--2-StatusTests
01CoveredT5,T35,T21
10CoveredT35,T24,T210
11CoveredT35,T24,T210

 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,T17,T4
110CoveredT2,T17,T4
111CoveredT2,T17,T4

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

 LINE       366
 SUB-EXPRESSION (done ? ((done_cnt_q + 16'b1)) : done_cnt_q)
                 --1-
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT2,T3,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 T35,T24,T210
StCalcMask 237 Covered T35,T24,T210
StCalcPlainEcc 215 Covered T2,T17,T4
StDisabled 193 Covered T10,T11,T12
StIdle 273 Covered T1,T2,T3
StPackData 197 Covered T2,T17,T4
StPostPack 218 Covered T17,T6,T38
StPrePack 195 Covered T17,T6,T39
StReqFlash 237 Covered T2,T17,T4
StScrambleData 244 Covered T35,T24,T210
StWaitFlash 270 Covered T2,T17,T4


transitionsLine No.CoveredTests
StCalcEcc->StReqFlash 257 Covered T35,T24,T210
StCalcMask->StScrambleData 244 Covered T35,T24,T210
StCalcPlainEcc->StCalcMask 237 Covered T35,T24,T210
StCalcPlainEcc->StReqFlash 237 Covered T2,T17,T4
StIdle->StDisabled 193 Covered T10,T11,T12
StIdle->StPackData 197 Covered T2,T17,T4
StIdle->StPrePack 195 Covered T17,T6,T39
StPackData->StCalcPlainEcc 215 Covered T2,T17,T4
StPackData->StPostPack 218 Covered T17,T6,T38
StPostPack->StCalcPlainEcc 231 Covered T17,T6,T38
StPrePack->StPackData 205 Covered T17,T6,T39
StReqFlash->StIdle 273 Covered T2,T17,T4
StReqFlash->StWaitFlash 270 Covered T2,T17,T4
StScrambleData->StCalcEcc 252 Covered T35,T24,T210
StWaitFlash->StIdle 280 Covered T2,T17,T4



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 T2,T17,T4
0 Covered T1,T2,T3


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

Branches:
-1-StatusTests
1 Covered T2,T17,T4
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,T17,T4
0 1 Covered T2,T3,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 T2,T17,T4
0 0 1 Covered T2,T17,T4
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 T10,T11,T12
StIdle 0 1 - - - - - - - - - - - - - Covered T17,T6,T39
StIdle 0 0 1 - - - - - - - - - - - - Covered T2,T17,T4
StIdle 0 0 0 - - - - - - - - - - - - Covered T1,T2,T3
StPrePack - - - 1 - - - - - - - - - - - Covered T17,T6,T39
StPrePack - - - 0 - - - - - - - - - - - Covered T13
StPackData - - - - 1 - - - - - - - - - - Covered T2,T17,T4
StPackData - - - - 0 1 - - - - - - - - - Covered T17,T6,T38
StPackData - - - - 0 0 1 - - - - - - - - Covered T2,T17,T4
StPackData - - - - 0 0 0 - - - - - - - - Covered T2,T17,T4
StPostPack - - - - - - - 1 - - - - - - - Covered T17,T6,T38
StPostPack - - - - - - - 0 - - - - - - - Covered T13
StCalcPlainEcc - - - - - - - - 1 - - - - - - Covered T35,T24,T210
StCalcPlainEcc - - - - - - - - 0 - - - - - - Covered T2,T17,T4
StCalcMask - - - - - - - - - 1 - - - - - Covered T35,T24,T210
StCalcMask - - - - - - - - - 0 - - - - - Covered T35,T24,T210
StScrambleData - - - - - - - - - - 1 - - - - Covered T35,T24,T210
StScrambleData - - - - - - - - - - 0 - - - - Covered T35,T24,T210
StCalcEcc - - - - - - - - - - - - - - - Covered T35,T24,T210
StReqFlash - - - - - - - - - - - 1 1 - - Covered T2,T17,T4
StReqFlash - - - - - - - - - - - 1 0 - - Covered T2,T17,T4
StReqFlash - - - - - - - - - - - 0 - 1 - Covered T2,T17,T4
StReqFlash - - - - - - - - - - - 0 - 0 - Covered T2,T17,T4
StWaitFlash - - - - - - - - - - - - - - 1 Covered T2,T17,T4
StWaitFlash - - - - - - - - - - - - - - 0 Covered T2,T17,T4
StDisabled - - - - - - - - - - - - - - - Covered T10,T11,T12
default - - - - - - - - - - - - - - - Covered T14,T15,T16


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,T17,T4
0 0 1 - - Covered T35,T24,T210
0 0 0 1 - Covered T35,T24,T210
0 0 0 0 1 Covered T2,T17,T4
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,T17,T4
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 382221781 1199115 0 0
PostPackRule_A 382221781 964 0 0
PrePackRule_A 382221781 700 0 0
WidthCheck_A 1031 1031 0 0
u_state_regs_A 382221781 381428900 0 0


OneDonePerTxn_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 382221781 1199115 0 0
T2 209097 50 0 0
T3 565111 0 0 0
T4 209868 54 0 0
T5 67793 0 0 0
T6 5324 4 0 0
T10 3816 0 0 0
T17 76197 16 0 0
T18 24518 1 0 0
T19 209900 46 0 0
T24 0 2 0 0
T35 93497 168 0 0
T38 0 6 0 0
T40 0 1 0 0

PostPackRule_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 382221781 964 0 0
T4 209868 0 0 0
T6 5324 3 0 0
T11 3549 0 0 0
T17 76197 6 0 0
T18 24518 0 0 0
T19 209900 0 0 0
T20 890812 0 0 0
T30 130463 0 0 0
T35 93497 0 0 0
T38 0 4 0 0
T53 1242 0 0 0
T58 0 3 0 0
T65 0 1 0 0
T66 0 5 0 0
T74 0 20 0 0
T92 0 7 0 0
T97 0 10 0 0
T177 0 20 0 0

PrePackRule_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 382221781 700 0 0
T4 209868 0 0 0
T6 5324 2 0 0
T11 3549 0 0 0
T17 76197 6 0 0
T18 24518 0 0 0
T19 209900 0 0 0
T20 890812 0 0 0
T30 130463 0 0 0
T35 93497 0 0 0
T39 0 1 0 0
T53 1242 0 0 0
T58 0 2 0 0
T65 0 1 0 0
T66 0 4 0 0
T74 0 11 0 0
T92 0 6 0 0
T97 0 6 0 0
T177 0 15 0 0

WidthCheck_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 1031 1031 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
T10 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 382221781 381428900 0 0
T1 95245 91611 0 0
T2 209097 209030 0 0
T3 565111 564961 0 0
T4 209868 209813 0 0
T5 67793 67658 0 0
T6 5324 5244 0 0
T10 3816 3181 0 0
T17 76197 76101 0 0
T18 24518 23195 0 0
T19 209900 209832 0 0

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