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

Module : keymgr_ctrl
SCORELINECONDTOGGLEFSMBRANCHASSERT
97.79 100.00 98.06 100.00 100.00 90.91

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

Module self-instances :
NAMESCORELINECONDTOGGLEFSMBRANCHASSERT
tb.dut.u_ctrl 97.79 100.00 98.06 100.00 100.00 90.91



Module Instance : tb.dut.u_ctrl

Instance :
SCORELINECONDTOGGLEFSMBRANCHASSERT
97.79 100.00 98.06 100.00 100.00 90.91


Instance's subtree :
SCORELINECONDTOGGLEFSMBRANCHASSERT
97.21 99.70 95.19 95.65 100.00 98.60 94.12


Parent :
SCORELINECONDTOGGLEFSMBRANCHASSERTNAME
98.04 95.95 98.39 99.96 95.92 100.00 dut


Subtrees :
NAMESCORELINECONDTOGGLEFSMBRANCHASSERT
gen_ecc_loop_cdi[0].gen_ecc_loop_shares[0].gen_ecc_loop_words[0].u_dec 95.89 95.89
gen_ecc_loop_cdi[0].gen_ecc_loop_shares[0].gen_ecc_loop_words[1].u_dec 95.89 95.89
gen_ecc_loop_cdi[0].gen_ecc_loop_shares[0].gen_ecc_loop_words[2].u_dec 97.26 97.26
gen_ecc_loop_cdi[0].gen_ecc_loop_shares[0].gen_ecc_loop_words[3].u_dec 97.26 97.26
gen_ecc_loop_cdi[0].gen_ecc_loop_shares[1].gen_ecc_loop_words[0].u_dec 96.58 96.58
gen_ecc_loop_cdi[0].gen_ecc_loop_shares[1].gen_ecc_loop_words[1].u_dec 93.15 93.15
gen_ecc_loop_cdi[0].gen_ecc_loop_shares[1].gen_ecc_loop_words[2].u_dec 93.15 93.15
gen_ecc_loop_cdi[0].gen_ecc_loop_shares[1].gen_ecc_loop_words[3].u_dec 93.15 93.15
gen_ecc_loop_cdi[1].gen_ecc_loop_shares[0].gen_ecc_loop_words[0].u_dec 97.95 97.95
gen_ecc_loop_cdi[1].gen_ecc_loop_shares[0].gen_ecc_loop_words[1].u_dec 95.89 95.89
gen_ecc_loop_cdi[1].gen_ecc_loop_shares[0].gen_ecc_loop_words[2].u_dec 98.63 98.63
gen_ecc_loop_cdi[1].gen_ecc_loop_shares[0].gen_ecc_loop_words[3].u_dec 97.26 97.26
gen_ecc_loop_cdi[1].gen_ecc_loop_shares[1].gen_ecc_loop_words[0].u_dec 93.15 93.15
gen_ecc_loop_cdi[1].gen_ecc_loop_shares[1].gen_ecc_loop_words[1].u_dec 93.15 93.15
gen_ecc_loop_cdi[1].gen_ecc_loop_shares[1].gen_ecc_loop_words[2].u_dec 95.89 95.89
gen_ecc_loop_cdi[1].gen_ecc_loop_shares[1].gen_ecc_loop_words[3].u_dec 95.89 95.89
u_cnt 100.00 100.00
u_data_en 84.15 97.44 33.33 100.00 90.00 100.00
u_err 94.81 100.00 84.44 100.00
u_hw_sel 100.00 100.00 100.00 100.00
u_key_valid_sync 100.00 100.00 100.00
u_op_state 100.00 100.00 100.00 100.00 100.00 100.00
u_state_regs 100.00 100.00 100.00 100.00


