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.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.17 100.00 83.02 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.69 100.00 98.46 100.00 100.00 100.00


Instance's subtree :
SCORELINECONDTOGGLEFSMBRANCHASSERT
99.74 100.00 98.46 100.00 100.00 100.00 100.00


Parent :
SCORELINECONDTOGGLEFSMBRANCHASSERTNAME
97.49 100.00 89.62 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
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_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 1 1
MISSING_ELSE
249 1 1
251 1 1
252 1 1
MISSING_ELSE
257 1 1
262 1 1
263 1 1
269 1 1
270 1 1
272 1 1
273 1 1
278 1 1
279 1 1
280 1 1
MISSING_ELSE
285 1 1
299 1 1
300 1 1
301 1 1
302 1 1
303 1 1
304 1 1
305 1 1
306 1 1
307 1 1
308 1 1
309 1 1
310 1 1
MISSING_ELSE
314 1 1
323 1 1
324 1 1
325 1 1
326 1 1
MISSING_ELSE
331 1 1
352 1 1
355 1 1
365 1 1
366 1 1
369 1 1
370 1 1
372 1 1


Cond Coverage for Module : flash_phy_prog
TotalCoveredPercent
Conditions656498.46
Logical656498.46
Non-Logical00
Event00

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

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

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

 LINE       126
 SUB-EXPRESSION (pack_valid & ((~data_intg_ok)))
                 -----1----   --------2--------
-1--2-StatusTests
01CoveredT1,T2,T3
10CoveredT1,T2,T10
11CoveredT11,T114,T115

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

 LINE       144
 EXPRESSION (done_i | data_invalid_q)
             ---1--   -------2------
-1--2-StatusTests
00CoveredT1,T2,T3
01CoveredT11,T114,T115
10CoveredT1,T2,T3

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

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

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

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

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

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

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

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

 LINE       216
 EXPRESSION (req_i && last_i)
             --1--    ---2--
-1--2-StatusTests
01CoveredT1,T2,T16
10CoveredT1,T2,T10
11CoveredT1,T2,T10

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

 LINE       237
 EXPRESSION (scramble_i ? StCalcMask : StReqFlash)
             -----1----
-1-StatusTests
0CoveredT1,T2,T10
1CoveredT16,T83,T20

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

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

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

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

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

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

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

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


transitionsLine No.CoveredTests
StCalcEcc->StReqFlash 257 Covered T16,T83,T20
StCalcMask->StScrambleData 244 Covered T16,T83,T20
StCalcPlainEcc->StCalcMask 237 Covered T16,T83,T20
StCalcPlainEcc->StReqFlash 237 Covered T1,T2,T10
StIdle->StDisabled 193 Covered T20,T11,T21
StIdle->StPackData 197 Covered T1,T2,T10
StIdle->StPrePack 195 Covered T1,T2,T10
StPackData->StCalcPlainEcc 215 Covered T1,T2,T10
StPackData->StPostPack 218 Covered T1,T2,T10
StPostPack->StCalcPlainEcc 231 Covered T1,T2,T10
StPrePack->StPackData 205 Covered T1,T2,T10
StReqFlash->StIdle 273 Covered T1,T2,T10
StReqFlash->StWaitFlash 270 Covered T1,T2,T10
StScrambleData->StCalcEcc 252 Covered T16,T83,T20
StWaitFlash->StIdle 280 Covered T1,T2,T10



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


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

