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
97.98 100.00 93.65 100.00 96.23 100.00


Instance's subtree :
SCORELINECONDTOGGLEFSMBRANCHASSERT
97.50 100.00 93.65 95.00 100.00 96.36 100.00


Parent :
SCORELINECONDTOGGLEFSMBRANCHASSERTNAME
94.29 96.20 83.96 100.00 91.30 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
98.29 100.00 95.24 100.00 96.23 100.00


Instance's subtree :
SCORELINECONDTOGGLEFSMBRANCHASSERT
98.60 100.00 95.24 100.00 100.00 96.36 100.00


Parent :
SCORELINECONDTOGGLEFSMBRANCHASSERTNAME
98.37 98.73 95.28 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
Conditions636095.24
Logical636095.24
Non-Logical00
Event00

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

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

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

 LINE       126
 SUB-EXPRESSION (pack_valid & ((~data_intg_ok)))
                 -----1----   --------2--------
-1--2-StatusTests
01CoveredT1,T2,T3
10CoveredT1,T2,T3
11CoveredT139,T155,T209

 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
01CoveredT139,T155,T209
10CoveredT1,T2,T3

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

 LINE       148
 SUB-EXPRESSION (idx_sub_one == sel_i)
                -----------1----------
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT1,T43,T23

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

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

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

 LINE       204
 EXPRESSION (idx == align_next)
            ---------1---------
-1-StatusTests
0Not Covered
1CoveredT1,T43,T23

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

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

 LINE       216
 EXPRESSION (req_i && last_i)
             --1--    ---2--
-1--2-StatusTests
01CoveredT1,T2,T3
10CoveredT1,T2,T3
11CoveredT1,T43,T23

 LINE       230
 EXPRESSION (idx == MaxIdx)
            -------1-------
-1-StatusTests
0Not Covered
1CoveredT1,T43,T23

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

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

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

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

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

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

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

 LINE       365
 EXPRESSION (req_i && ack_o && last_i)
             --1--    --2--    ---3--
-1--2--3-StatusTests
011Not Covered
101CoveredT1,T2,T3
110CoveredT1,T2,T3
111CoveredT1,T2,T3

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

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

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

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


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



Branch Coverage for Module : flash_phy_prog
Line No.TotalCoveredPercent
Branches 53 51 96.23
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 24 92.31
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 T1,T2,T3
0 Covered T1,T2,T3


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

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


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

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


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

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


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

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


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

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


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

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


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

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


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


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

Branches:
-1--2-StatusTests
1 - Covered T1,T2,T3
0 1 Covered T1,T2,T3
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 832327816 2393579 0 0
PostPackRule_A 832327816 29471 0 0
PrePackRule_A 832327816 15107 0 0
WidthCheck_A 2122 2122 0 0
u_state_regs_A 832327816 830617666 0 0


OneDonePerTxn_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 832327816 2393579 0 0
T1 273902 84 0 0
T2 178334 61 0 0
T3 770910 65920 0 0
T4 1234 1 0 0
T5 3250 0 0 0
T6 1404 0 0 0
T7 1633498 0 0 0
T16 5154 0 0 0
T17 193098 100 0 0
T18 54986 119 0 0
T20 0 2 0 0
T23 0 85 0 0
T27 0 5 0 0
T43 0 47 0 0
T59 0 780 0 0
T69 0 888 0 0

PostPackRule_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 832327816 29471 0 0
T1 273902 11 0 0
T2 178334 0 0 0
T3 770910 0 0 0
T4 1234 0 0 0
T5 3250 0 0 0
T6 1404 0 0 0
T7 1633498 0 0 0
T16 5154 0 0 0
T17 193098 0 0 0
T18 54986 0 0 0
T20 0 2 0 0
T23 0 50 0 0
T24 0 3 0 0
T25 0 22 0 0
T29 0 37 0 0
T43 0 47 0 0
T56 0 479 0 0
T60 0 460 0 0
T77 0 1 0 0
T90 0 1 0 0
T210 0 1 0 0

PrePackRule_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 832327816 15107 0 0
T1 273902 9 0 0
T2 178334 0 0 0
T3 770910 0 0 0
T4 1234 0 0 0
T5 3250 0 0 0
T6 1404 0 0 0
T7 1633498 0 0 0
T16 5154 0 0 0
T17 193098 0 0 0
T18 54986 0 0 0
T20 0 1 0 0
T23 0 29 0 0
T24 0 2 0 0
T25 0 20 0 0
T29 0 32 0 0
T56 0 321 0 0
T60 0 162 0 0
T77 0 1 0 0
T90 0 1 0 0
T106 0 1 0 0
T114 0 9 0 0
T115 0 1 0 0
T210 0 2 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
T16 2 2 0 0
T17 2 2 0 0
T18 2 2 0 0

