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.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.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,T4,T5

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

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

 LINE       126
 SUB-EXPRESSION (pack_valid & ((~data_intg_ok)))
                 -----1----   --------2--------
-1--2-StatusTests
01CoveredT1,T2,T3
10CoveredT1,T4,T5
11CoveredT9,T10,T180

 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,T180
10CoveredT1,T2,T3

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

 LINE       148
 SUB-EXPRESSION (idx_sub_one == sel_i)
                -----------1----------
-1-StatusTests
0CoveredT1,T4,T5
1CoveredT1,T22,T23

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

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

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

 LINE       204
 EXPRESSION (idx == align_next)
            ---------1---------
-1-StatusTests
0CoveredT15
1CoveredT1,T22,T23

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

 LINE       213
 SUB-EXPRESSION (idx == MaxIdx)
                -------1-------
-1-StatusTests
0CoveredT1,T4,T5
1CoveredT1,T4,T5

 LINE       216
 EXPRESSION (req_i && last_i)
             --1--    ---2--
-1--2-StatusTests
01CoveredT1,T4,T5
10CoveredT1,T4,T5
11CoveredT1,T22,T23

 LINE       230
 EXPRESSION (idx == MaxIdx)
            -------1-------
-1-StatusTests
0CoveredT15
1CoveredT1,T22,T23

 LINE       237
 EXPRESSION (scramble_i ? StCalcMask : StReqFlash)
             -----1----
-1-StatusTests
0CoveredT1,T4,T21
1CoveredT4,T5,T28

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

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

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

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

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

 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,T4,T5
110CoveredT1,T4,T5
111CoveredT1,T4,T5

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

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


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



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


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

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


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,T4,T5
0 0 1 - - Covered T4,T5,T28
0 0 0 1 - Covered T4,T5,T28
0 0 0 0 1 Covered T1,T4,T5
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,T4,T5
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 763076802 2433700 0 0
PostPackRule_A 763076802 1912 0 0
PrePackRule_A 763076802 1372 0 0
WidthCheck_A 2080 2080 0 0
u_state_regs_A 763076802 761494308 0 0


OneDonePerTxn_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 763076802 2433700 0 0
T1 154532 59 0 0
T2 13730 0 0 0
T3 253220 0 0 0
T4 423516 1386 0 0
T5 225320 32 0 0
T6 337142 0 0 0
T7 247988 0 0 0
T14 0 32777 0 0
T20 2782 0 0 0
T21 437502 1561 0 0
T22 159898 38 0 0
T23 0 6 0 0
T25 0 298 0 0
T28 0 2 0 0
T44 0 211 0 0
T47 0 48 0 0
T63 0 1334 0 0
T71 0 35 0 0

PostPackRule_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 763076802 1912 0 0
T1 154532 38 0 0
T2 13730 0 0 0
T3 253220 0 0 0
T4 423516 0 0 0
T5 225320 0 0 0
T6 337142 0 0 0
T7 247988 0 0 0
T14 0 16 0 0
T20 2782 0 0 0
T21 437502 0 0 0
T22 159898 23 0 0
T23 0 5 0 0
T71 0 36 0 0
T72 0 8 0 0
T133 0 16 0 0
T141 0 11 0 0
T226 0 1 0 0
T227 0 2 0 0
T228 0 2 0 0
T229 0 1 0 0
T230 0 2 0 0

PrePackRule_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 763076802 1372 0 0
T1 154532 20 0 0
T2 13730 0 0 0
T3 253220 0 0 0
T4 423516 0 0 0
T5 225320 0 0 0
T6 337142 0 0 0
T7 247988 0 0 0
T14 0 8 0 0
T20 2782 0 0 0
T21 437502 0 0 0
T22 159898 17 0 0
T23 0 2 0 0
T71 0 22 0 0
T72 0 5 0 0
T133 0 13 0 0
T141 0 19 0 0
T227 0 1 0 0
T228 0 2 0 0
T229 0 1 0 0
T230 0 2 0 0
T231 0 1 0 0

WidthCheck_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 2080 2080 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
T20 2 2 0 0
T21 2 2 0 0
T22 2 2 0 0