Branches:
-1-StatusTests
1 Covered T1,T2,T10
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,T10
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,T10
0 0 1 Covered T1,T2,T10
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 T20,T11,T21
StIdle 0 1 - - - - - - - - - - - - - Covered T1,T2,T10
StIdle 0 0 1 - - - - - - - - - - - - Covered T1,T2,T10
StIdle 0 0 0 - - - - - - - - - - - - Covered T1,T2,T3
StPrePack - - - 1 - - - - - - - - - - - Covered T1,T2,T10
StPrePack - - - 0 - - - - - - - - - - - Covered T18,T22,T23
StPackData - - - - 1 - - - - - - - - - - Covered T1,T2,T10
StPackData - - - - 0 1 - - - - - - - - - Covered T1,T2,T10
StPackData - - - - 0 0 1 - - - - - - - - Covered T1,T2,T10
StPackData - - - - 0 0 0 - - - - - - - - Covered T1,T2,T10
StPostPack - - - - - - - 1 - - - - - - - Covered T1,T2,T10
StPostPack - - - - - - - 0 - - - - - - - Covered T18,T22,T23
StCalcPlainEcc - - - - - - - - 1 - - - - - - Covered T16,T83,T20
StCalcPlainEcc - - - - - - - - 0 - - - - - - Covered T1,T2,T10
StCalcMask - - - - - - - - - 1 - - - - - Covered T16,T83,T20
StCalcMask - - - - - - - - - 0 - - - - - Covered T16,T83,T20
StScrambleData - - - - - - - - - - 1 - - - - Covered T16,T83,T20
StScrambleData - - - - - - - - - - 0 - - - - Covered T16,T83,T20
StCalcEcc - - - - - - - - - - - - - - - Covered T16,T83,T20
StReqFlash - - - - - - - - - - - 1 1 - - Covered T1,T2,T10
StReqFlash - - - - - - - - - - - 1 0 - - Covered T1,T2,T10
StReqFlash - - - - - - - - - - - 0 - 1 - Covered T1,T2,T10
StReqFlash - - - - - - - - - - - 0 - 0 - Covered T1,T2,T10
StWaitFlash - - - - - - - - - - - - - - 1 Covered T1,T2,T10
StWaitFlash - - - - - - - - - - - - - - 0 Covered T1,T2,T10
StDisabled - - - - - - - - - - - - - - - Covered T20,T11,T21
default - - - - - - - - - - - - - - - Covered T18,T22,T23


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,T10
0 0 1 - - Covered T16,T83,T20
0 0 0 1 - Covered T16,T83,T20
0 0 0 0 1 Covered T1,T2,T10
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,T10
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 738411270 2375893 0 0
PostPackRule_A 738411270 2003 0 0
PrePackRule_A 738411270 1407 0 0
WidthCheck_A 1758 1758 0 0
u_state_regs_A 738411270 737073932 0 0


OneDonePerTxn_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 738411270 2375893 0 0
T1 844250 267 0 0
T2 140852 4 0 0
T3 462488 0 0 0
T4 51978 22 0 0
T5 1670770 0 0 0
T6 4556 0 0 0
T10 3312 1 0 0
T11 0 1 0 0
T12 0 57 0 0
T13 0 36 0 0
T16 879516 2227 0 0
T17 118670 0 0 0
T20 0 66080 0 0
T25 2412 0 0 0
T26 0 64 0 0
T30 0 51 0 0
T44 0 96 0 0
T54 0 6 0 0
T83 0 1 0 0
T138 0 73 0 0

PostPackRule_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 738411270 2003 0 0
T1 844250 7 0 0
T2 140852 3 0 0
T3 462488 0 0 0
T4 51978 12 0 0
T5 1670770 0 0 0
T6 4556 0 0 0
T10 3312 1 0 0
T12 0 35 0 0
T13 0 58 0 0
T16 879516 0 0 0
T17 118670 0 0 0
T25 2412 0 0 0
T27 0 10 0 0
T30 0 45 0 0
T54 0 6 0 0
T55 0 1 0 0
T93 0 1 0 0
T138 0 11 0 0
T214 0 1 0 0

PrePackRule_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 738411270 1407 0 0
T1 844250 7 0 0
T2 140852 3 0 0
T3 462488 0 0 0
T4 51978 13 0 0
T5 1670770 0 0 0
T6 4556 0 0 0
T10 3312 1 0 0
T12 0 19 0 0
T13 0 31 0 0
T16 879516 0 0 0
T17 118670 0 0 0
T25 2412 0 0 0
T27 0 9 0 0
T30 0 40 0 0
T54 0 4 0 0
T57 0 8 0 0
T138 0 10 0 0

WidthCheck_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 1758 1758 0 0
T1 2 2 0 0
T2 2 2 0 0
T3 2 2 0 0
T4 2 2 0 0
T5 2 2 0 0
T6 2 2 0 0
T10 2 2 0 0
T16 2 2 0 0
T17 2 2 0 0
T25 2 2 0 0