Since this is the module's only instance, the coverage report is the same as for the module.
Line Coverage for Module : keymgr_ctrl
Line No.TotalCoveredPercent
TOTAL184184100.00
CONT_ASSIGN14911100.00
CONT_ASSIGN15011100.00
CONT_ASSIGN15111100.00
CONT_ASSIGN15211100.00
CONT_ASSIGN15411100.00
CONT_ASSIGN16411100.00
CONT_ASSIGN16511100.00
CONT_ASSIGN16811100.00
CONT_ASSIGN18411100.00
CONT_ASSIGN18511100.00
CONT_ASSIGN18611100.00
CONT_ASSIGN18711100.00
CONT_ASSIGN20111100.00
CONT_ASSIGN20611100.00
CONT_ASSIGN21211100.00
CONT_ASSIGN21411100.00
CONT_ASSIGN22911100.00
CONT_ASSIGN23711100.00
ALWAYS24333100.00
ALWAYS24633100.00
CONT_ASSIGN25711100.00
CONT_ASSIGN25911100.00
CONT_ASSIGN26311100.00
CONT_ASSIGN26311100.00
CONT_ASSIGN27011100.00
ALWAYS27277100.00
CONT_ASSIGN29811100.00
CONT_ASSIGN29811100.00
CONT_ASSIGN29811100.00
CONT_ASSIGN29811100.00
CONT_ASSIGN29811100.00
CONT_ASSIGN29811100.00
CONT_ASSIGN29811100.00
CONT_ASSIGN29811100.00
CONT_ASSIGN29811100.00
CONT_ASSIGN29811100.00
CONT_ASSIGN29811100.00
CONT_ASSIGN29811100.00
CONT_ASSIGN29811100.00
CONT_ASSIGN29811100.00
CONT_ASSIGN29811100.00
CONT_ASSIGN29811100.00
CONT_ASSIGN30511100.00
CONT_ASSIGN32811100.00
ALWAYS3312121100.00
CONT_ASSIGN41511100.00
CONT_ASSIGN42611100.00
CONT_ASSIGN42711100.00
CONT_ASSIGN43311100.00
ALWAYS4377373100.00
ALWAYS65544100.00
ALWAYS6631212100.00
ALWAYS69955100.00
CONT_ASSIGN73711100.00
CONT_ASSIGN74311100.00
CONT_ASSIGN77411100.00
ALWAYS78233100.00
CONT_ASSIGN79211100.00
ROUTINE83911100.00
ALWAYS88133100.00
WARNING: The source file '/workspace/default/sim-vcs/../src/lowrisc_ip_keymgr_0.1/rtl/keymgr_ctrl.sv' or '../src/lowrisc_ip_keymgr_0.1/rtl/keymgr_ctrl.sv' was not found, so annotated line coverage report could not be generated.
Line No.CoveredStatements
149 1 1
150 1 1
151 1 1
152 1 1
154 1 1
164 1 1
165 1 1
168 1 1
184 1 1
185 1 1
186 1 1
187 1 1
201 1 1
206 1 1
212 1 1
214 1 1
229 1 1
237 1 1
243 3 3
246 1 1
247 1 1
249 1 1
257 1 1
259 1 1
263 2 2
270 1 1
272 1 1
273 1 1
274 1 1
276 1 1
277 1 1
278 1 1
279 1 1
298 16 16
305 1 1
328 1 1
331 1 1
332 1 1
333 1 1
337 1 1
339 1 1
340 1 1
343 1 1
349 1 1
350 1 1
351 1 1
352 1 1
353 1 1
355 unreachable
357 unreachable
362 1 1
363 1 1
364 1 1
370 1 1
371 1 1
375 1 1
376 1 1
377 1 1
378 1 1
415 1 1
426 1 1
427 1 1
433 1 1
437 1 1
440 1 1
441 1 1
442 1 1
445 1 1
448 1 1
451 1 1
454 1 1
457 1 1
460 1 1
463 1 1
466 1 1
470 1 1
472 1 1
475 1 1
479 1 1
483 1 1
486 1 1
487 1 1
488 1 1
489 1 1
MISSING_ELSE
495 1 1
496 1 1
498 1 1
499 1 1
MISSING_ELSE
505 1 1
506 1 1
511 1 1
512 unreachable
513 unreachable
MISSING_ELSE
519 1 1
520 1 1
521 1 1
528 1 1
531 1 1
532 1 1
534 1 1
535 1 1
536 1 1
537 1 1
538 1 1
539 1 1
MISSING_ELSE
545 1 1
550 1 1
553 1 1
554 1 1
555 1 1
556 1 1
557 1 1
558 1 1
MISSING_ELSE
564 1 1
569 1 1
572 1 1
573 1 1
574 1 1
575 1 1
576 1 1
577 1 1
MISSING_ELSE
584 1 1
589 1 1
591 1 1
592 1 1
593 1 1
594 1 1
MISSING_ELSE
603 1 1
605 1 1
606 1 1
615 1 1
616 1 1
MISSING_ELSE
627 1 1
628 1 1
630 1 1
631 1 1
MISSING_ELSE
636 1 1
637 1 1
655 1 1
656 1 1
657 1 1
658 1 1
MISSING_ELSE
663 1 1
664 1 1
666 1 1
668 1 1
671 1 1
674 1 1
677 1 1
680 1 1
683 1 1
686 1 1
687 1 1
691 1 1
699 1 1
700 1 1
704 1 1
705 1 1
706 1 1
MISSING_ELSE
737 1 1
743 1 1
774 1 1
782 1 1
783 1 1
785 1 1
792 1 1
839 1 1
881 3 3


Cond Coverage for Module : keymgr_ctrl
TotalCoveredPercent
Conditions20620298.06
Logical20620298.06
Non-Logical00
Event00

 LINE       149
 EXPRESSION (op_i == OpAdvance)
            ---------1---------
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT1,T2,T3

 LINE       150
 EXPRESSION (op_i == OpGenId)
            --------1--------
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT1,T2,T3

 LINE       151
 EXPRESSION (op_i == OpGenSwOut)
            ----------1---------
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT2,T4,T5

 LINE       152
 EXPRESSION (op_i == OpGenHwOut)
            ----------1---------
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT1,T2,T3

 LINE       154
 EXPRESSION (gen_id_op | gen_sw_op | gen_hw_op)
             ----1----   ----2----   ----3----
-1--2--3-StatusTests
000CoveredT1,T2,T3
001CoveredT1,T2,T3
010CoveredT2,T4,T5
100CoveredT1,T2,T3

 LINE       164
 EXPRESSION (op_start_i & adv_op & en_i)
             -----1----   ---2--   --3-
-1--2--3-StatusTests
011CoveredT1,T2,T3
101CoveredT1,T2,T3
110CoveredT3,T40,T41
111CoveredT1,T2,T3

 LINE       165
 EXPRESSION (op_start_i & gen_hw_op & en_i)
             -----1----   ----2----   --3-
-1--2--3-StatusTests
011CoveredT1,T2,T3
101CoveredT1,T2,T3
110CoveredT1,T7,T40
111CoveredT1,T2,T3

 LINE       168
 EXPRESSION ((op_start_i & dis_op) | ((!en_i)))
             ----------1----------   ----2----
-1--2-StatusTests
00CoveredT1,T2,T3
01CoveredT1,T2,T3
10CoveredT42,T39,T43

 LINE       168
 SUB-EXPRESSION (op_start_i & dis_op)
                 -----1----   ---2--