u_state_regs_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 763076802 761494308 0 0
T1 154532 154398 0 0
T2 13730 13564 0 0
T3 253220 253048 0 0
T4 423516 423320 0 0
T5 225320 225188 0 0
T6 337142 336790 0 0
T7 247988 247966 0 0
T20 2782 2628 0 0
T21 437502 437484 0 0
T22 159898 159724 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,T4,T5

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

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

 LINE       126
 SUB-EXPRESSION (pack_valid & ((~data_intg_ok)))
                 -----1----   --------2--------
-1--2-StatusTests
01CoveredT1,T2,T3
10CoveredT1,T4,T5
11CoveredT9,T10,T180

 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,T180
10CoveredT1,T2,T3

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

 LINE       148
 SUB-EXPRESSION (idx_sub_one == sel_i)
                -----------1----------
-1-StatusTests
0CoveredT1,T4,T5
1CoveredT1,T22,T23

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

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

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

 LINE       204
 EXPRESSION (idx == align_next)
            ---------1---------
-1-StatusTests
0CoveredT15
1CoveredT1,T22,T14

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

 LINE       213
 SUB-EXPRESSION (idx == MaxIdx)
                -------1-------
-1-StatusTests
0CoveredT1,T4,T5
1CoveredT1,T4,T5

 LINE       216
 EXPRESSION (req_i && last_i)
             --1--    ---2--
-1--2-StatusTests
01CoveredT1,T4,T5
10CoveredT1,T4,T5
11CoveredT1,T22,T23

 LINE       230
 EXPRESSION (idx == MaxIdx)
            -------1-------
-1-StatusTests
0CoveredT15
1CoveredT1,T22,T23

 LINE       237
 EXPRESSION (scramble_i ? StCalcMask : StReqFlash)
             -----1----
-1-StatusTests
0CoveredT1,T4,T21
1CoveredT4,T5,T28

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

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

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

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

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

 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,T4,T5
110CoveredT1,T4,T5
111CoveredT1,T4,T5

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

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


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



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


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

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


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,T4,T5
0 0 1 - - Covered T4,T5,T28
0 0 0 1 - Covered T4,T5,T28
0 0 0 0 1 Covered T1,T4,T5
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,T4,T5
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 381538401 1246452 0 0
PostPackRule_A 381538401 940 0 0
PrePackRule_A 381538401 677 0 0
WidthCheck_A 1040 1040 0 0
u_state_regs_A 381538401 380747154 0 0


OneDonePerTxn_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 381538401 1246452 0 0
T1 77266 36 0 0
T2 6865 0 0 0
T3 126610 0 0 0
T4 211758 785 0 0
T5 112660 32 0 0
T6 168571 0 0 0
T7 123994 0 0 0
T20 1391 0 0 0
T21 218751 914 0 0
T22 79949 15 0 0
T23 0 2 0 0
T25 0 125 0 0
T28 0 2 0 0
T47 0 48 0 0
T63 0 903 0 0

PostPackRule_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 381538401 940 0 0
T1 77266 25 0 0
T2 6865 0 0 0
T3 126610 0 0 0
T4 211758 0 0 0
T5 112660 0 0 0
T6 168571 0 0 0
T7 123994 0 0 0
T14 0 12 0 0
T20 1391 0 0 0
T21 218751 0 0 0
T22 79949 7 0 0
T23 0 2 0 0
T71 0 17 0 0
T72 0 4 0 0
T133 0 6 0 0
T226 0 1 0 0
T227 0 2 0 0
T228 0 2 0 0

PrePackRule_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 381538401 677 0 0
T1 77266 12 0 0
T2 6865 0 0 0
T3 126610 0 0 0
T4 211758 0 0 0
T5 112660 0 0 0
T6 168571 0 0 0
T7 123994 0 0 0
T14 0 4 0 0
T20 1391 0 0 0
T21 218751 0 0 0
T22 79949 7 0 0
T71 0 12 0 0
T72 0 2 0 0
T133 0 5 0 0
T141 0 8 0 0
T228 0 2 0 0
T229 0 1 0 0
T231 0 1 0 0

WidthCheck_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 1040 1040 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
T20 1 1 0 0
T21 1 1 0 0
T22 1 1 0 0

