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

Module : lc_ctrl_fsm
SCORELINECONDTOGGLEFSMBRANCHASSERT
90.82 97.73 90.22 75.51 97.33 93.33

Source File(s) :
/workspace/default/sim-vcs/../src/lowrisc_ip_lc_ctrl_0.1/rtl/lc_ctrl_fsm.sv

Module self-instances :
NAMESCORELINECONDTOGGLEFSMBRANCHASSERT
tb.dut.u_lc_ctrl_fsm 96.54 97.73 94.32 100.00 97.33 93.33



Module Instance : tb.dut.u_lc_ctrl_fsm

Instance :
SCORELINECONDTOGGLEFSMBRANCHASSERT
96.54 97.73 94.32 100.00 97.33 93.33


Instance's subtree :
SCORELINECONDTOGGLEFSMBRANCHASSERT
96.73 98.86 91.54 100.00 96.12 97.14


Parent :
SCORELINECONDTOGGLEFSMBRANCHASSERTNAME
93.13 100.00 83.10 98.16 100.00 84.38 dut


Subtrees :
NAMESCORELINECONDTOGGLEFSMBRANCHASSERT
u_cnt_regs 100.00 100.00 100.00 100.00
u_fsm_state_regs 100.00 100.00 100.00 100.00
u_lc_ctrl_fsm_cov_if 96.97 100.00 90.91 100.00
u_lc_ctrl_signal_decode 98.86 99.21 97.37 100.00
u_lc_ctrl_state_decode 98.89 100.00 100.00 96.67
u_lc_ctrl_state_transition 89.21 96.92 79.17 91.53
u_prim_lc_sender_check_byp_en 100.00 100.00 100.00
u_prim_lc_sender_clk_byp_req 100.00 100.00 100.00
u_prim_lc_sender_flash_rma_req 100.00 100.00 100.00
u_prim_lc_sync_clk_byp_ack 100.00 100.00 100.00 100.00
u_prim_lc_sync_flash_rma_ack 100.00 100.00 100.00 100.00
u_prim_lc_sync_rma_token_valid 100.00 100.00 100.00
u_prim_lc_sync_test_token_valid 100.00 100.00 100.00
u_state_regs 100.00 100.00 100.00 100.00

Line Coverage for Module : lc_ctrl_fsm
Line No.TotalCoveredPercent
TOTAL17617297.73
CONT_ASSIGN12511100.00
CONT_ASSIGN14311100.00
CONT_ASSIGN15011100.00
CONT_ASSIGN15111100.00
ALWAYS17611411096.49
ALWAYS55633100.00
ALWAYS55733100.00
ALWAYS55833100.00
ALWAYS56133100.00
ALWAYS58055100.00
CONT_ASSIGN59111100.00
CONT_ASSIGN63811100.00
CONT_ASSIGN63911100.00
CONT_ASSIGN64011100.00
ALWAYS6491515100.00
ALWAYS6841414100.00
CONT_ASSIGN70411100.00
CONT_ASSIGN70811100.00
CONT_ASSIGN71211100.00
CONT_ASSIGN71411100.00
CONT_ASSIGN72111100.00
ALWAYS85233100.00
WARNING: The source file '/workspace/default/sim-vcs/../src/lowrisc_ip_lc_ctrl_0.1/rtl/lc_ctrl_fsm.sv' or '../src/lowrisc_ip_lc_ctrl_0.1/rtl/lc_ctrl_fsm.sv' was not found, so annotated line coverage report could not be generated.
Line No.CoveredStatements
125 1 1
143 1 1
150 1 1
151 1 1
176 1 1
177 1 1
178 1 1
181 1 1
182 1 1
185 1 1
188 1 1
189 1 1
190 1 1
191 1 1
192 1 1
195 1 1
196 1 1
203 1 1
204 1 1
210 1 1
211 1 1
212 1 1
214 1 1
219 1 1
220 1 1
221 1 1
222 1 1
223 1 1
224 1 1
226 1 1
227 1 1
MISSING_ELSE
235 1 1
245 1 1
249 1 1
250 1 1
MISSING_ELSE
256 1 1
257 1 1
265 1 1
267 1 1
271 1 1
273 1 1
277 1 1
281 1 1
284 1 1
286 1 1
288 0 1
289 0 1
293 1 1
298 1 1
299 1 1
MISSING_ELSE
305 1 1
322 1 1
323 1 1
MISSING_ELSE
MISSING_ELSE
336 1 1
337 1 1
354 1 1
355 1 1
356 1 1
357 1 1
MISSING_ELSE
360 1 1
363 1 1
370 1 1
371 1 1
373 1 1
379 1 1
383 1 1
384 1 1
385 1 1
MISSING_ELSE
390 1 1
391 1 1
392 1 1
393 1 1
395 1 1
MISSING_ELSE
403 1 1
404 1 1
406 1 1
417 1 1
418 1 1
424 1 1
427 1 1
429 1 1
430 1 1
MISSING_ELSE
438 1 1
439 1 1
440 1 1
441 1 1
MISSING_ELSE
444 1 1
454 1 1
455 1 1
459 1 1
465 1 1
468 1 1
471 1 1
473 1 1
476 0 1
477 0 1
481 1 1
482 1 1
492 1 1
496 1 1
497 1 1
498 1 1
501 1 1
505 1 1
506 1 1
507 1 1
508 1 1
509 1 1
510 1 1
MISSING_ELSE
516 1 1
521 1 1
526 1 1
527 1 1
539 1 1
540 1 1
546 1 1
547 1 1
548 1 1
MISSING_ELSE
556 3 3
557 3 3
558 3 3
561 1 1
562 1 1
564 1 1
580 1 1
581 1 1
582 1 1
584 1 1
587 1 1
591 1 1
638 1 1
639 1 1
640 1 1
649 1 1
651 1 1
653 1 1
656 1 1
657 1 1
MISSING_ELSE
659 1 1
660 1 1
MISSING_ELSE
663 1 1
664 1 1
MISSING_ELSE
666 1 1
667 1 1
MISSING_ELSE
670 1 1
671 1 1
MISSING_ELSE
673 1 1
674 1 1
MISSING_ELSE
684 1 1
685 1 1
686 1 1
687 1 1
688 1 1
689 1 1
690 1 1
692 1 1
693 1 1
694 1 1
695 1 1
696 1 1
697 1 1
698 1 1
704 1 1
708 1 1
712 1 1
714 1 1
721 1 1
852 3 3


Cond Coverage for Module : lc_ctrl_fsm
TotalCoveredPercent
Conditions928390.22
Logical928390.22
Non-Logical00
Event00

 LINE       223
 EXPRESSION (init_req_i && lc_state_valid_q)
             -----1----    --------2-------
-1--2-StatusTests
01CoveredT1,T2,T3
10CoveredT3,T13,T17
11CoveredT1,T2,T3

 LINE       256
 EXPRESSION (lc_state_q == LcStScrap)
            ------------1------------
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT9,T44,T45

 LINE       265
 EXPRESSION (SecVolatileRawUnlockEn && volatile_raw_unlock_i && trans_cmd_i)
             -----------1----------    ----------2----------    -----3-----
-1--2--3-StatusTests
-01CoveredT1,T2,T9
-10CoveredT12,T4,T30
-11CoveredT12,T30,T34

 LINE       267
 EXPRESSION ((lc_state_q == LcStRaw) && (trans_target_i == {lc_ctrl_state_pkg::DecLcStateNumRep {DecLcStTestUnlocked0}}) && ((!trans_invalid_error_o)))
             -----------1-----------    ----------------------------------------2---------------------------------------    -------------3------------
-1--2--3-StatusTests
011Not Covered
101Not Covered
110Not Covered
111CoveredT12,T34,T35

 LINE       267
 SUB-EXPRESSION (lc_state_q == LcStRaw)
                -----------1-----------
-1-StatusTests
0CoveredT35,T38,T39
1CoveredT12,T30,T34

 LINE       267
 SUB-EXPRESSION (trans_target_i == {lc_ctrl_state_pkg::DecLcStateNumRep {DecLcStTestUnlocked0}})
                ----------------------------------------1---------------------------------------
-1-StatusTests
0CoveredT30,T35,T36
1CoveredT12,T34,T35

 LINE       271
 EXPRESSION (unhashed_token_i == lc_ctrl_state_pkg::RndCnstRawUnlockTokenHashed)
            ----------------------------------1---------------------------------
-1-StatusTests
0Not Covered
1CoveredT12,T34,T35

 LINE       277
 EXPRESSION ((lc_cnt_q == LcCnt0) ? LcCnt1 : lc_cnt_q)
             ----------1---------
-1-StatusTests
0CoveredT12,T34,T38
1CoveredT35,T46,T47

 LINE       277
 SUB-EXPRESSION (lc_cnt_q == LcCnt0)
                ----------1---------
-1-StatusTests
0CoveredT12,T34,T38
1CoveredT35,T46,T47

 LINE       383
 EXPRESSION (lc_clk_byp_req_o != lc_clk_byp_ack[1])
            -------------------1-------------------
-1-StatusTests
0CoveredT1,T2,T9
1CoveredT2,T15,T18

 LINE       424
 EXPRESSION ((hashed_token_i == hashed_token_mux) && ((!token_hash_err_i)) && ((&hashed_token_valid_mux)))
             ------------------1-----------------    ----------2----------    -------------3-------------
-1--2--3-StatusTests
011CoveredT1,T2,T11
101CoveredT2,T15,T18
110Not Covered
111CoveredT2,T9,T10

 LINE       424
 SUB-EXPRESSION (hashed_token_i == hashed_token_mux)
                ------------------1-----------------
-1-StatusTests
0CoveredT1,T2,T11
1CoveredT2,T9,T10

 LINE       438
 EXPRESSION (trans_target_i == {lc_ctrl_state_pkg::DecLcStateNumRep {DecLcStRma}})
            -----------------------------------1----------------------------------
-1-StatusTests
0CoveredT2,T9,T10
1CoveredT2,T9,T11

 LINE       465
 EXPRESSION ((hashed_token_i == hashed_token_mux) && ((!token_hash_err_i)) && ((&hashed_token_valid_mux)))
             ------------------1-----------------    ----------2----------    -------------3-------------
-1--2--3-StatusTests
011Not Covered
101Not Covered
110Not Covered
111CoveredT2,T9,T10

 LINE       465
 SUB-EXPRESSION (hashed_token_i == hashed_token_mux)
                ------------------1-----------------
-1-StatusTests
0Not Covered
1CoveredT2,T9,T10

 LINE       468
 EXPRESSION (fsm_state_q == TokenCheck1St)
            ---------------1--------------
-1-StatusTests
0CoveredT2,T9,T10
1CoveredT2,T9,T10

 LINE       496
 EXPRESSION (lc_clk_byp_req_o != lc_clk_byp_ack[2])
            -------------------1-------------------
-1-StatusTests
0CoveredT2,T9,T10
1CoveredT21,T48,T49

 LINE       501
 EXPRESSION 
 Number  Term
      1  ((trans_target_i != {lc_ctrl_state_pkg::DecLcStateNumRep {DecLcStRma}}) && ((lc_flash_rma_req_o != Off) || (lc_flash_rma_ack[1] != Off))) || 
      2  ((trans_target_i == {lc_ctrl_state_pkg::DecLcStateNumRep {DecLcStRma}}) && ((lc_flash_rma_req_o != On) || (lc_flash_rma_ack[1] != On))))