-1--2-StatusTests
01CoveredT42,T39,T43
10CoveredT1,T2,T3
11CoveredT42,T39,T43

 LINE       184
 EXPRESSION (op_req & adv_op)
             ---1--   ---2--
-1--2-StatusTests
01CoveredT1,T2,T3
10CoveredT1,T2,T3
11CoveredT2,T3,T4

 LINE       185
 EXPRESSION (op_req & dis_op)
             ---1--   ---2--
-1--2-StatusTests
01CoveredT42,T39,T43
10CoveredT1,T2,T3
11CoveredT42,T39,T43

 LINE       186
 EXPRESSION (op_req & gen_id_op)
             ---1--   ----2----
-1--2-StatusTests
01CoveredT1,T2,T3
10CoveredT1,T2,T3
11CoveredT2,T4,T5

 LINE       187
 EXPRESSION (op_req & (gen_sw_op | gen_hw_op))
             ---1--   -----------2-----------
-1--2-StatusTests
01CoveredT1,T2,T3
10CoveredT2,T3,T4
11CoveredT1,T2,T3

 LINE       187
 SUB-EXPRESSION (gen_sw_op | gen_hw_op)
                 ----1----   ----2----
-1--2-StatusTests
00CoveredT1,T2,T3
01CoveredT1,T2,T3
10CoveredT2,T4,T5

 LINE       201
 EXPRESSION (adv_req & op_ack & ( ~ (op_err | op_fault_err) ))
             ---1---   ---2--   --------------3--------------
-1--2--3-StatusTests
011CoveredT2,T4,T5
101CoveredT2,T3,T4
110CoveredT2,T3,T4
111CoveredT2,T4,T5

 LINE       201
 SUB-EXPRESSION (op_err | op_fault_err)
                 ---1--   ------2-----
-1--2-StatusTests
00CoveredT1,T2,T3
01CoveredT4,T6,T23
10CoveredT1,T2,T3

 LINE       229
 EXPRESSION (wipe_req ? KeyUpdateWipe : (random_req ? KeyUpdateRandom : (init_o ? KeyUpdateRoot : op_update_sel)))
             ----1---
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT1,T3,T4

 LINE       229
 SUB-EXPRESSION (random_req ? KeyUpdateRandom : (init_o ? KeyUpdateRoot : op_update_sel))
                 -----1----
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT1,T2,T3

 LINE       229
 SUB-EXPRESSION (init_o ? KeyUpdateRoot : op_update_sel)
                 ---1--
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT1,T2,T3

 LINE       237
 EXPRESSION (random_req | disabled | invalid | wipe_req)
             -----1----   ----2---   ---3---   ----4---
-1--2--3--4-StatusTests
0000CoveredT1,T2,T3
0001CoveredT1,T3,T4
0010CoveredT1,T3,T4
0100CoveredT2,T14,T15
1000CoveredT1,T2,T3

 LINE       259
 EXPRESSION (advance_sel ? cdi_cnt : op_cdi_sel_i)
             -----1-----
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT1,T2,T3

 LINE       263
 EXPRESSION (invalid_stage_sel_o ? ({EntropyRounds {entropy_i[0]}}) : key_state_q[cdi_sel_o][0])
             ---------1---------
-1-StatusTests
0CoveredT2,T3,T4
1CoveredT1,T2,T3

 LINE       263
 EXPRESSION (invalid_stage_sel_o ? ({EntropyRounds {entropy_i[1]}}) : key_state_q[cdi_sel_o][1])
             ---------1---------
-1-StatusTests
0CoveredT2,T3,T4
1CoveredT1,T2,T3

 LINE       315
 EXPRESSION (root_key_i.creator_root_key_share0_valid && root_key_i.creator_root_key_share1_valid)
             --------------------1-------------------    --------------------2-------------------