u_state_regs_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 738411270 737073932 0 0
T1 844250 844134 0 0
T2 140852 140726 0 0
T3 462488 462162 0 0
T4 51978 49372 0 0
T5 1670770 1670464 0 0
T6 4556 4430 0 0
T10 3312 3196 0 0
T16 879516 879404 0 0
T17 118670 118524 0 0
T25 2412 2308 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_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 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,T10,T16

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

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

 LINE       126
 SUB-EXPRESSION (pack_valid & ((~data_intg_ok)))
                 -----1----   --------2--------
-1--2-StatusTests
01CoveredT1,T2,T3
10CoveredT1,T10,T16
11CoveredT11,T229,T230

 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
01CoveredT11,T229,T230
10CoveredT1,T6,T10

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

 LINE       148
 SUB-EXPRESSION (idx_sub_one == sel_i)
                -----------1----------
-1-StatusTests
0CoveredT1,T10,T16
1CoveredT1,T10,T4

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

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

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

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

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

 LINE       213
 SUB-EXPRESSION (idx == MaxIdx)
                -------1-------
-1-StatusTests
0CoveredT1,T10,T16
1CoveredT1,T10,T16

 LINE       216
 EXPRESSION (req_i && last_i)
             --1--    ---2--
-1--2-StatusTests
01CoveredT1,T16,T4
10CoveredT1,T10,T16
11CoveredT1,T10,T4

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

 LINE       237
 EXPRESSION (scramble_i ? StCalcMask : StReqFlash)
             -----1----
-1-StatusTests
0CoveredT1,T10,T16
1CoveredT20,T11,T27

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

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

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

 LINE       304
 EXPRESSION (calc_req_o && calc_ack_i)
             -----1----    -----2----
-1--2-StatusTests
01CoveredT6,T17,T14
10CoveredT20,T11,T27
11CoveredT20,T11,T27

 LINE       307
 EXPRESSION (scramble_req_o && scramble_ack_i)
             -------1------    -------2------
-1--2-StatusTests
01CoveredT6,T14,T15
10CoveredT20,T11,T27
11CoveredT20,T11,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,T10,T16
110CoveredT1,T10,T16
111CoveredT1,T10,T16

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

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

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 T11,T29,T80
StCalcMask 237 Covered T11,T29,T80
StCalcPlainEcc 215 Covered T1,T10,T16
StDisabled 193 Covered T20,T11,T21
StIdle 273 Covered T1,T2,T3
StPackData 197 Covered T1,T10,T16
StPostPack 218 Covered T1,T10,T4
StPrePack 195 Covered T1,T10,T4
StReqFlash 237 Covered T1,T10,T16
StScrambleData 244 Covered T11,T29,T80
StWaitFlash 270 Covered T1,T10,T16


transitionsLine No.CoveredTests
StCalcEcc->StReqFlash 257 Covered T11,T29,T80
StCalcMask->StScrambleData 244 Covered T11,T29,T80
StCalcPlainEcc->StCalcMask 237 Covered T11,T29,T80
StCalcPlainEcc->StReqFlash 237 Covered T1,T10,T16
StIdle->StDisabled 193 Covered T20,T11,T21
StIdle->StPackData 197 Covered T1,T10,T16
StIdle->StPrePack 195 Covered T1,T10,T4
StPackData->StCalcPlainEcc 215 Covered T1,T10,T16
StPackData->StPostPack 218 Covered T1,T10,T4
StPostPack->StCalcPlainEcc 231 Covered T1,T10,T4
StPrePack->StPackData 205 Covered T1,T10,T4
StReqFlash->StIdle 273 Covered T1,T10,T16
StReqFlash->StWaitFlash 270 Covered T1,T10,T16
StScrambleData->StCalcEcc 252 Covered T11,T29,T80
StWaitFlash->StIdle 280 Covered T1,T10,T16



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_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,T10,T16
0 Covered T1,T2,T3


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