-1--2-StatusTests
00CoveredT2,T9,T10
01CoveredT15,T22,T50
10CoveredT18,T51,T52

 LINE       501
 SUB-EXPRESSION ((trans_target_i != {lc_ctrl_state_pkg::DecLcStateNumRep {DecLcStRma}}) && ((lc_flash_rma_req_o != Off) || (lc_flash_rma_ack[1] != Off)))
                 -----------------------------------1----------------------------------    ------------------------------2------------------------------
-1--2-StatusTests
01CoveredT2,T9,T15
10CoveredT2,T9,T10
11CoveredT18,T51,T52

 LINE       501
 SUB-EXPRESSION (trans_target_i != {lc_ctrl_state_pkg::DecLcStateNumRep {DecLcStRma}})
                -----------------------------------1----------------------------------
-1-StatusTests
0CoveredT2,T9,T15
1CoveredT2,T9,T10

 LINE       501
 SUB-EXPRESSION ((lc_flash_rma_req_o != Off) || (lc_flash_rma_ack[1] != Off))
                 -------------1-------------    --------------2-------------
-1--2-StatusTests
00CoveredT2,T9,T10
01CoveredT18,T51,T52
10CoveredT53

 LINE       501
 SUB-EXPRESSION (lc_flash_rma_req_o != Off)
                -------------1-------------
-1-StatusTests
0CoveredT2,T9,T10
1CoveredT2,T9,T15

 LINE       501
 SUB-EXPRESSION (lc_flash_rma_ack[1] != Off)
                --------------1-------------
-1-StatusTests
0CoveredT2,T9,T10
1CoveredT2,T9,T15

 LINE       501
 SUB-EXPRESSION ((trans_target_i == {lc_ctrl_state_pkg::DecLcStateNumRep {DecLcStRma}}) && ((lc_flash_rma_req_o != On) || (lc_flash_rma_ack[1] != On)))
                 -----------------------------------1----------------------------------    -----------------------------2-----------------------------
-1--2-StatusTests
01CoveredT2,T9,T10
10CoveredT2,T9,T15
11CoveredT15,T22,T50

 LINE       501
 SUB-EXPRESSION (trans_target_i == {lc_ctrl_state_pkg::DecLcStateNumRep {DecLcStRma}})
                -----------------------------------1----------------------------------
-1-StatusTests
0CoveredT2,T9,T10
1CoveredT2,T9,T15

 LINE       501
 SUB-EXPRESSION ((lc_flash_rma_req_o != On) || (lc_flash_rma_ack[1] != On))
                 -------------1------------    -------------2-------------
-1--2-StatusTests
00CoveredT2,T9,T15
01CoveredT15,T22,T50
10CoveredT18,T54

 LINE       501
 SUB-EXPRESSION (lc_flash_rma_req_o != On)
                -------------1------------
-1-StatusTests
0CoveredT2,T9,T15
1CoveredT2,T9,T10

 LINE       501
 SUB-EXPRESSION (lc_flash_rma_ack[1] != On)
                -------------1-------------
-1-StatusTests
0CoveredT2,T9,T15
1CoveredT2,T9,T10

 LINE       539
 EXPRESSION (esc_scrap_state0_i || esc_scrap_state1_i)
             ---------1--------    ---------2--------
-1--2-StatusTests
00CoveredT1,T2,T3
01CoveredT2,T3,T9
10CoveredT2,T3,T9

 LINE       546
 EXPRESSION ((((|state_invalid_error)) | token_if_fsm_err_i) && (fsm_state_q != EscalateSt))
             -----------------------1-----------------------    -------------2-------------
-1--2-StatusTests
01CoveredT1,T2,T3
10CoveredT3,T13,T17
11CoveredT3,T13,T17

 LINE       546
 SUB-EXPRESSION (((|state_invalid_error)) | token_if_fsm_err_i)
                 ------------1-----------   ---------2--------
-1--2-StatusTests
00CoveredT1,T2,T3
01CoveredT3,T13,T17
10CoveredT3,T13,T17

 LINE       546
 SUB-EXPRESSION (fsm_state_q != EscalateSt)
                -------------1-------------
-1-StatusTests
0CoveredT2,T3,T9
1CoveredT1,T2,T3

 LINE       584
 SUB-EXPRESSION (set_strap_en_override || gen_strap_delay_regs.strap_en_override_q[0])
                 ----------1----------    ---------------------2---------------------
-1--2-StatusTests
00CoveredT1,T2,T3
01CoveredT12,T34,T35
10CoveredT12,T34,T35

 LINE       704
 EXPRESSION 
 Number  Term
      1  ((int'(dec_lc_state_o[0]) < lc_ctrl_state_pkg::NumLcStates) && (int'(trans_target_i[0]) < lc_ctrl_state_pkg::NumLcStates)) ? lc_ctrl_pkg::TransTokenIdxMatrix[dec_lc_state_o[0]][trans_target_i[0]] : InvalidTokenIdx)
-1-StatusTests
0UnreachableT1,T2,T3
1CoveredT1,T2,T3

 LINE       704
 SUB-EXPRESSION ((int'(dec_lc_state_o[0]) < lc_ctrl_state_pkg::NumLcStates) && (int'(trans_target_i[0]) < lc_ctrl_state_pkg::NumLcStates))
                 -----------------------------1----------------------------    -----------------------------2----------------------------
-1--2-StatusTests
01UnreachableT1,T2,T3
10UnreachableT4,T5,T6
11CoveredT1,T2,T3

 LINE       708
 EXPRESSION 
 Number  Term
      1  ((int'(dec_lc_state_o[1]) < lc_ctrl_state_pkg::NumLcStates) && (int'(trans_target_i[1]) < lc_ctrl_state_pkg::NumLcStates)) ? lc_ctrl_pkg::TransTokenIdxMatrix[dec_lc_state_o[1]][trans_target_i[1]] : InvalidTokenIdx)
-1-StatusTests
0UnreachableT1,T2,T3
1CoveredT1,T2,T3

 LINE       708
 SUB-EXPRESSION ((int'(dec_lc_state_o[1]) < lc_ctrl_state_pkg::NumLcStates) && (int'(trans_target_i[1]) < lc_ctrl_state_pkg::NumLcStates))
                 -----------------------------1----------------------------    -----------------------------2----------------------------
-1--2-StatusTests
01UnreachableT1,T2,T3
10UnreachableT4,T5,T6
11CoveredT1,T2,T3

 LINE       721
 EXPRESSION (trans_invalid_error || (token_idx0 != token_idx1))
             ---------1---------    -------------2------------
-1--2-StatusTests
00CoveredT1,T2,T3
01CoveredT11,T5,T6
10CoveredT2,T15,T30

 LINE       721
 SUB-EXPRESSION (token_idx0 != token_idx1)
                -------------1------------
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT11,T5,T6

FSM Coverage for Module : lc_ctrl_fsm
Summary for FSM :: fsm_state_q
TotalCoveredPercent
States 15 15 100.00 (Not included in score)
Transitions 47 35 74.47
Sequences 0 0

State, Transition and Sequence Details for FSM :: fsm_state_q
statesLine No.CoveredTests
ClkMuxSt 299 Covered T1,T2,T9
CntIncrSt 357 Covered T1,T2,T9
CntProgSt 373 Covered T1,T2,T9
EscalateSt 540 Covered T2,T3,T9
FlashRmaSt 427 Covered T2,T9,T10
IdleSt 224 Covered T1,T2,T3
InvalidSt 547 Covered T3,T13,T17
PostTransSt 289 Covered T1,T2,T9
ResetSt 218 Covered T1,T2,T3
ScrapSt 257 Covered T9,T44,T45
TokenCheck0St 441 Covered T2,T9,T10
TokenCheck1St 473 Covered T2,T9,T10
TokenHashSt 406 Covered T1,T2,T9
TransCheckSt 395 Covered T1,T2,T9
TransProgSt 471 Covered T2,T9,T10


transitionsLine No.CoveredTests
ClkMuxSt->CntIncrSt 357 Covered T1,T2,T9
ClkMuxSt->EscalateSt 540 Covered T9,T55,T56
ClkMuxSt->InvalidSt 547 Not Covered
CntIncrSt->CntProgSt 373 Covered T1,T2,T9
CntIncrSt->EscalateSt 540 Covered T9,T55,T57
CntIncrSt->InvalidSt 547 Not Covered
CntIncrSt->PostTransSt 371 Covered T2,T15,T18
CntProgSt->EscalateSt 540 Covered T9,T55,T57
CntProgSt->InvalidSt 547 Not Covered
CntProgSt->PostTransSt 384 Covered T2,T15,T16
CntProgSt->TransCheckSt 395 Covered T1,T2,T9
EscalateSt->InvalidSt 547 Not Covered
FlashRmaSt->EscalateSt 540 Covered T55,T57,T56
FlashRmaSt->InvalidSt 547 Not Covered
FlashRmaSt->TokenCheck0St 441 Covered T2,T9,T10
IdleSt->ClkMuxSt 299 Covered T1,T2,T9
IdleSt->EscalateSt 540 Covered T9,T55,T58
IdleSt->InvalidSt 547 Covered T3,T13,T17
IdleSt->PostTransSt 289 Covered T30,T35,T36
IdleSt->ScrapSt 257 Covered T9,T44,T45
InvalidSt->EscalateSt 540 Covered T3,T13,T17
PostTransSt->EscalateSt 540 Covered T2,T9,T15
PostTransSt->InvalidSt 547 Not Covered
ResetSt->EscalateSt 540 Covered T9,T55,T57
ResetSt->IdleSt 224 Covered T1,T2,T3
ResetSt->InvalidSt 547 Not Covered
ScrapSt->EscalateSt 540 Covered T9,T55,T57
ScrapSt->InvalidSt 547 Covered T59,T60,T61
TokenCheck0St->EscalateSt 540 Covered T55,T57,T62
TokenCheck0St->InvalidSt 547 Not Covered
TokenCheck0St->PostTransSt 455 Covered T2,T11,T15
TokenCheck0St->TokenCheck1St 473 Covered T2,T9,T10
TokenCheck1St->EscalateSt 540 Covered T9,T55,T57
TokenCheck1St->InvalidSt 547 Not Covered
TokenCheck1St->PostTransSt 455 Covered T2,T11,T22
TokenCheck1St->TransProgSt 471 Covered T2,T9,T10
TokenHashSt->EscalateSt 540 Covered T9,T55,T57
TokenHashSt->FlashRmaSt 427 Covered T2,T9,T10
TokenHashSt->InvalidSt 547 Not Covered
TokenHashSt->PostTransSt 429 Covered T1,T2,T11
TransCheckSt->EscalateSt 540 Covered T9,T55,T57
TransCheckSt->InvalidSt 547 Not Covered
TransCheckSt->PostTransSt 404 Covered T2,T11,T15
TransCheckSt->TokenHashSt 406 Covered T1,T2,T9
TransProgSt->EscalateSt 540 Covered T9,T55,T57
TransProgSt->InvalidSt 547 Not Covered
TransProgSt->PostTransSt 497 Covered T2,T9,T10


Summary for FSM :: lc_state_q
TotalCoveredPercent
States 21 12 57.14 (Not included in score)
Transitions 1 1 100.00
Sequences 0 0