-1--2-StatusTests
01Not Covered
10Not Covered
11CoveredT1,T2,T3

 LINE       328
 EXPRESSION (op_req ? cnt[0] : '0)
             ---1--
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT1,T2,T3

 LINE       371
 EXPRESSION ((adv_op || dis_op) ? kmac_data_i : key_state_q[cdi_sel_o])
             ---------1--------
-1-StatusTests
0CoveredT2,T4,T5
1CoveredT2,T3,T4

 LINE       371
 SUB-EXPRESSION (adv_op || dis_op)
                 ---1--    ---2--
-1--2-StatusTests
00CoveredT2,T4,T5
01CoveredT42,T39,T43
10CoveredT2,T3,T4

 LINE       390
 EXPRESSION (op_ack | random_ack)
             ---1--   -----2----
-1--2-StatusTests
00CoveredT1,T2,T3
01CoveredT1,T2,T3
10CoveredT1,T2,T3

 LINE       390
 EXPRESSION (op_update | random_req)
             ----1----   -----2----
-1--2-StatusTests
00CoveredT1,T2,T3
01CoveredT1,T2,T3
10CoveredT2,T3,T4

 LINE       415
 EXPRESSION (op_req ? op_ack : (init_o | invalid_op))
             ---1--
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT1,T2,T3

 LINE       415
 SUB-EXPRESSION (init_o | invalid_op)
                 ---1--   -----2----
-1--2-StatusTests
00CoveredT1,T2,T3
01CoveredT2,T14,T15
10CoveredT1,T2,T3

 LINE       426
 EXPRESSION (op_ack & adv_req & ((~op_err)))
             ---1--   ---2---   -----3-----
-1--2--3-StatusTests
011CoveredT2,T3,T4
101CoveredT2,T4,T5
110CoveredT2,T3,T4
111CoveredT2,T4,T5

 LINE       427
 EXPRESSION (op_ack & dis_req)
             ---1--   ---2---
-1--2-StatusTests
01CoveredT42,T39,T43
10CoveredT1,T2,T3
11CoveredT42,T39,T43

 LINE       483
 EXPRESSION (op_start_i & ((~advance_sel)))
             -----1----   --------2-------
-1--2-StatusTests
01CoveredT1,T2,T3
10CoveredT1,T2,T3
11CoveredT2,T14,T15

 LINE       511
 EXPRESSION (int'(cnt) == (EntropyRounds - 1))
            -----------------1----------------
-1-StatusTests
0CoveredT1,T2,T3
1UnreachableT1,T2,T3

 LINE       521
 EXPRESSION (en_i ? StCtrlInit : StCtrlWipe)
             --1-
-1-StatusTests
0CoveredT41,T44,T45
1CoveredT1,T2,T3

 LINE       531
 EXPRESSION (advance_sel ? Creator : Disable)
             -----1-----
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT2,T3,T4

 LINE       532
 EXPRESSION (op_start_i & ( ~ (advance_sel | disable_sel) ))
             -----1----   ----------------2----------------
-1--2-StatusTests
01CoveredT1,T2,T3
10CoveredT1,T2,T3
11CoveredT1,T2,T3

 LINE       532
 SUB-EXPRESSION (advance_sel | disable_sel)
                 -----1-----   -----2-----
-1--2-StatusTests
00CoveredT1,T2,T3
01CoveredT1,T3,T39
10CoveredT2,T3,T4

 LINE       534
 EXPRESSION (((!en_i)) || inv_state)
             ----1----    ----2----
-1--2-StatusTests
00CoveredT1,T2,T3
01CoveredT17,T23,T32
10CoveredT1,T3,T46

 LINE       550
 EXPRESSION (disable_sel ? Disable : (advance_sel ? OwnerInt : Creator))
             -----1-----
-1-StatusTests
0CoveredT2,T4,T5
1CoveredT42,T40,T47

 LINE       550
 SUB-EXPRESSION (advance_sel ? OwnerInt : Creator)
                 -----1-----
-1-StatusTests
0CoveredT2,T4,T5
1CoveredT2,T4,T5

 LINE       553
 EXPRESSION (((!en_i)) || inv_state)
             ----1----    ----2----
-1--2-StatusTests
00CoveredT2,T4,T5
01CoveredT4,T6,T48
10CoveredT40,T49,T50

 LINE       569
 EXPRESSION (disable_sel ? Disable : (advance_sel ? Owner : OwnerInt))
             -----1-----
-1-StatusTests
0CoveredT2,T5,T14
1CoveredT51,T40,T52

 LINE       569
 SUB-EXPRESSION (advance_sel ? Owner : OwnerInt)
                 -----1-----
-1-StatusTests
0CoveredT2,T5,T14
1CoveredT2,T14,T15

 LINE       572
 EXPRESSION (((!en_i)) || inv_state)
             ----1----    ----2----
-1--2-StatusTests
00CoveredT2,T5,T14
01CoveredT53,T54,T29
10CoveredT51,T40,T52

 LINE       589
 EXPRESSION ((disable_sel | advance_sel) ? Disable : Owner)
             -------------1-------------
-1-StatusTests
0CoveredT2,T14,T15
1CoveredT2,T14,T15

 LINE       589
 SUB-EXPRESSION (disable_sel | advance_sel)
                 -----1-----   -----2-----
-1--2-StatusTests
00CoveredT2,T14,T15
01CoveredT2,T14,T15
10CoveredT55,T40,T56

 LINE       591
 EXPRESSION (((!en_i)) || inv_state)
             ----1----    ----2----
-1--2-StatusTests
00CoveredT2,T14,T15
01CoveredT57,T58,T59
10CoveredT50,T60,T61

 LINE       593
 EXPRESSION (adv_state || dis_state)
             ----1----    ----2----
-1--2-StatusTests
00CoveredT2,T14,T15
01CoveredT55,T40,T56
10CoveredT2,T14,T15

 LINE       630
 EXPRESSION (((!en_i)) || inv_state)
             ----1----    ----2----
-1--2-StatusTests
00CoveredT2,T14,T15
01CoveredT33,T25,T62
10CoveredT40,T63,T64

 LINE       704
 EXPRESSION (((|{error_o, fault_o})) ? OpDoneFail : OpDoneSuccess)
             -----------1-----------
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT1,T2,T3

 LINE       737
 EXPRESSION ((adv_en_o & ( ~ (advance_sel | disable_sel) )) | (gen_en_o & ((~gen_op))))
             -----------------------1----------------------   ------------2-----------
-1--2-StatusTests
00CoveredT1,T2,T3
01CoveredT25,T65,T66
10CoveredT6,T36,T8

 LINE       737
 SUB-EXPRESSION (adv_en_o & ( ~ (advance_sel | disable_sel) ))
                 ----1---   ----------------2----------------
-1--2-StatusTests
01CoveredT1,T2,T3
10CoveredT2,T3,T4
11CoveredT6,T36,T8

 LINE       737
 SUB-EXPRESSION (advance_sel | disable_sel)
                 -----1-----   -----2-----
-1--2-StatusTests
00CoveredT1,T2,T3
01CoveredT1,T2,T3
10CoveredT1,T2,T3

 LINE       737
 SUB-EXPRESSION (gen_en_o & ((~gen_op)))
                 ----1---   -----2-----
-1--2-StatusTests
01CoveredT1,T2,T3
10CoveredT1,T2,T3
11CoveredT25,T65,T66

 LINE       743
 EXPRESSION 
 Number  Term
      1  ((op_ack | op_update) & invalid) ? KeyUpdateKmac : (((op_ack | op_update) & op_fault_err) ? KeyUpdateWipe : (((op_ack | op_update) & disabled) ? KeyUpdateKmac : (((op_ack | op_update) & op_err) ? KeyUpdateIdle : ((op_ack | op_update) ? KeyUpdateKmac : KeyUpdateIdle)))))
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT6,T17,T23

 LINE       743
 SUB-EXPRESSION ((op_ack | op_update) & invalid)
                 ----------1---------   ---2---
-1--2-StatusTests
01CoveredT1,T3,T4
10CoveredT1,T2,T3
11CoveredT6,T17,T23

 LINE       743
 SUB-EXPRESSION (op_ack | op_update)
                 ---1--   ----2----
-1--2-StatusTests
00CoveredT1,T2,T3
01CoveredT2,T3,T4
10CoveredT1,T2,T3

 LINE       743
 SUB-EXPRESSION 
 Number  Term
      1  ((op_ack | op_update) & op_fault_err) ? KeyUpdateWipe : (((op_ack | op_update) & disabled) ? KeyUpdateKmac : (((op_ack | op_update) & op_err) ? KeyUpdateIdle : ((op_ack | op_update) ? KeyUpdateKmac : KeyUpdateIdle))))
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT4,T6,T17

 LINE       743
 SUB-EXPRESSION ((op_ack | op_update) & op_fault_err)
                 ----------1---------   ------2-----