Branches:
-1-StatusTests
1 Covered T1,T10,T16
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,T10,T16
0 1 Covered T1,T6,T10
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,T10,T16
0 0 1 Covered T1,T10,T16
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 T20,T11,T21
StIdle 0 1 - - - - - - - - - - - - - Covered T1,T10,T4
StIdle 0 0 1 - - - - - - - - - - - - Covered T1,T10,T16
StIdle 0 0 0 - - - - - - - - - - - - Covered T1,T2,T3
StPrePack - - - 1 - - - - - - - - - - - Covered T1,T10,T4
StPrePack - - - 0 - - - - - - - - - - - Covered T18,T22,T23
StPackData - - - - 1 - - - - - - - - - - Covered T1,T10,T16
StPackData - - - - 0 1 - - - - - - - - - Covered T1,T10,T4
StPackData - - - - 0 0 1 - - - - - - - - Covered T1,T10,T16
StPackData - - - - 0 0 0 - - - - - - - - Covered T1,T10,T16
StPostPack - - - - - - - 1 - - - - - - - Covered T1,T10,T4
StPostPack - - - - - - - 0 - - - - - - - Covered T18,T22,T23
StCalcPlainEcc - - - - - - - - 1 - - - - - - Covered T20,T11,T27
StCalcPlainEcc - - - - - - - - 0 - - - - - - Covered T1,T10,T16
StCalcMask - - - - - - - - - 1 - - - - - Covered T20,T11,T27
StCalcMask - - - - - - - - - 0 - - - - - Covered T20,T11,T27
StScrambleData - - - - - - - - - - 1 - - - - Covered T20,T11,T27
StScrambleData - - - - - - - - - - 0 - - - - Covered T20,T11,T27
StCalcEcc - - - - - - - - - - - - - - - Covered T20,T11,T27
StReqFlash - - - - - - - - - - - 1 1 - - Covered T1,T10,T16
StReqFlash - - - - - - - - - - - 1 0 - - Covered T1,T10,T16
StReqFlash - - - - - - - - - - - 0 - 1 - Covered T1,T10,T16
StReqFlash - - - - - - - - - - - 0 - 0 - Covered T1,T10,T16
StWaitFlash - - - - - - - - - - - - - - 1 Covered T1,T10,T16
StWaitFlash - - - - - - - - - - - - - - 0 Covered T1,T10,T16
StDisabled - - - - - - - - - - - - - - - Covered T20,T11,T21
default - - - - - - - - - - - - - - - Covered T18,T22,T23


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,T10,T16
0 0 1 - - Covered T20,T11,T27
0 0 0 1 - Covered T20,T11,T27
0 0 0 0 1 Covered T1,T10,T16
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,T10,T16
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 369205635 1179137 0 0
PostPackRule_A 369205635 978 0 0
PrePackRule_A 369205635 700 0 0
WidthCheck_A 879 879 0 0
u_state_regs_A 369205635 368536966 0 0


OneDonePerTxn_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 369205635 1179137 0 0
T1 422125 71 0 0
T2 70426 0 0 0
T3 231244 0 0 0
T4 25989 10 0 0
T5 835385 0 0 0
T6 2278 0 0 0
T10 1656 1 0 0
T12 0 29 0 0
T13 0 36 0 0
T16 439758 936 0 0
T17 59335 0 0 0
T20 0 32800 0 0
T25 1206 0 0 0
T30 0 51 0 0
T54 0 6 0 0
T138 0 73 0 0

PostPackRule_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 369205635 978 0 0
T1 422125 6 0 0
T2 70426 0 0 0
T3 231244 0 0 0
T4 25989 4 0 0
T5 835385 0 0 0
T6 2278 0 0 0
T10 1656 1 0 0
T12 0 18 0 0
T13 0 26 0 0
T16 439758 0 0 0
T17 59335 0 0 0
T25 1206 0 0 0
T27 0 10 0 0
T30 0 24 0 0
T54 0 4 0 0
T55 0 1 0 0
T138 0 6 0 0

PrePackRule_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 369205635 700 0 0
T1 422125 5 0 0
T2 70426 0 0 0
T3 231244 0 0 0
T4 25989 4 0 0
T5 835385 0 0 0
T6 2278 0 0 0
T10 1656 1 0 0
T12 0 9 0 0
T13 0 12 0 0
T16 439758 0 0 0
T17 59335 0 0 0
T25 1206 0 0 0
T27 0 5 0 0
T30 0 27 0 0
T54 0 2 0 0
T57 0 5 0 0
T138 0 5 0 0