State, Transition and Sequence Details for FSM :: lc_state_q
statesLine No.CoveredTests
LcStDev 92 Not Covered
LcStProd 93 Not Covered
LcStProdEnd 94 Not Covered
LcStRaw 267 Covered T1,T2,T3
LcStRma 305 Not Covered
LcStScrap 256 Not Covered
LcStTestLocked0 305 Covered T1,T2,T3
LcStTestLocked1 305 Covered T1,T2,T3
LcStTestLocked2 305 Covered T1,T2,T3
LcStTestLocked3 305 Covered T1,T2,T3
LcStTestLocked4 305 Covered T1,T2,T3
LcStTestLocked5 305 Not Covered
LcStTestLocked6 305 Not Covered
LcStTestUnlocked0 273 Covered T1,T2,T3
LcStTestUnlocked1 305 Covered T1,T2,T3
LcStTestUnlocked2 305 Covered T1,T2,T3
LcStTestUnlocked3 305 Covered T1,T2,T3
LcStTestUnlocked4 305 Covered T1,T2,T3
LcStTestUnlocked5 305 Covered T1,T3,T9
LcStTestUnlocked6 305 Not Covered
LcStTestUnlocked7 305 Not Covered


transitionsLine No.CoveredTests
LcStRaw->LcStTestUnlocked0 273 Covered T12,T13,T34


Summary for FSM :: lc_cnt_q
TotalCoveredPercent
States 25 6 24.00 (Not included in score)
Transitions 1 1 100.00
Sequences 0 0

State, Transition and Sequence Details for FSM :: lc_cnt_q
statesLine No.CoveredTests
LcCnt0 277 Covered T1,T18,T40
LcCnt1 277 Covered T1,T9,T11
LcCnt10 112 Not Covered
LcCnt11 113 Not Covered
LcCnt12 114 Not Covered
LcCnt13 115 Not Covered
LcCnt14 116 Not Covered
LcCnt15 117 Not Covered
LcCnt16 118 Not Covered
LcCnt17 119 Not Covered
LcCnt18 120 Not Covered
LcCnt19 121 Not Covered
LcCnt2 104 Covered T1,T2,T3
LcCnt20 122 Not Covered
LcCnt21 123 Not Covered
LcCnt22 124 Not Covered
LcCnt23 125 Not Covered
LcCnt24 126 Not Covered
LcCnt3 105 Covered T1,T2,T3
LcCnt4 106 Covered T1,T2,T3
LcCnt5 107 Covered T1,T2,T3
LcCnt6 108 Not Covered
LcCnt7 109 Not Covered
LcCnt8 110 Not Covered
LcCnt9 111 Not Covered


transitionsLine No.CoveredTests
LcCnt0->LcCnt1 277 Covered T35,T63,T46



Branch Coverage for Module : lc_ctrl_fsm
Line No.TotalCoveredPercent
Branches 75 73 97.33
TERNARY 704 1 1 100.00
TERNARY 708 1 1 100.00
CASE 214 46 44 95.65
IF 539 3 3 100.00
IF 556 2 2 100.00
IF 557 2 2 100.00
IF 558 2 2 100.00
IF 561 2 2 100.00
IF 656 2 2 100.00
IF 659 2 2 100.00
IF 663 2 2 100.00
IF 666 2 2 100.00
IF 670 2 2 100.00
IF 673 2 2 100.00
IF 852 2 2 100.00
IF 580 2 2 100.00

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

LineNo. Expression -1-: 704 (((int'(dec_lc_state_o[0]) < lc_ctrl_state_pkg::NumLcStates) && (int'(trans_target_i[0]) < lc_ctrl_state_pkg::NumLcStates))) ?

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


LineNo. Expression -1-: 708 (((int'(dec_lc_state_o[1]) < lc_ctrl_state_pkg::NumLcStates) && (int'(trans_target_i[1]) < lc_ctrl_state_pkg::NumLcStates))) ?

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


LineNo. Expression -1-: 214 case (fsm_state_q) -2-: 223 if ((init_req_i && lc_state_valid_q)) -3-: 245 if (((!((SecVolatileRawUnlockEn && (lc_state_q == LcStTestUnlocked0)) && (lc_cnt_q != LcCnt0))) || prim_mubi_pkg::mubi8_test_false_loose(volatile_raw_unlock_success_q))) -4-: 256 if ((lc_state_q == LcStScrap)) -5-: 265 if (((SecVolatileRawUnlockEn && volatile_raw_unlock_i) && trans_cmd_i)) -6-: 267 if ((((lc_state_q == LcStRaw) && (trans_target_i == {lc_ctrl_state_pkg::DecLcStateNumRep {DecLcStTestUnlocked0}})) && (!trans_invalid_error_o))) -7-: 271 if ((unhashed_token_i == lc_ctrl_state_pkg::RndCnstRawUnlockTokenHashed)) -8-: 277 ((lc_cnt_q == LcCnt0)) ? -9-: 298 if (trans_cmd_i) -10-: 305 if ((lc_state_q inside {LcStRaw, LcStTestLocked0, LcStTestLocked1, LcStTestLocked2, LcStTestLocked3, LcStTestLocked4, LcStTestLocked5, LcStTestLocked6, LcStTestUnlocked0, LcStTestUnlocked1, LcStTestUnlocked2, LcStTestUnlocked3, LcStTestUnlocked4, LcStTestUnlocked5, LcStTestUnlocked6, LcStTestUnlocked7, LcStRma})) -11-: 322 if (use_ext_clock_i) -12-: 337 if ((lc_state_q inside {LcStRaw, LcStTestLocked0, LcStTestLocked1, LcStTestLocked2, LcStTestLocked3, LcStTestLocked4, LcStTestLocked5, LcStTestLocked6, LcStTestUnlocked0, LcStTestUnlocked1, LcStTestUnlocked2, LcStTestUnlocked3, LcStTestUnlocked4, LcStTestUnlocked5, LcStTestUnlocked6, LcStTestUnlocked7, LcStRma})) -13-: 354 if (use_ext_clock_i) -14-: 356 if (lc_ctrl_pkg::lc_tx_test_true_strict(lc_clk_byp_ack[0])) -15-: 370 if (trans_cnt_oflw_error_o) -16-: 383 if ((lc_clk_byp_req_o != lc_clk_byp_ack[1])) -17-: 390 if (otp_prog_ack_i) -18-: 391 if (otp_prog_err_i) -19-: 403 if (trans_invalid_error_o) -20-: 418 if (token_hash_ack_i) -21-: 424 if ((((hashed_token_i == hashed_token_mux) && (!token_hash_err_i)) && (&hashed_token_valid_mux))) -22-: 438 if ((trans_target_i == {lc_ctrl_state_pkg::DecLcStateNumRep {DecLcStRma}})) -23-: 440 if (lc_ctrl_pkg::lc_tx_test_true_strict(lc_flash_rma_ack[0])) -24-: 454 if (trans_invalid_error_o) -25-: 459 if (((((trans_target_i != {lc_ctrl_state_pkg::DecLcStateNumRep {DecLcStRma}}) && lc_ctrl_pkg::lc_tx_test_false_strict(lc_flash_rma_req_o)) && lc_ctrl_pkg::lc_tx_test_false_strict(lc_flash_rma_ack[1])) || (((trans_target_i == {lc_ctrl_state_pkg::DecLcStateNumRep {DecLcStRma}}) && lc_ctrl_pkg::lc_tx_test_true_strict(lc_flash_rma_req_o)) && lc_ctrl_pkg::lc_tx_test_true_strict(lc_flash_rma_ack[1])))) -26-: 465 if ((((hashed_token_i == hashed_token_mux) && (!token_hash_err_i)) && (&hashed_token_valid_mux))) -27-: 468 if ((fsm_state_q == TokenCheck1St)) -28-: 496 if ((lc_clk_byp_req_o != lc_clk_byp_ack[2])) -29-: 501 if ((((trans_target_i != {lc_ctrl_state_pkg::DecLcStateNumRep {DecLcStRma}}) && ((lc_flash_rma_req_o != Off) || (lc_flash_rma_ack[1] != Off))) || ((trans_target_i == {lc_ctrl_state_pkg::DecLcStateNumRep {DecLcStRma}}) && ((lc_flash_rma_req_o != On) || (lc_flash_rma_ack[1] != On))))) -30-: 507 if (otp_prog_ack_i)

Branches:
-1--2--3--4--5--6--7--8--9--10--11--12--13--14--15--16--17--18--19--20--21--22--23--24--25--26--27--28--29--30-StatusTests
ResetSt 1 - - - - - - - - - - - - - - - - - - - - - - - - - - - - Covered T1,T2,T3
ResetSt 0 - - - - - - - - - - - - - - - - - - - - - - - - - - - - Covered T1,T2,T3
IdleSt - 1 - - - - - - - - - - - - - - - - - - - - - - - - - - - Covered T1,T2,T3
IdleSt - 0 - - - - - - - - - - - - - - - - - - - - - - - - - - - Covered T12,T34,T35
IdleSt - - 1 - - - - - - - - - - - - - - - - - - - - - - - - - - Covered T9,T44,T45
IdleSt - - 0 1 1 1 1 - - - - - - - - - - - - - - - - - - - - - - Covered T35,T46,T47
IdleSt - - 0 1 1 1 0 - - - - - - - - - - - - - - - - - - - - - - Covered T12,T34,T38
IdleSt - - 0 1 1 0 - - - - - - - - - - - - - - - - - - - - - - - Not Covered
IdleSt - - 0 1 0 - - - - - - - - - - - - - - - - - - - - - - - - Covered T30,T35,T36
IdleSt - - 0 0 - - - 1 - - - - - - - - - - - - - - - - - - - - - Covered T1,T2,T9
IdleSt - - 0 0 - - - 0 - - - - - - - - - - - - - - - - - - - - - Covered T1,T2,T3
IdleSt - - - - - - - - 1 1 - - - - - - - - - - - - - - - - - - - Covered T10,T12,T4
IdleSt - - - - - - - - 1 0 - - - - - - - - - - - - - - - - - - - Covered T1,T2,T3
IdleSt - - - - - - - - 0 - - - - - - - - - - - - - - - - - - - - Covered T1,T2,T3
ClkMuxSt - - - - - - - - - - 1 1 1 - - - - - - - - - - - - - - - - Covered T10,T12,T64
ClkMuxSt - - - - - - - - - - 1 1 0 - - - - - - - - - - - - - - - - Covered T65,T51,T66
ClkMuxSt - - - - - - - - - - 1 0 - - - - - - - - - - - - - - - - - Covered T1,T2,T9
ClkMuxSt - - - - - - - - - - 0 - - - - - - - - - - - - - - - - - - Covered T1,T2,T9
CntIncrSt - - - - - - - - - - - - - 1 - - - - - - - - - - - - - - - Covered T2,T15,T18
CntIncrSt - - - - - - - - - - - - - 0 - - - - - - - - - - - - - - - Covered T1,T2,T9
CntProgSt - - - - - - - - - - - - - - 1 - - - - - - - - - - - - - - Covered T2,T15,T18
CntProgSt - - - - - - - - - - - - - - 0 - - - - - - - - - - - - - - Covered T1,T2,T9
CntProgSt - - - - - - - - - - - - - - - 1 1 - - - - - - - - - - - - Covered T16,T33,T19
CntProgSt - - - - - - - - - - - - - - - 1 0 - - - - - - - - - - - - Covered T1,T2,T9
CntProgSt - - - - - - - - - - - - - - - 0 - - - - - - - - - - - - - Covered T1,T2,T9
TransCheckSt - - - - - - - - - - - - - - - - - 1 - - - - - - - - - - - Covered T2,T11,T15
TransCheckSt - - - - - - - - - - - - - - - - - 0 - - - - - - - - - - - Covered T1,T2,T9
TokenHashSt - - - - - - - - - - - - - - - - - - 1 1 - - - - - - - - - Covered T2,T9,T10
TokenHashSt - - - - - - - - - - - - - - - - - - 1 0 - - - - - - - - - Covered T1,T2,T11
TokenHashSt - - - - - - - - - - - - - - - - - - 0 - - - - - - - - - - Covered T1,T2,T9
FlashRmaSt - - - - - - - - - - - - - - - - - - - - 1 1 - - - - - - - Covered T2,T9,T11
FlashRmaSt - - - - - - - - - - - - - - - - - - - - 1 0 - - - - - - - Covered T2,T9,T11
FlashRmaSt - - - - - - - - - - - - - - - - - - - - 0 - - - - - - - - Covered T2,T9,T10
TokenCheck0St TokenCheck1St - - - - - - - - - - - - - - - - - - - - - - 1 - - - - - - Covered T11,T67,T68
TokenCheck0St TokenCheck1St - - - - - - - - - - - - - - - - - - - - - - 0 1 1 1 - - - Covered T2,T9,T10
TokenCheck0St TokenCheck1St - - - - - - - - - - - - - - - - - - - - - - 0 1 1 0 - - - Covered T2,T9,T10
TokenCheck0St TokenCheck1St - - - - - - - - - - - - - - - - - - - - - - 0 1 0 - - - - Not Covered
TokenCheck0St TokenCheck1St - - - - - - - - - - - - - - - - - - - - - - 0 0 - - - - - Covered T2,T15,T18
TransProgSt - - - - - - - - - - - - - - - - - - - - - - - - - - 1 - - Covered T21,T48,T49
TransProgSt - - - - - - - - - - - - - - - - - - - - - - - - - - 0 1 - Covered T15,T18,T22
TransProgSt - - - - - - - - - - - - - - - - - - - - - - - - - - 0 0 1 Covered T2,T9,T10
TransProgSt - - - - - - - - - - - - - - - - - - - - - - - - - - 0 0 0 Covered T2,T9,T10
ScrapSt PostTransSt - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Covered T1,T2,T9
EscalateSt - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Covered T2,T3,T9
InvalidSt - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Covered T3,T13,T17
default - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Covered T3,T13,T32