-1--2-StatusTests
01CoveredT4,T6,T17
10CoveredT1,T2,T3
11CoveredT4,T6,T17

 LINE       743
 SUB-EXPRESSION (op_ack | op_update)
                 ---1--   ----2----
-1--2-StatusTests
00CoveredT1,T2,T3
01CoveredT2,T3,T4
10CoveredT1,T2,T3

 LINE       743
 SUB-EXPRESSION 
 Number  Term
      1  ((op_ack | op_update) & disabled) ? KeyUpdateKmac : (((op_ack | op_update) & op_err) ? KeyUpdateIdle : ((op_ack | op_update) ? KeyUpdateKmac : KeyUpdateIdle)))
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT2,T14,T15

 LINE       743
 SUB-EXPRESSION ((op_ack | op_update) & disabled)
                 ----------1---------   ----2---
-1--2-StatusTests
01CoveredT2,T14,T15
10CoveredT1,T2,T3
11CoveredT2,T14,T15

 LINE       743
 SUB-EXPRESSION (op_ack | op_update)
                 ---1--   ----2----
-1--2-StatusTests
00CoveredT1,T2,T3
01CoveredT2,T3,T4
10CoveredT1,T2,T3

 LINE       743
 SUB-EXPRESSION (((op_ack | op_update) & op_err) ? KeyUpdateIdle : ((op_ack | op_update) ? KeyUpdateKmac : KeyUpdateIdle))
                 ---------------1---------------
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT1,T2,T3

 LINE       743
 SUB-EXPRESSION ((op_ack | op_update) & op_err)
                 ----------1---------   ---2--
-1--2-StatusTests
01CoveredT2,T4,T6
10CoveredT2,T3,T4
11CoveredT1,T2,T3

 LINE       743
 SUB-EXPRESSION (op_ack | op_update)
                 ---1--   ----2----
-1--2-StatusTests
00CoveredT1,T2,T3
01CoveredT2,T3,T4
10CoveredT1,T2,T3

 LINE       743
 SUB-EXPRESSION ((op_ack | op_update) ? KeyUpdateKmac : KeyUpdateIdle)
                 ----------1---------
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT2,T3,T4

 LINE       743
 SUB-EXPRESSION (op_ack | op_update)
                 ---1--   ----2----
-1--2-StatusTests
00CoveredT1,T2,T3
01CoveredT2,T3,T4
10CoveredT2,T4,T5

 LINE       774
 EXPRESSION ((state_d != state_q) & (state_d inside {StCtrlRootKey, StCtrlCreatorRootKey, StCtrlOwnerIntKey, StCtrlOwnerKey}))
             ----------1---------   --------------------------------------------2--------------------------------------------
-1--2-StatusTests
01CoveredT2,T4,T5
10CoveredT1,T2,T3
11CoveredT1,T2,T3

 LINE       774
 SUB-EXPRESSION (state_d != state_q)
                ----------1---------
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT1,T2,T3

 LINE       792
 EXPRESSION (vld_state_change_q & ((!adv_op)))
             ---------1--------   -----2-----
-1--2-StatusTests
01CoveredT1,T2,T3
10CoveredT1,T2,T3
11Not Covered

 LINE       794
 EXPRESSION (disabled | (initialized & ((~en_i))))
             ----1---   ------------2------------
-1--2-StatusTests
00CoveredT1,T2,T3
01CoveredT1,T3,T51
10CoveredT2,T14,T15

 LINE       794
 SUB-EXPRESSION (initialized & ((~en_i)))
                 -----1-----   ----2----
-1--2-StatusTests
01CoveredT1,T2,T3
10CoveredT1,T2,T3
11CoveredT1,T3,T51

 LINE       794
 EXPRESSION (state_intg_err_q | state_intg_err_d)
             --------1-------   --------2-------
-1--2-StatusTests
00CoveredT1,T2,T3
01CoveredT11,T12,T13
10Not Covered

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