u_state_regs_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 381538401 380747154 0 0
T1 77266 77199 0 0
T2 6865 6782 0 0
T3 126610 126524 0 0
T4 211758 211660 0 0
T5 112660 112594 0 0
T6 168571 168395 0 0
T7 123994 123983 0 0
T20 1391 1314 0 0
T21 218751 218742 0 0
T22 79949 79862 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
1CoveredT1,T4,T21

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

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

 LINE       126
 SUB-EXPRESSION (pack_valid & ((~data_intg_ok)))
                 -----1----   --------2--------
-1--2-StatusTests
01CoveredT1,T2,T3
10CoveredT1,T4,T21
11CoveredT9,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
01CoveredT9,T10
10CoveredT1,T4,T21

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

 LINE       148
 SUB-EXPRESSION (idx_sub_one == sel_i)
                -----------1----------
-1-StatusTests
0CoveredT1,T4,T21
1CoveredT1,T22,T23

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

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

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

 LINE       204
 EXPRESSION (idx == align_next)
            ---------1---------
-1-StatusTests
0CoveredT15
1CoveredT1,T22,T23

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

 LINE       213
 SUB-EXPRESSION (idx == MaxIdx)
                -------1-------
-1-StatusTests
0CoveredT1,T4,T21
1CoveredT1,T4,T21

 LINE       216
 EXPRESSION (req_i && last_i)
             --1--    ---2--
-1--2-StatusTests
01CoveredT1,T4,T21
10CoveredT1,T4,T21
11CoveredT1,T22,T23

 LINE       230
 EXPRESSION (idx == MaxIdx)
            -------1-------
-1-StatusTests
0CoveredT15
1CoveredT1,T22,T23

 LINE       237
 EXPRESSION (scramble_i ? StCalcMask : StReqFlash)
             -----1----
-1-StatusTests
0CoveredT1,T21,T22
1CoveredT4,T25,T14

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

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

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

 LINE       304
 EXPRESSION (calc_req_o && calc_ack_i)
             -----1----    -----2----
-1--2-StatusTests
01CoveredT6,T8,T25
10CoveredT4,T25,T14
11CoveredT4,T25,T14

 LINE       307
 EXPRESSION (scramble_req_o && scramble_ack_i)
             -------1------    -------2------
-1--2-StatusTests
01CoveredT6,T8,T25
10CoveredT4,T25,T14
11CoveredT4,T25,T14

 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,T4,T21
110CoveredT1,T4,T21
111CoveredT1,T4,T21

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

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

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


transitionsLine No.CoveredTests
StCalcEcc->StReqFlash 257 Covered T4,T25,T44
StCalcMask->StScrambleData 244 Covered T4,T25,T44
StCalcPlainEcc->StCalcMask 237 Covered T4,T25,T200
StCalcPlainEcc->StReqFlash 237 Covered T1,T21,T22
StIdle->StDisabled 193 Covered T12,T13,T14
StIdle->StPackData 197 Covered T1,T4,T21
StIdle->StPrePack 195 Covered T1,T22,T23
StPackData->StCalcPlainEcc 215 Covered T1,T4,T21
StPackData->StPostPack 218 Covered T1,T22,T23
StPostPack->StCalcPlainEcc 231 Covered T1,T22,T23
StPrePack->StPackData 205 Covered T1,T22,T23
StReqFlash->StIdle 273 Covered T1,T4,T21
StReqFlash->StWaitFlash 270 Covered T1,T4,T21
StScrambleData->StCalcEcc 252 Covered T4,T25,T44
StWaitFlash->StIdle 280 Covered T1,T4,T21



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


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

