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



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

Instance :
SCORELINECONDTOGGLEFSMBRANCHASSERT
96.55 100.00 84.91 100.00 97.83 100.00


Instance's subtree :
SCORELINECONDTOGGLEFSMBRANCHASSERT
97.24 97.07 93.12 96.90 100.00 99.29 97.06


Parent :
SCORELINECONDTOGGLEFSMBRANCHASSERTNAME
95.89 97.67 90.00 100.00 u_eflash


Subtrees :
NAMESCORELINECONDTOGGLEFSMBRANCHASSERT
gen_prog_data.u_prog 98.65 100.00 96.92 95.00 100.00 100.00 100.00
u_disable_buf 100.00 100.00 100.00
u_erase 97.22 100.00 88.89 100.00 100.00
u_host_arb 93.98 75.93 100.00 100.00 100.00
u_host_outstanding_cnt 100.00 100.00
u_rd 97.06 97.64 93.48 100.00 99.37 94.83
u_state_regs 100.00 100.00 100.00 100.00



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

Instance :
SCORELINECONDTOGGLEFSMBRANCHASSERT
97.87 100.00 91.51 100.00 97.83 100.00


Instance's subtree :
SCORELINECONDTOGGLEFSMBRANCHASSERT
97.88 97.07 93.87 100.00 100.00 99.29 97.06


Parent :
SCORELINECONDTOGGLEFSMBRANCHASSERTNAME
95.89 97.67 90.00 100.00 u_eflash


Subtrees :
NAMESCORELINECONDTOGGLEFSMBRANCHASSERT
gen_prog_data.u_prog 99.74 100.00 98.46 100.00 100.00 100.00 100.00
u_disable_buf 100.00 100.00 100.00
u_erase 97.22 100.00 88.89 100.00 100.00
u_host_arb 93.98 75.93 100.00 100.00 100.00
u_host_outstanding_cnt 100.00 100.00
u_rd 97.11 97.64 93.72 100.00 99.37 94.83
u_state_regs 100.00 100.00 100.00 100.00

Line Coverage for Module : flash_phy_core
Line No.TotalCoveredPercent
TOTAL8989100.00
ALWAYS15266100.00
ALWAYS16533100.00
CONT_ASSIGN19611100.00
CONT_ASSIGN20011100.00
ALWAYS20344100.00
ALWAYS21566100.00
ALWAYS22966100.00
CONT_ASSIGN27711100.00
CONT_ASSIGN28011100.00
CONT_ASSIGN28111100.00
CONT_ASSIGN28211100.00
CONT_ASSIGN28711100.00
CONT_ASSIGN31711100.00
CONT_ASSIGN32111100.00
ALWAYS3252929100.00
CONT_ASSIGN38811100.00
CONT_ASSIGN39211100.00
CONT_ASSIGN39311100.00
CONT_ASSIGN39411100.00
CONT_ASSIGN39511100.00
CONT_ASSIGN39611100.00
CONT_ASSIGN39711100.00
CONT_ASSIGN39811100.00
CONT_ASSIGN41511100.00
CONT_ASSIGN42811100.00
CONT_ASSIGN52311100.00
CONT_ASSIGN55011100.00
CONT_ASSIGN55111100.00
CONT_ASSIGN55211100.00
CONT_ASSIGN55311100.00
CONT_ASSIGN55511100.00
CONT_ASSIGN55611100.00
CONT_ASSIGN55711100.00
CONT_ASSIGN55811100.00
CONT_ASSIGN55911100.00
CONT_ASSIGN56011100.00
CONT_ASSIGN56111100.00
CONT_ASSIGN56811100.00
CONT_ASSIGN58511100.00
CONT_ASSIGN58611100.00
CONT_ASSIGN58711100.00
WARNING: The source file '/workspace/default/sim-vcs/../src/lowrisc_opentitan_top_earlgrey_flash_ctrl_0.1/rtl/flash_phy_core.sv' or '../src/lowrisc_opentitan_top_earlgrey_flash_ctrl_0.1/rtl/flash_phy_core.sv' was not found, so annotated line coverage report could not be generated.
Line No.CoveredStatements
152 1 1
153 1 1
154 1 1
155 1 1
156 1 1
157 1 1
MISSING_ELSE
165 3 3
196 1 1
200 1 1
203 1 1
204 1 1
205 1 1
206 1 1
MISSING_ELSE
215 1 1
216 1 1
217 1 1
218 1 1
219 1 1
220 1 1
MISSING_ELSE
229 1 1
230 1 1
231 1 1
232 1 1
233 1 1
234 1 1
MISSING_ELSE
277 1 1
280 1 1
281 1 1
282 1 1
287 1 1
317 1 1
321 1 1
325 1 1
326 1 1
327 1 1
328 1 1
329 1 1
331 1 1
333 1 1
334 1 1
335 1 1
336 1 1
337 1 1
338 1 1
339 1 1
340 1 1
341 1 1
MISSING_ELSE
347 1 1
348 1 1
349 1 1
MISSING_ELSE
356 1 1
357 1 1
358 1 1
359 1 1
MISSING_ELSE
365 1 1
366 1 1
367 1 1
368 1 1
369 1 1
MISSING_ELSE
374 1 1
375 1 1
388 1 1
392 1 1
393 1 1
394 1 1
395 1 1
396 1 1
397 1 1
398 1 1
415 1 1
428 1 1
523 1 1
550 1 1
551 1 1
552 1 1
553 1 1
555 1 1
556 1 1
557 1 1
558 1 1
559 1 1
560 1 1
561 1 1
568 1 1
585 1 1
586 1 1
587 1 1


Cond Coverage for Module : flash_phy_core
TotalCoveredPercent
Conditions1069791.51
Logical1069791.51
Non-Logical00
Event00

 LINE       196
 EXPRESSION (host_gnt && (muxed_part != FlashPartData))
             ----1---    --------------2--------------
-1--2-StatusTests
01CoveredT1,T2,T3
10CoveredT2,T3,T12
11CoveredT169,T15,T173

 LINE       196
 SUB-EXPRESSION (muxed_part != FlashPartData)
                --------------1--------------
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT1,T2,T3

 LINE       200
 EXPRESSION (((|host_outstanding)) & ((!ctrl_fsm_idle)))
             ----------1----------   ---------2--------
-1--2-StatusTests
01CoveredT1,T2,T3
10CoveredT2,T3,T12
11Not Covered

 LINE       205
 EXPRESSION (host_gnt_err_event | host_outstanding_err_event)
             ---------1--------   -------------2------------
