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
1CoveredT1,T2,T4

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

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

 LINE       126
 SUB-EXPRESSION (pack_valid & ((~data_intg_ok)))
                 -----1----   --------2--------
-1--2-StatusTests
01CoveredT1,T2,T3
10CoveredT1,T2,T4
11CoveredT11,T101,T170

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

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

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

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

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

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

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

 LINE       204
 EXPRESSION (idx == align_next)
            ---------1---------
-1-StatusTests
0CoveredT14,T15
1CoveredT1,T5,T9

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

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

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

 LINE       230
 EXPRESSION (idx == MaxIdx)
            -------1-------
-1-StatusTests
0CoveredT14,T15
1CoveredT1,T5,T9

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

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

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

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

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

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

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

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

 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
StCalcMask 237 Covered T16
StCalcPlainEcc 215 Covered T16
StDisabled 193 Covered T16
StIdle 273 Covered T16
StPackData 197 Covered T16
StPostPack 218 Covered T16
StPrePack 195 Covered T16
StReqFlash 237 Covered T16
StScrambleData 244 Covered T16
StWaitFlash 270 Covered T16


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



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


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

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


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

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


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

Branches:
-1--2-StatusTests
1 - Covered T1,T2,T4
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,T4
0 0 1 Covered T1,T2,T4
0 0 0 Covered T1,T2,T3


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

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


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

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


LineNo. Expression -1-: 299 if ((!rst_ni)) -2-: 302 if ((req_o && ack)) -3-: 304 if ((calc_req_o && calc_ack_i)) -4-: 307 if ((scramble_req_o && scramble_ack_i)) -5-: 309 if (pack_valid)

Branches:
-1--2--3--4--5-StatusTests
1 - - - - Covered T1,T2,T3
0 1 - - - Covered T1,T2,T4
0 0 1 - - Unreachable T1,T2,T5
0 0 0 1 - Covered T1,T2,T5
0 0 0 0 1 Covered T1,T2,T4
0 0 0 0 0 Covered T1,T2,T3


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

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


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

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


Assert Coverage for 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 825123306 2375811 0 0
PostPackRule_A 825123306 30573 0 0
PrePackRule_A 825123306 14871 0 0
WidthCheck_A 2104 2104 0 0
u_state_regs_A 825123306 823601392 0 0


OneDonePerTxn_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 825123306 2375811 0 0
T1 670774 1422 0 0
T2 800868 65920 0 0
T3 6786 0 0 0
T4 97076 32 0 0
T5 145828 237 0 0
T6 2106 0 0 0
T8 90876 0 0 0
T9 0 6 0 0
T10 28464 0 0 0
T20 2200 0 0 0
T21 1888 0 0 0
T22 0 64 0 0
T23 0 240 0 0
T25 0 32 0 0
T45 0 1373 0 0
T46 0 613 0 0
T47 0 350 0 0
T58 0 320 0 0
T84 0 65920 0 0

PostPackRule_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 825123306 30573 0 0
T1 670774 405 0 0
T2 800868 0 0 0
T3 6786 0 0 0
T4 97076 0 0 0
T5 145828 50 0 0
T6 2106 0 0 0
T8 90876 0 0 0
T9 0 3 0 0
T10 28464 0 0 0
T20 2200 0 0 0
T21 1888 0 0 0
T22 0 33 0 0
T26 0 85 0 0
T29 0 2 0 0
T30 0 8 0 0
T39 0 3 0 0
T45 0 499 0 0
T46 0 467 0 0
T47 0 264 0 0
T104 0 116 0 0
T235 0 43 0 0

PrePackRule_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 825123306 14871 0 0
T1 670774 255 0 0
T2 800868 0 0 0
T3 6786 0 0 0
T4 97076 0 0 0
T5 145828 29 0 0
T6 2106 0 0 0
T8 90876 0 0 0
T9 0 3 0 0
T10 28464 0 0 0
T20 2200 0 0 0
T21 1888 0 0 0
T22 0 25 0 0
T26 0 60 0 0
T29 0 1 0 0
T30 0 3 0 0
T39 0 3 0 0
T45 0 279 0 0
T46 0 189 0 0
T47 0 133 0 0
T104 0 73 0 0
T235 0 12 0 0

WidthCheck_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 2104 2104 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
T8 2 2 0 0
T10 2 2 0 0
T20 2 2 0 0
T21 2 2 0 0

u_state_regs_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 825123306 823601392 0 0
T1 670774 670576 0 0
T2 800868 800836 0 0
T3 6786 5600 0 0
T4 97076 96940 0 0
T5 145828 145630 0 0
T6 2106 1972 0 0
T8 90876 90750 0 0
T10 28464 28250 0 0
T20 2200 2034 0 0
T21 1888 1788 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
1CoveredT1,T2,T5

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

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

 LINE       126
 SUB-EXPRESSION (pack_valid & ((~data_intg_ok)))
                 -----1----   --------2--------
