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



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

Instance :
SCORELINECONDTOGGLEFSMBRANCHASSERT
99.37 100.00 96.83 100.00 100.00 100.00


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


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


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



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

Instance :
SCORELINECONDTOGGLEFSMBRANCHASSERT
99.68 100.00 98.41 100.00 100.00 100.00


Instance's subtree :
SCORELINECONDTOGGLEFSMBRANCHASSERT
99.74 100.00 98.41 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

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


Cond Coverage for Module : flash_phy_prog
TotalCoveredPercent
Conditions636298.41
Logical636298.41
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
1CoveredT12,T5,T7

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

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

 LINE       126
 SUB-EXPRESSION (pack_valid & ((~data_intg_ok)))
                 -----1----   --------2--------
-1--2-StatusTests
01CoveredT1,T2,T3
10CoveredT12,T5,T7
11CoveredT166,T10,T11

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

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

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

 LINE       148
 SUB-EXPRESSION (idx_sub_one == sel_i)
                -----------1----------
-1-StatusTests
0CoveredT12,T5,T7
1CoveredT5,T7,T24

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

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

 LINE       194
 EXPRESSION (req_i && ((|sel_i)))
             --1--    -----2----
-1--2-StatusTests
01CoveredT1,T2,T3
10CoveredT12,T5,T7
11CoveredT5,T7,T24

 LINE       204
 EXPRESSION (idx == align_next)
            ---------1---------
-1-StatusTests
0CoveredT9,T15,T16
1CoveredT5,T7,T24

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

 LINE       213
 SUB-EXPRESSION (idx == MaxIdx)
                -------1-------
-1-StatusTests
0CoveredT12,T5,T7
1CoveredT12,T5,T7

 LINE       216
 EXPRESSION (req_i && last_i)
             --1--    ---2--
-1--2-StatusTests
01CoveredT12,T5,T14
10CoveredT12,T5,T7
11CoveredT5,T7,T24

 LINE       230
 EXPRESSION (idx == MaxIdx)
            -------1-------
-1-StatusTests
0CoveredT9,T15,T16
1CoveredT5,T7,T24

 LINE       237
 EXPRESSION (scramble_i ? StCalcMask : StReqFlash)
             -----1----
-1-StatusTests
0CoveredT5,T7,T22
1CoveredT12,T14,T24

 LINE       270
 EXPRESSION (ack ? StWaitFlash : StReqFlash)
             -1-
-1-StatusTests
0CoveredT5,T7,T24
1CoveredT12,T5,T7

 LINE       273
 EXPRESSION (ack ? StIdle : StReqFlash)
             -1-
-1-StatusTests
0CoveredT5,T7,T24
1CoveredT12,T5,T7

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

 LINE       304
 EXPRESSION (calc_req_o && calc_ack_i)
             -----1----    -----2----
-1--2-StatusTests
01UnreachableT1,T2,T3
10CoveredT12,T14,T24
11UnreachableT12,T14,T24

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

 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
101CoveredT12,T5,T7
110CoveredT12,T5,T7
111CoveredT12,T5,T7

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

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


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



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

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

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

Branches:
-1-StatusTests
1 Covered T12,T5,T7
0 Covered T1,T2,T3


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