State, Transition and Sequence Details for FSM :: state_q
statesLine No.CoveredTests
StCtrlCreatorRootKey 539 Covered T2,T4,T5
StCtrlDisabled 537 Covered T2,T14,T15
StCtrlEntropyReseed 489 Covered T1,T2,T3
StCtrlInit 521 Covered T1,T2,T3
StCtrlInvalid 616 Covered T1,T3,T4
StCtrlOwnerIntKey 558 Covered T2,T5,T14
StCtrlOwnerKey 577 Covered T2,T14,T15
StCtrlRandom 499 Covered T1,T2,T3
StCtrlReset 474 Covered T1,T2,T3
StCtrlRootKey 513 Covered T1,T2,T3
StCtrlWipe 487 Covered T1,T3,T4


transitionsLine No.CoveredTests
StCtrlCreatorRootKey->StCtrlDisabled 556 Covered T42,T40,T47
StCtrlCreatorRootKey->StCtrlOwnerIntKey 558 Covered T2,T5,T14
StCtrlCreatorRootKey->StCtrlWipe 554 Covered T4,T6,T48
StCtrlDisabled->StCtrlWipe 631 Covered T40,T63,T33
StCtrlEntropyReseed->StCtrlRandom 499 Covered T1,T2,T3
StCtrlInit->StCtrlCreatorRootKey 539 Covered T2,T4,T5
StCtrlInit->StCtrlDisabled 537 Covered T39,T43,T67
StCtrlInit->StCtrlWipe 535 Covered T1,T3,T17
StCtrlOwnerIntKey->StCtrlDisabled 575 Covered T40,T47,T68
StCtrlOwnerIntKey->StCtrlOwnerKey 577 Covered T2,T14,T15
StCtrlOwnerIntKey->StCtrlWipe 573 Covered T51,T40,T53
StCtrlOwnerKey->StCtrlDisabled 594 Covered T2,T14,T15
StCtrlOwnerKey->StCtrlWipe 592 Covered T57,T58,T50
StCtrlRandom->StCtrlRootKey 513 Covered T1,T2,T3
StCtrlReset->StCtrlEntropyReseed 489 Covered T1,T2,T3
StCtrlReset->StCtrlWipe 487 Covered T11,T12,T19
StCtrlRootKey->StCtrlInit 521 Covered T1,T2,T3
StCtrlRootKey->StCtrlWipe 521 Covered T41,T44,T45
StCtrlWipe->StCtrlInvalid 616 Covered T1,T3,T4



Branch Coverage for Module : keymgr_ctrl
Line No.TotalCoveredPercent
Branches 92 92 100.00
TERNARY 229 4 4 100.00
TERNARY 259 2 2 100.00
TERNARY 328 2 2 100.00
TERNARY 415 2 2 100.00
TERNARY 743 6 6 100.00
TERNARY 263 2 2 100.00
TERNARY 263 2 2 100.00
IF 243 2 2 100.00
IF 246 2 2 100.00
IF 272 2 2 100.00
CASE 337 7 7 100.00
CASE 472 39 39 100.00
IF 655 3 3 100.00
CASE 666 9 9 100.00
IF 700 4 4 100.00
IF 782 2 2 100.00
IF 881 2 2 100.00

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

LineNo. Expression -1-: 229 (wipe_req) ? -2-: 229 (random_req) ? -3-: 229 (init_o) ?

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


LineNo. Expression -1-: 259 (advance_sel) ?

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


LineNo. Expression -1-: 328 (op_req) ?

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


LineNo. Expression -1-: 415 (op_req) ?

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


LineNo. Expression -1-: 743 (((op_ack | op_update) & invalid)) ? -2-: 743 (((op_ack | op_update) & op_fault_err)) ? -3-: 743 (((op_ack | op_update) & disabled)) ? -4-: 743 (((op_ack | op_update) & op_err)) ? -5-: 743 ((op_ack | op_update)) ?

Branches:
-1--2--3--4--5-StatusTests
1 - - - - Covered T6,T17,T23
0 1 - - - Covered T4,T6,T17
0 0 1 - - Covered T2,T14,T15
0 0 0 1 - Covered T1,T2,T3
0 0 0 0 1 Covered T2,T3,T4
0 0 0 0 0 Covered T1,T2,T3


LineNo. Expression -1-: 263 (invalid_stage_sel_o) ?

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


LineNo. Expression -1-: 263 (invalid_stage_sel_o) ?

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


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

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


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

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


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

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


LineNo. Expression -1-: 337 case (update_sel) -2-: 349 if (root_key_valid_q) -3-: 371 ((adv_op || dis_op)) ?

Branches:
-1--2--3-StatusTests
KeyUpdateRandom - - Covered T1,T2,T3
KeyUpdateRoot 1 - Covered T1,T2,T3
KeyUpdateRoot 0 - Covered T17,T21,T22
KeyUpdateKmac - 1 Covered T2,T3,T4
KeyUpdateKmac - 0 Covered T2,T4,T5
KeyUpdateWipe - - Covered T1,T3,T4
default - - Covered T1,T2,T3