WidthCheck_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 879 879 0 0
T1 1 1 0 0
T2 1 1 0 0
T3 1 1 0 0
T4 1 1 0 0
T5 1 1 0 0
T6 1 1 0 0
T10 1 1 0 0
T16 1 1 0 0
T17 1 1 0 0
T25 1 1 0 0

u_state_regs_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 369205635 368536966 0 0
T1 422125 422067 0 0
T2 70426 70363 0 0
T3 231244 231081 0 0
T4 25989 24686 0 0
T5 835385 835232 0 0
T6 2278 2215 0 0
T10 1656 1598 0 0
T16 439758 439702 0 0
T17 59335 59262 0 0
T25 1206 1154 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_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 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
Conditions656498.46
Logical656498.46
Non-Logical00
Event00

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

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

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

 LINE       126
 SUB-EXPRESSION (pack_valid & ((~data_intg_ok)))
                 -----1----   --------2--------
-1--2-StatusTests
01CoveredT1,T2,T3
10CoveredT1,T2,T16
11CoveredT11,T114,T115

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

 LINE       144
 EXPRESSION (done_i | data_invalid_q)
             ---1--   -------2------
-1--2-StatusTests
00CoveredT1,T2,T3
01CoveredT11,T114,T115
10CoveredT1,T2,T3

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

 LINE       148
 SUB-EXPRESSION (idx_sub_one == sel_i)
                -----------1----------
-1-StatusTests
0CoveredT1,T2,T16
1CoveredT1,T2,T4

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

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

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

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

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

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

 LINE       216
 EXPRESSION (req_i && last_i)
             --1--    ---2--
-1--2-StatusTests
01CoveredT1,T2,T16
10CoveredT1,T2,T16
11CoveredT1,T2,T4

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

 LINE       237
 EXPRESSION (scramble_i ? StCalcMask : StReqFlash)
             -----1----
-1-StatusTests
0CoveredT1,T2,T16
1CoveredT16,T83,T20

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

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

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

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

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

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

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

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


transitionsLine No.CoveredTests
StCalcEcc->StReqFlash 257 Covered T16,T83,T20
StCalcMask->StScrambleData 244 Covered T16,T83,T20
StCalcPlainEcc->StCalcMask 237 Covered T16,T83,T20
StCalcPlainEcc->StReqFlash 237 Covered T1,T2,T16
StIdle->StDisabled 193 Covered T20,T11,T21
StIdle->StPackData 197 Covered T1,T2,T16
StIdle->StPrePack 195 Covered T1,T2,T4
StPackData->StCalcPlainEcc 215 Covered T1,T2,T16
StPackData->StPostPack 218 Covered T1,T2,T4
StPostPack->StCalcPlainEcc 231 Covered T1,T2,T4
StPrePack->StPackData 205 Covered T1,T2,T4
StReqFlash->StIdle 273 Covered T1,T2,T16
StReqFlash->StWaitFlash 270 Covered T1,T2,T16
StScrambleData->StCalcEcc 252 Covered T16,T83,T20
StWaitFlash->StIdle 280 Covered T1,T2,T16



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


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