Branches:
-1-StatusTests
1 Covered T12,T5,T7
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 T12,T5,T7
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 T12,T5,T7
0 0 1 Covered T12,T5,T7
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 T5,T7,T24
StIdle 0 0 1 - - - - - - - - - - - - Covered T12,T5,T7
StIdle 0 0 0 - - - - - - - - - - - - Covered T1,T2,T3
StPrePack - - - 1 - - - - - - - - - - - Covered T5,T7,T24
StPrePack - - - 0 - - - - - - - - - - - Covered T9,T15,T16
StPackData - - - - 1 - - - - - - - - - - Covered T12,T5,T7
StPackData - - - - 0 1 - - - - - - - - - Covered T5,T7,T24
StPackData - - - - 0 0 1 - - - - - - - - Covered T12,T5,T7
StPackData - - - - 0 0 0 - - - - - - - - Covered T12,T5,T7
StPostPack - - - - - - - 1 - - - - - - - Covered T5,T7,T24
StPostPack - - - - - - - 0 - - - - - - - Covered T9,T15,T16
StCalcPlainEcc - - - - - - - - 1 - - - - - - Covered T12,T14,T24
StCalcPlainEcc - - - - - - - - 0 - - - - - - Covered T5,T7,T22
StCalcMask - - - - - - - - - 1 - - - - - Unreachable T12,T14,T24
StCalcMask - - - - - - - - - 0 - - - - - Covered T12,T14,T24
StScrambleData - - - - - - - - - - 1 - - - - Covered T12,T14,T24
StScrambleData - - - - - - - - - - 0 - - - - Covered T12,T14,T24
StCalcEcc - - - - - - - - - - - - - - - Covered T12,T14,T24
StReqFlash - - - - - - - - - - - 1 1 - - Covered T12,T5,T7
StReqFlash - - - - - - - - - - - 1 0 - - Covered T5,T7,T24
StReqFlash - - - - - - - - - - - 0 - 1 - Covered T12,T5,T7
StReqFlash - - - - - - - - - - - 0 - 0 - Covered T5,T7,T24
StWaitFlash - - - - - - - - - - - - - - 1 Covered T12,T5,T7
StWaitFlash - - - - - - - - - - - - - - 0 Covered T12,T5,T7
StDisabled - - - - - - - - - - - - - - - Covered T12,T13,T14
default - - - - - - - - - - - - - - - Covered T17,T9,T18


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 T12,T5,T7
0 0 1 - - Unreachable T12,T14,T24
0 0 0 1 - Covered T12,T14,T24
0 0 0 0 1 Covered T12,T5,T7
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 T12,T5,T7
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 824759236 2402247 0 0
PostPackRule_A 824759236 29213 0 0
PrePackRule_A 824759236 14118 0 0
WidthCheck_A 2122 2122 0 0
u_state_regs_A 824759236 823116882 0 0


OneDonePerTxn_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 824759236 2402247 0 0
T5 1316476 83 0 0
T6 15342 0 0 0
T7 20228 4 0 0
T8 91070 0 0 0
T12 800832 65920 0 0
T13 2296 0 0 0
T14 1498 1 0 0
T19 3040 0 0 0
T20 4328 0 0 0
T21 0 319 0 0
T22 0 6 0 0
T23 0 32 0 0
T24 0 2 0 0
T25 0 2 0 0
T26 0 1 0 0
T40 0 317 0 0
T54 0 1 0 0
T55 8182 0 0 0
T74 0 289 0 0
T75 0 41 0 0
T76 0 448 0 0

PostPackRule_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 824759236 29213 0 0
T5 1316476 12 0 0
T7 20228 3 0 0
T8 91070 0 0 0
T13 2296 0 0 0
T14 1498 0 0 0
T21 798968 0 0 0
T22 0 5 0 0
T24 5262 2 0 0
T25 0 1 0 0
T26 0 1 0 0
T33 1604322 0 0 0
T40 0 126 0 0
T46 8516 0 0 0
T55 8182 0 0 0
T74 0 382 0 0
T75 0 31 0 0
T76 0 310 0 0
T77 0 1 0 0
T113 0 138 0 0
T114 0 201 0 0

PrePackRule_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 824759236 14118 0 0
T5 1316476 11 0 0
T7 20228 3 0 0
T8 91070 0 0 0
T13 2296 0 0 0
T14 1498 0 0 0
T21 798968 0 0 0
T22 0 1 0 0
T24 5262 1 0 0
T25 0 1 0 0
T33 1604322 0 0 0
T34 0 1 0 0
T40 0 94 0 0
T46 8516 0 0 0
T55 8182 0 0 0
T74 0 175 0 0
T75 0 33 0 0
T76 0 140 0 0
T113 0 151 0 0
T114 0 112 0 0
T118 0 7 0 0
T267 0 12 0 0

WidthCheck_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 2122 2122 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
T12 2 2 0 0
T19 2 2 0 0
T20 2 2 0 0

u_state_regs_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 824759236 823116882 0 0
T1 165550 165222 0 0
T2 2506 2312 0 0
T3 2556 2390 0 0
T4 1538650 1538278 0 0
T5 1316476 1316342 0 0
T6 15342 15028 0 0
T7 20228 19244 0 0
T12 800832 800810 0 0
T19 3040 2560 0 0
T20 4328 4184 0 0

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


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

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

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

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

 LINE       126
 SUB-EXPRESSION (pack_valid & ((~data_intg_ok)))
                 -----1----   --------2--------
-1--2-StatusTests
01CoveredT1,T2,T3
10CoveredT12,T5,T7
11CoveredT10,T11,T268

 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