Branches:
-1-StatusTests
1 Covered T1,T4,T21
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,T4,T21
0 1 Covered T6,T7,T22
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,T4,T21
0 0 1 Covered T1,T4,T21
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 T1,T22,T23
StIdle 0 0 1 - - - - - - - - - - - - Covered T1,T4,T21
StIdle 0 0 0 - - - - - - - - - - - - Covered T1,T2,T3
StPrePack - - - 1 - - - - - - - - - - - Covered T1,T22,T23
StPrePack - - - 0 - - - - - - - - - - - Covered T15
StPackData - - - - 1 - - - - - - - - - - Covered T1,T4,T21
StPackData - - - - 0 1 - - - - - - - - - Covered T1,T22,T23
StPackData - - - - 0 0 1 - - - - - - - - Covered T1,T4,T21
StPackData - - - - 0 0 0 - - - - - - - - Covered T1,T4,T21
StPostPack - - - - - - - 1 - - - - - - - Covered T1,T22,T23
StPostPack - - - - - - - 0 - - - - - - - Covered T15
StCalcPlainEcc - - - - - - - - 1 - - - - - - Covered T4,T25,T14
StCalcPlainEcc - - - - - - - - 0 - - - - - - Covered T1,T21,T22
StCalcMask - - - - - - - - - 1 - - - - - Covered T4,T25,T14
StCalcMask - - - - - - - - - 0 - - - - - Covered T4,T25,T14
StScrambleData - - - - - - - - - - 1 - - - - Covered T4,T25,T14
StScrambleData - - - - - - - - - - 0 - - - - Covered T4,T25,T14
StCalcEcc - - - - - - - - - - - - - - - Covered T4,T25,T14
StReqFlash - - - - - - - - - - - 1 1 - - Covered T1,T4,T21
StReqFlash - - - - - - - - - - - 1 0 - - Covered T1,T4,T21
StReqFlash - - - - - - - - - - - 0 - 1 - Covered T1,T4,T21
StReqFlash - - - - - - - - - - - 0 - 0 - Covered T1,T4,T21
StWaitFlash - - - - - - - - - - - - - - 1 Covered T1,T4,T21
StWaitFlash - - - - - - - - - - - - - - 0 Covered T1,T4,T21
StDisabled - - - - - - - - - - - - - - - Covered T12,T13,T14
default - - - - - - - - - - - - - - - Covered T17,T18,T19


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,T4,T21
0 0 1 - - Covered T4,T25,T14
0 0 0 1 - Covered T4,T25,T14
0 0 0 0 1 Covered T1,T4,T21
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,T4,T21
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 381538401 1187248 0 0
PostPackRule_A 381538401 972 0 0
PrePackRule_A 381538401 695 0 0
WidthCheck_A 1040 1040 0 0
u_state_regs_A 381538401 380747154 0 0


OneDonePerTxn_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 381538401 1187248 0 0
T1 77266 23 0 0
T2 6865 0 0 0
T3 126610 0 0 0
T4 211758 601 0 0
T5 112660 0 0 0
T6 168571 0 0 0
T7 123994 0 0 0
T14 0 32777 0 0
T20 1391 0 0 0
T21 218751 647 0 0
T22 79949 23 0 0
T23 0 4 0 0
T25 0 173 0 0
T44 0 211 0 0
T63 0 431 0 0
T71 0 35 0 0

PostPackRule_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 381538401 972 0 0
T1 77266 13 0 0
T2 6865 0 0 0
T3 126610 0 0 0
T4 211758 0 0 0
T5 112660 0 0 0
T6 168571 0 0 0
T7 123994 0 0 0
T14 0 4 0 0
T20 1391 0 0 0
T21 218751 0 0 0
T22 79949 16 0 0
T23 0 3 0 0
T71 0 19 0 0
T72 0 4 0 0
T133 0 10 0 0
T141 0 11 0 0
T229 0 1 0 0
T230 0 2 0 0

PrePackRule_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 381538401 695 0 0
T1 77266 8 0 0
T2 6865 0 0 0
T3 126610 0 0 0
T4 211758 0 0 0
T5 112660 0 0 0
T6 168571 0 0 0
T7 123994 0 0 0
T14 0 4 0 0
T20 1391 0 0 0
T21 218751 0 0 0
T22 79949 10 0 0
T23 0 2 0 0
T71 0 10 0 0
T72 0 3 0 0
T133 0 8 0 0
T141 0 11 0 0
T227 0 1 0 0
T230 0 2 0 0

WidthCheck_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 1040 1040 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
T20 1 1 0 0
T21 1 1 0 0
T22 1 1 0 0

u_state_regs_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 381538401 380747154 0 0
T1 77266 77199 0 0
T2 6865 6782 0 0
T3 126610 126524 0 0
T4 211758 211660 0 0
T5 112660 112594 0 0
T6 168571 168395 0 0
T7 123994 123983 0 0
T20 1391 1314 0 0
T21 218751 218742 0 0
T22 79949 79862 0 0

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