Branches:
-1-StatusTests
1 Covered T1,T2,T16
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,T16
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,T16
0 0 1 Covered T1,T2,T16
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 T20,T11,T21
StIdle 0 1 - - - - - - - - - - - - - Covered T1,T2,T4
StIdle 0 0 1 - - - - - - - - - - - - Covered T1,T2,T16
StIdle 0 0 0 - - - - - - - - - - - - Covered T1,T2,T3
StPrePack - - - 1 - - - - - - - - - - - Covered T1,T2,T4
StPrePack - - - 0 - - - - - - - - - - - Covered T18,T22,T23
StPackData - - - - 1 - - - - - - - - - - Covered T1,T2,T16
StPackData - - - - 0 1 - - - - - - - - - Covered T1,T2,T4
StPackData - - - - 0 0 1 - - - - - - - - Covered T1,T2,T16
StPackData - - - - 0 0 0 - - - - - - - - Covered T1,T2,T16
StPostPack - - - - - - - 1 - - - - - - - Covered T1,T2,T4
StPostPack - - - - - - - 0 - - - - - - - Covered T18,T22,T23
StCalcPlainEcc - - - - - - - - 1 - - - - - - Covered T16,T83,T20
StCalcPlainEcc - - - - - - - - 0 - - - - - - Covered T1,T2,T16
StCalcMask - - - - - - - - - 1 - - - - - Covered T16,T83,T20
StCalcMask - - - - - - - - - 0 - - - - - Covered T16,T83,T20
StScrambleData - - - - - - - - - - 1 - - - - Covered T16,T83,T20
StScrambleData - - - - - - - - - - 0 - - - - Covered T16,T83,T20
StCalcEcc - - - - - - - - - - - - - - - Covered T16,T83,T20
StReqFlash - - - - - - - - - - - 1 1 - - Covered T1,T2,T16
StReqFlash - - - - - - - - - - - 1 0 - - Covered T1,T2,T16
StReqFlash - - - - - - - - - - - 0 - 1 - Covered T1,T2,T16
StReqFlash - - - - - - - - - - - 0 - 0 - Covered T1,T2,T16
StWaitFlash - - - - - - - - - - - - - - 1 Covered T1,T2,T16
StWaitFlash - - - - - - - - - - - - - - 0 Covered T1,T2,T16
StDisabled - - - - - - - - - - - - - - - Covered T20,T11,T21
default - - - - - - - - - - - - - - - Covered T18,T22,T23


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,T16
0 0 1 - - Covered T16,T83,T20
0 0 0 1 - Covered T16,T83,T20
0 0 0 0 1 Covered T1,T2,T16
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,T16
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 369205635 1196756 0 0
PostPackRule_A 369205635 1025 0 0
PrePackRule_A 369205635 707 0 0
WidthCheck_A 879 879 0 0
u_state_regs_A 369205635 368536966 0 0


OneDonePerTxn_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 369205635 1196756 0 0
T1 422125 196 0 0
T2 70426 4 0 0
T3 231244 0 0 0
T4 25989 12 0 0
T5 835385 0 0 0
T6 2278 0 0 0
T10 1656 0 0 0
T11 0 1 0 0
T12 0 28 0 0
T16 439758 1291 0 0
T17 59335 0 0 0
T20 0 33280 0 0
T25 1206 0 0 0
T26 0 64 0 0
T44 0 96 0 0
T83 0 1 0 0

PostPackRule_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 369205635 1025 0 0
T1 422125 1 0 0
T2 70426 3 0 0
T3 231244 0 0 0
T4 25989 8 0 0
T5 835385 0 0 0
T6 2278 0 0 0
T10 1656 0 0 0
T12 0 17 0 0
T13 0 32 0 0
T16 439758 0 0 0
T17 59335 0 0 0
T25 1206 0 0 0
T30 0 21 0 0
T54 0 2 0 0
T93 0 1 0 0
T138 0 5 0 0
T214 0 1 0 0

PrePackRule_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 369205635 707 0 0
T1 422125 2 0 0
T2 70426 3 0 0
T3 231244 0 0 0
T4 25989 9 0 0
T5 835385 0 0 0
T6 2278 0 0 0
T10 1656 0 0 0
T12 0 10 0 0
T13 0 19 0 0
T16 439758 0 0 0
T17 59335 0 0 0
T25 1206 0 0 0
T27 0 4 0 0
T30 0 13 0 0
T54 0 2 0 0
T57 0 3 0 0
T138 0 5 0 0

WidthCheck_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 879 879 0 0
T1 1 1 0 0
T2 1 1 0 0
T3 1 1 0 0
T4 1 1 0 0
T5 1 1 0 0
T6 1 1 0 0
T10 1 1 0 0
T16 1 1 0 0
T17 1 1 0 0
T25 1 1 0 0

u_state_regs_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 369205635 368536966 0 0
T1 422125 422067 0 0
T2 70426 70363 0 0
T3 231244 231081 0 0
T4 25989 24686 0 0
T5 835385 835232 0 0
T6 2278 2215 0 0
T10 1656 1598 0 0
T16 439758 439702 0 0
T17 59335 59262 0 0
T25 1206 1154 0 0

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