01CoveredT10,T11,T268
10CoveredT1,T4,T12

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

 LINE       148
 SUB-EXPRESSION (idx_sub_one == sel_i)
                -----------1----------
-1-StatusTests
0CoveredT12,T5,T7
1CoveredT5,T7,T22

 LINE       153
 EXPRESSION (pack_valid && (idx == MaxIdx))
             -----1----    -------2-------
-1--2-StatusTests
01CoveredT12,T5,T22
10CoveredT12,T5,T7
11CoveredT12,T5,T7

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

 LINE       194
 EXPRESSION (req_i && ((|sel_i)))
             --1--    -----2----
-1--2-StatusTests
01CoveredT1,T2,T3
10CoveredT12,T5,T7
11CoveredT5,T7,T40

 LINE       204
 EXPRESSION (idx == align_next)
            ---------1---------
-1-StatusTests
0CoveredT9,T15,T16
1CoveredT5,T7,T40

 LINE       213
 EXPRESSION (req_i && (idx == MaxIdx))
             --1--    -------2-------
-1--2-StatusTests
01CoveredT12,T5,T22
10CoveredT12,T5,T7
11CoveredT12,T5,T7

 LINE       213
 SUB-EXPRESSION (idx == MaxIdx)
                -------1-------
-1-StatusTests
0CoveredT12,T5,T7
1CoveredT12,T5,T7

 LINE       216
 EXPRESSION (req_i && last_i)
             --1--    ---2--
-1--2-StatusTests
01CoveredT12,T5,T40
10CoveredT12,T5,T22
11CoveredT5,T7,T22

 LINE       230
 EXPRESSION (idx == MaxIdx)
            -------1-------
-1-StatusTests
0CoveredT9,T15,T16
1CoveredT5,T7,T22

 LINE       237
 EXPRESSION (scramble_i ? StCalcMask : StReqFlash)
             -----1----
-1-StatusTests
0CoveredT5,T7,T22
1CoveredT12,T40,T140

 LINE       270
 EXPRESSION (ack ? StWaitFlash : StReqFlash)
             -1-
-1-StatusTests
0CoveredT5,T22,T54
1CoveredT12,T5,T7

 LINE       273
 EXPRESSION (ack ? StIdle : StReqFlash)
             -1-
-1-StatusTests
0CoveredT5,T22,T54
1CoveredT12,T5,T7

 LINE       302
 EXPRESSION (req_o && ack)
             --1--    -2-
-1--2-StatusTests
01CoveredT1,T2,T3
10CoveredT5,T22,T54
11CoveredT12,T5,T7

 LINE       304
 EXPRESSION (calc_req_o && calc_ack_i)
             -----1----    -----2----
-1--2-StatusTests
01UnreachableT12,T6,T40
10CoveredT12,T40,T140
11UnreachableT12,T40,T140

 LINE       307
 EXPRESSION (scramble_req_o && scramble_ack_i)
             -------1------    -------2------
-1--2-StatusTests
01CoveredT12,T6,T40
10CoveredT12,T40,T140
11CoveredT12,T40,T140

 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
101CoveredT12,T5,T7
110CoveredT12,T5,T7
111CoveredT12,T5,T7

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

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

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


transitionsLine No.CoveredTests
StCalcEcc->StReqFlash 257 Covered T40,T26,T133
StCalcMask->StScrambleData 244 Covered T40,T140,T26
StCalcPlainEcc->StCalcMask 237 Covered T40,T140,T26
StCalcPlainEcc->StReqFlash 237 Covered T5,T7,T22
StIdle->StDisabled 193 Covered T12,T13,T14
StIdle->StPackData 197 Covered T5,T7,T22
StIdle->StPrePack 195 Covered T5,T7,T40
StPackData->StCalcPlainEcc 215 Covered T5,T7,T22
StPackData->StPostPack 218 Covered T5,T7,T22
StPostPack->StCalcPlainEcc 231 Covered T5,T7,T22
StPrePack->StPackData 205 Covered T5,T7,T40
StReqFlash->StIdle 273 Covered T12,T5,T7
StReqFlash->StWaitFlash 270 Covered T12,T5,T7
StScrambleData->StCalcEcc 252 Covered T40,T140,T26
StWaitFlash->StIdle 280 Covered T12,T5,T7



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

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

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

Branches:
-1-StatusTests
1 Covered T12,T5,T7
0 Covered T1,T2,T3


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