-1--2-StatusTests
00CoveredT1,T2,T3
01Not Covered
10CoveredT169,T15,T173

 LINE       217
 EXPRESSION (host_outstanding == '0)
            ------------1-----------
-1-StatusTests
0CoveredT2,T3,T12
1CoveredT1,T2,T3

 LINE       231
 EXPRESSION ((host_outstanding == '0) && ctrl_fsm_idle)
             ------------1-----------    ------2------
-1--2-StatusTests
01CoveredT2,T3,T12
10CoveredT1,T2,T3
11CoveredT1,T2,T3

 LINE       231
 SUB-EXPRESSION (host_outstanding == '0)
                ------------1-----------
-1-StatusTests
0CoveredT2,T3,T12
1CoveredT1,T2,T3

 LINE       242
 EXPRESSION (host_gnt && ((!host_req_done_o)) && (host_outstanding <= flash_phy_pkg::RspOrderDepth))
             ----1---    ----------2---------    -------------------------3------------------------
-1--2--3-StatusTests
011CoveredT1,T2,T3
101CoveredT12,T6,T7
110Not Covered
111CoveredT2,T3,T12

 LINE       242
 EXPRESSION (((!host_gnt)) && host_req_done_o && ((|host_outstanding)))
             ------1------    -------2-------    ----------3----------
-1--2--3-StatusTests
011CoveredT12,T6,T7
101CoveredT2,T3,T12
110CoveredT61
111CoveredT2,T3,T12

 LINE       281
 EXPRESSION (host_req & host_req_rdy_o)
             ----1---   -------2------
-1--2-StatusTests
01CoveredT164,T55
10CoveredT2,T3,T12
11CoveredT2,T3,T12

 LINE       282
 EXPRESSION (((|host_outstanding)) & rd_stage_data_valid)
             ----------1----------   ---------2---------
-1--2-StatusTests
01CoveredT1,T2,T3
10CoveredT2,T3,T12
11CoveredT2,T3,T12

 LINE       317
 EXPRESSION ((phy_req & host_req) ? rd_stage_rdy : rd_stage_idle)
             ----------1---------
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT2,T3,T12

 LINE       317
 SUB-EXPRESSION (phy_req & host_req)
                 ---1---   ----2---
-1--2-StatusTests
01Not Covered
10CoveredT1,T2,T3
11CoveredT2,T3,T12

 LINE       321
 EXPRESSION (req_i & host_gnt)
             --1--   ----2---
-1--2-StatusTests
01CoveredT2,T3,T12
10CoveredT1,T2,T3
11CoveredT6,T7,T8

 LINE       336
 EXPRESSION (ctrl_gnt && rd_i)
             ----1---    --2-
-1--2-StatusTests
01CoveredT1,T2,T3
10CoveredT1,T2,T3
11CoveredT1,T2,T3

 LINE       338
 EXPRESSION (ctrl_gnt && prog_i)
             ----1---    ---2--
-1--2-StatusTests
01CoveredT1,T3,T19
10CoveredT2,T4,T20
11CoveredT1,T3,T19

 LINE       388
 EXPRESSION ((ctrl_fsm_idle & ctrl_rsp_vld) | ((host_outstanding == '0) & host_req_done_o))
             ---------------1--------------   ----------------------2---------------------
-1--2-StatusTests
00CoveredT1,T2,T3
01CoveredT61
10CoveredT201,T202,T203

 LINE       388
 SUB-EXPRESSION (ctrl_fsm_idle & ctrl_rsp_vld)
                 ------1------   ------2-----
-1--2-StatusTests
01CoveredT1,T2,T3
10CoveredT1,T2,T3
11CoveredT201,T202,T203

 LINE       388
 SUB-EXPRESSION ((host_outstanding == '0) & host_req_done_o)
                 ------------1-----------   -------2-------
-1--2-StatusTests
01CoveredT2,T3,T12
10CoveredT1,T2,T3
11CoveredT61

 LINE       388
 SUB-EXPRESSION (host_outstanding == '0)
                ------------1-----------
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT1,T2,T3

 LINE       392
 EXPRESSION (host_sel ? host_addr_i : addr_i)
             ----1---
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT2,T3,T12

 LINE       393
 EXPRESSION (host_sel ? FlashPartData : part_i)
             ----1---
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT2,T3,T12

 LINE       394
 EXPRESSION (host_sel ? host_scramble_en_i : scramble_en_i)
             ----1---
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT2,T3,T12

 LINE       395
 EXPRESSION (host_sel ? host_ecc_en_i : ecc_en_i)
             ----1---
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT2,T3,T12

 LINE       396
 EXPRESSION (ctrl_rsp_vld & rd_i)
             ------1-----   --2-
-1--2-StatusTests
01CoveredT1,T2,T3
10CoveredT1,T2,T3
11CoveredT1,T2,T3

 LINE       397
 EXPRESSION (ctrl_rsp_vld & prog_i)
             ------1-----   ---2--
-1--2-StatusTests
01CoveredT1,T3,T19
10CoveredT1,T2,T3
11CoveredT1,T3,T19

 LINE       398
 EXPRESSION (ctrl_rsp_vld & (pg_erase_i | bk_erase_i))
             ------1-----   ------------2------------
-1--2-StatusTests
01CoveredT2,T4,T20
10CoveredT1,T2,T3
11CoveredT2,T4,T20

 LINE       398
 SUB-EXPRESSION (pg_erase_i | bk_erase_i)
                 -----1----   -----2----
-1--2-StatusTests
00CoveredT1,T2,T3
01CoveredT4,T13,T74
10CoveredT2,T4,T20

 LINE       428
 EXPRESSION ((host_gnt_rd_err & (host_outstanding == 1'b1)) | host_outstanding_rd_err)
             -----------------------1----------------------   -----------2-----------
-1--2-StatusTests
00CoveredT1,T2,T3
01Not Covered
10Not Covered

 LINE       428
 SUB-EXPRESSION (host_gnt_rd_err & (host_outstanding == 1'b1))
                 -------1-------   -------------2------------
-1--2-StatusTests
01CoveredT2,T3,T12
10Not Covered
11Not Covered

 LINE       428
 SUB-EXPRESSION (host_outstanding == 1'b1)
                -------------1------------
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT2,T3,T12

 LINE       431
 EXPRESSION (phy_req & (rd_i | host_req))
             ---1---   --------2--------
-1--2-StatusTests
01CoveredT1,T2,T3
10CoveredT1,T2,T3
11CoveredT1,T2,T3

 LINE       431
 SUB-EXPRESSION (rd_i | host_req)
                 --1-   ----2---
-1--2-StatusTests
00CoveredT1,T2,T3
01CoveredT2,T3,T12
10CoveredT1,T2,T3

 LINE       431
 EXPRESSION (arb_host_gnt_err ? ({flash_phy_pkg::FullDataWidth {1'b1}}) : flash_rdata)
             --------1-------
-1-StatusTests
0CoveredT1,T2,T3
1Not Covered

 LINE       523
 EXPRESSION (fsm_err | prog_fsm_err)
             ---1---   ------2-----
-1--2-StatusTests
00CoveredT1,T2,T3
01CoveredT17,T18,T41
10CoveredT17,T18,T41

 LINE       550
 EXPRESSION (prog_calc_req | rd_calc_req)
             ------1------   -----2-----
-1--2-StatusTests
00CoveredT1,T2,T3
01CoveredT1,T2,T3
10CoveredT1,T3,T13

 LINE       551
 EXPRESSION (prog_op_req | rd_op_req)
             -----1-----   ----2----
-1--2-StatusTests
00CoveredT1,T2,T3
01CoveredT1,T2,T3
10CoveredT1,T3,T13

 LINE       552
 EXPRESSION (prog_op_req ? ScrambleOp : DeScrambleOp)
             -----1-----
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT1,T3,T13

 LINE       553
 EXPRESSION (prog_calc_req ? muxed_addr[(flash_phy_pkg::BusBankAddrW - 1):flash_phy_pkg::LsbAddrBit] : rd_calc_addr)
             ------1------
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT1,T3,T13

FSM Coverage for Module : flash_phy_core
Summary for FSM :: state_q
TotalCoveredPercent
States 5 5 100.00 (Not included in score)
Transitions 7 7 100.00
Sequences 0 0

State, Transition and Sequence Details for FSM :: state_q
statesLine No.CoveredTests
StCtrl 341 Covered T2,T4,T20
StCtrlProg 339 Covered T1,T3,T19
StCtrlRead 337 Covered T1,T2,T3
StDisable 335 Covered T12,T13,T14
StIdle 349 Covered T1,T2,T3


transitionsLine No.CoveredTests
StCtrl->StIdle 369 Covered T2,T4,T20
StCtrlProg->StIdle 359 Covered T1,T3,T19
StCtrlRead->StIdle 349 Covered T1,T2,T3
StIdle->StCtrl 341 Covered T2,T4,T20
StIdle->StCtrlProg 339 Covered T1,T3,T19
StIdle->StCtrlRead 337 Covered T1,T2,T3
StIdle->StDisable 335 Covered T12,T13,T14



Branch Coverage for Module : flash_phy_core
Line No.TotalCoveredPercent
Branches 46 45 97.83
TERNARY 317 2 2 100.00
TERNARY 392 2 2 100.00
TERNARY 393 2 2 100.00
TERNARY 394 2 2 100.00
TERNARY 395 2 2 100.00
TERNARY 552 2 2 100.00
TERNARY 553 2 2 100.00
TERNARY 431 2 1 50.00
IF 152 4 4 100.00
IF 165 2 2 100.00
IF 203 3 3 100.00
IF 215 4 4 100.00
IF 229 4 4 100.00
CASE 331 13 13 100.00

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

LineNo. Expression -1-: 317 ((phy_req & host_req)) ?

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


LineNo. Expression -1-: 392 (host_sel) ?

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


LineNo. Expression -1-: 393 (host_sel) ?

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


LineNo. Expression -1-: 394 (host_sel) ?

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


LineNo. Expression -1-: 395 (host_sel) ?

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


LineNo. Expression -1-: 552 (prog_op_req) ?

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


LineNo. Expression -1-: 553 (prog_calc_req) ?

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


LineNo. Expression -1-: 431 (arb_host_gnt_err) ?

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


LineNo. Expression -1-: 152 if ((!rst_ni)) -2-: 154 if (ctrl_rsp_vld) -3-: 156 if (inc_arb_cnt)

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


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

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


LineNo. Expression -1-: 203 if ((!rst_ni)) -2-: 205 if ((host_gnt_err_event | host_outstanding_err_event))

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


LineNo. Expression -1-: 215 if ((!rst_ni)) -2-: 217 if ((host_outstanding == '0)) -3-: 219 if (host_gnt_err_event)

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


LineNo. Expression -1-: 229 if ((!rst_ni)) -2-: 231 if (((host_outstanding == '0) && ctrl_fsm_idle)) -3-: 233 if (host_outstanding_err_event)

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


LineNo. Expression -1-: 331 case (state_q) -2-: 334 if (prim_mubi_pkg::mubi4_test_true_loose(flash_disable[FsmDisableIdx])) -3-: 336 if ((ctrl_gnt && rd_i)) -4-: 338 if ((ctrl_gnt && prog_i)) -5-: 340 if (ctrl_gnt) -6-: 347 if (rd_stage_data_valid) -7-: 357 if (prog_ack) -8-: 367 if (erase_ack)

Branches:
-1--2--3--4--5--6--7--8-StatusTests
StIdle 1 - - - - - - Covered T12,T13,T14
StIdle 0 1 - - - - - Covered T1,T2,T3
StIdle 0 0 1 - - - - Covered T1,T3,T19
StIdle 0 0 0 1 - - - Covered T2,T4,T20
StIdle 0 0 0 0 - - - Covered T1,T2,T3
StCtrlRead - - - - 1 - - Covered T1,T2,T3
StCtrlRead - - - - 0 - - Covered T1,T2,T3
StCtrlProg - - - - - 1 - Covered T1,T3,T19
StCtrlProg - - - - - 0 - Covered T1,T3,T19
StCtrl - - - - - - 1 Covered T2,T4,T20
StCtrl - - - - - - 0 Covered T2,T4,T20
StDisable - - - - - - - Covered T12,T13,T14
default - - - - - - - Covered T17,T15,T18


Assert Coverage for Module : flash_phy_core
TotalAttemptedPercentSucceeded/MatchedPercent
Assertions 8 8 100.00 8 100.00
Cover properties 0 0 0
Cover sequences 0 0 0
Total 8 8 100.00 8 100.00




Assertion Details

NameAttemptsReal SuccessesFailuresIncomplete
ArbCntMax_A 780399184 2501979 0 0
CtrlPrio_A 780399184 2501979 0 0
HostTransIdleChk_A 780399184 44492308 0 0
NoRemainder_A 2080 2080 0 0
OneHotReqs_A 780399184 778679196 0 0
Pow2Multiple_A 2080 2080 0 0
RdTxnCheck_A 779958012 778238024 0 0
u_state_regs_A 780399184 778679196 0 0


ArbCntMax_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 780399184 2501979 0 0
T4 849503 0 0 0
T5 97073 0 0 0
T6 52732 3395 0 0
T7 248486 76117 0 0
T8 160793 5624 0 0
T13 168374 0 0 0
T14 1297 0 0 0
T20 82730 0 0 0
T21 2530 0 0 0
T22 1029 0 0 0
T23 85039 3266 0 0
T26 7978 0 0 0
T31 152144 0 0 0
T32 0 3794 0 0
T34 0 50367 0 0
T44 0 3337 0 0
T45 334333 0 0 0
T48 0 6966 0 0
T56 0 9493 0 0
T57 0 11154 0 0
T63 135672 0 0 0
T74 501794 0 0 0
T96 6536 0 0 0
T97 0 84 0 0
T132 0 5721 0 0
T165 0 15450 0 0
T204 0 83327 0 0
T205 0 1415 0 0

CtrlPrio_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 780399184 2501979 0 0
T4 849503 0 0 0
T5 97073 0 0 0
T6 52732 3395 0 0
T7 248486 76117 0 0
T8 160793 5624 0 0
T13 168374 0 0 0
T14 1297 0 0 0
T20 82730 0 0 0
T21 2530 0 0 0
T22 1029 0 0 0
T23 85039 3266 0 0
T26 7978 0 0 0
T31 152144 0 0 0
T32 0 3794 0 0
T34 0 50367 0 0
T44 0 3337 0 0
T45 334333 0 0 0
T48 0 6966 0 0
T56 0 9493 0 0
T57 0 11154 0 0
T63 135672 0 0 0
T74 501794 0 0 0
T96 6536 0 0 0
T97 0 84 0 0
T132 0 5721 0 0
T165 0 15450 0 0
T204 0 83327 0 0
T205 0 1415 0 0

HostTransIdleChk_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 780399184 44492308 0 0
T2 10354 60 0 0
T3 6248 10 0 0
T4 1699006 0 0 0
T5 194146 0 0 0
T6 105464 34342 0 0
T7 0 824830 0 0
T8 0 58070 0 0
T12 1348 65 0 0
T19 3096 0 0 0
T20 165460 0 0 0
T21 5060 0 0 0
T23 0 57042 0 0
T26 0 66 0 0
T31 304288 0 0 0
T39 0 474 0 0
T48 0 59584 0 0
T59 0 158 0 0

NoRemainder_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 2080 2080 0 0
T1 2 2 0 0
T2 2 2 0 0
T3 2 2 0 0
T4 2 2 0 0
T5 2 2 0 0
T6 2 2 0 0
T12 2 2 0 0
T19 2 2 0 0
T20 2 2 0 0
T21 2 2 0 0

OneHotReqs_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 780399184 778679196 0 0
T1 16752 16410 0 0
T2 10354 10088 0 0
T3 6248 5966 0 0
T4 1699006 1698868 0 0
T5 194146 192476 0 0
T6 105464 105150 0 0
T12 1348 1216 0 0
T19 3096 2810 0 0
T20 165460 165200 0 0
T21 5060 4896 0 0

Pow2Multiple_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 2080 2080 0 0
T1 2 2 0 0
T2 2 2 0 0
T3 2 2 0 0
T4 2 2 0 0
T5 2 2 0 0
T6 2 2 0 0
T12 2 2 0 0
T19 2 2 0 0
T20 2 2 0 0
T21 2 2 0 0

RdTxnCheck_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 779958012 778238024 0 0
T1 16752 16410 0 0
T2 10354 10088 0 0
T3 6248 5966 0 0
T4 1699006 1698868 0 0
T5 194146 192476 0 0
T6 105464 105150 0 0
T12 1348 1216 0 0
T19 3096 2810 0 0
T20 165460 165200 0 0
T21 5060 4896 0 0

u_state_regs_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 780399184 778679196 0 0
T1 16752 16410 0 0
T2 10354 10088 0 0
T3 6248 5966 0 0
T4 1699006 1698868 0 0
T5 194146 192476 0 0
T6 105464 105150 0 0
T12 1348 1216 0 0
T19 3096 2810 0 0
T20 165460 165200 0 0
T21 5060 4896 0 0

Line Coverage for Instance : tb.dut.u_eflash.gen_flash_cores[1].u_core
Line No.TotalCoveredPercent
TOTAL8989100.00
ALWAYS15266100.00
ALWAYS16533100.00
CONT_ASSIGN19611100.00
CONT_ASSIGN20011100.00
ALWAYS20344100.00
ALWAYS21566100.00
ALWAYS22966100.00
CONT_ASSIGN27711100.00
CONT_ASSIGN28011100.00
CONT_ASSIGN28111100.00
CONT_ASSIGN28211100.00
CONT_ASSIGN28711100.00
CONT_ASSIGN31711100.00
CONT_ASSIGN32111100.00
ALWAYS3252929100.00
CONT_ASSIGN38811100.00
CONT_ASSIGN39211100.00
CONT_ASSIGN39311100.00
CONT_ASSIGN39411100.00
CONT_ASSIGN39511100.00
CONT_ASSIGN39611100.00
CONT_ASSIGN39711100.00
CONT_ASSIGN39811100.00
CONT_ASSIGN41511100.00
CONT_ASSIGN42811100.00
CONT_ASSIGN52311100.00
CONT_ASSIGN55011100.00
CONT_ASSIGN55111100.00
CONT_ASSIGN55211100.00
CONT_ASSIGN55311100.00
CONT_ASSIGN55511100.00
CONT_ASSIGN55611100.00
CONT_ASSIGN55711100.00
CONT_ASSIGN55811100.00
CONT_ASSIGN55911100.00
CONT_ASSIGN56011100.00
CONT_ASSIGN56111100.00
CONT_ASSIGN56811100.00
CONT_ASSIGN58511100.00
CONT_ASSIGN58611100.00
CONT_ASSIGN58711100.00
WARNING: The source file '/workspace/default/sim-vcs/../src/lowrisc_opentitan_top_earlgrey_flash_ctrl_0.1/rtl/flash_phy_core.sv' or '../src/lowrisc_opentitan_top_earlgrey_flash_ctrl_0.1/rtl/flash_phy_core.sv' was not found, so annotated line coverage report could not be generated.
Line No.CoveredStatements
152 1 1
153 1 1
154 1 1
155 1 1
156 1 1
157 1 1
MISSING_ELSE
165 3 3
196 1 1
200 1 1
203 1 1
204 1 1
205 1 1
206 1 1
MISSING_ELSE
215 1 1
216 1 1
217 1 1
218 1 1
219 1 1
220 1 1
MISSING_ELSE
229 1 1
230 1 1
231 1 1
232 1 1
233 1 1
234 1 1
MISSING_ELSE
277 1 1
280 1 1
281 1 1
282 1 1
287 1 1
317 1 1
321 1 1
325 1 1
326 1 1
327 1 1
328 1 1
329 1 1
331 1 1
333 1 1
334 1 1
335 1 1
336 1 1
337 1 1
338 1 1
339 1 1
340 1 1
341 1 1
MISSING_ELSE
347 1 1
348 1 1
349 1 1
MISSING_ELSE
356 1 1
357 1 1
358 1 1
359 1 1
MISSING_ELSE
365 1 1
366 1 1
367 1 1
368 1 1
369 1 1
MISSING_ELSE
374 1 1
375 1 1
388 1 1
392 1 1
393 1 1
394 1 1
395 1 1
396 1 1
397 1 1
398 1 1
415 1 1
428 1 1
523 1 1
550 1 1
551 1 1
552 1 1
553 1 1
555 1 1
556 1 1
557 1 1
558 1 1
559 1 1
560 1 1
561 1 1
568 1 1
585 1 1
586 1 1
587 1 1


Cond Coverage for Instance : tb.dut.u_eflash.gen_flash_cores[1].u_core
TotalCoveredPercent
Conditions1069084.91
Logical1069084.91
Non-Logical00
Event00

 LINE       196
 EXPRESSION (host_gnt && (muxed_part != FlashPartData))
             ----1---    --------------2--------------
-1--2-StatusTests
01CoveredT1,T2,T3
10CoveredT2,T3,T12
11Not Covered

 LINE       196
 SUB-EXPRESSION (muxed_part != FlashPartData)
                --------------1--------------
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT1,T2,T3

 LINE       200
 EXPRESSION (((|host_outstanding)) & ((!ctrl_fsm_idle)))
             ----------1----------   ---------2--------
-1--2-StatusTests
01CoveredT2,T4,T5
10CoveredT2,T3,T12
11Not Covered

 LINE       205
 EXPRESSION (host_gnt_err_event | host_outstanding_err_event)
             ---------1--------   -------------2------------
-1--2-StatusTests
00CoveredT1,T2,T3
01Not Covered
10Not Covered

 LINE       217
 EXPRESSION (host_outstanding == '0)
            ------------1-----------
-1-StatusTests
0CoveredT2,T3,T12
1CoveredT1,T2,T3

 LINE       231
 EXPRESSION ((host_outstanding == '0) && ctrl_fsm_idle)
             ------------1-----------    ------2------
-1--2-StatusTests
01CoveredT2,T3,T12
10CoveredT2,T4,T5
11CoveredT1,T2,T3

 LINE       231
 SUB-EXPRESSION (host_outstanding == '0)
                ------------1-----------
-1-StatusTests
0CoveredT2,T3,T12
1CoveredT1,T2,T3

 LINE       242
 EXPRESSION (host_gnt && ((!host_req_done_o)) && (host_outstanding <= flash_phy_pkg::RspOrderDepth))
             ----1---    ----------2---------    -------------------------3------------------------
-1--2--3-StatusTests
011CoveredT1,T2,T3
101CoveredT12,T6,T7
110Not Covered
111CoveredT2,T3,T12

 LINE       242
 EXPRESSION (((!host_gnt)) && host_req_done_o && ((|host_outstanding)))
             ------1------    -------2-------    ----------3----------
-1--2--3-StatusTests
011CoveredT12,T6,T7
101CoveredT2,T3,T12
110Not Covered
111CoveredT2,T3,T12

 LINE       281
 EXPRESSION (host_req & host_req_rdy_o)
             ----1---   -------2------
-1--2-StatusTests
01CoveredT164
10CoveredT2,T12,T6
11CoveredT2,T3,T12

 LINE       282
 EXPRESSION (((|host_outstanding)) & rd_stage_data_valid)
             ----------1----------   ---------2---------
-1--2-StatusTests
01CoveredT2,T4,T20
10CoveredT2,T3,T12
11CoveredT2,T3,T12

 LINE       317
 EXPRESSION ((phy_req & host_req) ? rd_stage_rdy : rd_stage_idle)
             ----------1---------
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT2,T3,T12

 LINE       317
 SUB-EXPRESSION (phy_req & host_req)
                 ---1---   ----2---
-1--2-StatusTests
01Not Covered
10CoveredT2,T4,T5
11CoveredT2,T3,T12

 LINE       321
 EXPRESSION (req_i & host_gnt)
             --1--   ----2---
-1--2-StatusTests
01CoveredT2,T3,T12
10CoveredT2,T4,T5
11CoveredT7,T8,T23

 LINE       336
 EXPRESSION (ctrl_gnt && rd_i)
             ----1---    --2-
-1--2-StatusTests
01CoveredT1,T2,T3
10CoveredT2,T4,T5
11CoveredT2,T4,T20

 LINE       338
 EXPRESSION (ctrl_gnt && prog_i)
             ----1---    ---2--
-1--2-StatusTests
01CoveredT1,T3,T19
10CoveredT2,T4,T20
11CoveredT4,T5,T20

 LINE       388
 EXPRESSION ((ctrl_fsm_idle & ctrl_rsp_vld) | ((host_outstanding == '0) & host_req_done_o))
             ---------------1--------------   ----------------------2---------------------
-1--2-StatusTests
00CoveredT1,T2,T3
01Not Covered
10Not Covered

 LINE       388
 SUB-EXPRESSION (ctrl_fsm_idle & ctrl_rsp_vld)
                 ------1------   ------2-----
-1--2-StatusTests
01CoveredT2,T4,T5
10CoveredT1,T2,T3
11Not Covered

 LINE       388
 SUB-EXPRESSION ((host_outstanding == '0) & host_req_done_o)
                 ------------1-----------   -------2-------
-1--2-StatusTests
01CoveredT2,T3,T12
10CoveredT1,T2,T3
11Not Covered

 LINE       388
 SUB-EXPRESSION (host_outstanding == '0)
                ------------1-----------
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT1,T2,T3

 LINE       392
 EXPRESSION (host_sel ? host_addr_i : addr_i)
             ----1---
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT2,T3,T12

 LINE       393
 EXPRESSION (host_sel ? FlashPartData : part_i)
             ----1---
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT2,T3,T12

 LINE       394
 EXPRESSION (host_sel ? host_scramble_en_i : scramble_en_i)
             ----1---
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT2,T3,T12

 LINE       395
 EXPRESSION (host_sel ? host_ecc_en_i : ecc_en_i)
             ----1---
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT2,T3,T12

 LINE       396
 EXPRESSION (ctrl_rsp_vld & rd_i)
             ------1-----   --2-
-1--2-StatusTests
01CoveredT1,T2,T3
10CoveredT2,T4,T5
11CoveredT2,T4,T20

 LINE       397
 EXPRESSION (ctrl_rsp_vld & prog_i)
             ------1-----   ---2--
-1--2-StatusTests
01CoveredT1,T3,T19
10CoveredT2,T4,T20
11CoveredT4,T5,T20

 LINE       398
 EXPRESSION (ctrl_rsp_vld & (pg_erase_i | bk_erase_i))
             ------1-----   ------------2------------
-1--2-StatusTests
01CoveredT2,T4,T20
10CoveredT2,T4,T5
11CoveredT2,T4,T20

 LINE       398
 SUB-EXPRESSION (pg_erase_i | bk_erase_i)
                 -----1----   -----2----
-1--2-StatusTests
00CoveredT1,T2,T3
01CoveredT4,T13,T74
10CoveredT2,T4,T20

 LINE       428
 EXPRESSION ((host_gnt_rd_err & (host_outstanding == 1'b1)) | host_outstanding_rd_err)
             -----------------------1----------------------   -----------2-----------
-1--2-StatusTests
00CoveredT1,T2,T3
01Not Covered
10Not Covered

 LINE       428
 SUB-EXPRESSION (host_gnt_rd_err & (host_outstanding == 1'b1))
                 -------1-------   -------------2------------
-1--2-StatusTests
01CoveredT2,T3,T12
10Not Covered
11Not Covered

 LINE       428
 SUB-EXPRESSION (host_outstanding == 1'b1)
                -------------1------------
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT2,T3,T12

 LINE       431
 EXPRESSION (phy_req & (rd_i | host_req))
             ---1---   --------2--------
-1--2-StatusTests
01CoveredT1,T2,T3
10CoveredT2,T4,T5
11CoveredT2,T3,T12

 LINE       431
 SUB-EXPRESSION (rd_i | host_req)
                 --1-   ----2---
-1--2-StatusTests
00CoveredT1,T2,T3
01CoveredT2,T3,T12
10CoveredT1,T2,T3

 LINE       431
 EXPRESSION (arb_host_gnt_err ? ({flash_phy_pkg::FullDataWidth {1'b1}}) : flash_rdata)
             --------1-------
-1-StatusTests
0CoveredT1,T2,T3
1Not Covered

 LINE       523
 EXPRESSION (fsm_err | prog_fsm_err)
             ---1---   ------2-----
-1--2-StatusTests
00CoveredT1,T2,T3
01CoveredT17,T18,T41
10CoveredT17,T18,T41

 LINE       550
 EXPRESSION (prog_calc_req | rd_calc_req)
             ------1------   -----2-----
-1--2-StatusTests
00CoveredT1,T2,T3
01CoveredT2,T12,T6
10CoveredT13,T62,T134

 LINE       551
 EXPRESSION (prog_op_req | rd_op_req)
             -----1-----   ----2----
-1--2-StatusTests
00CoveredT1,T2,T3
01CoveredT2,T12,T6
10CoveredT13,T62,T134

 LINE       552
 EXPRESSION (prog_op_req ? ScrambleOp : DeScrambleOp)
             -----1-----
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT13,T62,T134

 LINE       553
 EXPRESSION (prog_calc_req ? muxed_addr[(flash_phy_pkg::BusBankAddrW - 1):flash_phy_pkg::LsbAddrBit] : rd_calc_addr)
             ------1------
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT13,T62,T134

FSM Coverage for Instance : tb.dut.u_eflash.gen_flash_cores[1].u_core
Summary for FSM :: state_q
TotalCoveredPercent
States 5 5 100.00 (Not included in score)
Transitions 7 7 100.00
Sequences 0 0

State, Transition and Sequence Details for FSM :: state_q
statesLine No.CoveredTests
StCtrl 341 Covered T2,T4,T20
StCtrlProg 339 Covered T4,T5,T20
StCtrlRead 337 Covered T2,T4,T20
StDisable 335 Covered T12,T13,T14
StIdle 349 Covered T1,T2,T3


transitionsLine No.CoveredTests
StCtrl->StIdle 369 Covered T2,T4,T20
StCtrlProg->StIdle 359 Covered T4,T5,T20
StCtrlRead->StIdle 349 Covered T2,T4,T20
StIdle->StCtrl 341 Covered T2,T4,T20
StIdle->StCtrlProg 339 Covered T4,T5,T20
StIdle->StCtrlRead 337 Covered T2,T4,T20
StIdle->StDisable 335 Covered T12,T13,T14



Branch Coverage for Instance : tb.dut.u_eflash.gen_flash_cores[1].u_core
Line No.TotalCoveredPercent
Branches 46 45 97.83
TERNARY 317 2 2 100.00
TERNARY 392 2 2 100.00
TERNARY 393 2 2 100.00
TERNARY 394 2 2 100.00
TERNARY 395 2 2 100.00
TERNARY 552 2 2 100.00
TERNARY 553 2 2 100.00
TERNARY 431 2 1 50.00
IF 152 4 4 100.00
IF 165 2 2 100.00
IF 203 3 3 100.00
IF 215 4 4 100.00
IF 229 4 4 100.00
CASE 331 13 13 100.00

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

LineNo. Expression -1-: 317 ((phy_req & host_req)) ?

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


LineNo. Expression -1-: 392 (host_sel) ?

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


LineNo. Expression -1-: 393 (host_sel) ?

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


LineNo. Expression -1-: 394 (host_sel) ?

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


LineNo. Expression -1-: 395 (host_sel) ?

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


LineNo. Expression -1-: 552 (prog_op_req) ?

Branches:
-1-StatusTests
1 Covered T13,T62,T134
0 Covered T1,T2,T3


LineNo. Expression -1-: 553 (prog_calc_req) ?

Branches:
-1-StatusTests
1 Covered T13,T62,T134
0 Covered T1,T2,T3


LineNo. Expression -1-: 431 (arb_host_gnt_err) ?

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


LineNo. Expression -1-: 152 if ((!rst_ni)) -2-: 154 if (ctrl_rsp_vld) -3-: 156 if (inc_arb_cnt)

Branches:
-1--2--3-StatusTests
1 - - Covered T1,T2,T3
0 1 - Covered T2,T4,T5
0 0 1 Covered T7,T8,T23
0 0 0 Covered T1,T2,T3


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

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


LineNo. Expression -1-: 203 if ((!rst_ni)) -2-: 205 if ((host_gnt_err_event | host_outstanding_err_event))

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


LineNo. Expression -1-: 215 if ((!rst_ni)) -2-: 217 if ((host_outstanding == '0)) -3-: 219 if (host_gnt_err_event)

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


LineNo. Expression -1-: 229 if ((!rst_ni)) -2-: 231 if (((host_outstanding == '0) && ctrl_fsm_idle)) -3-: 233 if (host_outstanding_err_event)

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


LineNo. Expression -1-: 331 case (state_q) -2-: 334 if (prim_mubi_pkg::mubi4_test_true_loose(flash_disable[FsmDisableIdx])) -3-: 336 if ((ctrl_gnt && rd_i)) -4-: 338 if ((ctrl_gnt && prog_i)) -5-: 340 if (ctrl_gnt) -6-: 347 if (rd_stage_data_valid) -7-: 357 if (prog_ack) -8-: 367 if (erase_ack)

Branches:
-1--2--3--4--5--6--7--8-StatusTests
StIdle 1 - - - - - - Covered T12,T13,T14
StIdle 0 1 - - - - - Covered T2,T4,T20
StIdle 0 0 1 - - - - Covered T4,T5,T20
StIdle 0 0 0 1 - - - Covered T2,T4,T20
StIdle 0 0 0 0 - - - Covered T1,T2,T3
StCtrlRead - - - - 1 - - Covered T2,T4,T20
StCtrlRead - - - - 0 - - Covered T2,T4,T20
StCtrlProg - - - - - 1 - Covered T4,T5,T20
StCtrlProg - - - - - 0 - Covered T4,T5,T20
StCtrl - - - - - - 1 Covered T2,T4,T20
StCtrl - - - - - - 0 Covered T2,T4,T20
StDisable - - - - - - - Covered T12,T13,T14
default - - - - - - - Covered T17,T15,T18


Assert Coverage for Instance : tb.dut.u_eflash.gen_flash_cores[1].u_core
TotalAttemptedPercentSucceeded/MatchedPercent
Assertions 8 8 100.00 8 100.00
Cover properties 0 0 0
Cover sequences 0 0 0
Total 8 8 100.00 8 100.00




Assertion Details

NameAttemptsReal SuccessesFailuresIncomplete
ArbCntMax_A 390199592 1022666 0 0
CtrlPrio_A 390199592 1022666 0 0
HostTransIdleChk_A 390199592 22314961 0 0
NoRemainder_A 1040 1040 0 0
OneHotReqs_A 390199592 389339598 0 0
Pow2Multiple_A 1040 1040 0 0
RdTxnCheck_A 389979006 389119012 0 0
u_state_regs_A 390199592 389339598 0 0


ArbCntMax_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 390199592 1022666 0 0
T7 124243 49749 0 0
T8 160793 2813 0 0
T14 1297 0 0 0
T22 1029 0 0 0
T23 85039 1320 0 0
T26 7978 0 0 0
T34 0 50367 0 0
T44 0 3337 0 0
T45 334333 0 0 0
T56 0 4227 0 0
T57 0 11154 0 0
T63 67836 0 0 0
T74 501794 0 0 0
T96 3268 0 0 0
T132 0 5721 0 0
T204 0 22660 0 0
T205 0 1415 0 0

CtrlPrio_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 390199592 1022666 0 0
T7 124243 49749 0 0
T8 160793 2813 0 0
T14 1297 0 0 0
T22 1029 0 0 0
T23 85039 1320 0 0
T26 7978 0 0 0
T34 0 50367 0 0
T44 0 3337 0 0
T45 334333 0 0 0
T56 0 4227 0 0
T57 0 11154 0 0
T63 67836 0 0 0
T74 501794 0 0 0
T96 3268 0 0 0
T132 0 5721 0 0
T204 0 22660 0 0
T205 0 1415 0 0

HostTransIdleChk_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 390199592 22314961 0 0
T2 5177 34 0 0
T3 3124 2 0 0
T4 849503 0 0 0
T5 97073 0 0 0
T6 52732 17592 0 0
T7 0 429427 0 0
T8 0 29757 0 0
T12 674 65 0 0
T19 1548 0 0 0
T20 82730 0 0 0
T21 2530 0 0 0
T23 0 28450 0 0
T26 0 36 0 0
T31 152144 0 0 0
T48 0 30213 0 0
T59 0 126 0 0

NoRemainder_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 1040 1040 0 0
T1 1 1 0 0
T2 1 1 0 0
T3 1 1 0 0
T4 1 1 0 0
T5 1 1 0 0
T6 1 1 0 0
T12 1 1 0 0
T19 1 1 0 0
T20 1 1 0 0
T21 1 1 0 0

OneHotReqs_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 390199592 389339598 0 0
T1 8376 8205 0 0
T2 5177 5044 0 0
T3 3124 2983 0 0
T4 849503 849434 0 0
T5 97073 96238 0 0
T6 52732 52575 0 0
T12 674 608 0 0
T19 1548 1405 0 0
T20 82730 82600 0 0
T21 2530 2448 0 0

Pow2Multiple_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 1040 1040 0 0
T1 1 1 0 0
T2 1 1 0 0
T3 1 1 0 0
T4 1 1 0 0
T5 1 1 0 0
T6 1 1 0 0
T12 1 1 0 0
T19 1 1 0 0
T20 1 1 0 0
T21 1 1 0 0

RdTxnCheck_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 389979006 389119012 0 0
T1 8376 8205 0 0
T2 5177 5044 0 0
T3 3124 2983 0 0
T4 849503 849434 0 0
T5 97073 96238 0 0
T6 52732 52575 0 0
T12 674 608 0 0
T19 1548 1405 0 0
T20 82730 82600 0 0
T21 2530 2448 0 0

u_state_regs_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 390199592 389339598 0 0
T1 8376 8205 0 0
T2 5177 5044 0 0
T3 3124 2983 0 0
T4 849503 849434 0 0
T5 97073 96238 0 0
T6 52732 52575 0 0
T12 674 608 0 0
T19 1548 1405 0 0
T20 82730 82600 0 0
T21 2530 2448 0 0

Line Coverage for Instance : tb.dut.u_eflash.gen_flash_cores[0].u_core
Line No.TotalCoveredPercent
TOTAL8989100.00
ALWAYS15266100.00
ALWAYS16533100.00
CONT_ASSIGN19611100.00
CONT_ASSIGN20011100.00
ALWAYS20344100.00
ALWAYS21566100.00
ALWAYS22966100.00
CONT_ASSIGN27711100.00
CONT_ASSIGN28011100.00
CONT_ASSIGN28111100.00
CONT_ASSIGN28211100.00
CONT_ASSIGN28711100.00
CONT_ASSIGN31711100.00
CONT_ASSIGN32111100.00
ALWAYS3252929100.00
CONT_ASSIGN38811100.00
CONT_ASSIGN39211100.00
CONT_ASSIGN39311100.00
CONT_ASSIGN39411100.00
CONT_ASSIGN39511100.00
CONT_ASSIGN39611100.00
CONT_ASSIGN39711100.00
CONT_ASSIGN39811100.00
CONT_ASSIGN41511100.00
CONT_ASSIGN42811100.00
CONT_ASSIGN52311100.00
CONT_ASSIGN55011100.00
CONT_ASSIGN55111100.00
CONT_ASSIGN55211100.00
CONT_ASSIGN55311100.00
CONT_ASSIGN55511100.00
CONT_ASSIGN55611100.00
CONT_ASSIGN55711100.00
CONT_ASSIGN55811100.00
CONT_ASSIGN55911100.00
CONT_ASSIGN56011100.00
CONT_ASSIGN56111100.00
CONT_ASSIGN56811100.00
CONT_ASSIGN58511100.00
CONT_ASSIGN58611100.00
CONT_ASSIGN58711100.00
WARNING: The source file '/workspace/default/sim-vcs/../src/lowrisc_opentitan_top_earlgrey_flash_ctrl_0.1/rtl/flash_phy_core.sv' or '../src/lowrisc_opentitan_top_earlgrey_flash_ctrl_0.1/rtl/flash_phy_core.sv' was not found, so annotated line coverage report could not be generated.
Line No.CoveredStatements
152 1 1
153 1 1
154 1 1
155 1 1
156 1 1
157 1 1
MISSING_ELSE
165 3 3
196 1 1
200 1 1
203 1 1
204 1 1
205 1 1
206 1 1
MISSING_ELSE
215 1 1
216 1 1
217 1 1
218 1 1
219 1 1
220 1 1
MISSING_ELSE
229 1 1
230 1 1
231 1 1
232 1 1
233 1 1
234 1 1
MISSING_ELSE
277 1 1
280 1 1
281 1 1
282 1 1
287 1 1
317 1 1
321 1 1
325 1 1
326 1 1
327 1 1
328 1 1
329 1 1
331 1 1
333 1 1
334 1 1
335 1 1
336 1 1
337 1 1
338 1 1
339 1 1
340 1 1
341 1 1
MISSING_ELSE
347 1 1
348 1 1
349 1 1
MISSING_ELSE
356 1 1
357 1 1
358 1 1
359 1 1
MISSING_ELSE
365 1 1
366 1 1
367 1 1
368 1 1
369 1 1
MISSING_ELSE
374 1 1
375 1 1
388 1 1
392 1 1
393 1 1
394 1 1
395 1 1
396 1 1
397 1 1
398 1 1
415 1 1
428 1 1
523 1 1
550 1 1
551 1 1
552 1 1
553 1 1
555 1 1
556 1 1
557 1 1
558 1 1
559 1 1
560 1 1
561 1 1
568 1 1
585 1 1
586 1 1
587 1 1


Cond Coverage for Instance : tb.dut.u_eflash.gen_flash_cores[0].u_core
TotalCoveredPercent
Conditions1069791.51
Logical1069791.51
Non-Logical00
Event00

 LINE       196
 EXPRESSION (host_gnt && (muxed_part != FlashPartData))
             ----1---    --------------2--------------
-1--2-StatusTests
01CoveredT1,T2,T3
10CoveredT2,T3,T6
11CoveredT169,T15,T173

 LINE       196
 SUB-EXPRESSION (muxed_part != FlashPartData)
                --------------1--------------
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT1,T2,T3

 LINE       200
 EXPRESSION (((|host_outstanding)) & ((!ctrl_fsm_idle)))
             ----------1----------   ---------2--------
-1--2-StatusTests
01CoveredT1,T2,T3
10CoveredT2,T3,T6
11Not Covered

 LINE       205
 EXPRESSION (host_gnt_err_event | host_outstanding_err_event)
             ---------1--------   -------------2------------
-1--2-StatusTests
00CoveredT1,T2,T3
01Not Covered
10CoveredT169,T15,T173

 LINE       217
 EXPRESSION (host_outstanding == '0)
            ------------1-----------
-1-StatusTests
0CoveredT2,T3,T6
1CoveredT1,T2,T3

 LINE       231
 EXPRESSION ((host_outstanding == '0) && ctrl_fsm_idle)
             ------------1-----------    ------2------
-1--2-StatusTests
01CoveredT2,T3,T6
10CoveredT1,T2,T3
11CoveredT1,T2,T3

 LINE       231
 SUB-EXPRESSION (host_outstanding == '0)
                ------------1-----------
-1-StatusTests
0CoveredT2,T3,T6
1CoveredT1,T2,T3

 LINE       242
 EXPRESSION (host_gnt && ((!host_req_done_o)) && (host_outstanding <= flash_phy_pkg::RspOrderDepth))
             ----1---    ----------2---------    -------------------------3------------------------
-1--2--3-StatusTests
011CoveredT1,T2,T3
101CoveredT6,T7,T8
110Not Covered
111CoveredT2,T3,T6

 LINE       242
 EXPRESSION (((!host_gnt)) && host_req_done_o && ((|host_outstanding)))
             ------1------    -------2-------    ----------3----------
-1--2--3-StatusTests
011CoveredT6,T7,T8
101CoveredT2,T3,T6
110CoveredT61
111CoveredT2,T3,T6

 LINE       281
 EXPRESSION (host_req & host_req_rdy_o)
             ----1---   -------2------
-1--2-StatusTests
01CoveredT55
10CoveredT2,T3,T6
11CoveredT2,T3,T6

 LINE       282
 EXPRESSION (((|host_outstanding)) & rd_stage_data_valid)
             ----------1----------   ---------2---------
-1--2-StatusTests
01CoveredT1,T2,T3
10CoveredT2,T3,T6
11CoveredT2,T3,T6

 LINE       317
 EXPRESSION ((phy_req & host_req) ? rd_stage_rdy : rd_stage_idle)
             ----------1---------
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT2,T3,T6

 LINE       317
 SUB-EXPRESSION (phy_req & host_req)
                 ---1---   ----2---
-1--2-StatusTests
01Not Covered
10CoveredT1,T2,T3
11CoveredT2,T3,T6

 LINE       321
 EXPRESSION (req_i & host_gnt)
             --1--   ----2---
-1--2-StatusTests
01CoveredT2,T3,T6
10CoveredT1,T2,T3
11CoveredT6,T7,T8

 LINE       336
 EXPRESSION (ctrl_gnt && rd_i)
             ----1---    --2-
-1--2-StatusTests
01CoveredT2,T6,T4
10CoveredT1,T2,T3
11CoveredT1,T2,T3

 LINE       338
 EXPRESSION (ctrl_gnt && prog_i)
             ----1---    ---2--
-1--2-StatusTests
01CoveredT4,T5,T20
10CoveredT2,T4,T20
11CoveredT1,T3,T19

 LINE       388
 EXPRESSION ((ctrl_fsm_idle & ctrl_rsp_vld) | ((host_outstanding == '0) & host_req_done_o))
             ---------------1--------------   ----------------------2---------------------
-1--2-StatusTests
00CoveredT1,T2,T3
01CoveredT61
10CoveredT201,T202,T203

 LINE       388
 SUB-EXPRESSION (ctrl_fsm_idle & ctrl_rsp_vld)
                 ------1------   ------2-----
-1--2-StatusTests
01CoveredT1,T2,T3
10CoveredT1,T2,T3
11CoveredT201,T202,T203

 LINE       388
 SUB-EXPRESSION ((host_outstanding == '0) & host_req_done_o)
                 ------------1-----------   -------2-------
-1--2-StatusTests
01CoveredT2,T3,T6
10CoveredT1,T2,T3
11CoveredT61

 LINE       388
 SUB-EXPRESSION (host_outstanding == '0)
                ------------1-----------
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT1,T2,T3

 LINE       392
 EXPRESSION (host_sel ? host_addr_i : addr_i)
             ----1---
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT2,T3,T6

 LINE       393
 EXPRESSION (host_sel ? FlashPartData : part_i)
             ----1---
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT2,T3,T6

 LINE       394
 EXPRESSION (host_sel ? host_scramble_en_i : scramble_en_i)
             ----1---
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT2,T3,T6

 LINE       395
 EXPRESSION (host_sel ? host_ecc_en_i : ecc_en_i)
             ----1---
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT2,T3,T6

 LINE       396
 EXPRESSION (ctrl_rsp_vld & rd_i)
             ------1-----   --2-
-1--2-StatusTests
01CoveredT1,T2,T3
10CoveredT1,T2,T3
11CoveredT1,T2,T3

 LINE       397
 EXPRESSION (ctrl_rsp_vld & prog_i)
             ------1-----   ---2--
-1--2-StatusTests
01CoveredT1,T3,T19
10CoveredT1,T2,T3
11CoveredT1,T3,T19

 LINE       398
 EXPRESSION (ctrl_rsp_vld & (pg_erase_i | bk_erase_i))
             ------1-----   ------------2------------
-1--2-StatusTests
01CoveredT2,T4,T20
10CoveredT1,T2,T3
11CoveredT2,T4,T20

 LINE       398
 SUB-EXPRESSION (pg_erase_i | bk_erase_i)
                 -----1----   -----2----
-1--2-StatusTests
00CoveredT1,T2,T3
01CoveredT4,T13,T74
10CoveredT2,T4,T20

 LINE       428
 EXPRESSION ((host_gnt_rd_err & (host_outstanding == 1'b1)) | host_outstanding_rd_err)
             -----------------------1----------------------   -----------2-----------
-1--2-StatusTests
00CoveredT1,T2,T3
01Not Covered
10Not Covered

 LINE       428
 SUB-EXPRESSION (host_gnt_rd_err & (host_outstanding == 1'b1))
                 -------1-------   -------------2------------
-1--2-StatusTests
01CoveredT2,T3,T6
10Not Covered
11Not Covered

 LINE       428
 SUB-EXPRESSION (host_outstanding == 1'b1)
                -------------1------------
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT2,T3,T6

 LINE       431
 EXPRESSION (phy_req & (rd_i | host_req))
             ---1---   --------2--------
-1--2-StatusTests
01CoveredT1,T2,T3
10CoveredT1,T2,T3
11CoveredT1,T2,T3

 LINE       431
 SUB-EXPRESSION (rd_i | host_req)
                 --1-   ----2---
-1--2-StatusTests
00CoveredT1,T2,T3
01CoveredT2,T3,T6
10CoveredT1,T2,T3

 LINE       431
 EXPRESSION (arb_host_gnt_err ? ({flash_phy_pkg::FullDataWidth {1'b1}}) : flash_rdata)
             --------1-------
-1-StatusTests
0CoveredT1,T2,T3
1Not Covered

 LINE       523
 EXPRESSION (fsm_err | prog_fsm_err)
             ---1---   ------2-----
-1--2-StatusTests
00CoveredT1,T2,T3
01CoveredT17,T18,T41
10CoveredT17,T18,T41

 LINE       550
 EXPRESSION (prog_calc_req | rd_calc_req)
             ------1------   -----2-----
-1--2-StatusTests
00CoveredT1,T2,T3
01CoveredT1,T2,T3
10CoveredT1,T3,T13

 LINE       551
 EXPRESSION (prog_op_req | rd_op_req)
             -----1-----   ----2----
-1--2-StatusTests
00CoveredT1,T2,T3
01CoveredT1,T2,T3
10CoveredT1,T3,T13

 LINE       552
 EXPRESSION (prog_op_req ? ScrambleOp : DeScrambleOp)
             -----1-----
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT1,T3,T13

 LINE       553
 EXPRESSION (prog_calc_req ? muxed_addr[(flash_phy_pkg::BusBankAddrW - 1):flash_phy_pkg::LsbAddrBit] : rd_calc_addr)
             ------1------
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT1,T3,T13

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

State, Transition and Sequence Details for FSM :: state_q
statesLine No.CoveredTests
StCtrl 341 Covered T2,T4,T20
StCtrlProg 339 Covered T1,T3,T19
StCtrlRead 337 Covered T1,T2,T3
StDisable 335 Covered T12,T13,T22
StIdle 349 Covered T1,T2,T3


transitionsLine No.CoveredTests
StCtrl->StIdle 369 Covered T2,T4,T20
StCtrlProg->StIdle 359 Covered T1,T3,T19
StCtrlRead->StIdle 349 Covered T1,T2,T3
StIdle->StCtrl 341 Covered T2,T4,T20
StIdle->StCtrlProg 339 Covered T1,T3,T19
StIdle->StCtrlRead 337 Covered T1,T2,T3
StIdle->StDisable 335 Covered T12,T13,T22



Branch Coverage for Instance : tb.dut.u_eflash.gen_flash_cores[0].u_core
Line No.TotalCoveredPercent
Branches 46 45 97.83
TERNARY 317 2 2 100.00
TERNARY 392 2 2 100.00
TERNARY 393 2 2 100.00
TERNARY 394 2 2 100.00
TERNARY 395 2 2 100.00
TERNARY 552 2 2 100.00
TERNARY 553 2 2 100.00
TERNARY 431 2 1 50.00
IF 152 4 4 100.00
IF 165 2 2 100.00
IF 203 3 3 100.00
IF 215 4 4 100.00
IF 229 4 4 100.00
CASE 331 13 13 100.00

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

LineNo. Expression -1-: 317 ((phy_req & host_req)) ?

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


LineNo. Expression -1-: 392 (host_sel) ?

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


LineNo. Expression -1-: 393 (host_sel) ?

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


LineNo. Expression -1-: 394 (host_sel) ?

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


LineNo. Expression -1-: 395 (host_sel) ?

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


LineNo. Expression -1-: 552 (prog_op_req) ?

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


LineNo. Expression -1-: 553 (prog_calc_req) ?

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


LineNo. Expression -1-: 431 (arb_host_gnt_err) ?

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


LineNo. Expression -1-: 152 if ((!rst_ni)) -2-: 154 if (ctrl_rsp_vld) -3-: 156 if (inc_arb_cnt)

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


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

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


LineNo. Expression -1-: 203 if ((!rst_ni)) -2-: 205 if ((host_gnt_err_event | host_outstanding_err_event))

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


LineNo. Expression -1-: 215 if ((!rst_ni)) -2-: 217 if ((host_outstanding == '0)) -3-: 219 if (host_gnt_err_event)

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


LineNo. Expression -1-: 229 if ((!rst_ni)) -2-: 231 if (((host_outstanding == '0) && ctrl_fsm_idle)) -3-: 233 if (host_outstanding_err_event)

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


LineNo. Expression -1-: 331 case (state_q) -2-: 334 if (prim_mubi_pkg::mubi4_test_true_loose(flash_disable[FsmDisableIdx])) -3-: 336 if ((ctrl_gnt && rd_i)) -4-: 338 if ((ctrl_gnt && prog_i)) -5-: 340 if (ctrl_gnt) -6-: 347 if (rd_stage_data_valid) -7-: 357 if (prog_ack) -8-: 367 if (erase_ack)

Branches:
-1--2--3--4--5--6--7--8-StatusTests
StIdle 1 - - - - - - Covered T12,T13,T14
StIdle 0 1 - - - - - Covered T1,T2,T3
StIdle 0 0 1 - - - - Covered T1,T3,T19
StIdle 0 0 0 1 - - - Covered T2,T4,T20
StIdle 0 0 0 0 - - - Covered T1,T2,T3
StCtrlRead - - - - 1 - - Covered T1,T2,T3
StCtrlRead - - - - 0 - - Covered T1,T2,T3
StCtrlProg - - - - - 1 - Covered T1,T3,T19
StCtrlProg - - - - - 0 - Covered T1,T3,T19
StCtrl - - - - - - 1 Covered T2,T4,T20
StCtrl - - - - - - 0 Covered T2,T4,T20
StDisable - - - - - - - Covered T12,T13,T22
default - - - - - - - Covered T17,T15,T18


Assert Coverage for Instance : tb.dut.u_eflash.gen_flash_cores[0].u_core
TotalAttemptedPercentSucceeded/MatchedPercent
Assertions 8 8 100.00 8 100.00
Cover properties 0 0 0
Cover sequences 0 0 0
Total 8 8 100.00 8 100.00




Assertion Details

NameAttemptsReal SuccessesFailuresIncomplete
ArbCntMax_A 390199592 1479313 0 0
CtrlPrio_A 390199592 1479313 0 0
HostTransIdleChk_A 390199592 22177347 0 0
NoRemainder_A 1040 1040 0 0
OneHotReqs_A 390199592 389339598 0 0
Pow2Multiple_A 1040 1040 0 0
RdTxnCheck_A 389979006 389119012 0 0
u_state_regs_A 390199592 389339598 0 0


ArbCntMax_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 390199592 1479313 0 0
T4 849503 0 0 0
T5 97073 0 0 0
T6 52732 3395 0 0
T7 124243 26368 0 0
T8 0 2811 0 0
T13 168374 0 0 0
T20 82730 0 0 0
T21 2530 0 0 0
T23 0 1946 0 0
T31 152144 0 0 0
T32 0 3794 0 0
T48 0 6966 0 0
T56 0 5266 0 0
T63 67836 0 0 0
T96 3268 0 0 0
T97 0 84 0 0
T165 0 15450 0 0
T204 0 60667 0 0

CtrlPrio_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 390199592 1479313 0 0
T4 849503 0 0 0
T5 97073 0 0 0
T6 52732 3395 0 0
T7 124243 26368 0 0
T8 0 2811 0 0
T13 168374 0 0 0
T20 82730 0 0 0
T21 2530 0 0 0
T23 0 1946 0 0
T31 152144 0 0 0
T32 0 3794 0 0
T48 0 6966 0 0
T56 0 5266 0 0
T63 67836 0 0 0
T96 3268 0 0 0
T97 0 84 0 0
T165 0 15450 0 0
T204 0 60667 0 0

HostTransIdleChk_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 390199592 22177347 0 0
T2 5177 26 0 0
T3 3124 8 0 0
T4 849503 0 0 0
T5 97073 0 0 0
T6 52732 16750 0 0
T7 0 395403 0 0
T8 0 28313 0 0
T12 674 0 0 0
T19 1548 0 0 0
T20 82730 0 0 0
T21 2530 0 0 0
T23 0 28592 0 0
T26 0 30 0 0
T31 152144 0 0 0
T39 0 474 0 0
T48 0 29371 0 0
T59 0 32 0 0

NoRemainder_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 1040 1040 0 0
T1 1 1 0 0
T2 1 1 0 0
T3 1 1 0 0
T4 1 1 0 0
T5 1 1 0 0
T6 1 1 0 0
T12 1 1 0 0
T19 1 1 0 0
T20 1 1 0 0
T21 1 1 0 0

OneHotReqs_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 390199592 389339598 0 0
T1 8376 8205 0 0
T2 5177 5044 0 0
T3 3124 2983 0 0
T4 849503 849434 0 0
T5 97073 96238 0 0
T6 52732 52575 0 0
T12 674 608 0 0
T19 1548 1405 0 0
T20 82730 82600 0 0
T21 2530 2448 0 0

Pow2Multiple_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 1040 1040 0 0
T1 1 1 0 0
T2 1 1 0 0
T3 1 1 0 0
T4 1 1 0 0
T5 1 1 0 0
T6 1 1 0 0
T12 1 1 0 0
T19 1 1 0 0
T20 1 1 0 0
T21 1 1 0 0

RdTxnCheck_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 389979006 389119012 0 0
T1 8376 8205 0 0
T2 5177 5044 0 0
T3 3124 2983 0 0
T4 849503 849434 0 0
T5 97073 96238 0 0
T6 52732 52575 0 0
T12 674 608 0 0
T19 1548 1405 0 0
T20 82730 82600 0 0
T21 2530 2448 0 0

u_state_regs_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 390199592 389339598 0 0
T1 8376 8205 0 0
T2 5177 5044 0 0
T3 3124 2983 0 0
T4 849503 849434 0 0
T5 97073 96238 0 0
T6 52732 52575 0 0
T12 674 608 0 0
T19 1548 1405 0 0
T20 82730 82600 0 0
T21 2530 2448 0 0

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