-1--2-StatusTests
01CoveredT1,T2,T3
10CoveredT1,T2,T5
11CoveredT11,T13,T278

 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,T13,T278
10CoveredT1,T2,T10

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

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

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

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

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

 LINE       204
 EXPRESSION (idx == align_next)
            ---------1---------
-1-StatusTests
0CoveredT14,T15
1CoveredT1,T5,T22

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

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

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

 LINE       230
 EXPRESSION (idx == MaxIdx)
            -------1-------
-1-StatusTests
0CoveredT14,T15
1CoveredT1,T5,T22

 LINE       237
 EXPRESSION (scramble_i ? StCalcMask : StReqFlash)
             -----1----
-1-StatusTests
0CoveredT1,T9,T22
1CoveredT2,T5,T84

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

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

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

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

 LINE       307
 EXPRESSION (scramble_req_o && scramble_ack_i)
             -------1------    -------2------
-1--2-StatusTests
01CoveredT1,T2,T10
10CoveredT2,T5,T84
11CoveredT2,T5,T84

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

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

 LINE       366
 SUB-EXPRESSION (done ? ((done_cnt_q + 16'b1)) : done_cnt_q)
                 --1-
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT1,T2,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 T16
StCalcMask 237 Covered T16
StCalcPlainEcc 215 Covered T16
StDisabled 193 Covered T16
StIdle 273 Covered T16
StPackData 197 Covered T16
StPostPack 218 Covered T16
StPrePack 195 Covered T16
StReqFlash 237 Covered T16
StScrambleData 244 Covered T16
StWaitFlash 270 Covered T16


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



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


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

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


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

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


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

Branches:
-1--2-StatusTests
1 - Covered T1,T2,T5
0 1 Covered T1,T2,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,T2,T5
0 0 1 Covered T1,T2,T5
0 0 0 Covered T1,T2,T3


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

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


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

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


LineNo. Expression -1-: 299 if ((!rst_ni)) -2-: 302 if ((req_o && ack)) -3-: 304 if ((calc_req_o && calc_ack_i)) -4-: 307 if ((scramble_req_o && scramble_ack_i)) -5-: 309 if (pack_valid)

Branches:
-1--2--3--4--5-StatusTests
1 - - - - Covered T1,T2,T3
0 1 - - - Covered T1,T2,T5
0 0 1 - - Unreachable T2,T5,T84
0 0 0 1 - Covered T2,T5,T84
0 0 0 0 1 Covered T1,T2,T5
0 0 0 0 0 Covered T1,T2,T3


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

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


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

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


Assert Coverage for Instance : tb.dut.u_eflash.gen_flash_cores[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 412561653 1168703 0 0
PostPackRule_A 412561653 13092 0 0
PrePackRule_A 412561653 6182 0 0
WidthCheck_A 1052 1052 0 0
u_state_regs_A 412561653 411800696 0 0


OneDonePerTxn_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 412561653 1168703 0 0
T1 335387 817 0 0
T2 400434 32768 0 0
T3 3393 0 0 0
T4 48538 0 0 0
T5 72914 91 0 0
T6 1053 0 0 0
T8 45438 0 0 0
T9 0 1 0 0
T10 14232 0 0 0
T20 1100 0 0 0
T21 944 0 0 0
T22 0 32 0 0
T45 0 604 0 0
T46 0 613 0 0
T47 0 350 0 0
T58 0 320 0 0
T84 0 32768 0 0

PostPackRule_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 412561653 13092 0 0
T1 335387 169 0 0
T2 400434 0 0 0
T3 3393 0 0 0
T4 48538 0 0 0
T5 72914 22 0 0
T6 1053 0 0 0
T8 45438 0 0 0
T10 14232 0 0 0
T20 1100 0 0 0
T21 944 0 0 0
T22 0 18 0 0
T26 0 25 0 0
T30 0 8 0 0
T45 0 201 0 0
T46 0 234 0 0
T47 0 133 0 0
T104 0 116 0 0
T235 0 43 0 0

PrePackRule_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 412561653 6182 0 0
T1 335387 133 0 0
T2 400434 0 0 0
T3 3393 0 0 0
T4 48538 0 0 0
T5 72914 9 0 0
T6 1053 0 0 0
T8 45438 0 0 0
T10 14232 0 0 0
T20 1100 0 0 0
T21 944 0 0 0
T22 0 16 0 0
T26 0 12 0 0
T30 0 3 0 0
T45 0 103 0 0
T46 0 112 0 0
T47 0 40 0 0
T104 0 73 0 0
T235 0 12 0 0

WidthCheck_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 1052 1052 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
T8 1 1 0 0
T10 1 1 0 0
T20 1 1 0 0
T21 1 1 0 0

u_state_regs_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 412561653 411800696 0 0
T1 335387 335288 0 0
T2 400434 400418 0 0
T3 3393 2800 0 0
T4 48538 48470 0 0
T5 72914 72815 0 0
T6 1053 986 0 0
T8 45438 45375 0 0
T10 14232 14125 0 0
T20 1100 1017 0 0
T21 944 894 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
1CoveredT1,T2,T4

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

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

 LINE       126
 SUB-EXPRESSION (pack_valid & ((~data_intg_ok)))
                 -----1----   --------2--------
-1--2-StatusTests
01CoveredT1,T2,T3
10CoveredT1,T2,T4
11CoveredT11,T101,T170

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

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

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

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

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

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

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

 LINE       204
 EXPRESSION (idx == align_next)
            ---------1---------
-1-StatusTests
0CoveredT14,T15
1CoveredT1,T5,T9

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

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

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

 LINE       230
 EXPRESSION (idx == MaxIdx)
            -------1-------
-1-StatusTests
0CoveredT14,T15
1CoveredT1,T5,T9

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

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

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

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

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

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

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

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

 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
StCalcMask 237 Covered T16
StCalcPlainEcc 215 Covered T16
StDisabled 193 Covered T16
StIdle 273 Covered T16
StPackData 197 Covered T16
StPostPack 218 Covered T16
StPrePack 195 Covered T16
StReqFlash 237 Covered T16
StScrambleData 244 Covered T16
StWaitFlash 270 Covered T16


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



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


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

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


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

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


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

Branches:
-1--2-StatusTests
1 - Covered T1,T2,T4
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,T4
0 0 1 Covered T1,T2,T4
0 0 0 Covered T1,T2,T3


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

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


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

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


LineNo. Expression -1-: 299 if ((!rst_ni)) -2-: 302 if ((req_o && ack)) -3-: 304 if ((calc_req_o && calc_ack_i)) -4-: 307 if ((scramble_req_o && scramble_ack_i)) -5-: 309 if (pack_valid)

Branches:
-1--2--3--4--5-StatusTests
1 - - - - Covered T1,T2,T3
0 1 - - - Covered T1,T2,T4
0 0 1 - - Unreachable T1,T2,T5
0 0 0 1 - Covered T1,T2,T5
0 0 0 0 1 Covered T1,T2,T4
0 0 0 0 0 Covered T1,T2,T3


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

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


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

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


Assert Coverage for Instance : tb.dut.u_eflash.gen_flash_cores[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 412561653 1207108 0 0
PostPackRule_A 412561653 17481 0 0
PrePackRule_A 412561653 8689 0 0
WidthCheck_A 1052 1052 0 0
u_state_regs_A 412561653 411800696 0 0


OneDonePerTxn_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 412561653 1207108 0 0
T1 335387 605 0 0
T2 400434 33152 0 0
T3 3393 0 0 0
T4 48538 32 0 0
T5 72914 146 0 0
T6 1053 0 0 0
T8 45438 0 0 0
T9 0 5 0 0
T10 14232 0 0 0
T20 1100 0 0 0
T21 944 0 0 0
T22 0 32 0 0
T23 0 240 0 0
T25 0 32 0 0
T45 0 769 0 0
T84 0 33152 0 0

PostPackRule_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 412561653 17481 0 0
T1 335387 236 0 0
T2 400434 0 0 0
T3 3393 0 0 0
T4 48538 0 0 0
T5 72914 28 0 0
T6 1053 0 0 0
T8 45438 0 0 0
T9 0 3 0 0
T10 14232 0 0 0
T20 1100 0 0 0
T21 944 0 0 0
T22 0 15 0 0
T26 0 60 0 0
T29 0 2 0 0
T39 0 3 0 0
T45 0 298 0 0
T46 0 233 0 0
T47 0 131 0 0

PrePackRule_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 412561653 8689 0 0
T1 335387 122 0 0
T2 400434 0 0 0
T3 3393 0 0 0
T4 48538 0 0 0
T5 72914 20 0 0
T6 1053 0 0 0
T8 45438 0 0 0
T9 0 3 0 0
T10 14232 0 0 0
T20 1100 0 0 0
T21 944 0 0 0
T22 0 9 0 0
T26 0 48 0 0
T29 0 1 0 0
T39 0 3 0 0
T45 0 176 0 0
T46 0 77 0 0
T47 0 93 0 0

WidthCheck_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 1052 1052 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
T8 1 1 0 0
T10 1 1 0 0
T20 1 1 0 0
T21 1 1 0 0

u_state_regs_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 412561653 411800696 0 0
T1 335387 335288 0 0
T2 400434 400418 0 0
T3 3393 2800 0 0
T4 48538 48470 0 0
T5 72914 72815 0 0
T6 1053 986 0 0
T8 45438 45375 0 0
T10 14232 14125 0 0
T20 1100 1017 0 0
T21 944 894 0 0

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