Branches:
-1-StatusTests
1 Covered T12,T5,T7
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 T12,T5,T7
0 1 Covered T1,T4,T12
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 T12,T5,T7
0 0 1 Covered T12,T5,T7
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 T5,T7,T40
StIdle 0 0 1 - - - - - - - - - - - - Covered T12,T5,T7
StIdle 0 0 0 - - - - - - - - - - - - Covered T1,T2,T3
StPrePack - - - 1 - - - - - - - - - - - Covered T5,T7,T40
StPrePack - - - 0 - - - - - - - - - - - Covered T9,T15,T16
StPackData - - - - 1 - - - - - - - - - - Covered T12,T5,T7
StPackData - - - - 0 1 - - - - - - - - - Covered T5,T7,T22
StPackData - - - - 0 0 1 - - - - - - - - Covered T12,T5,T22
StPackData - - - - 0 0 0 - - - - - - - - Covered T12,T5,T22
StPostPack - - - - - - - 1 - - - - - - - Covered T5,T7,T22
StPostPack - - - - - - - 0 - - - - - - - Covered T9,T15,T16
StCalcPlainEcc - - - - - - - - 1 - - - - - - Covered T12,T40,T140
StCalcPlainEcc - - - - - - - - 0 - - - - - - Covered T5,T7,T22
StCalcMask - - - - - - - - - 1 - - - - - Unreachable T12,T40,T140
StCalcMask - - - - - - - - - 0 - - - - - Covered T12,T40,T140
StScrambleData - - - - - - - - - - 1 - - - - Covered T12,T40,T140
StScrambleData - - - - - - - - - - 0 - - - - Covered T12,T40,T140
StCalcEcc - - - - - - - - - - - - - - - Covered T12,T40,T140
StReqFlash - - - - - - - - - - - 1 1 - - Covered T12,T5,T7
StReqFlash - - - - - - - - - - - 1 0 - - Covered T5,T22,T54
StReqFlash - - - - - - - - - - - 0 - 1 - Covered T12,T5,T7
StReqFlash - - - - - - - - - - - 0 - 0 - Covered T5,T22,T54
StWaitFlash - - - - - - - - - - - - - - 1 Covered T12,T5,T7
StWaitFlash - - - - - - - - - - - - - - 0 Covered T12,T5,T7
StDisabled - - - - - - - - - - - - - - - Covered T12,T13,T14
default - - - - - - - - - - - - - - - Covered T17,T9,T18


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 T12,T5,T7
0 0 1 - - Unreachable T12,T40,T140
0 0 0 1 - Covered T12,T40,T140
0 0 0 0 1 Covered T12,T5,T7
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 T12,T5,T7
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 412379618 1185300 0 0
PostPackRule_A 412379618 12770 0 0
PrePackRule_A 412379618 5872 0 0
WidthCheck_A 1061 1061 0 0
u_state_regs_A 412379618 411558441 0 0


OneDonePerTxn_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 412379618 1185300 0 0
T5 658238 10 0 0
T6 7671 0 0 0
T7 10114 3 0 0
T8 45535 0 0 0
T12 400416 32768 0 0
T13 1148 0 0 0
T14 749 0 0 0
T19 1520 0 0 0
T20 2164 0 0 0
T22 0 3 0 0
T26 0 1 0 0
T40 0 156 0 0
T54 0 1 0 0
T55 4091 0 0 0
T74 0 289 0 0
T75 0 41 0 0
T76 0 448 0 0

PostPackRule_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 412379618 12770 0 0
T5 658238 6 0 0
T7 10114 2 0 0
T8 45535 0 0 0
T13 1148 0 0 0
T14 749 0 0 0
T21 399484 0 0 0
T22 0 3 0 0
T24 2631 0 0 0
T26 0 1 0 0
T33 802161 0 0 0
T40 0 56 0 0
T46 4258 0 0 0
T55 4091 0 0 0
T74 0 84 0 0
T75 0 18 0 0
T76 0 94 0 0
T113 0 138 0 0
T114 0 201 0 0

PrePackRule_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 412379618 5872 0 0
T5 658238 3 0 0
T7 10114 3 0 0
T8 45535 0 0 0
T13 1148 0 0 0
T14 749 0 0 0
T21 399484 0 0 0
T24 2631 0 0 0
T33 802161 0 0 0
T40 0 42 0 0
T46 4258 0 0 0
T55 4091 0 0 0
T74 0 38 0 0
T75 0 25 0 0
T76 0 26 0 0
T113 0 40 0 0
T114 0 112 0 0
T118 0 7 0 0
T267 0 12 0 0