LineNo. Expression -1-: 539 if ((esc_scrap_state0_i || esc_scrap_state1_i)) -2-: 546 if ((((|state_invalid_error) | token_if_fsm_err_i) && (fsm_state_q != EscalateSt)))

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


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

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


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

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


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

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


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

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


LineNo. Expression -1-: 656 if (lc_ctrl_pkg::lc_tx_test_true_strict(test_tokens_valid[0]))

Branches:
-1-StatusTests
1 Covered T1,T2,T3
0 Covered T50,T69,T70


LineNo. Expression -1-: 659 if (lc_ctrl_pkg::lc_tx_test_true_strict(test_tokens_valid[1]))

Branches:
-1-StatusTests
1 Covered T1,T2,T3
0 Covered T50,T69,T70


LineNo. Expression -1-: 663 if (lc_ctrl_pkg::lc_tx_test_true_strict(test_tokens_valid[2]))

Branches:
-1-StatusTests
1 Covered T1,T2,T3
0 Covered T50,T69,T70


LineNo. Expression -1-: 666 if (lc_ctrl_pkg::lc_tx_test_true_strict(test_tokens_valid[3]))

Branches:
-1-StatusTests
1 Covered T1,T2,T3
0 Covered T50,T69,T70


LineNo. Expression -1-: 670 if (lc_ctrl_pkg::lc_tx_test_true_strict(rma_token_valid[0]))

Branches:
-1-StatusTests
1 Covered T1,T2,T3
0 Covered T50,T69,T70


LineNo. Expression -1-: 673 if (lc_ctrl_pkg::lc_tx_test_true_strict(rma_token_valid[1]))

Branches:
-1-StatusTests
1 Covered T1,T2,T3
0 Covered T50,T69,T70


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

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


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

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


Assert Coverage for Module : lc_ctrl_fsm
TotalAttemptedPercentSucceeded/MatchedPercent
Assertions 15 15 100.00 14 93.33
Cover properties 0 0 0
Cover sequences 0 0 0
Total 15 15 100.00 14 93.33




Assertion Details

NameAttemptsReal SuccessesFailuresIncomplete
ClkBypStaysOnOnceAsserted_A 69433519 3320252 0 76
EscStaysOnOnceAsserted_A 69433519 14260598 0 5
FlashRmaStaysOnOnceAsserted_A 69433519 448467 0 11
FsmStateKnown_A 69433519 66062354 0 0
LcCntKnown_A 69433519 66062354 0 0
LcStateKnown_A 69433519 66062354 0 0
NoClkBypInProdStates_A 69433519 9270920 0 0
SecCmCFILinear_A 69433519 0 0 1958
SecCmCFITerminal0_A 69433519 10381419 0 0
SecCmCFITerminal1_A 69433519 47081 0 0
SecCmCFITerminal2_A 69433519 5512984 0 0
SecCmCFITerminal3_A 69433519 8714267 0 0
u_cnt_regs_A 63704748 60644118 0 0
u_fsm_state_regs_A 67578594 64307940 0 0
u_state_regs_A 64698001 61637103 0 0


ClkBypStaysOnOnceAsserted_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 69433519 3320252 0 76
T4 12354 11829 0 1
T5 9992 7487 0 1
T6 0 73771 0 1
T7 0 0 0 1
T10 5215 2056 0 1
T11 58420 0 0 0
T12 1305 1182 0 1
T13 22612 0 0 0
T14 3555 0 0 0
T15 31445 0 0 0
T22 0 73119 0 0
T30 1216 0 0 0
T31 2902 0 0 0
T34 0 764 0 1
T64 0 1450 0 1
T65 0 80 0 0
T71 0 2672 0 0
T72 0 0 0 1
T73 0 0 0 1

EscStaysOnOnceAsserted_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 69433519 14260598 0 5
T2 35565 1876 0 0
T3 121834 102748 0 0
T4 12354 0 0 0
T8 1143 0 0 0
T9 27973 12876 0 0
T10 5215 0 0 0
T11 58420 0 0 0
T12 1305 0 0 0
T13 22612 15173 0 0
T14 3555 0 0 0
T15 0 1241 0 0
T16 0 8132 0 0
T17 0 3169 0 0
T18 0 5780 0 0
T32 0 2148 0 0
T33 0 2157 0 0
T44 0 0 0 1
T74 0 0 0 1
T75 0 0 0 1
T76 0 0 0 1
T77 0 0 0 1

FlashRmaStaysOnOnceAsserted_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 69433519 448467 0 11
T2 35565 559 0 0
T3 121834 0 0 0
T4 12354 0 0 0
T8 1143 0 0 0
T9 27973 372 0 0
T10 5215 0 0 0
T11 58420 765 0 0
T12 1305 0 0 0
T13 22612 0 0 0
T14 3555 0 0 0
T15 0 714 0 0
T18 0 4006 0 0
T21 0 4207 0 0
T22 0 3655 0 0
T32 0 293 0 0
T41 0 217 0 0
T43 0 0 0 1
T50 0 721 0 0
T78 0 0 0 1
T79 0 0 0 1
T80 0 0 0 1
T81 0 0 0 1
T82 0 0 0 1
T83 0 0 0 1
T84 0 0 0 1
T85 0 0 0 1
T86 0 0 0 1

FsmStateKnown_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 69433519 66062354 0 0
T1 37562 32506 0 0
T2 35565 29227 0 0
T3 121834 116911 0 0
T8 1143 1044 0 0
T9 27973 23258 0 0
T10 5215 4688 0 0
T11 58420 53653 0 0
T12 1305 1236 0 0
T13 22612 18270 0 0
T14 3555 3490 0 0

LcCntKnown_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 69433519 66062354 0 0
T1 37562 32506 0 0
T2 35565 29227 0 0
T3 121834 116911 0 0
T8 1143 1044 0 0
T9 27973 23258 0 0
T10 5215 4688 0 0
T11 58420 53653 0 0
T12 1305 1236 0 0
T13 22612 18270 0 0
T14 3555 3490 0 0

LcStateKnown_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 69433519 66062354 0 0
T1 37562 32506 0 0
T2 35565 29227 0 0
T3 121834 116911 0 0
T8 1143 1044 0 0
T9 27973 23258 0 0
T10 5215 4688 0 0
T11 58420 53653 0 0
T12 1305 1236 0 0
T13 22612 18270 0 0
T14 3555 3490 0 0

NoClkBypInProdStates_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 69433519 9270920 0 0
T1 37562 4621 0 0
T2 35565 2655 0 0
T3 121834 10694 0 0
T8 1143 0 0 0
T9 27973 4084 0 0
T10 5215 0 0 0
T11 58420 6124 0 0
T12 1305 0 0 0
T13 22612 2321 0 0
T14 3555 0 0 0
T15 0 3250 0 0
T16 0 8696 0 0
T17 0 1627 0 0
T18 0 28695 0 0

SecCmCFILinear_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 69433519 0 0 1958

SecCmCFITerminal0_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 69433519 10381419 0 0
T1 37562 10179 0 0
T2 35565 12839 0 0
T3 121834 0 0 0
T8 1143 0 0 0
T9 27973 16 0 0
T10 5215 1085 0 0
T11 58420 9649 0 0
T12 1305 783 0 0
T13 22612 0 0 0
T14 3555 0 0 0
T15 0 12220 0 0
T16 0 11055 0 0
T17 0 1596 0 0
T30 0 1060 0 0

SecCmCFITerminal1_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 69433519 47081 0 0
T4 12354 0 0 0
T5 9992 0 0 0
T9 27973 3 0 0
T10 5215 0 0 0
T11 58420 0 0 0
T12 1305 0 0 0
T13 22612 0 0 0
T14 3555 0 0 0
T15 31445 0 0 0
T30 1216 0 0 0
T44 0 1480 0 0
T45 0 35 0 0
T55 0 6 0 0
T56 0 6 0 0
T57 0 9 0 0
T66 0 72 0 0
T72 0 17 0 0
T74 0 854 0 0
T87 0 385 0 0

SecCmCFITerminal2_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 69433519 5512984 0 0
T2 35565 1889 0 0
T3 121834 25124 0 0
T4 12354 0 0 0
T8 1143 0 0 0
T9 27973 12933 0 0
T10 5215 0 0 0
T11 58420 0 0 0
T12 1305 0 0 0
T13 22612 7218 0 0
T14 3555 0 0 0
T15 0 1251 0 0
T16 0 8142 0 0
T17 0 2020 0 0
T18 0 5793 0 0
T32 0 1328 0 0
T33 0 2174 0 0

SecCmCFITerminal3_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 69433519 8714267 0 0
T3 121834 77653 0 0
T4 12354 0 0 0
T8 1143 0 0 0
T9 27973 0 0 0
T10 5215 0 0 0
T11 58420 0 0 0
T12 1305 0 0 0
T13 22612 7976 0 0
T14 3555 0 0 0
T15 31445 0 0 0
T17 0 1155 0 0
T20 0 81628 0 0
T22 0 184042 0 0
T32 0 821 0 0
T50 0 1202 0 0
T88 0 5148 0 0
T89 0 5788 0 0
T90 0 2858 0 0

u_cnt_regs_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 63704748 60644118 0 0
T1 37562 32506 0 0
T2 35565 29227 0 0
T3 82052 78571 0 0
T8 1143 1044 0 0
T9 27973 23258 0 0
T10 5215 4688 0 0
T11 58420 53653 0 0
T12 1305 1236 0 0
T13 15965 12761 0 0
T14 3555 3490 0 0

u_fsm_state_regs_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 67578594 64307940 0 0
T1 37562 32506 0 0
T2 35565 29227 0 0
T3 108423 104032 0 0
T8 1143 1044 0 0
T9 27973 23258 0 0
T10 5215 4688 0 0
T11 58420 53653 0 0
T12 1305 1236 0 0
T13 19345 15597 0 0
T14 3555 3490 0 0