LineNo. Expression -1-: 472 case (state_q) -2-: 486 if (inv_state) -3-: 488 if (advance_sel) -4-: 498 if (prng_reseed_ack_i) -5-: 511 if ((int'(cnt) == (EntropyRounds - 1))) -6-: 521 (en_i) ? -7-: 531 (advance_sel) ? -8-: 534 if (((!en_i) || inv_state)) -9-: 536 if (dis_state) -10-: 538 if (adv_state) -11-: 550 (disable_sel) ? -12-: 550 (advance_sel) ? -13-: 553 if (((!en_i) || inv_state)) -14-: 555 if (dis_state) -15-: 557 if (adv_state) -16-: 569 (disable_sel) ? -17-: 569 (advance_sel) ? -18-: 572 if (((!en_i) || inv_state)) -19-: 574 if (dis_state) -20-: 576 if (adv_state) -21-: 589 ((disable_sel | advance_sel)) ? -22-: 591 if (((!en_i) || inv_state)) -23-: 593 if ((adv_state || dis_state)) -24-: 615 if ((!op_start_i)) -25-: 630 if (((!en_i) || inv_state))

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-StatusTests
StCtrlReset 1 - - - - - - - - - - - - - - - - - - - - - - - Covered T11,T12,T19
StCtrlReset 0 1 - - - - - - - - - - - - - - - - - - - - - - Covered T1,T2,T3
StCtrlReset 0 0 - - - - - - - - - - - - - - - - - - - - - - Covered T1,T2,T3
StCtrlEntropyReseed - - 1 - - - - - - - - - - - - - - - - - - - - - Covered T1,T2,T3
StCtrlEntropyReseed - - 0 - - - - - - - - - - - - - - - - - - - - - Covered T1,T2,T3
StCtrlRandom - - - 1 - - - - - - - - - - - - - - - - - - - - Unreachable T1,T2,T3
StCtrlRandom - - - 0 - - - - - - - - - - - - - - - - - - - - Covered T1,T2,T3
StCtrlRootKey - - - - 1 - - - - - - - - - - - - - - - - - - - Covered T1,T2,T3
StCtrlRootKey - - - - 0 - - - - - - - - - - - - - - - - - - - Covered T41,T44,T45
StCtrlInit - - - - - 1 - - - - - - - - - - - - - - - - - - Covered T2,T3,T4
StCtrlInit - - - - - 0 - - - - - - - - - - - - - - - - - - Covered T1,T2,T3
StCtrlInit - - - - - - 1 - - - - - - - - - - - - - - - - - Covered T1,T3,T17
StCtrlInit - - - - - - 0 1 - - - - - - - - - - - - - - - - Covered T39,T43,T67
StCtrlInit - - - - - - 0 0 1 - - - - - - - - - - - - - - - Covered T2,T4,T5
StCtrlInit - - - - - - 0 0 0 - - - - - - - - - - - - - - - Covered T1,T2,T3
StCtrlCreatorRootKey - - - - - - - - - 1 - - - - - - - - - - - - - - Covered T42,T40,T47
StCtrlCreatorRootKey - - - - - - - - - 0 1 - - - - - - - - - - - - - Covered T2,T4,T5
StCtrlCreatorRootKey - - - - - - - - - 0 0 - - - - - - - - - - - - - Covered T2,T4,T5
StCtrlCreatorRootKey - - - - - - - - - - - 1 - - - - - - - - - - - - Covered T4,T6,T48
StCtrlCreatorRootKey - - - - - - - - - - - 0 1 - - - - - - - - - - - Covered T42,T40,T47
StCtrlCreatorRootKey - - - - - - - - - - - 0 0 1 - - - - - - - - - - Covered T2,T5,T14
StCtrlCreatorRootKey - - - - - - - - - - - 0 0 0 - - - - - - - - - - Covered T2,T4,T5
StCtrlOwnerIntKey - - - - - - - - - - - - - - 1 - - - - - - - - - Covered T51,T40,T52
StCtrlOwnerIntKey - - - - - - - - - - - - - - 0 1 - - - - - - - - Covered T2,T14,T15
StCtrlOwnerIntKey - - - - - - - - - - - - - - 0 0 - - - - - - - - Covered T2,T5,T14
StCtrlOwnerIntKey - - - - - - - - - - - - - - - - 1 - - - - - - - Covered T51,T40,T53
StCtrlOwnerIntKey - - - - - - - - - - - - - - - - 0 1 - - - - - - Covered T40,T47,T68
StCtrlOwnerIntKey - - - - - - - - - - - - - - - - 0 0 1 - - - - - Covered T2,T14,T15
StCtrlOwnerIntKey - - - - - - - - - - - - - - - - 0 0 0 - - - - - Covered T2,T5,T14
StCtrlOwnerKey - - - - - - - - - - - - - - - - - - - 1 - - - - Covered T2,T14,T15
StCtrlOwnerKey - - - - - - - - - - - - - - - - - - - 0 - - - - Covered T2,T14,T15
StCtrlOwnerKey - - - - - - - - - - - - - - - - - - - - 1 - - - Covered T57,T58,T50
StCtrlOwnerKey - - - - - - - - - - - - - - - - - - - - 0 1 - - Covered T2,T14,T15
StCtrlOwnerKey - - - - - - - - - - - - - - - - - - - - 0 0 - - Covered T2,T14,T15
StCtrlWipe - - - - - - - - - - - - - - - - - - - - - - 1 - Covered T1,T3,T4
StCtrlWipe - - - - - - - - - - - - - - - - - - - - - - 0 - Covered T1,T3,T4
StCtrlDisabled - - - - - - - - - - - - - - - - - - - - - - - 1 Covered T40,T63,T33
StCtrlDisabled - - - - - - - - - - - - - - - - - - - - - - - 0 Covered T2,T14,T15
StCtrlInvalid - - - - - - - - - - - - - - - - - - - - - - - - Covered T1,T3,T4
default - - - - - - - - - - - - - - - - - - - - - - - - Covered T11,T12,T13


LineNo. Expression -1-: 655 if ((!rst_ni)) -2-: 657 if (update_en)

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


LineNo. Expression -1-: 666 case (state_q)

Branches:
-1-StatusTests
StCtrlReset StCtrlEntropyReseed StCtrlRandom Covered T1,T2,T3
StCtrlRootKey StCtrlInit Covered T1,T2,T3
StCtrlCreatorRootKey Covered T2,T4,T5
StCtrlOwnerIntKey Covered T2,T5,T14
StCtrlOwnerKey Covered T2,T14,T15
StCtrlDisabled Covered T2,T14,T15
StCtrlWipe Covered T1,T3,T4
StCtrlInvalid Covered T1,T3,T4
default Covered T11,T12,T13


LineNo. Expression -1-: 700 if (op_done_o) -2-: 704 ((|{error_o, fault_o})) ? -3-: 705 if (op_start_i)

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


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

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


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

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


Assert Coverage for Module : keymgr_ctrl
TotalAttemptedPercentSucceeded/MatchedPercent
Assertions 11 11 100.00 10 90.91
Cover properties 0 0 0
Cover sequences 0 0 0
Total 11 11 100.00 10 90.91




Assertion Details

NameAttemptsReal SuccessesFailuresIncomplete
CntZero_A 26185068 27818 0 0
DataEnDis_A 25808331 27276 0 0
DataEn_A 25808331 6745491 0 0
GeneralLegalCommands_A 27069795 47323 0 0
InitLegalCommands_A 27069795 1488745 0 0
LoadKey_A 26837147 20677765 0 0
OwnerLegalCommands_A 27069795 1505243 0 0
SameErrCnt_A 860 860 0 0
SecCmCFILinear_A 27069795 0 0 4757
StageDisableSel_A 27069795 886084 0 0
u_state_regs_A 27069795 26910307 0 0


CntZero_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 26185068 27818 0 0
T1 7257 2 0 0
T2 12203 37 0 0
T3 12931 3 0 0
T4 5803 8 0 0
T5 6703 17 0 0
T6 4409 7 0 0
T14 5189 19 0 0
T15 24710 37 0 0
T16 6605 46 0 0
T17 15831 41 0 0

DataEnDis_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 25808331 27276 0 0
T1 7257 2 0 0
T2 12203 37 0 0
T3 12931 3 0 0
T4 5803 8 0 0
T5 5904 14 0 0
T6 4409 6 0 0
T14 5189 19 0 0
T15 24710 37 0 0
T16 6605 46 0 0
T17 15831 41 0 0

DataEn_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 25808331 6745491 0 0
T1 7257 15 0 0
T2 12203 1532 0 0
T3 12931 1041 0 0
T4 5803 1386 0 0
T5 5904 724 0 0
T6 4409 1237 0 0
T14 5189 578 0 0
T15 24710 8028 0 0
T16 6605 1842 0 0
T17 15831 2646 0 0

GeneralLegalCommands_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 27069795 47323 0 0
T40 105801 456 0 0
T41 8568 0 0 0
T47 0 1728 0 0
T52 14018 0 0 0
T53 93509 0 0 0
T56 61904 0 0 0
T63 0 118 0 0
T69 0 20093 0 0
T70 0 183 0 0
T71 0 968 0 0
T72 0 154 0 0
T73 0 9353 0 0
T74 0 9692 0 0
T75 0 292 0 0
T76 29045 0 0 0
T77 27627 0 0 0
T78 6976 0 0 0
T79 5938 0 0 0
T80 60833 0 0 0

InitLegalCommands_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 27069795 1488745 0 0
T1 7257 15 0 0
T2 12203 434 0 0
T3 12931 1043 0 0
T4 5803 661 0 0
T5 6703 207 0 0
T6 9360 847 0 0
T14 5189 62 0 0
T15 24710 1379 0 0
T16 6605 114 0 0
T17 15831 834 0 0

LoadKey_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 26837147 20677765 0 0
T1 7257 34 0 0
T2 12203 2949 0 0
T3 12931 5917 0 0
T4 5803 3591 0 0
T5 6703 1250 0 0
T6 9360 5780 0 0
T14 5189 1626 0 0
T15 24710 21216 0 0
T16 6605 2882 0 0
T17 15831 5993 0 0

OwnerLegalCommands_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 27069795 1505243 0 0
T2 12203 262 0 0
T3 12931 0 0 0
T4 5803 0 0 0
T5 6703 0 0 0
T6 9360 0 0 0
T14 5189 163 0 0
T15 24710 2080 0 0
T16 6605 214 0 0
T17 15831 0 0 0
T37 0 1442 0 0
T38 0 125 0 0
T42 1529 0 0 0
T81 0 562 0 0
T82 0 110 0 0
T83 0 1589 0 0
T84 0 3425 0 0

SameErrCnt_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 860 860 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
T14 1 1 0 0
T15 1 1 0 0
T16 1 1 0 0
T17 1 1 0 0

SecCmCFILinear_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 27069795 0 0 4757

StageDisableSel_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 27069795 886084 0 0
T1 7257 6591 0 0
T2 12203 41 0 0
T3 12931 8136 0 0
T4 5803 146 0 0
T5 6703 71 0 0
T6 9360 630 0 0
T14 5189 30 0 0
T15 24710 104 0 0
T16 6605 29 0 0
T17 15831 638 0 0

u_state_regs_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 27069795 26910307 0 0
T1 7257 7202 0 0
T2 12203 12110 0 0
T3 12931 12848 0 0
T4 5803 5616 0 0
T5 6703 6650 0 0
T6 9360 9199 0 0
T14 5189 5135 0 0
T15 24710 24642 0 0
T16 6605 6548 0 0
T17 15831 15696 0 0

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