WidthCheck_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 1061 1061 0 0
T1 1 1 0 0
T2 1 1 0 0
T3 1 1 0 0
T4 1 1 0 0
T5 1 1 0 0
T6 1 1 0 0
T7 1 1 0 0
T12 1 1 0 0
T19 1 1 0 0
T20 1 1 0 0

u_state_regs_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 412379618 411558441 0 0
T1 82775 82611 0 0
T2 1253 1156 0 0
T3 1278 1195 0 0
T4 769325 769139 0 0
T5 658238 658171 0 0
T6 7671 7514 0 0
T7 10114 9622 0 0
T12 400416 400405 0 0
T19 1520 1280 0 0
T20 2164 2092 0 0

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


Cond Coverage for Instance : tb.dut.u_eflash.gen_flash_cores[0].u_core.gen_prog_data.u_prog
TotalCoveredPercent
Conditions636298.41
Logical636298.41
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
1CoveredT12,T5,T7

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

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

 LINE       126
 SUB-EXPRESSION (pack_valid & ((~data_intg_ok)))
                 -----1----   --------2--------
-1--2-StatusTests
01CoveredT1,T2,T3
10CoveredT12,T5,T7
11CoveredT166,T10,T11

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

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

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

 LINE       148
 SUB-EXPRESSION (idx_sub_one == sel_i)
                -----------1----------
-1-StatusTests
0CoveredT12,T5,T7
1CoveredT5,T7,T24

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

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

 LINE       194
 EXPRESSION (req_i && ((|sel_i)))
             --1--    -----2----
-1--2-StatusTests
01CoveredT1,T2,T3
10CoveredT12,T5,T7
11CoveredT5,T24,T25

 LINE       204
 EXPRESSION (idx == align_next)
            ---------1---------
-1-StatusTests
0CoveredT9,T15,T16
1CoveredT5,T24,T25

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

 LINE       213
 SUB-EXPRESSION (idx == MaxIdx)
                -------1-------
-1-StatusTests
0CoveredT12,T5,T7
1CoveredT12,T5,T7

 LINE       216
 EXPRESSION (req_i && last_i)
             --1--    ---2--
-1--2-StatusTests
01CoveredT12,T5,T14
10CoveredT12,T5,T7
11CoveredT5,T7,T24

 LINE       230
 EXPRESSION (idx == MaxIdx)
            -------1-------
-1-StatusTests
0CoveredT9,T15,T16
1CoveredT5,T7,T24

 LINE       237
 EXPRESSION (scramble_i ? StCalcMask : StReqFlash)
             -----1----
-1-StatusTests
0CoveredT5,T7,T22
1CoveredT12,T14,T24

 LINE       270
 EXPRESSION (ack ? StWaitFlash : StReqFlash)
             -1-
-1-StatusTests
0CoveredT5,T7,T24
1CoveredT12,T5,T7

 LINE       273
 EXPRESSION (ack ? StIdle : StReqFlash)
             -1-
-1-StatusTests
0CoveredT5,T7,T24
1CoveredT12,T5,T7

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

 LINE       304
 EXPRESSION (calc_req_o && calc_ack_i)
             -----1----    -----2----
-1--2-StatusTests
01UnreachableT1,T2,T3
10CoveredT12,T14,T24
11UnreachableT12,T14,T24

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

 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
101CoveredT12,T5,T7
110CoveredT12,T5,T7
111CoveredT12,T5,T7

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

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


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



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

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

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

Branches:
-1-StatusTests
1 Covered T12,T5,T7
0 Covered T1,T2,T3


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