u_state_regs_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 64698001 61637103 0 0
T1 37562 32506 0 0
T2 35565 29227 0 0
T3 82733 79406 0 0
T8 1143 1044 0 0
T9 27973 23258 0 0
T10 5215 4688 0 0
T11 58420 53653 0 0
T12 1305 1236 0 0
T13 14628 11812 0 0
T14 3555 3490 0 0

Line Coverage for Instance : tb.dut.u_lc_ctrl_fsm
Line No.TotalCoveredPercent
TOTAL17617297.73
CONT_ASSIGN12511100.00
CONT_ASSIGN14311100.00
CONT_ASSIGN15011100.00
CONT_ASSIGN15111100.00
ALWAYS17611411096.49
ALWAYS55633100.00
ALWAYS55733100.00
ALWAYS55833100.00
ALWAYS56133100.00
ALWAYS58055100.00
CONT_ASSIGN59111100.00
CONT_ASSIGN63811100.00
CONT_ASSIGN63911100.00
CONT_ASSIGN64011100.00
ALWAYS6491515100.00
ALWAYS6841414100.00
CONT_ASSIGN70411100.00
CONT_ASSIGN70811100.00
CONT_ASSIGN71211100.00
CONT_ASSIGN71411100.00
CONT_ASSIGN72111100.00
ALWAYS85233100.00
WARNING: The source file '/workspace/default/sim-vcs/../src/lowrisc_ip_lc_ctrl_0.1/rtl/lc_ctrl_fsm.sv' or '../src/lowrisc_ip_lc_ctrl_0.1/rtl/lc_ctrl_fsm.sv' was not found, so annotated line coverage report could not be generated.
Line No.CoveredStatements
125 1 1
143 1 1
150 1 1
151 1 1
176 1 1
177 1 1
178 1 1
181 1 1
182 1 1
185 1 1
188 1 1
189 1 1
190 1 1
191 1 1
192 1 1
195 1 1
196 1 1
203 1 1
204 1 1
210 1 1
211 1 1
212 1 1
214 1 1
219 1 1
220 1 1
221 1 1
222 1 1
223 1 1
224 1 1
226 1 1
227 1 1
MISSING_ELSE
235 1 1
245 1 1
249 1 1
250 1 1
MISSING_ELSE
256 1 1
257 1 1
265 1 1
267 1 1
271 1 1
273 1 1
277 1 1
281 1 1
284 1 1
286 1 1
288 0 1
289 0 1
293 1 1
298 1 1
299 1 1
MISSING_ELSE
305 1 1
322 1 1
323 1 1
MISSING_ELSE
MISSING_ELSE
336 1 1
337 1 1
354 1 1
355 1 1
356 1 1
357 1 1
MISSING_ELSE
360 1 1
363 1 1
370 1 1
371 1 1
373 1 1
379 1 1
383 1 1
384 1 1
385 1 1
MISSING_ELSE
390 1 1
391 1 1
392 1 1
393 1 1
395 1 1
MISSING_ELSE
403 1 1
404 1 1
406 1 1
417 1 1
418 1 1
424 1 1
427 1 1
429 1 1
430 1 1
MISSING_ELSE
438 1 1
439 1 1
440 1 1
441 1 1
MISSING_ELSE
444 1 1
454 1 1
455 1 1
459 1 1
465 1 1
468 1 1
471 1 1
473 1 1
476 0 1
477 0 1
481 1 1
482 1 1
492 1 1
496 1 1
497 1 1
498 1 1
501 1 1
505 1 1
506 1 1
507 1 1
508 1 1
509 1 1
510 1 1
MISSING_ELSE
516 1 1
521 1 1
526 1 1
527 1 1
539 1 1
540 1 1
546 1 1
547 1 1
548 1 1
MISSING_ELSE
556 3 3
557 3 3
558 3 3
561 1 1
562 1 1
564 1 1
580 1 1
581 1 1
582 1 1
584 1 1
587 1 1
591 1 1
638 1 1
639 1 1
640 1 1
649 1 1
651 1 1
653 1 1
656 1 1
657 1 1
MISSING_ELSE
659 1 1
660 1 1
MISSING_ELSE
663 1 1
664 1 1
MISSING_ELSE
666 1 1
667 1 1
MISSING_ELSE
670 1 1
671 1 1
MISSING_ELSE
673 1 1
674 1 1
MISSING_ELSE
684 1 1
685 1 1
686 1 1
687 1 1
688 1 1
689 1 1
690 1 1
692 1 1
693 1 1
694 1 1
695 1 1
696 1 1
697 1 1
698 1 1
704 1 1
708 1 1
712 1 1
714 1 1
721 1 1
852 3 3


Cond Coverage for Instance : tb.dut.u_lc_ctrl_fsm
TotalCoveredPercent
Conditions888394.32
Logical888394.32
Non-Logical00
Event00

 LINE       223
 EXPRESSION (init_req_i && lc_state_valid_q)
             -----1----    --------2-------
-1--2-StatusTests
01CoveredT1,T2,T3
10CoveredT3,T13,T17
11CoveredT1,T2,T3

 LINE       256
 EXPRESSION (lc_state_q == LcStScrap)
            ------------1------------
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT9,T44,T45

 LINE       265
 EXPRESSION (SecVolatileRawUnlockEn && volatile_raw_unlock_i && trans_cmd_i)
             -----------1----------    ----------2----------    -----3-----
-1--2--3-StatusTests
-01CoveredT1,T2,T9
-10CoveredT12,T4,T30
-11CoveredT12,T30,T34

 LINE       267
 EXPRESSION ((lc_state_q == LcStRaw) && (trans_target_i == {lc_ctrl_state_pkg::DecLcStateNumRep {DecLcStTestUnlocked0}}) && ((!trans_invalid_error_o)))
             -----------1-----------    ----------------------------------------2---------------------------------------    -------------3------------
-1--2--3-StatusTestsExclude Annotation
011Excluded VC_COV_UNR
101Excluded VC_COV_UNR
110Excluded VC_COV_UNR
111CoveredT12,T34,T35

 LINE       267
 SUB-EXPRESSION (lc_state_q == LcStRaw)
                -----------1-----------
-1-StatusTests
0CoveredT35,T38,T39
1CoveredT12,T30,T34

 LINE       267
 SUB-EXPRESSION (trans_target_i == {lc_ctrl_state_pkg::DecLcStateNumRep {DecLcStTestUnlocked0}})
                ----------------------------------------1---------------------------------------
-1-StatusTests
0CoveredT30,T35,T36
1CoveredT12,T34,T35

 LINE       271
 EXPRESSION (unhashed_token_i == lc_ctrl_state_pkg::RndCnstRawUnlockTokenHashed)
            ----------------------------------1---------------------------------
-1-StatusTestsExclude Annotation
0Excluded VC_COV_UNR
1CoveredT12,T34,T35

 LINE       277
 EXPRESSION ((lc_cnt_q == LcCnt0) ? LcCnt1 : lc_cnt_q)
             ----------1---------
-1-StatusTests
0CoveredT12,T34,T38
1CoveredT35,T46,T47

 LINE       277
 SUB-EXPRESSION (lc_cnt_q == LcCnt0)
                ----------1---------
-1-StatusTests
0CoveredT12,T34,T38
1CoveredT35,T46,T47

 LINE       383
 EXPRESSION (lc_clk_byp_req_o != lc_clk_byp_ack[1])
            -------------------1-------------------
-1-StatusTests
0CoveredT1,T2,T9
1CoveredT2,T15,T18

 LINE       424
 EXPRESSION ((hashed_token_i == hashed_token_mux) && ((!token_hash_err_i)) && ((&hashed_token_valid_mux)))
             ------------------1-----------------    ----------2----------    -------------3-------------
-1--2--3-StatusTests
011CoveredT1,T2,T11
101CoveredT2,T15,T18
110Not Covered
111CoveredT2,T9,T10

 LINE       424
 SUB-EXPRESSION (hashed_token_i == hashed_token_mux)
                ------------------1-----------------
-1-StatusTests
0CoveredT1,T2,T11
1CoveredT2,T9,T10

 LINE       438
 EXPRESSION (trans_target_i == {lc_ctrl_state_pkg::DecLcStateNumRep {DecLcStRma}})
            -----------------------------------1----------------------------------
-1-StatusTests
0CoveredT2,T9,T10
1CoveredT2,T9,T11

 LINE       465
 EXPRESSION ((hashed_token_i == hashed_token_mux) && ((!token_hash_err_i)) && ((&hashed_token_valid_mux)))
             ------------------1-----------------    ----------2----------    -------------3-------------
-1--2--3-StatusTests
011Not Covered
101Not Covered
110Not Covered
111CoveredT2,T9,T10

 LINE       465
 SUB-EXPRESSION (hashed_token_i == hashed_token_mux)
                ------------------1-----------------
-1-StatusTests
0Not Covered
1CoveredT2,T9,T10

 LINE       468
 EXPRESSION (fsm_state_q == TokenCheck1St)
            ---------------1--------------
-1-StatusTests
0CoveredT2,T9,T10
1CoveredT2,T9,T10

 LINE       496
 EXPRESSION (lc_clk_byp_req_o != lc_clk_byp_ack[2])
            -------------------1-------------------
-1-StatusTests
0CoveredT2,T9,T10
1CoveredT21,T48,T49

 LINE       501
 EXPRESSION 
 Number  Term
      1  ((trans_target_i != {lc_ctrl_state_pkg::DecLcStateNumRep {DecLcStRma}}) && ((lc_flash_rma_req_o != Off) || (lc_flash_rma_ack[1] != Off))) || 
      2  ((trans_target_i == {lc_ctrl_state_pkg::DecLcStateNumRep {DecLcStRma}}) && ((lc_flash_rma_req_o != On) || (lc_flash_rma_ack[1] != On))))
-1--2-StatusTests
00CoveredT2,T9,T10
01CoveredT15,T22,T50
10CoveredT18,T51,T52

 LINE       501
 SUB-EXPRESSION ((trans_target_i != {lc_ctrl_state_pkg::DecLcStateNumRep {DecLcStRma}}) && ((lc_flash_rma_req_o != Off) || (lc_flash_rma_ack[1] != Off)))
                 -----------------------------------1----------------------------------    ------------------------------2------------------------------
-1--2-StatusTests
01CoveredT2,T9,T15
10CoveredT2,T9,T10
11CoveredT18,T51,T52

 LINE       501
 SUB-EXPRESSION (trans_target_i != {lc_ctrl_state_pkg::DecLcStateNumRep {DecLcStRma}})
                -----------------------------------1----------------------------------
-1-StatusTests
0CoveredT2,T9,T15
1CoveredT2,T9,T10

 LINE       501
 SUB-EXPRESSION ((lc_flash_rma_req_o != Off) || (lc_flash_rma_ack[1] != Off))
                 -------------1-------------    --------------2-------------
-1--2-StatusTests
00CoveredT2,T9,T10
01CoveredT18,T51,T52
10CoveredT53

 LINE       501
 SUB-EXPRESSION (lc_flash_rma_req_o != Off)
                -------------1-------------
-1-StatusTests
0CoveredT2,T9,T10
1CoveredT2,T9,T15

 LINE       501
 SUB-EXPRESSION (lc_flash_rma_ack[1] != Off)
                --------------1-------------
