Line Coverage for Module :
flash_ctrl_lcmgr
| Line No. | Total | Covered | Percent |
TOTAL | | 242 | 242 | 100.00 |
CONT_ASSIGN | 149 | 1 | 1 | 100.00 |
ALWAYS | 152 | 3 | 3 | 100.00 |
CONT_ASSIGN | 170 | 1 | 1 | 100.00 |
CONT_ASSIGN | 171 | 1 | 1 | 100.00 |
ALWAYS | 174 | 7 | 7 | 100.00 |
CONT_ASSIGN | 185 | 1 | 1 | 100.00 |
ALWAYS | 227 | 5 | 5 | 100.00 |
CONT_ASSIGN | 243 | 1 | 1 | 100.00 |
CONT_ASSIGN | 247 | 1 | 1 | 100.00 |
ALWAYS | 251 | 3 | 3 | 100.00 |
CONT_ASSIGN | 261 | 1 | 1 | 100.00 |
CONT_ASSIGN | 262 | 1 | 1 | 100.00 |
ALWAYS | 264 | 6 | 6 | 100.00 |
CONT_ASSIGN | 278 | 1 | 1 | 100.00 |
CONT_ASSIGN | 279 | 1 | 1 | 100.00 |
CONT_ASSIGN | 280 | 1 | 1 | 100.00 |
ALWAYS | 359 | 9 | 9 | 100.00 |
CONT_ASSIGN | 380 | 1 | 1 | 100.00 |
ALWAYS | 386 | 85 | 85 | 100.00 |
CONT_ASSIGN | 607 | 1 | 1 | 100.00 |
ALWAYS | 613 | 3 | 3 | 100.00 |
ALWAYS | 673 | 7 | 7 | 100.00 |
ALWAYS | 688 | 10 | 10 | 100.00 |
ALWAYS | 705 | 2 | 2 | 100.00 |
CONT_ASSIGN | 714 | 1 | 1 | 100.00 |
CONT_ASSIGN | 715 | 1 | 1 | 100.00 |
CONT_ASSIGN | 737 | 1 | 1 | 100.00 |
CONT_ASSIGN | 741 | 1 | 1 | 100.00 |
CONT_ASSIGN | 742 | 1 | 1 | 100.00 |
CONT_ASSIGN | 754 | 1 | 1 | 100.00 |
ALWAYS | 761 | 66 | 66 | 100.00 |
CONT_ASSIGN | 891 | 1 | 1 | 100.00 |
CONT_ASSIGN | 892 | 1 | 1 | 100.00 |
CONT_ASSIGN | 893 | 1 | 1 | 100.00 |
CONT_ASSIGN | 894 | 0 | 0 | |
CONT_ASSIGN | 895 | 0 | 0 | |
CONT_ASSIGN | 896 | 1 | 1 | 100.00 |
CONT_ASSIGN | 897 | 1 | 1 | 100.00 |
CONT_ASSIGN | 898 | 1 | 1 | 100.00 |
CONT_ASSIGN | 900 | 1 | 1 | 100.00 |
CONT_ASSIGN | 902 | 1 | 1 | 100.00 |
CONT_ASSIGN | 905 | 1 | 1 | 100.00 |
CONT_ASSIGN | 906 | 1 | 1 | 100.00 |
CONT_ASSIGN | 908 | 1 | 1 | 100.00 |
CONT_ASSIGN | 909 | 1 | 1 | 100.00 |
CONT_ASSIGN | 911 | 1 | 1 | 100.00 |
CONT_ASSIGN | 914 | 1 | 1 | 100.00 |
CONT_ASSIGN | 918 | 1 | 1 | 100.00 |
CONT_ASSIGN | 921 | 1 | 1 | 100.00 |
ALWAYS | 932 | 0 | 0 | |
CONT_ASSIGN | 939 | 1 | 1 | 100.00 |
WARNING: The source file '/workspace/default/sim-vcs/../src/lowrisc_ip_flash_ctrl_0.1/rtl/flash_ctrl_lcmgr.sv' or '../src/lowrisc_ip_flash_ctrl_0.1/rtl/flash_ctrl_lcmgr.sv' was not found, so annotated line coverage report could not be generated.
Line No. | Covered | Statements | |
149 |
1 |
1 |
152 |
3 |
3 |
170 |
1 |
1 |
171 |
1 |
1 |
174 |
1 |
1 |
175 |
1 |
1 |
176 |
1 |
1 |
177 |
1 |
1 |
179 |
1 |
1 |
180 |
1 |
1 |
181 |
1 |
1 |
185 |
1 |
1 |
227 |
1 |
1 |
228 |
1 |
1 |
229 |
1 |
1 |
231 |
1 |
1 |
232 |
1 |
1 |
243 |
1 |
1 |
247 |
1 |
1 |
251 |
1 |
1 |
252 |
1 |
1 |
254 |
1 |
1 |
261 |
1 |
1 |
262 |
1 |
1 |
264 |
1 |
1 |
265 |
1 |
1 |
266 |
1 |
1 |
268 |
1 |
1 |
270 |
1 |
1 |
271 |
1 |
1 |
|
|
|
MISSING_ELSE |
278 |
1 |
1 |
279 |
1 |
1 |
280 |
1 |
1 |
359 |
1 |
1 |
360 |
1 |
1 |
361 |
1 |
1 |
363 |
1 |
1 |
364 |
1 |
1 |
365 |
1 |
1 |
|
|
|
MISSING_ELSE |
368 |
1 |
1 |
369 |
1 |
1 |
370 |
1 |
1 |
|
|
|
MISSING_ELSE |
380 |
1 |
1 |
386 |
1 |
1 |
389 |
1 |
1 |
390 |
1 |
1 |
391 |
1 |
1 |
392 |
1 |
1 |
395 |
1 |
1 |
396 |
1 |
1 |
397 |
1 |
1 |
398 |
1 |
1 |
399 |
1 |
1 |
402 |
1 |
1 |
404 |
1 |
1 |
405 |
1 |
1 |
406 |
1 |
1 |
409 |
1 |
1 |
411 |
1 |
1 |
412 |
1 |
1 |
415 |
1 |
1 |
416 |
1 |
1 |
419 |
1 |
1 |
420 |
1 |
1 |
423 |
1 |
1 |
425 |
1 |
1 |
427 |
1 |
1 |
433 |
1 |
1 |
434 |
1 |
1 |
435 |
1 |
1 |
436 |
1 |
1 |
|
|
|
MISSING_ELSE |
441 |
1 |
1 |
442 |
1 |
1 |
443 |
1 |
1 |
444 |
1 |
1 |
445 |
1 |
1 |
446 |
1 |
1 |
|
|
|
MISSING_ELSE |
451 |
1 |
1 |
452 |
1 |
1 |
453 |
1 |
1 |
454 |
1 |
1 |
455 |
1 |
1 |
457 |
1 |
1 |
|
|
|
MISSING_ELSE |
464 |
1 |
1 |
467 |
1 |
1 |
468 |
1 |
1 |
469 |
1 |
1 |
472 |
1 |
1 |
473 |
1 |
1 |
474 |
1 |
1 |
475 |
1 |
1 |
476 |
1 |
1 |
477 |
1 |
1 |
478 |
1 |
1 |
|
|
|
MISSING_ELSE |
483 |
1 |
1 |
484 |
1 |
1 |
485 |
1 |
1 |
487 |
1 |
1 |
488 |
1 |
1 |
489 |
1 |
1 |
491 |
1 |
1 |
497 |
1 |
1 |
498 |
1 |
1 |
499 |
1 |
1 |
|
|
|
MISSING_ELSE |
505 |
1 |
1 |
506 |
1 |
1 |
507 |
1 |
1 |
|
|
|
==> MISSING_ELSE |
512 |
1 |
1 |
513 |
1 |
1 |
514 |
1 |
1 |
516 |
1 |
1 |
520 |
1 |
1 |
521 |
1 |
1 |
522 |
1 |
1 |
|
|
|
MISSING_ELSE |
531 |
1 |
1 |
532 |
1 |
1 |
533 |
1 |
1 |
534 |
1 |
1 |
536 |
1 |
1 |
543 |
1 |
1 |
544 |
1 |
1 |
545 |
1 |
1 |
549 |
1 |
1 |
550 |
1 |
1 |
551 |
1 |
1 |
552 |
1 |
1 |
569 |
1 |
1 |
572 |
1 |
1 |
|
|
|
MISSING_ELSE |
607 |
1 |
1 |
613 |
3 |
3 |
673 |
1 |
1 |
674 |
1 |
1 |
675 |
1 |
1 |
676 |
1 |
1 |
678 |
1 |
1 |
679 |
1 |
1 |
680 |
1 |
1 |
688 |
1 |
1 |
689 |
1 |
1 |
690 |
1 |
1 |
691 |
1 |
1 |
692 |
1 |
1 |
693 |
1 |
1 |
694 |
1 |
1 |
|
|
|
MISSING_ELSE |
696 |
1 |
1 |
697 |
1 |
1 |
698 |
1 |
1 |
|
|
|
MISSING_ELSE |
|
|
|
MISSING_ELSE |
705 |
1 |
1 |
706 |
1 |
1 |
|
|
|
MISSING_ELSE |
714 |
1 |
1 |
715 |
1 |
1 |
737 |
1 |
1 |
741 |
1 |
1 |
742 |
1 |
1 |
754 |
1 |
1 |
761 |
1 |
1 |
762 |
1 |
1 |
763 |
1 |
1 |
764 |
1 |
1 |
765 |
1 |
1 |
766 |
1 |
1 |
767 |
1 |
1 |
768 |
1 |
1 |
769 |
1 |
1 |
770 |
1 |
1 |
771 |
1 |
1 |
772 |
1 |
1 |
773 |
1 |
1 |
774 |
1 |
1 |
775 |
1 |
1 |
777 |
1 |
1 |
784 |
1 |
1 |
785 |
1 |
1 |
786 |
1 |
1 |
787 |
1 |
1 |
788 |
1 |
1 |
|
|
|
MISSING_ELSE |
793 |
1 |
1 |
794 |
1 |
1 |
795 |
1 |
1 |
796 |
1 |
1 |
798 |
1 |
1 |
799 |
1 |
1 |
800 |
1 |
1 |
805 |
1 |
1 |
806 |
1 |
1 |
807 |
1 |
1 |
808 |
1 |
1 |
809 |
1 |
1 |
|
|
|
MISSING_ELSE |
814 |
1 |
1 |
815 |
1 |
1 |
819 |
1 |
1 |
820 |
1 |
1 |
821 |
1 |
1 |
822 |
1 |
1 |
824 |
1 |
1 |
825 |
1 |
1 |
826 |
1 |
1 |
831 |
1 |
1 |
832 |
1 |
1 |
833 |
1 |
1 |
835 |
1 |
1 |
836 |
1 |
1 |
|
|
|
MISSING_ELSE |
841 |
1 |
1 |
842 |
1 |
1 |
844 |
1 |
1 |
845 |
1 |
1 |
846 |
1 |
1 |
847 |
1 |
1 |
|
|
|
MISSING_ELSE |
852 |
1 |
1 |
853 |
1 |
1 |
854 |
1 |
1 |
856 |
1 |
1 |
857 |
1 |
1 |
858 |
1 |
1 |
859 |
1 |
1 |
|
|
|
MISSING_ELSE |
862 |
1 |
1 |
863 |
1 |
1 |
|
|
|
MISSING_ELSE |
868 |
1 |
1 |
872 |
1 |
1 |
873 |
1 |
1 |
874 |
1 |
1 |
891 |
1 |
1 |
892 |
1 |
1 |
893 |
1 |
1 |
894 |
|
unreachable |
895 |
|
unreachable |
896 |
1 |
1 |
897 |
1 |
1 |
898 |
1 |
1 |
900 |
1 |
1 |
902 |
1 |
1 |
905 |
1 |
1 |
906 |
1 |
1 |
908 |
1 |
1 |
909 |
1 |
1 |
911 |
1 |
1 |
914 |
1 |
1 |
918 |
1 |
1 |
921 |
1 |
1 |
932 |
|
unreachable |
933 |
|
unreachable |
|
|
|
==> MISSING_ELSE |
939 |
1 |
1 |
Cond Coverage for Module :
flash_ctrl_lcmgr
| Total | Covered | Percent |
Conditions | 96 | 90 | 93.75 |
Logical | 96 | 90 | 93.75 |
Non-Logical | 0 | 0 | |
Event | 0 | 0 | |
LINE 170
EXPRESSION (phase == PhaseSeed)
----------1---------
-1- | Status | Tests |
0 | Covered | T1,T2,T3 |
1 | Covered | T1,T2,T3 |
LINE 171
EXPRESSION (phase == PhaseRma)
---------1---------
-1- | Status | Tests |
0 | Covered | T1,T2,T3 |
1 | Covered | T1,T60,T79 |
LINE 185
EXPRESSION (seed_err_q | seed_err_d)
-----1---- -----2----
-1- | -2- | Status | Tests |
0 | 0 | Covered | T1,T2,T3 |
0 | 1 | Covered | T1,T79,T155 |
1 | 0 | Not Covered | |
LINE 231
EXPRESSION (addr_cnt_err_q | addr_cnt_err_d)
-------1------ -------2------
-1- | -2- | Status | Tests |
0 | 0 | Covered | T1,T2,T3 |
0 | 1 | Covered | T14,T15,T37 |
1 | 0 | Covered | T14,T15,T37 |
LINE 232
EXPRESSION (seed_cnt_err_q | seed_cnt_err_d)
-------1------ -------2------
-1- | -2- | Status | Tests |
0 | 0 | Covered | T1,T2,T3 |
0 | 1 | Covered | T14,T15,T37 |
1 | 0 | Covered | T14,T15,T37 |
LINE 247
EXPRESSION (data_invalid_q | (rvalid_i & ((~data_intg_ok))))
-------1------ ---------------2--------------
-1- | -2- | Status | Tests |
0 | 0 | Covered | T1,T2,T3 |
0 | 1 | Covered | T2,T13,T62 |
1 | 0 | Covered | T2,T13,T62 |
LINE 247
SUB-EXPRESSION (rvalid_i & ((~data_intg_ok)))
----1--- --------2--------
-1- | -2- | Status | Tests |
0 | 1 | Covered | T2,T13,T62 |
1 | 0 | Covered | T1,T2,T3 |
1 | 1 | Covered | T2,T13,T62 |
LINE 266
EXPRESSION (seed_phase && validate_q && rvalid_i)
-----1---- -----2---- ----3---
-1- | -2- | -3- | Status | Tests |
0 | 1 | 1 | Not Covered | |
1 | 0 | 1 | Covered | T1,T2,T3 |
1 | 1 | 0 | Covered | T1,T2,T3 |
1 | 1 | 1 | Covered | T1,T2,T3 |
LINE 270
EXPRESSION (seed_phase && rvalid_i)
-----1---- ----2---
-1- | -2- | Status | Tests |
0 | 1 | Covered | T60,T138,T139 |
1 | 0 | Covered | T1,T2,T3 |
1 | 1 | Covered | T1,T2,T3 |
LINE 363
EXPRESSION (addr_key_req_d && addr_key_ack_q)
-------1------ -------2------
-1- | -2- | Status | Tests |
0 | 1 | Covered | T79,T156,T157 |
1 | 0 | Covered | T1,T2,T3 |
1 | 1 | Covered | T1,T2,T3 |
LINE 368
EXPRESSION (data_key_req_d && data_key_ack_q)
-------1------ -------2------
-1- | -2- | Status | Tests |
0 | 1 | Covered | T1,T158,T159 |
1 | 0 | Covered | T1,T2,T3 |
1 | 1 | Covered | T1,T2,T3 |
LINE 457
EXPRESSION (provision_en_i ? StReadSeeds : StWait)
-------1------
-1- | Status | Tests |
0 | Covered | T108,T160,T157 |
1 | Covered | T1,T2,T3 |
LINE 473
EXPRESSION (seed_cnt_q == flash_ctrl_pkg::NumSeeds)
--------------------1-------------------
-1- | Status | Tests |
0 | Covered | T1,T2,T3 |
1 | Covered | T1,T2,T3 |
LINE 516
EXPRESSION ((rma_wipe_idx == MaxWipeEntry[(WipeIdxWidth - 1):0]) && rma_wipe_done)
--------------------------1------------------------- ------2------
-1- | -2- | Status | Tests |
0 | 1 | Covered | T60,T138,T139 |
1 | 0 | Covered | T60,T138,T139 |
1 | 1 | Covered | T60,T138,T139 |
LINE 516
SUB-EXPRESSION (rma_wipe_idx == MaxWipeEntry[(WipeIdxWidth - 1):0])
--------------------------1-------------------------
-1- | Status | Tests |
0 | Covered | T1,T60,T79 |
1 | Covered | T60,T138,T139 |
LINE 678
EXPRESSION (page_err_q | page_err_d)
-----1---- -----2----
-1- | -2- | Status | Tests |
0 | 0 | Covered | T1,T2,T3 |
0 | 1 | Covered | T14,T15,T37 |
1 | 0 | Covered | T14,T15,T37 |
LINE 679
EXPRESSION (word_err_q | word_err_d)
-----1---- -----2----
-1- | -2- | Status | Tests |
0 | 0 | Covered | T1,T2,T3 |
0 | 1 | Covered | T14,T15,T37 |
1 | 0 | Covered | T14,T15,T37 |
LINE 680
EXPRESSION (rma_idx_err_q | rma_idx_err_d)
------1------ ------2------
-1- | -2- | Status | Tests |
0 | 0 | Covered | T1,T2,T3 |
0 | 1 | Covered | T14,T15,T37 |
1 | 0 | Covered | T14,T15,T37 |
LINE 693
EXPRESSION (wvalid_o && wready_i)
----1--- ----2---
-1- | -2- | Status | Tests |
0 | 1 | Not Covered | |
1 | 0 | Covered | T161,T162,T163 |
1 | 1 | Covered | T60,T140,T138 |
LINE 697
EXPRESSION (rvalid_i && rready_o)
----1--- ----2---
-1- | -2- | Status | Tests |
0 | 1 | Covered | T60,T11,T138 |
1 | 0 | Unreachable | |
1 | 1 | Covered | T60,T138,T139 |
LINE 705
EXPRESSION (prog_cnt_en && wvalid_o && wready_i)
-----1----- ----2--- ----3---
-1- | -2- | -3- | Status | Tests |
0 | 1 | 1 | Not Covered | |
1 | 0 | 1 | Not Covered | |
1 | 1 | 0 | Covered | T161,T162,T163 |
1 | 1 | 1 | Covered | T60,T140,T138 |
LINE 835
EXPRESSION ((beat_cnt == MaxBeatCnt[(BeatCntWidth - 1):0]) && wready_i)
-----------------------1---------------------- ----2---
-1- | -2- | Status | Tests |
0 | 1 | Covered | T60,T140,T138 |
1 | 0 | Covered | T162 |
1 | 1 | Covered | T60,T140,T138 |
LINE 835
SUB-EXPRESSION (beat_cnt == MaxBeatCnt[(BeatCntWidth - 1):0])
-----------------------1----------------------
-1- | Status | Tests |
0 | Covered | T60,T140,T11 |
1 | Covered | T60,T140,T138 |
LINE 856
EXPRESSION ((beat_cnt == MaxBeatCnt[(BeatCntWidth - 1):0]) && done_i)
-----------------------1---------------------- ---2--
-1- | -2- | Status | Tests |
0 | 1 | Not Covered | |
1 | 0 | Covered | T60,T138,T139 |
1 | 1 | Covered | T60,T138,T139 |
LINE 856
SUB-EXPRESSION (beat_cnt == MaxBeatCnt[(BeatCntWidth - 1):0])
-----------------------1----------------------
-1- | Status | Tests |
0 | Covered | T60,T11,T138 |
1 | Covered | T60,T138,T139 |
LINE 862
EXPRESSION (rvalid_i && rready_o)
----1--- ----2---
-1- | -2- | Status | Tests |
0 | 1 | Covered | T60,T11,T138 |
1 | 0 | Unreachable | |
1 | 1 | Covered | T60,T138,T139 |
LINE 863
EXPRESSION (prog_data[beat_cnt] != rdata_i[(flash_ctrl_pkg::BusWidth - 1):0])
---------------------------------1--------------------------------
-1- | Status | Tests |
0 | Covered | T60,T11,T138 |
1 | Covered | T164,T165,T166 |
LINE 892
EXPRESSION (seed_phase ? start : rma_start)
-----1----
-1- | Status | Tests |
0 | Covered | T1,T2,T3 |
1 | Covered | T1,T2,T3 |
LINE 893
EXPRESSION (seed_phase ? op : rma_op)
-----1----
-1- | Status | Tests |
0 | Covered | T1,T2,T3 |
1 | Covered | T1,T2,T3 |
LINE 896
EXPRESSION (seed_phase ? part_sel : rma_part_sel)
-----1----
-1- | Status | Tests |
0 | Covered | T1,T2,T3 |
1 | Covered | T1,T2,T3 |
LINE 897
EXPRESSION (seed_phase ? info_sel : rma_info_sel)
-----1----
-1- | Status | Tests |
0 | Covered | T1,T2,T3 |
1 | Covered | T1,T2,T3 |
LINE 898
EXPRESSION (seed_phase ? num_words : rma_num_words)
-----1----
-1- | Status | Tests |
0 | Covered | T1,T2,T3 |
1 | Covered | T1,T2,T3 |
LINE 900
EXPRESSION (seed_phase ? ({addr, {flash_ctrl_pkg::BusByteWidth {1'b0}}}) : ({rma_addr, {flash_ctrl_pkg::BusByteWidth {1'b0}}}))
-----1----
-1- | Status | Tests |
0 | Covered | T1,T2,T3 |
1 | Covered | T1,T2,T3 |
LINE 906
EXPRESSION (seed_phase | rma_phase)
-----1---- ----2----
-1- | -2- | Status | Tests |
0 | 0 | Covered | T1,T2,T3 |
0 | 1 | Covered | T1,T60,T79 |
1 | 0 | Covered | T1,T2,T3 |
LINE 914
EXPRESSION (page_err_q | word_err_q | fsm_err | state_err | rma_idx_err_q | addr_cnt_err_q | seed_cnt_err_q)
-----1---- -----2---- ---3--- ----4---- ------5------ -------6------ -------7------
-1- | -2- | -3- | -4- | -5- | -6- | -7- | Status | Tests |
0 | 0 | 0 | 0 | 0 | 0 | 0 | Covered | T1,T2,T3 |
0 | 0 | 0 | 0 | 0 | 0 | 1 | Covered | T14,T15,T37 |
0 | 0 | 0 | 0 | 0 | 1 | 0 | Covered | T14,T15,T37 |
0 | 0 | 0 | 0 | 1 | 0 | 0 | Covered | T14,T15,T37 |
0 | 0 | 0 | 1 | 0 | 0 | 0 | Covered | T14,T15,T167 |
0 | 0 | 1 | 0 | 0 | 0 | 0 | Covered | T14,T15,T37 |
0 | 1 | 0 | 0 | 0 | 0 | 0 | Covered | T14,T15,T37 |
1 | 0 | 0 | 0 | 0 | 0 | 0 | Covered | T14,T15,T37 |
FSM Coverage for Module :
flash_ctrl_lcmgr
Summary for FSM :: state_q
| Total | Covered | Percent | |
States |
11 |
11 |
100.00 |
(Not included in score) |
Transitions |
25 |
23 |
92.00 |
|
Sequences |
0 |
0 |
|
|
State, Transition and Sequence Details for FSM :: state_q
states | Line No. | Covered | Tests |
StDisabled |
545 |
Covered |
T1,T2,T13 |
StEntropyReseed |
499 |
Covered |
T1,T60,T79 |
StIdle |
432 |
Covered |
T1,T2,T3 |
StInvalid |
520 |
Covered |
T14,T15,T167 |
StReadEval |
478 |
Covered |
T1,T2,T3 |
StReadSeeds |
457 |
Covered |
T1,T2,T3 |
StReqAddrKey |
436 |
Covered |
T1,T2,T3 |
StReqDataKey |
446 |
Covered |
T1,T2,T3 |
StRmaRsp |
520 |
Covered |
T60,T138,T139 |
StRmaWipe |
434 |
Covered |
T1,T60,T79 |
StWait |
457 |
Covered |
T1,T2,T3 |
transitions | Line No. | Covered | Tests |
StEntropyReseed->StDisabled |
572 |
Covered |
T155,T168,T169 |
StEntropyReseed->StRmaWipe |
507 |
Covered |
T1,T60,T79 |
StIdle->StDisabled |
572 |
Covered |
T14,T15,T37 |
StIdle->StReqAddrKey |
436 |
Covered |
T1,T2,T3 |
StIdle->StRmaWipe |
434 |
Covered |
T140,T164,T165 |
StInvalid->StDisabled |
572 |
Not Covered |
|
StReadEval->StDisabled |
572 |
Covered |
T155,T108,T170 |
StReadEval->StReadSeeds |
485 |
Covered |
T1,T2,T3 |
StReadSeeds->StDisabled |
572 |
Covered |
T2,T13,T62 |
StReadSeeds->StReadEval |
478 |
Covered |
T1,T2,T3 |
StReadSeeds->StWait |
475 |
Covered |
T1,T2,T3 |
StReqAddrKey->StDisabled |
572 |
Covered |
T79,T155,T157 |
StReqAddrKey->StReqDataKey |
446 |
Covered |
T1,T2,T3 |
StReqAddrKey->StRmaWipe |
444 |
Covered |
T156,T157,T159 |
StReqDataKey->StDisabled |
572 |
Covered |
T1,T171,T172 |
StReqDataKey->StReadSeeds |
457 |
Covered |
T1,T2,T3 |
StReqDataKey->StRmaWipe |
454 |
Covered |
T158,T159,T173 |
StReqDataKey->StWait |
457 |
Covered |
T108,T160,T157 |
StRmaRsp->StDisabled |
572 |
Covered |
T174 |
StRmaRsp->StInvalid |
534 |
Not Covered |
|
StRmaWipe->StDisabled |
572 |
Covered |
T108,T140,T170 |
StRmaWipe->StInvalid |
520 |
Covered |
T167,T175,T176 |
StRmaWipe->StRmaRsp |
520 |
Covered |
T60,T138,T139 |
StWait->StDisabled |
572 |
Covered |
T177,T18,T71 |
StWait->StEntropyReseed |
499 |
Covered |
T1,T60,T79 |
Summary for FSM :: rma_state_q
| Total | Covered | Percent | |
States |
10 |
10 |
100.00 |
(Not included in score) |
Transitions |
13 |
12 |
92.31 |
|
Sequences |
0 |
0 |
|
|
State, Transition and Sequence Details for FSM :: rma_state_q
states | Line No. | Covered | Tests |
StRmaDisabled |
785 |
Covered |
T1,T2,T13 |
StRmaErase |
796 |
Covered |
T1,T60,T79 |
StRmaEraseWait |
809 |
Covered |
T60,T108,T140 |
StRmaIdle |
800 |
Covered |
T1,T2,T3 |
StRmaInvalid |
872 |
Covered |
T14,T15,T37 |
StRmaPageSel |
787 |
Covered |
T1,T60,T79 |
StRmaProgram |
822 |
Covered |
T60,T140,T138 |
StRmaProgramWait |
836 |
Covered |
T60,T140,T138 |
StRmaRdVerify |
847 |
Covered |
T60,T138,T139 |
StRmaWordSel |
815 |
Covered |
T60,T108,T140 |
transitions | Line No. | Covered | Tests |
StRmaErase->StRmaEraseWait |
809 |
Covered |
T60,T108,T140 |
StRmaEraseWait->StRmaWordSel |
815 |
Covered |
T60,T108,T140 |
StRmaIdle->StRmaDisabled |
785 |
Covered |
T1,T2,T13 |
StRmaIdle->StRmaPageSel |
787 |
Covered |
T1,T60,T79 |
StRmaPageSel->StRmaDisabled |
794 |
Not Covered |
|
StRmaPageSel->StRmaErase |
796 |
Covered |
T1,T60,T79 |
StRmaPageSel->StRmaIdle |
800 |
Covered |
T60,T138,T139 |
StRmaProgram->StRmaProgramWait |
836 |
Covered |
T60,T140,T138 |
StRmaProgramWait->StRmaRdVerify |
847 |
Covered |
T60,T138,T139 |
StRmaRdVerify->StRmaWordSel |
859 |
Covered |
T60,T138,T139 |
StRmaWordSel->StRmaDisabled |
820 |
Covered |
T108,T170,T157 |
StRmaWordSel->StRmaPageSel |
826 |
Covered |
T60,T138,T139 |
StRmaWordSel->StRmaProgram |
822 |
Covered |
T60,T140,T138 |
Branch Coverage for Module :
flash_ctrl_lcmgr
| Line No. | Total | Covered | Percent |
Branches |
|
94 |
93 |
98.94 |
TERNARY |
892 |
2 |
2 |
100.00 |
TERNARY |
893 |
2 |
2 |
100.00 |
TERNARY |
896 |
2 |
2 |
100.00 |
TERNARY |
897 |
2 |
2 |
100.00 |
TERNARY |
898 |
2 |
2 |
100.00 |
TERNARY |
900 |
2 |
2 |
100.00 |
IF |
152 |
2 |
2 |
100.00 |
IF |
174 |
2 |
2 |
100.00 |
IF |
227 |
2 |
2 |
100.00 |
IF |
251 |
2 |
2 |
100.00 |
IF |
264 |
4 |
4 |
100.00 |
IF |
359 |
5 |
5 |
100.00 |
CASE |
427 |
27 |
26 |
96.30 |
IF |
569 |
2 |
2 |
100.00 |
IF |
613 |
2 |
2 |
100.00 |
IF |
673 |
2 |
2 |
100.00 |
IF |
688 |
7 |
7 |
100.00 |
IF |
705 |
2 |
2 |
100.00 |
CASE |
777 |
23 |
23 |
100.00 |
WARNING: The source file /workspace/default/sim-vcs/../src/lowrisc_ip_flash_ctrl_0.1/rtl/flash_ctrl_lcmgr.sv' or '../src/lowrisc_ip_flash_ctrl_0.1/rtl/flash_ctrl_lcmgr.sv was not found/opened, so annotated branch coverage report could not be generated.
LineNo. Expression
-1-: 892 (seed_phase) ?
Branches:
-1- | Status | Tests |
1 |
Covered |
T1,T2,T3 |
0 |
Covered |
T1,T2,T3 |
LineNo. Expression
-1-: 893 (seed_phase) ?
Branches:
-1- | Status | Tests |
1 |
Covered |
T1,T2,T3 |
0 |
Covered |
T1,T2,T3 |
LineNo. Expression
-1-: 896 (seed_phase) ?
Branches:
-1- | Status | Tests |
1 |
Covered |
T1,T2,T3 |
0 |
Covered |
T1,T2,T3 |
LineNo. Expression
-1-: 897 (seed_phase) ?
Branches:
-1- | Status | Tests |
1 |
Covered |
T1,T2,T3 |
0 |
Covered |
T1,T2,T3 |
LineNo. Expression
-1-: 898 (seed_phase) ?
Branches:
-1- | Status | Tests |
1 |
Covered |
T1,T2,T3 |
0 |
Covered |
T1,T2,T3 |
LineNo. Expression
-1-: 900 (seed_phase) ?
Branches:
-1- | Status | Tests |
1 |
Covered |
T1,T2,T3 |
0 |
Covered |
T1,T2,T3 |
LineNo. Expression
-1-: 152 if ((!rst_ni))
Branches:
-1- | Status | Tests |
1 |
Covered |
T1,T2,T3 |
0 |
Covered |
T1,T2,T3 |
LineNo. Expression
-1-: 174 if ((!rst_ni))
Branches:
-1- | Status | Tests |
1 |
Covered |
T1,T2,T3 |
0 |
Covered |
T1,T2,T3 |
LineNo. Expression
-1-: 227 if ((!rst_ni))
Branches:
-1- | Status | Tests |
1 |
Covered |
T1,T2,T3 |
0 |
Covered |
T1,T2,T3 |
LineNo. Expression
-1-: 251 if ((!rst_ni))
Branches:
-1- | Status | Tests |
1 |
Covered |
T1,T2,T3 |
0 |
Covered |
T1,T2,T3 |
LineNo. Expression
-1-: 264 if ((!rst_ni))
-2-: 266 if (((seed_phase && validate_q) && rvalid_i))
-3-: 270 if ((seed_phase && rvalid_i))
Branches:
-1- | -2- | -3- | Status | Tests |
1 |
- |
- |
Covered |
T1,T2,T3 |
0 |
1 |
- |
Covered |
T1,T2,T3 |
0 |
0 |
1 |
Covered |
T1,T2,T3 |
0 |
0 |
0 |
Covered |
T1,T2,T3 |
LineNo. Expression
-1-: 359 if ((!rst_ni))
-2-: 363 if ((addr_key_req_d && addr_key_ack_q))
-3-: 368 if ((data_key_req_d && data_key_ack_q))
Branches:
-1- | -2- | -3- | Status | Tests |
1 |
- |
- |
Covered |
T1,T2,T3 |
0 |
1 |
- |
Covered |
T1,T2,T3 |
0 |
0 |
- |
Covered |
T1,T2,T3 |
0 |
- |
1 |
Covered |
T1,T2,T3 |
0 |
- |
0 |
Covered |
T1,T2,T3 |
LineNo. Expression
-1-: 427 case (state_q)
-2-: 433 if (lc_ctrl_pkg::lc_tx_test_true_strict(rma_req[RmaReqInit]))
-3-: 435 if (init_q)
-4-: 443 if (lc_ctrl_pkg::lc_tx_test_true_strict(rma_req[RmaReqKey]))
-5-: 445 if (addr_key_ack_q)
-6-: 453 if (lc_ctrl_pkg::lc_tx_test_true_strict(rma_req[RmaReqKey]))
-7-: 455 if (data_key_ack_q)
-8-: 457 (provision_en_i) ?
-9-: 473 if ((seed_cnt_q == flash_ctrl_pkg::NumSeeds))
-10-: 476 if (done_i)
-11-: 487 if (validate_q)
-12-: 498 if (lc_ctrl_pkg::lc_tx_test_true_strict(rma_req[RmaReqWait]))
-13-: 506 if (edn_ack_i)
-14-: 516 if (((rma_wipe_idx == MaxWipeEntry[(WipeIdxWidth - 1):0]) && rma_wipe_done))
-15-: 521 if (rma_wipe_done)
-16-: 533 if (lc_ctrl_pkg::lc_tx_test_false_loose(err_sts_q))
Branches:
-1- | -2- | -3- | -4- | -5- | -6- | -7- | -8- | -9- | -10- | -11- | -12- | -13- | -14- | -15- | -16- | Status | Tests |
StIdle |
1 |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
Covered |
T140,T164,T165 |
StIdle |
0 |
1 |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
Covered |
T1,T2,T3 |
StIdle |
0 |
0 |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
Covered |
T1,T2,T3 |
StReqAddrKey |
- |
- |
1 |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
Covered |
T156,T157,T159 |
StReqAddrKey |
- |
- |
0 |
1 |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
Covered |
T1,T2,T3 |
StReqAddrKey |
- |
- |
0 |
0 |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
Covered |
T1,T2,T3 |
StReqDataKey |
- |
- |
- |
- |
1 |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
Covered |
T158,T159,T173 |
StReqDataKey |
- |
- |
- |
- |
0 |
1 |
1 |
- |
- |
- |
- |
- |
- |
- |
- |
Covered |
T1,T2,T3 |
StReqDataKey |
- |
- |
- |
- |
0 |
1 |
0 |
- |
- |
- |
- |
- |
- |
- |
- |
Covered |
T108,T160,T157 |
StReqDataKey |
- |
- |
- |
- |
0 |
0 |
- |
- |
- |
- |
- |
- |
- |
- |
- |
Covered |
T1,T2,T3 |
StReadSeeds |
- |
- |
- |
- |
- |
- |
- |
1 |
- |
- |
- |
- |
- |
- |
- |
Covered |
T1,T2,T3 |
StReadSeeds |
- |
- |
- |
- |
- |
- |
- |
0 |
1 |
- |
- |
- |
- |
- |
- |
Covered |
T1,T2,T3 |
StReadSeeds |
- |
- |
- |
- |
- |
- |
- |
0 |
0 |
- |
- |
- |
- |
- |
- |
Covered |
T1,T2,T3 |
StReadEval |
- |
- |
- |
- |
- |
- |
- |
- |
- |
1 |
- |
- |
- |
- |
- |
Covered |
T1,T2,T3 |
StReadEval |
- |
- |
- |
- |
- |
- |
- |
- |
- |
0 |
- |
- |
- |
- |
- |
Covered |
T1,T2,T3 |
StWait |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
1 |
- |
- |
- |
- |
Covered |
T1,T60,T79 |
StWait |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
0 |
- |
- |
- |
- |
Covered |
T1,T2,T3 |
StEntropyReseed |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
1 |
- |
- |
- |
Covered |
T1,T60,T79 |
StEntropyReseed |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
0 |
- |
- |
- |
Not Covered |
|
StRmaWipe |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
1 |
- |
- |
Covered |
T60,T11,T138 |
StRmaWipe |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
0 |
1 |
- |
Covered |
T60,T11,T138 |
StRmaWipe |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
0 |
0 |
- |
Covered |
T1,T60,T79 |
StRmaRsp |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
1 |
Covered |
T11 |
StRmaRsp |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
0 |
Covered |
T60,T11,T138 |
StDisabled |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
Covered |
T1,T2,T13 |
StInvalid |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
Covered |
T11,T14,T15 |
default |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
Covered |
T11,T14,T15 |
LineNo. Expression
-1-: 569 if (((prim_mubi_pkg::mubi4_test_true_loose(disable_i) && (state_d != StInvalid)) && (!rma_done)))
Branches:
-1- | Status | Tests |
1 |
Covered |
T1,T2,T13 |
0 |
Covered |
T1,T2,T3 |
LineNo. Expression
-1-: 613 if ((!rst_ni))
Branches:
-1- | Status | Tests |
1 |
Covered |
T1,T2,T3 |
0 |
Covered |
T1,T2,T3 |
LineNo. Expression
-1-: 673 if ((!rst_ni))
Branches:
-1- | Status | Tests |
1 |
Covered |
T1,T2,T3 |
0 |
Covered |
T1,T2,T3 |
LineNo. Expression
-1-: 688 if ((!rst_ni))
-2-: 690 if (beat_cnt_clr)
-3-: 692 if (prog_cnt_en)
-4-: 693 if ((wvalid_o && wready_i))
-5-: 696 if (rd_cnt_en)
-6-: 697 if ((rvalid_i && rready_o))
Branches:
-1- | -2- | -3- | -4- | -5- | -6- | Status | Tests |
1 |
- |
- |
- |
- |
- |
Covered |
T1,T2,T3 |
0 |
1 |
- |
- |
- |
- |
Covered |
T60,T11,T138 |
0 |
0 |
1 |
1 |
- |
- |
Covered |
T60,T140,T11 |
0 |
0 |
1 |
0 |
- |
- |
Covered |
T11,T161,T162 |
0 |
0 |
0 |
- |
1 |
1 |
Covered |
T60,T11,T138 |
0 |
0 |
0 |
- |
1 |
0 |
Covered |
T60,T11,T138 |
0 |
0 |
0 |
- |
0 |
- |
Covered |
T1,T2,T3 |
LineNo. Expression
-1-: 705 if (((prog_cnt_en && wvalid_o) && wready_i))
Branches:
-1- | Status | Tests |
1 |
Covered |
T60,T140,T11 |
0 |
Covered |
T1,T2,T3 |
LineNo. Expression
-1-: 777 case (rma_state_q)
-2-: 784 if (prim_mubi_pkg::mubi4_test_true_loose(disable_i))
-3-: 786 if (rma_wipe_req_int)
-4-: 793 if (prim_mubi_pkg::mubi4_test_true_loose(disable_i))
-5-: 795 if ((page_cnt < end_page))
-6-: 807 if (done_i)
-7-: 819 if (prim_mubi_pkg::mubi4_test_true_loose(disable_i))
-8-: 821 if ((word_cnt < flash_ctrl_pkg::BusWordsPerPage))
-9-: 835 if (((beat_cnt == MaxBeatCnt[(BeatCntWidth - 1):0]) && wready_i))
-10-: 844 if (done_i)
-11-: 856 if (((beat_cnt == MaxBeatCnt[(BeatCntWidth - 1):0]) && done_i))
-12-: 862 if ((rvalid_i && rready_o))
Branches:
-1- | -2- | -3- | -4- | -5- | -6- | -7- | -8- | -9- | -10- | -11- | -12- | Status | Tests |
StRmaIdle |
1 |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
Covered |
T1,T2,T13 |
StRmaIdle |
0 |
1 |
- |
- |
- |
- |
- |
- |
- |
- |
- |
Covered |
T1,T60,T79 |
StRmaIdle |
0 |
0 |
- |
- |
- |
- |
- |
- |
- |
- |
- |
Covered |
T1,T2,T3 |
StRmaPageSel |
- |
- |
1 |
- |
- |
- |
- |
- |
- |
- |
- |
Covered |
T11 |
StRmaPageSel |
- |
- |
0 |
1 |
- |
- |
- |
- |
- |
- |
- |
Covered |
T1,T60,T79 |
StRmaPageSel |
- |
- |
0 |
0 |
- |
- |
- |
- |
- |
- |
- |
Covered |
T60,T11,T138 |
StRmaErase |
- |
- |
- |
- |
1 |
- |
- |
- |
- |
- |
- |
Covered |
T60,T108,T140 |
StRmaErase |
- |
- |
- |
- |
0 |
- |
- |
- |
- |
- |
- |
Covered |
T1,T60,T79 |
StRmaEraseWait |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
Covered |
T60,T108,T140 |
StRmaWordSel |
- |
- |
- |
- |
- |
1 |
- |
- |
- |
- |
- |
Covered |
T108,T11,T170 |
StRmaWordSel |
- |
- |
- |
- |
- |
0 |
1 |
- |
- |
- |
- |
Covered |
T60,T140,T11 |
StRmaWordSel |
- |
- |
- |
- |
- |
0 |
0 |
- |
- |
- |
- |
Covered |
T60,T11,T138 |
StRmaProgram |
- |
- |
- |
- |
- |
- |
- |
1 |
- |
- |
- |
Covered |
T60,T140,T11 |
StRmaProgram |
- |
- |
- |
- |
- |
- |
- |
0 |
- |
- |
- |
Covered |
T60,T140,T11 |
StRmaProgramWait |
- |
- |
- |
- |
- |
- |
- |
- |
1 |
- |
- |
Covered |
T60,T11,T138 |
StRmaProgramWait |
- |
- |
- |
- |
- |
- |
- |
- |
0 |
- |
- |
Covered |
T60,T140,T11 |
StRmaRdVerify |
- |
- |
- |
- |
- |
- |
- |
- |
- |
1 |
- |
Covered |
T60,T11,T138 |
StRmaRdVerify |
- |
- |
- |
- |
- |
- |
- |
- |
- |
0 |
- |
Covered |
T60,T11,T138 |
StRmaRdVerify |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
1 |
Covered |
T60,T11,T138 |
StRmaRdVerify |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
0 |
Covered |
T60,T11,T138 |
StRmaDisabled |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
Covered |
T1,T2,T13 |
StRmaInvalid |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
Covered |
T11,T14,T15 |
default |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
- |
Covered |
T11,T14,T15 |
Assert Coverage for Module :
flash_ctrl_lcmgr
Assertion Details
DisableChk_A
Name | Attempts | Real Successes | Failures | Incomplete |
Total |
401002853 |
5105180 |
0 |
46 |
T1 |
3859 |
10 |
0 |
0 |
T2 |
1189 |
3 |
0 |
0 |
T3 |
498265 |
0 |
0 |
0 |
T4 |
69976 |
0 |
0 |
0 |
T5 |
41411 |
0 |
0 |
0 |
T6 |
90346 |
0 |
0 |
0 |
T8 |
109662 |
0 |
0 |
0 |
T9 |
69747 |
0 |
0 |
0 |
T10 |
0 |
0 |
0 |
1 |
T13 |
0 |
3 |
0 |
0 |
T16 |
515431 |
0 |
0 |
0 |
T17 |
2237 |
0 |
0 |
0 |
T18 |
0 |
542 |
0 |
1 |
T39 |
0 |
0 |
0 |
1 |
T40 |
0 |
0 |
0 |
1 |
T62 |
0 |
3 |
0 |
0 |
T71 |
0 |
160 |
0 |
1 |
T72 |
0 |
0 |
0 |
1 |
T79 |
0 |
13 |
0 |
0 |
T153 |
0 |
0 |
0 |
1 |
T155 |
0 |
18 |
0 |
0 |
T177 |
0 |
304 |
0 |
1 |
T178 |
0 |
3 |
0 |
0 |
T179 |
0 |
0 |
0 |
1 |
T180 |
0 |
0 |
0 |
1 |
ProgRdVerify_A
Name | Attempts | Real Successes | Failures | Incomplete |
Total |
397436861 |
2043536 |
0 |
0 |
T18 |
1063 |
0 |
0 |
0 |
T19 |
66985 |
0 |
0 |
0 |
T44 |
134825 |
0 |
0 |
0 |
T55 |
490831 |
0 |
0 |
0 |
T60 |
385791 |
65920 |
0 |
0 |
T74 |
0 |
65920 |
0 |
0 |
T75 |
0 |
65920 |
0 |
0 |
T79 |
3428 |
0 |
0 |
0 |
T117 |
1716 |
0 |
0 |
0 |
T118 |
1792 |
0 |
0 |
0 |
T138 |
0 |
65920 |
0 |
0 |
T139 |
0 |
65920 |
0 |
0 |
T161 |
0 |
65920 |
0 |
0 |
T162 |
0 |
65920 |
0 |
0 |
T166 |
0 |
65920 |
0 |
0 |
T174 |
0 |
65920 |
0 |
0 |
T177 |
781 |
0 |
0 |
0 |
T181 |
0 |
4 |
0 |
0 |
T182 |
3458 |
0 |
0 |
0 |
u_rma_state_regs_A
Name | Attempts | Real Successes | Failures | Incomplete |
Total |
412959800 |
412162299 |
0 |
0 |
T1 |
3859 |
3251 |
0 |
0 |
T2 |
1189 |
922 |
0 |
0 |
T3 |
498265 |
498256 |
0 |
0 |
T4 |
69976 |
69876 |
0 |
0 |
T5 |
41411 |
41348 |
0 |
0 |
T6 |
90346 |
90263 |
0 |
0 |
T8 |
109662 |
109481 |
0 |
0 |
T9 |
69747 |
69676 |
0 |
0 |
T16 |
515431 |
515334 |
0 |
0 |
T17 |
2237 |
2141 |
0 |
0 |
u_state_regs_A
Name | Attempts | Real Successes | Failures | Incomplete |
Total |
412959800 |
412162299 |
0 |
0 |
T1 |
3859 |
3251 |
0 |
0 |
T2 |
1189 |
922 |
0 |
0 |
T3 |
498265 |
498256 |
0 |
0 |
T4 |
69976 |
69876 |
0 |
0 |
T5 |
41411 |
41348 |
0 |
0 |
T6 |
90346 |
90263 |
0 |
0 |
T8 |
109662 |
109481 |
0 |
0 |
T9 |
69747 |
69676 |
0 |
0 |
T16 |
515431 |
515334 |
0 |
0 |
T17 |
2237 |
2141 |
0 |
0 |