u_state_regs_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 832327816 830617666 0 0
T1 273902 273892 0 0
T2 178334 171562 0 0
T3 770910 770878 0 0
T4 1234 1094 0 0
T5 3250 2968 0 0
T6 1404 1218 0 0
T7 1633498 1633204 0 0
T16 5154 5012 0 0
T17 193098 192904 0 0
T18 54986 54826 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
Conditions635993.65
Logical635993.65
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,T3,T17

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

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

 LINE       126
 SUB-EXPRESSION (pack_valid & ((~data_intg_ok)))
                 -----1----   --------2--------
-1--2-StatusTests
01CoveredT1,T2,T3
10CoveredT1,T3,T17
11CoveredT10,T11,T12

 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,T12
10CoveredT1,T3,T17

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

 LINE       148
 SUB-EXPRESSION (idx_sub_one == sel_i)
                -----------1----------
-1-StatusTests
0CoveredT1,T3,T17
1CoveredT1,T43,T23

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

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

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

 LINE       204
 EXPRESSION (idx == align_next)
            ---------1---------
-1-StatusTests
0Not Covered
1CoveredT1,T23,T20

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

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

 LINE       216
 EXPRESSION (req_i && last_i)
             --1--    ---2--
-1--2-StatusTests
01CoveredT1,T3,T17
10CoveredT1,T3,T17
11CoveredT1,T43,T23

 LINE       230
 EXPRESSION (idx == MaxIdx)
            -------1-------
-1-StatusTests
0Not Covered
1CoveredT1,T43,T23

 LINE       237
 EXPRESSION (scramble_i ? StCalcMask : StReqFlash)
             -----1----
-1-StatusTests
0CoveredT1,T17,T18
1CoveredT3,T20,T27

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

 LINE       273
 EXPRESSION (ack ? StIdle : StReqFlash)
             -1-
-1-StatusTests
0CoveredT1,T17,T18
1CoveredT1,T3,T17

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

 LINE       304
 EXPRESSION (calc_req_o && calc_ack_i)
             -----1----    -----2----
-1--2-StatusTests
01UnreachableT3,T6,T8
10CoveredT3,T20,T27
11UnreachableT3,T20,T27

 LINE       307
 EXPRESSION (scramble_req_o && scramble_ack_i)
             -------1------    -------2------
-1--2-StatusTests
01CoveredT3,T6,T8
10CoveredT3,T20,T27
11CoveredT3,T20,T27

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

 LINE       365
 EXPRESSION (req_i && ack_o && last_i)
             --1--    --2--    ---3--
-1--2--3-StatusTests
011Not Covered
101CoveredT1,T3,T17
110CoveredT1,T3,T17
111CoveredT1,T3,T17

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

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

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 T20,T27,T59
StCalcMask 237 Covered T20,T27,T59
StCalcPlainEcc 215 Covered T1,T17,T18
StDisabled 193 Covered T3,T4,T6
StIdle 273 Covered T1,T2,T3
StPackData 197 Covered T1,T17,T18
StPostPack 218 Covered T1,T43,T23
StPrePack 195 Covered T1,T23,T20
StReqFlash 237 Covered T1,T17,T18
StScrambleData 244 Covered T20,T27,T59
StWaitFlash 270 Covered T1,T3,T17


transitionsLine No.CoveredTests
StCalcEcc->StReqFlash 257 Covered T20,T27,T59
StCalcMask->StScrambleData 244 Covered T20,T27,T59
StCalcPlainEcc->StCalcMask 237 Covered T20,T27,T59
StCalcPlainEcc->StReqFlash 237 Covered T1,T17,T18
StIdle->StDisabled 193 Covered T3,T4,T6
StIdle->StPackData 197 Covered T1,T17,T18
StIdle->StPrePack 195 Covered T1,T23,T20
StPackData->StCalcPlainEcc 215 Covered T1,T17,T18
StPackData->StPostPack 218 Covered T1,T43,T23
StPostPack->StCalcPlainEcc 231 Covered T1,T43,T23
StPrePack->StPackData 205 Covered T1,T23,T20
StReqFlash->StIdle 273 Covered T1,T3,T17
StReqFlash->StWaitFlash 270 Covered T1,T3,T17
StScrambleData->StCalcEcc 252 Covered T20,T27,T59
StWaitFlash->StIdle 280 Covered T1,T3,T17



Branch Coverage for Instance : tb.dut.u_eflash.gen_flash_cores[1].u_core.gen_prog_data.u_prog
Line No.TotalCoveredPercent
Branches 53 51 96.23
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 24 92.31
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 T1,T3,T17
0 Covered T1,T2,T3


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