-1-StatusTests
0CoveredT2,T9,T10
1CoveredT2,T9,T15

 LINE       501
 SUB-EXPRESSION ((trans_target_i == {lc_ctrl_state_pkg::DecLcStateNumRep {DecLcStRma}}) && ((lc_flash_rma_req_o != On) || (lc_flash_rma_ack[1] != On)))
                 -----------------------------------1----------------------------------    -----------------------------2-----------------------------
-1--2-StatusTests
01CoveredT2,T9,T10
10CoveredT2,T9,T15
11CoveredT15,T22,T50

 LINE       501
 SUB-EXPRESSION (trans_target_i == {lc_ctrl_state_pkg::DecLcStateNumRep {DecLcStRma}})
                -----------------------------------1----------------------------------
-1-StatusTests
0CoveredT2,T9,T10
1CoveredT2,T9,T15

 LINE       501
 SUB-EXPRESSION ((lc_flash_rma_req_o != On) || (lc_flash_rma_ack[1] != On))
                 -------------1------------    -------------2-------------
-1--2-StatusTests
00CoveredT2,T9,T15
01CoveredT15,T22,T50
10CoveredT18,T54

 LINE       501
 SUB-EXPRESSION (lc_flash_rma_req_o != On)
                -------------1------------
-1-StatusTests
0CoveredT2,T9,T15
1CoveredT2,T9,T10

 LINE       501
 SUB-EXPRESSION (lc_flash_rma_ack[1] != On)
                -------------1-------------
-1-StatusTests
0CoveredT2,T9,T15
1CoveredT2,T9,T10

 LINE       539
 EXPRESSION (esc_scrap_state0_i || esc_scrap_state1_i)
             ---------1--------    ---------2--------
-1--2-StatusTests
00CoveredT1,T2,T3
01CoveredT2,T3,T9
10CoveredT2,T3,T9

 LINE       546
 EXPRESSION ((((|state_invalid_error)) | token_if_fsm_err_i) && (fsm_state_q != EscalateSt))
             -----------------------1-----------------------    -------------2-------------
-1--2-StatusTests
01CoveredT1,T2,T3
10CoveredT3,T13,T17
11CoveredT3,T13,T17

 LINE       546
 SUB-EXPRESSION (((|state_invalid_error)) | token_if_fsm_err_i)
                 ------------1-----------   ---------2--------
-1--2-StatusTests
00CoveredT1,T2,T3
01CoveredT3,T13,T17
10CoveredT3,T13,T17

 LINE       546
 SUB-EXPRESSION (fsm_state_q != EscalateSt)
                -------------1-------------
-1-StatusTests
0CoveredT2,T3,T9
1CoveredT1,T2,T3

 LINE       584
 SUB-EXPRESSION (set_strap_en_override || gen_strap_delay_regs.strap_en_override_q[0])
                 ----------1----------    ---------------------2---------------------
-1--2-StatusTests
00CoveredT1,T2,T3
01CoveredT12,T34,T35
10CoveredT12,T34,T35

 LINE       704
 EXPRESSION 
 Number  Term
      1  ((int'(dec_lc_state_o[0]) < lc_ctrl_state_pkg::NumLcStates) && (int'(trans_target_i[0]) < lc_ctrl_state_pkg::NumLcStates)) ? lc_ctrl_pkg::TransTokenIdxMatrix[dec_lc_state_o[0]][trans_target_i[0]] : InvalidTokenIdx)
-1-StatusTests
0UnreachableT1,T2,T3
1CoveredT1,T2,T3

 LINE       704
 SUB-EXPRESSION ((int'(dec_lc_state_o[0]) < lc_ctrl_state_pkg::NumLcStates) && (int'(trans_target_i[0]) < lc_ctrl_state_pkg::NumLcStates))
                 -----------------------------1----------------------------    -----------------------------2----------------------------
-1--2-StatusTests
01UnreachableT1,T2,T3
10UnreachableT4,T5,T6
11CoveredT1,T2,T3

 LINE       708
 EXPRESSION 
 Number  Term
      1  ((int'(dec_lc_state_o[1]) < lc_ctrl_state_pkg::NumLcStates) && (int'(trans_target_i[1]) < lc_ctrl_state_pkg::NumLcStates)) ? lc_ctrl_pkg::TransTokenIdxMatrix[dec_lc_state_o[1]][trans_target_i[1]] : InvalidTokenIdx)
-1-StatusTests
0UnreachableT1,T2,T3
1CoveredT1,T2,T3

 LINE       708
 SUB-EXPRESSION ((int'(dec_lc_state_o[1]) < lc_ctrl_state_pkg::NumLcStates) && (int'(trans_target_i[1]) < lc_ctrl_state_pkg::NumLcStates))
                 -----------------------------1----------------------------    -----------------------------2----------------------------
-1--2-StatusTests
01UnreachableT1,T2,T3
10UnreachableT4,T5,T6
11CoveredT1,T2,T3

 LINE       721
 EXPRESSION (trans_invalid_error || (token_idx0 != token_idx1))
             ---------1---------    -------------2------------
-1--2-StatusTests
00CoveredT1,T2,T3
01CoveredT11,T5,T6
10CoveredT2,T15,T30

 LINE       721
 SUB-EXPRESSION (token_idx0 != token_idx1)
                -------------1------------
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT11,T5,T6

FSM Coverage for Instance : tb.dut.u_lc_ctrl_fsm
Summary for FSM :: fsm_state_q
TotalCoveredPercent
States 15 15 100.00 (Not included in score)
Transitions 35 35 100.00
Sequences 0 0

State, Transition and Sequence Details for FSM :: fsm_state_q
statesLine No.CoveredTests
ClkMuxSt 299 Covered T1,T2,T9
CntIncrSt 357 Covered T1,T2,T9
CntProgSt 373 Covered T1,T2,T9
EscalateSt 540 Covered T2,T3,T9
FlashRmaSt 427 Covered T2,T9,T10
IdleSt 224 Covered T1,T2,T3
InvalidSt 547 Covered T3,T13,T17
PostTransSt 289 Covered T1,T2,T9
ResetSt 218 Covered T1,T2,T3
ScrapSt 257 Covered T9,T44,T45
TokenCheck0St 441 Covered T2,T9,T10
TokenCheck1St 473 Covered T2,T9,T10
TokenHashSt 406 Covered T1,T2,T9
TransCheckSt 395 Covered T1,T2,T9
TransProgSt 471 Covered T2,T9,T10


transitionsLine No.CoveredTestsExclude Annotation
ClkMuxSt->CntIncrSt 357 Covered T1,T2,T9
ClkMuxSt->EscalateSt 540 Covered T9,T55,T56
ClkMuxSt->InvalidSt 547 Excluded [LOW_RISK] The transition from any state to error_terminal state is fully verified in FPV.
CntIncrSt->CntProgSt 373 Covered T1,T2,T9
CntIncrSt->EscalateSt 540 Covered T9,T55,T57
CntIncrSt->InvalidSt 547 Excluded [LOW_RISK] The transition from any state to error_terminal state is fully verified in FPV.
CntIncrSt->PostTransSt 371 Covered T2,T15,T18
CntProgSt->EscalateSt 540 Covered T9,T55,T57
CntProgSt->InvalidSt 547 Excluded [LOW_RISK] The transition from any state to error_terminal state is fully verified in FPV.
CntProgSt->PostTransSt 384 Covered T2,T15,T16
CntProgSt->TransCheckSt 395 Covered T1,T2,T9
EscalateSt->InvalidSt 547 Excluded [LOW_RISK] The transition from any state to error_terminal state is fully verified in FPV.
FlashRmaSt->EscalateSt 540 Covered T55,T57,T56
FlashRmaSt->InvalidSt 547 Excluded [LOW_RISK] The transition from any state to error_terminal state is fully verified in FPV.
FlashRmaSt->TokenCheck0St 441 Covered T2,T9,T10
IdleSt->ClkMuxSt 299 Covered T1,T2,T9
IdleSt->EscalateSt 540 Covered T9,T55,T58
IdleSt->InvalidSt 547 Covered T3,T13,T17
IdleSt->PostTransSt 289 Covered T30,T35,T36
IdleSt->ScrapSt 257 Covered T9,T44,T45
InvalidSt->EscalateSt 540 Covered T3,T13,T17
PostTransSt->EscalateSt 540 Covered T2,T9,T15
PostTransSt->InvalidSt 547 Excluded [LOW_RISK] The transition from any state to error_terminal state is fully verified in FPV.
ResetSt->EscalateSt 540 Covered T9,T55,T57
ResetSt->IdleSt 224 Covered T1,T2,T3
ResetSt->InvalidSt 547 Excluded [LOW_RISK] The transition from any state to error_terminal state is fully verified in FPV.
ScrapSt->EscalateSt 540 Covered T9,T55,T57
ScrapSt->InvalidSt 547 Covered T59,T60,T61
TokenCheck0St->EscalateSt 540 Covered T55,T57,T62
TokenCheck0St->InvalidSt 547 Excluded [LOW_RISK] The transition from any state to error_terminal state is fully verified in FPV.
TokenCheck0St->PostTransSt 455 Covered T2,T11,T15
TokenCheck0St->TokenCheck1St 473 Covered T2,T9,T10
TokenCheck1St->EscalateSt 540 Covered T9,T55,T57
TokenCheck1St->InvalidSt 547 Excluded [LOW_RISK] The transition from any state to error_terminal state is fully verified in FPV.
TokenCheck1St->PostTransSt 455 Covered T2,T11,T22
TokenCheck1St->TransProgSt 471 Covered T2,T9,T10
TokenHashSt->EscalateSt 540 Covered T9,T55,T57
TokenHashSt->FlashRmaSt 427 Covered T2,T9,T10
TokenHashSt->InvalidSt 547 Excluded [LOW_RISK] The transition from any state to error_terminal state is fully verified in FPV.
TokenHashSt->PostTransSt 429 Covered T1,T2,T11
TransCheckSt->EscalateSt 540 Covered T9,T55,T57
TransCheckSt->InvalidSt 547 Excluded [LOW_RISK] The transition from any state to error_terminal state is fully verified in FPV.
TransCheckSt->PostTransSt 404 Covered T2,T11,T15
TransCheckSt->TokenHashSt 406 Covered T1,T2,T9
TransProgSt->EscalateSt 540 Covered T9,T55,T57
TransProgSt->InvalidSt 547 Excluded [LOW_RISK] The transition from any state to error_terminal state is fully verified in FPV.
TransProgSt->PostTransSt 497 Covered T2,T9,T10


Summary for FSM :: lc_state_q
TotalCoveredPercent
States 21 12 57.14 (Not included in score)
Transitions 1 1 100.00
Sequences 0 0

State, Transition and Sequence Details for FSM :: lc_state_q
statesLine No.CoveredTests
LcStDev 92 Not Covered
LcStProd 93 Not Covered
LcStProdEnd 94 Not Covered
LcStRaw 267 Covered T1,T2,T3
LcStRma 305 Not Covered
LcStScrap 256 Not Covered
LcStTestLocked0 305 Covered T1,T2,T3
LcStTestLocked1 305 Covered T1,T2,T3
LcStTestLocked2 305 Covered T1,T2,T3
LcStTestLocked3 305 Covered T1,T2,T3
LcStTestLocked4 305 Covered T1,T2,T3
LcStTestLocked5 305 Not Covered
LcStTestLocked6 305 Not Covered
LcStTestUnlocked0 273 Covered T1,T2,T3
LcStTestUnlocked1 305 Covered T1,T2,T3
LcStTestUnlocked2 305 Covered T1,T2,T3
LcStTestUnlocked3 305 Covered T1,T2,T3
LcStTestUnlocked4 305 Covered T1,T2,T3
LcStTestUnlocked5 305 Covered T1,T3,T9
LcStTestUnlocked6 305 Not Covered
LcStTestUnlocked7 305 Not Covered