Branches:
-1-StatusTests
1 Covered T12,T5,T7
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 T12,T5,T7
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 T12,T5,T7
0 0 1 Covered T12,T5,T7
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 T5,T24,T25
StIdle 0 0 1 - - - - - - - - - - - - Covered T12,T5,T7
StIdle 0 0 0 - - - - - - - - - - - - Covered T1,T2,T3
StPrePack - - - 1 - - - - - - - - - - - Covered T5,T24,T25
StPrePack - - - 0 - - - - - - - - - - - Covered T9,T15,T16
StPackData - - - - 1 - - - - - - - - - - Covered T12,T5,T7
StPackData - - - - 0 1 - - - - - - - - - Covered T5,T7,T24
StPackData - - - - 0 0 1 - - - - - - - - Covered T12,T5,T7
StPackData - - - - 0 0 0 - - - - - - - - Covered T12,T5,T7
StPostPack - - - - - - - 1 - - - - - - - Covered T5,T7,T24
StPostPack - - - - - - - 0 - - - - - - - Covered T9,T15,T16
StCalcPlainEcc - - - - - - - - 1 - - - - - - Covered T12,T14,T24
StCalcPlainEcc - - - - - - - - 0 - - - - - - Covered T5,T7,T22
StCalcMask - - - - - - - - - 1 - - - - - Unreachable T12,T14,T24
StCalcMask - - - - - - - - - 0 - - - - - Covered T12,T14,T24
StScrambleData - - - - - - - - - - 1 - - - - Covered T12,T14,T24
StScrambleData - - - - - - - - - - 0 - - - - Covered T12,T14,T24
StCalcEcc - - - - - - - - - - - - - - - Covered T12,T14,T24
StReqFlash - - - - - - - - - - - 1 1 - - Covered T12,T5,T7
StReqFlash - - - - - - - - - - - 1 0 - - Covered T5,T7,T24
StReqFlash - - - - - - - - - - - 0 - 1 - Covered T12,T5,T7
StReqFlash - - - - - - - - - - - 0 - 0 - Covered T5,T7,T24
StWaitFlash - - - - - - - - - - - - - - 1 Covered T12,T5,T7
StWaitFlash - - - - - - - - - - - - - - 0 Covered T12,T5,T7
StDisabled - - - - - - - - - - - - - - - Covered T12,T13,T14
default - - - - - - - - - - - - - - - Covered T17,T9,T18


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 T12,T5,T7
0 0 1 - - Unreachable T12,T14,T24
0 0 0 1 - Covered T12,T14,T24
0 0 0 0 1 Covered T12,T5,T7
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 T12,T5,T7
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 412379618 1216947 0 0
PostPackRule_A 412379618 16443 0 0
PrePackRule_A 412379618 8246 0 0
WidthCheck_A 1061 1061 0 0
u_state_regs_A 412379618 411558441 0 0


OneDonePerTxn_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 412379618 1216947 0 0
T5 658238 73 0 0
T6 7671 0 0 0
T7 10114 1 0 0
T8 45535 0 0 0
T12 400416 33152 0 0
T13 1148 0 0 0
T14 749 1 0 0
T19 1520 0 0 0
T20 2164 0 0 0
T21 0 319 0 0
T22 0 3 0 0
T23 0 32 0 0
T24 0 2 0 0
T25 0 2 0 0
T40 0 161 0 0
T55 4091 0 0 0

PostPackRule_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 412379618 16443 0 0
T5 658238 6 0 0
T7 10114 1 0 0
T8 45535 0 0 0
T13 1148 0 0 0
T14 749 0 0 0
T21 399484 0 0 0
T22 0 2 0 0
T24 2631 2 0 0
T25 0 1 0 0
T33 802161 0 0 0
T40 0 70 0 0
T46 4258 0 0 0
T55 4091 0 0 0
T74 0 298 0 0
T75 0 13 0 0
T76 0 216 0 0
T77 0 1 0 0

PrePackRule_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 412379618 8246 0 0
T5 658238 8 0 0
T7 10114 0 0 0
T8 45535 0 0 0
T13 1148 0 0 0
T14 749 0 0 0
T21 399484 0 0 0
T22 0 1 0 0
T24 2631 1 0 0
T25 0 1 0 0
T33 802161 0 0 0
T34 0 1 0 0
T40 0 52 0 0
T46 4258 0 0 0
T55 4091 0 0 0
T74 0 137 0 0
T75 0 8 0 0
T76 0 114 0 0
T113 0 111 0 0

WidthCheck_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 1061 1061 0 0
T1 1 1 0 0
T2 1 1 0 0
T3 1 1 0 0
T4 1 1 0 0
T5 1 1 0 0
T6 1 1 0 0
T7 1 1 0 0
T12 1 1 0 0
T19 1 1 0 0
T20 1 1 0 0

u_state_regs_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 412379618 411558441 0 0
T1 82775 82611 0 0
T2 1253 1156 0 0
T3 1278 1195 0 0
T4 769325 769139 0 0
T5 658238 658171 0 0
T6 7671 7514 0 0
T7 10114 9622 0 0
T12 400416 400405 0 0
T19 1520 1280 0 0
T20 2164 2092 0 0

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