Branches:
-1-StatusTests
1 Covered T1,T3,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,T3,T17
0 1 Covered T1,T3,T17
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,T3,T17
0 0 1 Covered T1,T3,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 T3,T4,T6
StIdle 0 1 - - - - - - - - - - - - - Covered T1,T23,T20
StIdle 0 0 1 - - - - - - - - - - - - Covered T1,T3,T17
StIdle 0 0 0 - - - - - - - - - - - - Covered T1,T2,T3
StPrePack - - - 1 - - - - - - - - - - - Covered T1,T23,T20
StPrePack - - - 0 - - - - - - - - - - - Not Covered
StPackData - - - - 1 - - - - - - - - - - Covered T1,T3,T17
StPackData - - - - 0 1 - - - - - - - - - Covered T1,T43,T23
StPackData - - - - 0 0 1 - - - - - - - - Covered T1,T3,T17
StPackData - - - - 0 0 0 - - - - - - - - Covered T1,T3,T17
StPostPack - - - - - - - 1 - - - - - - - Covered T1,T43,T23
StPostPack - - - - - - - 0 - - - - - - - Not Covered
StCalcPlainEcc - - - - - - - - 1 - - - - - - Covered T3,T20,T27
StCalcPlainEcc - - - - - - - - 0 - - - - - - Covered T1,T17,T18
StCalcMask - - - - - - - - - 1 - - - - - Unreachable T3,T20,T27
StCalcMask - - - - - - - - - 0 - - - - - Covered T3,T20,T27
StScrambleData - - - - - - - - - - 1 - - - - Covered T3,T20,T27
StScrambleData - - - - - - - - - - 0 - - - - Covered T3,T20,T27
StCalcEcc - - - - - - - - - - - - - - - Covered T3,T20,T27
StReqFlash - - - - - - - - - - - 1 1 - - Covered T1,T3,T17
StReqFlash - - - - - - - - - - - 1 0 - - Covered T1,T17,T18
StReqFlash - - - - - - - - - - - 0 - 1 - Covered T1,T3,T17
StReqFlash - - - - - - - - - - - 0 - 0 - Covered T1,T17,T18
StWaitFlash - - - - - - - - - - - - - - 1 Covered T1,T3,T17
StWaitFlash - - - - - - - - - - - - - - 0 Covered T1,T3,T17
StDisabled - - - - - - - - - - - - - - - Covered T3,T4,T6
default - - - - - - - - - - - - - - - Covered T13,T14,T15


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,T3,T17
0 0 1 - - Unreachable T3,T20,T27
0 0 0 1 - Covered T3,T20,T27
0 0 0 0 1 Covered T1,T3,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,T3,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[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 416163908 1176984 0 0
PostPackRule_A 416163908 12588 0 0
PrePackRule_A 416163908 6269 0 0
WidthCheck_A 1061 1061 0 0
u_state_regs_A 416163908 415308833 0 0


OneDonePerTxn_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 416163908 1176984 0 0
T1 136951 42 0 0
T2 89167 0 0 0
T3 385455 32768 0 0
T4 617 0 0 0
T5 1625 0 0 0
T6 702 0 0 0
T7 816749 0 0 0
T16 2577 0 0 0
T17 96549 45 0 0
T18 27493 32 0 0
T20 0 2 0 0
T23 0 42 0 0
T27 0 5 0 0
T43 0 45 0 0
T59 0 310 0 0
T69 0 512 0 0

PostPackRule_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 416163908 12588 0 0
T1 136951 5 0 0
T2 89167 0 0 0
T3 385455 0 0 0
T4 617 0 0 0
T5 1625 0 0 0
T6 702 0 0 0
T7 816749 0 0 0
T16 2577 0 0 0
T17 96549 0 0 0
T18 27493 0 0 0
T20 0 2 0 0
T23 0 26 0 0
T24 0 1 0 0
T25 0 16 0 0
T29 0 23 0 0
T43 0 45 0 0
T56 0 266 0 0
T60 0 169 0 0
T210 0 1 0 0

PrePackRule_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 416163908 6269 0 0
T1 136951 4 0 0
T2 89167 0 0 0
T3 385455 0 0 0
T4 617 0 0 0
T5 1625 0 0 0
T6 702 0 0 0
T7 816749 0 0 0
T16 2577 0 0 0
T17 96549 0 0 0
T18 27493 0 0 0
T20 0 1 0 0
T23 0 16 0 0
T25 0 11 0 0
T29 0 17 0 0
T56 0 218 0 0
T60 0 38 0 0
T106 0 1 0 0
T114 0 9 0 0
T115 0 1 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
T16 1 1 0 0
T17 1 1 0 0
T18 1 1 0 0

u_state_regs_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 416163908 415308833 0 0
T1 136951 136946 0 0
T2 89167 85781 0 0
T3 385455 385439 0 0
T4 617 547 0 0
T5 1625 1484 0 0
T6 702 609 0 0
T7 816749 816602 0 0
T16 2577 2506 0 0
T17 96549 96452 0 0
T18 27493 27413 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
Conditions636095.24
Logical636095.24
Non-Logical00
Event00

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

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

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

 LINE       126
 SUB-EXPRESSION (pack_valid & ((~data_intg_ok)))
                 -----1----   --------2--------
-1--2-StatusTests
01CoveredT1,T2,T3
10CoveredT1,T2,T3
11CoveredT139,T155,T209

 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
01CoveredT139,T155,T209
10CoveredT1,T2,T3

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

 LINE       148
 SUB-EXPRESSION (idx_sub_one == sel_i)
                -----------1----------
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT1,T43,T23

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

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

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

 LINE       204
 EXPRESSION (idx == align_next)
            ---------1---------
-1-StatusTests
0Not Covered
1CoveredT1,T43,T23

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

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

 LINE       216
 EXPRESSION (req_i && last_i)
             --1--    ---2--
-1--2-StatusTests
01CoveredT1,T2,T3
10CoveredT1,T2,T3
11CoveredT1,T43,T23

 LINE       230
 EXPRESSION (idx == MaxIdx)
            -------1-------
-1-StatusTests
0Not Covered
1CoveredT1,T43,T23

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

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

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

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

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

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

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

 LINE       365
 EXPRESSION (req_i && ack_o && last_i)
             --1--    --2--    ---3--
-1--2--3-StatusTests
011Not Covered
101CoveredT1,T2,T3
110CoveredT1,T2,T3
111CoveredT1,T2,T3

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

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

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

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


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



Branch Coverage for Instance : tb.dut.u_eflash.gen_flash_cores[0].u_core.gen_prog_data.u_prog
Line No.TotalCoveredPercent
Branches 53 51 96.23
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 24 92.31
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 T1,T2,T3
0 Covered T1,T2,T3


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

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


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

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


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

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


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

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


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

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


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

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


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

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


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


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

Branches:
-1--2-StatusTests
1 - Covered T1,T2,T3
0 1 Covered T1,T2,T3
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 416163908 1216595 0 0
PostPackRule_A 416163908 16883 0 0
PrePackRule_A 416163908 8838 0 0
WidthCheck_A 1061 1061 0 0
u_state_regs_A 416163908 415308833 0 0


OneDonePerTxn_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 416163908 1216595 0 0
T1 136951 42 0 0
T2 89167 61 0 0
T3 385455 33152 0 0
T4 617 1 0 0
T5 1625 0 0 0
T6 702 0 0 0
T7 816749 0 0 0
T16 2577 0 0 0
T17 96549 55 0 0
T18 27493 87 0 0
T23 0 43 0 0
T43 0 2 0 0
T59 0 470 0 0
T69 0 376 0 0

PostPackRule_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 416163908 16883 0 0
T1 136951 6 0 0
T2 89167 0 0 0
T3 385455 0 0 0
T4 617 0 0 0
T5 1625 0 0 0
T6 702 0 0 0
T7 816749 0 0 0
T16 2577 0 0 0
T17 96549 0 0 0
T18 27493 0 0 0
T23 0 24 0 0
T24 0 2 0 0
T25 0 6 0 0
T29 0 14 0 0
T43 0 2 0 0
T56 0 213 0 0
T60 0 291 0 0
T77 0 1 0 0
T90 0 1 0 0

PrePackRule_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 416163908 8838 0 0
T1 136951 5 0 0
T2 89167 0 0 0
T3 385455 0 0 0
T4 617 0 0 0
T5 1625 0 0 0
T6 702 0 0 0
T7 816749 0 0 0
T16 2577 0 0 0
T17 96549 0 0 0
T18 27493 0 0 0
T23 0 13 0 0
T24 0 2 0 0
T25 0 9 0 0
T29 0 15 0 0
T56 0 103 0 0
T60 0 124 0 0
T77 0 1 0 0
T90 0 1 0 0
T210 0 2 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
T16 1 1 0 0
T17 1 1 0 0
T18 1 1 0 0

u_state_regs_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 416163908 415308833 0 0
T1 136951 136946 0 0
T2 89167 85781 0 0
T3 385455 385439 0 0
T4 617 547 0 0
T5 1625 1484 0 0
T6 702 609 0 0
T7 816749 816602 0 0
T16 2577 2506 0 0
T17 96549 96452 0 0
T18 27493 27413 0 0

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