transitionsLine No.CoveredTests
LcStRaw->LcStTestUnlocked0 273 Covered T12,T13,T34


Summary for FSM :: lc_cnt_q
TotalCoveredPercent
States 25 6 24.00 (Not included in score)
Transitions 1 1 100.00
Sequences 0 0

State, Transition and Sequence Details for FSM :: lc_cnt_q
statesLine No.CoveredTests
LcCnt0 277 Covered T1,T18,T40
LcCnt1 277 Covered T1,T9,T11
LcCnt10 112 Not Covered
LcCnt11 113 Not Covered
LcCnt12 114 Not Covered
LcCnt13 115 Not Covered
LcCnt14 116 Not Covered
LcCnt15 117 Not Covered
LcCnt16 118 Not Covered
LcCnt17 119 Not Covered
LcCnt18 120 Not Covered
LcCnt19 121 Not Covered
LcCnt2 104 Covered T1,T2,T3
LcCnt20 122 Not Covered
LcCnt21 123 Not Covered
LcCnt22 124 Not Covered
LcCnt23 125 Not Covered
LcCnt24 126 Not Covered
LcCnt3 105 Covered T1,T2,T3
LcCnt4 106 Covered T1,T2,T3
LcCnt5 107 Covered T1,T2,T3
LcCnt6 108 Not Covered
LcCnt7 109 Not Covered
LcCnt8 110 Not Covered
LcCnt9 111 Not Covered


transitionsLine No.CoveredTests
LcCnt0->LcCnt1 277 Covered T35,T63,T46



Branch Coverage for Instance : tb.dut.u_lc_ctrl_fsm
Line No.TotalCoveredPercent
Branches 75 73 97.33
TERNARY 704 1 1 100.00
TERNARY 708 1 1 100.00
CASE 214 46 44 95.65
IF 539 3 3 100.00
IF 556 2 2 100.00
IF 557 2 2 100.00
IF 558 2 2 100.00
IF 561 2 2 100.00
IF 656 2 2 100.00
IF 659 2 2 100.00
IF 663 2 2 100.00
IF 666 2 2 100.00
IF 670 2 2 100.00
IF 673 2 2 100.00
IF 852 2 2 100.00
IF 580 2 2 100.00

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

LineNo. Expression -1-: 704 (((int'(dec_lc_state_o[0]) < lc_ctrl_state_pkg::NumLcStates) && (int'(trans_target_i[0]) < lc_ctrl_state_pkg::NumLcStates))) ?

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


LineNo. Expression -1-: 708 (((int'(dec_lc_state_o[1]) < lc_ctrl_state_pkg::NumLcStates) && (int'(trans_target_i[1]) < lc_ctrl_state_pkg::NumLcStates))) ?

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


LineNo. Expression -1-: 214 case (fsm_state_q) -2-: 223 if ((init_req_i && lc_state_valid_q)) -3-: 245 if (((!((SecVolatileRawUnlockEn && (lc_state_q == LcStTestUnlocked0)) && (lc_cnt_q != LcCnt0))) || prim_mubi_pkg::mubi8_test_false_loose(volatile_raw_unlock_success_q))) -4-: 256 if ((lc_state_q == LcStScrap)) -5-: 265 if (((SecVolatileRawUnlockEn && volatile_raw_unlock_i) && trans_cmd_i)) -6-: 267 if ((((lc_state_q == LcStRaw) && (trans_target_i == {lc_ctrl_state_pkg::DecLcStateNumRep {DecLcStTestUnlocked0}})) && (!trans_invalid_error_o))) -7-: 271 if ((unhashed_token_i == lc_ctrl_state_pkg::RndCnstRawUnlockTokenHashed)) -8-: 277 ((lc_cnt_q == LcCnt0)) ? -9-: 298 if (trans_cmd_i) -10-: 305 if ((lc_state_q inside {LcStRaw, LcStTestLocked0, LcStTestLocked1, LcStTestLocked2, LcStTestLocked3, LcStTestLocked4, LcStTestLocked5, LcStTestLocked6, LcStTestUnlocked0, LcStTestUnlocked1, LcStTestUnlocked2, LcStTestUnlocked3, LcStTestUnlocked4, LcStTestUnlocked5, LcStTestUnlocked6, LcStTestUnlocked7, LcStRma})) -11-: 322 if (use_ext_clock_i) -12-: 337 if ((lc_state_q inside {LcStRaw, LcStTestLocked0, LcStTestLocked1, LcStTestLocked2, LcStTestLocked3, LcStTestLocked4, LcStTestLocked5, LcStTestLocked6, LcStTestUnlocked0, LcStTestUnlocked1, LcStTestUnlocked2, LcStTestUnlocked3, LcStTestUnlocked4, LcStTestUnlocked5, LcStTestUnlocked6, LcStTestUnlocked7, LcStRma})) -13-: 354 if (use_ext_clock_i) -14-: 356 if (lc_ctrl_pkg::lc_tx_test_true_strict(lc_clk_byp_ack[0])) -15-: 370 if (trans_cnt_oflw_error_o) -16-: 383 if ((lc_clk_byp_req_o != lc_clk_byp_ack[1])) -17-: 390 if (otp_prog_ack_i) -18-: 391 if (otp_prog_err_i) -19-: 403 if (trans_invalid_error_o) -20-: 418 if (token_hash_ack_i) -21-: 424 if ((((hashed_token_i == hashed_token_mux) && (!token_hash_err_i)) && (&hashed_token_valid_mux))) -22-: 438 if ((trans_target_i == {lc_ctrl_state_pkg::DecLcStateNumRep {DecLcStRma}})) -23-: 440 if (lc_ctrl_pkg::lc_tx_test_true_strict(lc_flash_rma_ack[0])) -24-: 454 if (trans_invalid_error_o) -25-: 459 if (((((trans_target_i != {lc_ctrl_state_pkg::DecLcStateNumRep {DecLcStRma}}) && lc_ctrl_pkg::lc_tx_test_false_strict(lc_flash_rma_req_o)) && lc_ctrl_pkg::lc_tx_test_false_strict(lc_flash_rma_ack[1])) || (((trans_target_i == {lc_ctrl_state_pkg::DecLcStateNumRep {DecLcStRma}}) && lc_ctrl_pkg::lc_tx_test_true_strict(lc_flash_rma_req_o)) && lc_ctrl_pkg::lc_tx_test_true_strict(lc_flash_rma_ack[1])))) -26-: 465 if ((((hashed_token_i == hashed_token_mux) && (!token_hash_err_i)) && (&hashed_token_valid_mux))) -27-: 468 if ((fsm_state_q == TokenCheck1St)) -28-: 496 if ((lc_clk_byp_req_o != lc_clk_byp_ack[2])) -29-: 501 if ((((trans_target_i != {lc_ctrl_state_pkg::DecLcStateNumRep {DecLcStRma}}) && ((lc_flash_rma_req_o != Off) || (lc_flash_rma_ack[1] != Off))) || ((trans_target_i == {lc_ctrl_state_pkg::DecLcStateNumRep {DecLcStRma}}) && ((lc_flash_rma_req_o != On) || (lc_flash_rma_ack[1] != On))))) -30-: 507 if (otp_prog_ack_i)

Branches:
-1--2--3--4--5--6--7--8--9--10--11--12--13--14--15--16--17--18--19--20--21--22--23--24--25--26--27--28--29--30-StatusTests
ResetSt 1 - - - - - - - - - - - - - - - - - - - - - - - - - - - - Covered T1,T2,T3
ResetSt 0 - - - - - - - - - - - - - - - - - - - - - - - - - - - - Covered T1,T2,T3
IdleSt - 1 - - - - - - - - - - - - - - - - - - - - - - - - - - - Covered T1,T2,T3
IdleSt - 0 - - - - - - - - - - - - - - - - - - - - - - - - - - - Covered T12,T34,T35
IdleSt - - 1 - - - - - - - - - - - - - - - - - - - - - - - - - - Covered T9,T44,T45
IdleSt - - 0 1 1 1 1 - - - - - - - - - - - - - - - - - - - - - - Covered T35,T46,T47
IdleSt - - 0 1 1 1 0 - - - - - - - - - - - - - - - - - - - - - - Covered T12,T34,T38
IdleSt - - 0 1 1 0 - - - - - - - - - - - - - - - - - - - - - - - Not Covered
IdleSt - - 0 1 0 - - - - - - - - - - - - - - - - - - - - - - - - Covered T30,T35,T36
IdleSt - - 0 0 - - - 1 - - - - - - - - - - - - - - - - - - - - - Covered T1,T2,T9
IdleSt - - 0 0 - - - 0 - - - - - - - - - - - - - - - - - - - - - Covered T1,T2,T3
IdleSt - - - - - - - - 1 1 - - - - - - - - - - - - - - - - - - - Covered T10,T12,T4
IdleSt - - - - - - - - 1 0 - - - - - - - - - - - - - - - - - - - Covered T1,T2,T3
IdleSt - - - - - - - - 0 - - - - - - - - - - - - - - - - - - - - Covered T1,T2,T3
ClkMuxSt - - - - - - - - - - 1 1 1 - - - - - - - - - - - - - - - - Covered T10,T12,T64
ClkMuxSt - - - - - - - - - - 1 1 0 - - - - - - - - - - - - - - - - Covered T65,T51,T66
ClkMuxSt - - - - - - - - - - 1 0 - - - - - - - - - - - - - - - - - Covered T1,T2,T9
ClkMuxSt - - - - - - - - - - 0 - - - - - - - - - - - - - - - - - - Covered T1,T2,T9
CntIncrSt - - - - - - - - - - - - - 1 - - - - - - - - - - - - - - - Covered T2,T15,T18
CntIncrSt - - - - - - - - - - - - - 0 - - - - - - - - - - - - - - - Covered T1,T2,T9
CntProgSt - - - - - - - - - - - - - - 1 - - - - - - - - - - - - - - Covered T2,T15,T18
CntProgSt - - - - - - - - - - - - - - 0 - - - - - - - - - - - - - - Covered T1,T2,T9
CntProgSt - - - - - - - - - - - - - - - 1 1 - - - - - - - - - - - - Covered T16,T33,T19
CntProgSt - - - - - - - - - - - - - - - 1 0 - - - - - - - - - - - - Covered T1,T2,T9
CntProgSt - - - - - - - - - - - - - - - 0 - - - - - - - - - - - - - Covered T1,T2,T9
TransCheckSt - - - - - - - - - - - - - - - - - 1 - - - - - - - - - - - Covered T2,T11,T15
TransCheckSt - - - - - - - - - - - - - - - - - 0 - - - - - - - - - - - Covered T1,T2,T9
TokenHashSt - - - - - - - - - - - - - - - - - - 1 1 - - - - - - - - - Covered T2,T9,T10
TokenHashSt - - - - - - - - - - - - - - - - - - 1 0 - - - - - - - - - Covered T1,T2,T11
TokenHashSt - - - - - - - - - - - - - - - - - - 0 - - - - - - - - - - Covered T1,T2,T9
FlashRmaSt - - - - - - - - - - - - - - - - - - - - 1 1 - - - - - - - Covered T2,T9,T11
FlashRmaSt - - - - - - - - - - - - - - - - - - - - 1 0 - - - - - - - Covered T2,T9,T11
FlashRmaSt - - - - - - - - - - - - - - - - - - - - 0 - - - - - - - - Covered T2,T9,T10
TokenCheck0St TokenCheck1St - - - - - - - - - - - - - - - - - - - - - - 1 - - - - - - Covered T11,T67,T68
TokenCheck0St TokenCheck1St - - - - - - - - - - - - - - - - - - - - - - 0 1 1 1 - - - Covered T2,T9,T10
TokenCheck0St TokenCheck1St - - - - - - - - - - - - - - - - - - - - - - 0 1 1 0 - - - Covered T2,T9,T10
TokenCheck0St TokenCheck1St - - - - - - - - - - - - - - - - - - - - - - 0 1 0 - - - - Not Covered
TokenCheck0St TokenCheck1St - - - - - - - - - - - - - - - - - - - - - - 0 0 - - - - - Covered T2,T15,T18
TransProgSt - - - - - - - - - - - - - - - - - - - - - - - - - - 1 - - Covered T21,T48,T49
TransProgSt - - - - - - - - - - - - - - - - - - - - - - - - - - 0 1 - Covered T15,T18,T22
TransProgSt - - - - - - - - - - - - - - - - - - - - - - - - - - 0 0 1 Covered T2,T9,T10
TransProgSt - - - - - - - - - - - - - - - - - - - - - - - - - - 0 0 0 Covered T2,T9,T10
ScrapSt PostTransSt - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Covered T1,T2,T9
EscalateSt - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Covered T2,T3,T9
InvalidSt - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Covered T3,T13,T17
default - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Covered T3,T13,T32


LineNo. Expression -1-: 539 if ((esc_scrap_state0_i || esc_scrap_state1_i)) -2-: 546 if ((((|state_invalid_error) | token_if_fsm_err_i) && (fsm_state_q != EscalateSt)))

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


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

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


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

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


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

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


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

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


LineNo. Expression -1-: 656 if (lc_ctrl_pkg::lc_tx_test_true_strict(test_tokens_valid[0]))

Branches:
-1-StatusTests
1 Covered T1,T2,T3
0 Covered T50,T69,T70


LineNo. Expression -1-: 659 if (lc_ctrl_pkg::lc_tx_test_true_strict(test_tokens_valid[1]))

Branches:
-1-StatusTests
1 Covered T1,T2,T3
0 Covered T50,T69,T70


LineNo. Expression -1-: 663 if (lc_ctrl_pkg::lc_tx_test_true_strict(test_tokens_valid[2]))

Branches:
-1-StatusTests
1 Covered T1,T2,T3
0 Covered T50,T69,T70


LineNo. Expression -1-: 666 if (lc_ctrl_pkg::lc_tx_test_true_strict(test_tokens_valid[3]))

Branches:
-1-StatusTests
1 Covered T1,T2,T3
0 Covered T50,T69,T70


LineNo. Expression -1-: 670 if (lc_ctrl_pkg::lc_tx_test_true_strict(rma_token_valid[0]))

Branches:
-1-StatusTests
1 Covered T1,T2,T3
0 Covered T50,T69,T70


LineNo. Expression -1-: 673 if (lc_ctrl_pkg::lc_tx_test_true_strict(rma_token_valid[1]))

Branches:
-1-StatusTests
1 Covered T1,T2,T3
0 Covered T50,T69,T70


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

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


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

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


Assert Coverage for Instance : tb.dut.u_lc_ctrl_fsm
TotalAttemptedPercentSucceeded/MatchedPercent
Assertions 15 15 100.00 14 93.33
Cover properties 0 0 0
Cover sequences 0 0 0
Total 15 15 100.00 14 93.33




Assertion Details

NameAttemptsReal SuccessesFailuresIncomplete
ClkBypStaysOnOnceAsserted_A 69433519 3320252 0 76
EscStaysOnOnceAsserted_A 69433519 14260598 0 5
FlashRmaStaysOnOnceAsserted_A 69433519 448467 0 11
FsmStateKnown_A 69433519 66062354 0 0
LcCntKnown_A 69433519 66062354 0 0
LcStateKnown_A 69433519 66062354 0 0
NoClkBypInProdStates_A 69433519 9270920 0 0
SecCmCFILinear_A 69433519 0 0 1958
SecCmCFITerminal0_A 69433519 10381419 0 0
SecCmCFITerminal1_A 69433519 47081 0 0
SecCmCFITerminal2_A 69433519 5512984 0 0
SecCmCFITerminal3_A 69433519 8714267 0 0
u_cnt_regs_A 63704748 60644118 0 0
u_fsm_state_regs_A 67578594 64307940 0 0
u_state_regs_A 64698001 61637103 0 0


ClkBypStaysOnOnceAsserted_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 69433519 3320252 0 76
T4 12354 11829 0 1
T5 9992 7487 0 1
T6 0 73771 0 1
T7 0 0 0 1
T10 5215 2056 0 1
T11 58420 0 0 0
T12 1305 1182 0 1
T13 22612 0 0 0
T14 3555 0 0 0
T15 31445 0 0 0
T22 0 73119 0 0
T30 1216 0 0 0
T31 2902 0 0 0
T34 0 764 0 1
T64 0 1450 0 1
T65 0 80 0 0
T71 0 2672 0 0
T72 0 0 0 1
T73 0 0 0 1

EscStaysOnOnceAsserted_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 69433519 14260598 0 5
T2 35565 1876 0 0
T3 121834 102748 0 0
T4 12354 0 0 0
T8 1143 0 0 0
T9 27973 12876 0 0
T10 5215 0 0 0
T11 58420 0 0 0
T12 1305 0 0 0
T13 22612 15173 0 0
T14 3555 0 0 0
T15 0 1241 0 0
T16 0 8132 0 0
T17 0 3169 0 0
T18 0 5780 0 0
T32 0 2148 0 0
T33 0 2157 0 0
T44 0 0 0 1
T74 0 0 0 1
T75 0 0 0 1
T76 0 0 0 1
T77 0 0 0 1

FlashRmaStaysOnOnceAsserted_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 69433519 448467 0 11
T2 35565 559 0 0
T3 121834 0 0 0
T4 12354 0 0 0
T8 1143 0 0 0
T9 27973 372 0 0
T10 5215 0 0 0
T11 58420 765 0 0
T12 1305 0 0 0
T13 22612 0 0 0
T14 3555 0 0 0
T15 0 714 0 0
T18 0 4006 0 0
T21 0 4207 0 0
T22 0 3655 0 0
T32 0 293 0 0
T41 0 217 0 0
T43 0 0 0 1
T50 0 721 0 0
T78 0 0 0 1
T79 0 0 0 1
T80 0 0 0 1
T81 0 0 0 1
T82 0 0 0 1
T83 0 0 0 1
T84 0 0 0 1
T85 0 0 0 1
T86 0 0 0 1

FsmStateKnown_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 69433519 66062354 0 0
T1 37562 32506 0 0
T2 35565 29227 0 0
T3 121834 116911 0 0
T8 1143 1044 0 0
T9 27973 23258 0 0
T10 5215 4688 0 0
T11 58420 53653 0 0
T12 1305 1236 0 0
T13 22612 18270 0 0
T14 3555 3490 0 0

LcCntKnown_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 69433519 66062354 0 0
T1 37562 32506 0 0
T2 35565 29227 0 0
T3 121834 116911 0 0
T8 1143 1044 0 0
T9 27973 23258 0 0
T10 5215 4688 0 0
T11 58420 53653 0 0
T12 1305 1236 0 0
T13 22612 18270 0 0
T14 3555 3490 0 0

LcStateKnown_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 69433519 66062354 0 0
T1 37562 32506 0 0
T2 35565 29227 0 0
T3 121834 116911 0 0
T8 1143 1044 0 0
T9 27973 23258 0 0
T10 5215 4688 0 0
T11 58420 53653 0 0
T12 1305 1236 0 0
T13 22612 18270 0 0
T14 3555 3490 0 0

NoClkBypInProdStates_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 69433519 9270920 0 0
T1 37562 4621 0 0
T2 35565 2655 0 0
T3 121834 10694 0 0
T8 1143 0 0 0
T9 27973 4084 0 0
T10 5215 0 0 0
T11 58420 6124 0 0
T12 1305 0 0 0
T13 22612 2321 0 0
T14 3555 0 0 0
T15 0 3250 0 0
T16 0 8696 0 0
T17 0 1627 0 0
T18 0 28695 0 0

SecCmCFILinear_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 69433519 0 0 1958

SecCmCFITerminal0_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 69433519 10381419 0 0
T1 37562 10179 0 0
T2 35565 12839 0 0
T3 121834 0 0 0
T8 1143 0 0 0
T9 27973 16 0 0
T10 5215 1085 0 0
T11 58420 9649 0 0
T12 1305 783 0 0
T13 22612 0 0 0
T14 3555 0 0 0
T15 0 12220 0 0
T16 0 11055 0 0
T17 0 1596 0 0
T30 0 1060 0 0

SecCmCFITerminal1_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 69433519 47081 0 0
T4 12354 0 0 0
T5 9992 0 0 0
T9 27973 3 0 0
T10 5215 0 0 0
T11 58420 0 0 0
T12 1305 0 0 0
T13 22612 0 0 0
T14 3555 0 0 0
T15 31445 0 0 0
T30 1216 0 0 0
T44 0 1480 0 0
T45 0 35 0 0
T55 0 6 0 0
T56 0 6 0 0
T57 0 9 0 0
T66 0 72 0 0
T72 0 17 0 0
T74 0 854 0 0
T87 0 385 0 0

SecCmCFITerminal2_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 69433519 5512984 0 0
T2 35565 1889 0 0
T3 121834 25124 0 0
T4 12354 0 0 0
T8 1143 0 0 0
T9 27973 12933 0 0
T10 5215 0 0 0
T11 58420 0 0 0
T12 1305 0 0 0
T13 22612 7218 0 0
T14 3555 0 0 0
T15 0 1251 0 0
T16 0 8142 0 0
T17 0 2020 0 0
T18 0 5793 0 0
T32 0 1328 0 0
T33 0 2174 0 0

SecCmCFITerminal3_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 69433519 8714267 0 0
T3 121834 77653 0 0
T4 12354 0 0 0
T8 1143 0 0 0
T9 27973 0 0 0
T10 5215 0 0 0
T11 58420 0 0 0
T12 1305 0 0 0
T13 22612 7976 0 0
T14 3555 0 0 0
T15 31445 0 0 0
T17 0 1155 0 0
T20 0 81628 0 0
T22 0 184042 0 0
T32 0 821 0 0
T50 0 1202 0 0
T88 0 5148 0 0
T89 0 5788 0 0
T90 0 2858 0 0

u_cnt_regs_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 63704748 60644118 0 0
T1 37562 32506 0 0
T2 35565 29227 0 0
T3 82052 78571 0 0
T8 1143 1044 0 0
T9 27973 23258 0 0
T10 5215 4688 0 0
T11 58420 53653 0 0
T12 1305 1236 0 0
T13 15965 12761 0 0
T14 3555 3490 0 0

u_fsm_state_regs_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 67578594 64307940 0 0
T1 37562 32506 0 0
T2 35565 29227 0 0
T3 108423 104032 0 0
T8 1143 1044 0 0
T9 27973 23258 0 0
T10 5215 4688 0 0
T11 58420 53653 0 0
T12 1305 1236 0 0
T13 19345 15597 0 0
T14 3555 3490 0 0

u_state_regs_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 64698001 61637103 0 0
T1 37562 32506 0 0
T2 35565 29227 0 0
T3 82733 79406 0 0
T8 1143 1044 0 0
T9 27973 23258 0 0
T10 5215 4688 0 0
T11 58420 53653 0 0
T12 1305 1236 0 0
T13 14628 11812 0 0
T14 3555 3490 0 0

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