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



Module Instance : tb.dut.u_app_intf.u_appid_arb

Instance :
SCORELINECONDTOGGLEFSMBRANCHASSERT
95.05 87.50 92.68 100.00 100.00


Instance's subtree :
SCORELINECONDTOGGLEFSMBRANCHASSERT
95.05 87.50 92.68 100.00 100.00


Parent :
SCORELINECONDTOGGLEFSMBRANCHASSERTNAME
83.71 94.57 86.30 46.67 91.01 100.00 u_app_intf


Subtrees :
NAMESCORELINECONDTOGGLEFSMBRANCHASSERT
no children


Since this is the module's only instance, the coverage report is the same as for the module.
Line Coverage for Module : prim_arbiter_fixed
Line No.TotalCoveredPercent
TOTAL322887.50
CONT_ASSIGN8511100.00
CONT_ASSIGN8511100.00
CONT_ASSIGN8511100.00
CONT_ASSIGN87100.00
CONT_ASSIGN87100.00
CONT_ASSIGN87100.00
CONT_ASSIGN8911100.00
CONT_ASSIGN8911100.00
CONT_ASSIGN8911100.00
CONT_ASSIGN9711100.00
ALWAYS10566100.00
ALWAYS10566100.00
ALWAYS10566100.00
CONT_ASSIGN124100.00
CONT_ASSIGN12811100.00
CONT_ASSIGN12911100.00
CONT_ASSIGN13211100.00

84 // forward path 85 3/3 assign req_tree[Pa] = req_i[offset]; Tests: T9 T7 T4  | T9 T4 T10  | T9 T4 T10  86 assign idx_tree[Pa] = offset; 87 0/3 ==> assign data_tree[Pa] = data_i[offset]; 88 // backward (grant) path 89 3/3 assign gnt_o[offset] = gnt_tree[Pa]; Tests: T9 T7 T4  | T9 T4 T10  | T4 T12 T13  90 91 end else begin : gen_tie_off 92 // forward path 93 assign req_tree[Pa] = '0; 94 assign idx_tree[Pa] = '0; 95 assign data_tree[Pa] = '0; 96 logic unused_sigs; 97 1/1 assign unused_sigs = gnt_tree[Pa]; Tests: T9 T10 T18  98 end 99 // this creates the node assignments 100 end else begin : gen_nodes 101 // forward path 102 logic sel; // local helper variable 103 always_comb begin : p_node 104 // this always gives priority to the left child 105 1/1 sel = ~req_tree[C0]; Tests: T9 T7 T4  106 // propagate requests 107 1/1 req_tree[Pa] = req_tree[C0] | req_tree[C1]; Tests: T9 T7 T4  108 // data and index muxes 109 1/1 idx_tree[Pa] = (sel) ? idx_tree[C1] : idx_tree[C0]; Tests: T9 T7 T4  110 1/1 data_tree[Pa] = (sel) ? data_tree[C1] : data_tree[C0]; Tests: T9 T7 T4  111 // propagate the grants back to the input 112 1/1 gnt_tree[C0] = gnt_tree[Pa] & ~sel; Tests: T9 T7 T4  113 1/1 gnt_tree[C1] = gnt_tree[Pa] & sel; Tests: T9 T7 T4  ***repeat 1 105 1/1 sel = ~req_tree[C0]; Tests: T9 T7 T4  106 // propagate requests 107 1/1 req_tree[Pa] = req_tree[C0] | req_tree[C1]; Tests: T9 T7 T4  108 // data and index muxes 109 1/1 idx_tree[Pa] = (sel) ? idx_tree[C1] : idx_tree[C0]; Tests: T9 T7 T4  110 1/1 data_tree[Pa] = (sel) ? data_tree[C1] : data_tree[C0]; Tests: T9 T7 T4  111 // propagate the grants back to the input 112 1/1 gnt_tree[C0] = gnt_tree[Pa] & ~sel; Tests: T9 T7 T4  113 1/1 gnt_tree[C1] = gnt_tree[Pa] & sel; Tests: T9 T7 T4  ***repeat 2 105 1/1 sel = ~req_tree[C0]; Tests: T9 T4 T10  106 // propagate requests 107 1/1 req_tree[Pa] = req_tree[C0] | req_tree[C1]; Tests: T9 T4 T10  108 // data and index muxes 109 1/1 idx_tree[Pa] = (sel) ? idx_tree[C1] : idx_tree[C0]; Tests: T9 T4 T10  110 1/1 data_tree[Pa] = (sel) ? data_tree[C1] : data_tree[C0]; Tests: T9 T4 T10  111 // propagate the grants back to the input 112 1/1 gnt_tree[C0] = gnt_tree[Pa] & ~sel; Tests: T9 T4 T10  113 1/1 gnt_tree[C1] = gnt_tree[Pa] & sel; Tests: T9 T4 T10  114 end 115 end 116 end : gen_level 117 end : gen_tree 118 119 // the results can be found at the tree root 120 if (EnDataPort) begin : gen_data_port 121 assign data_o = data_tree[0]; 122 end else begin : gen_no_dataport 123 logic [DW-1:0] unused_data; 124 0/1 ==> assign unused_data = data_tree[0]; 125 assign data_o = '1; 126 end 127 128 1/1 assign idx_o = idx_tree[0]; Tests: T9 T4 T10  129 1/1 assign valid_o = req_tree[0]; Tests: T9 T7 T4  130 131 // this propagates a grant back to the input 132 1/1 assign gnt_tree[0] = valid_o & ready_i; Tests: T9 T7 T4 

Cond Coverage for Module : prim_arbiter_fixed
TotalCoveredPercent
Conditions413892.68
Logical413892.68
Non-Logical00
Event00

 LINE       107
 EXPRESSION (gen_normal_case.req_tree[gen_normal_case.gen_tree[0].gen_level[0].C0] | gen_normal_case.req_tree[gen_normal_case.gen_tree[0].gen_level[0].C1])
             ----------------------------------1----------------------------------   ----------------------------------2----------------------------------
-1--2-StatusTests
00CoveredT9,T7,T4
01CoveredT4,T18,T12
10CoveredT9,T7,T4

 LINE       107
 EXPRESSION (gen_normal_case.req_tree[gen_normal_case.gen_tree[1].gen_level[0].C0] | gen_normal_case.req_tree[gen_normal_case.gen_tree[1].gen_level[0].C1])
             ----------------------------------1----------------------------------   ----------------------------------2----------------------------------
-1--2-StatusTests
00CoveredT9,T7,T4
01CoveredT9,T4,T10
10CoveredT7,T4,T8

 LINE       107
 EXPRESSION (gen_normal_case.req_tree[gen_normal_case.gen_tree[1].gen_level[1].C0] | gen_normal_case.req_tree[gen_normal_case.gen_tree[1].gen_level[1].C1])
             ----------------------------------1----------------------------------   ----------------------------------2----------------------------------
-1--2-StatusTests
00CoveredT9,T4,T10
01Unreachable
10CoveredT9,T4,T10

 LINE       109
 EXPRESSION 
 Number  Term
      1  gen_normal_case.gen_tree[0].gen_level[0].gen_nodes.sel ? gen_normal_case.idx_tree[gen_normal_case.gen_tree[0].gen_level[0].C1] : gen_normal_case.idx_tree[gen_normal_case.gen_tree[0].gen_level[0].C0])
-1-StatusTests
0CoveredT9,T7,T4
1CoveredT9,T7,T4

 LINE       109
 EXPRESSION 
 Number  Term
      1  gen_normal_case.gen_tree[1].gen_level[0].gen_nodes.sel ? gen_normal_case.idx_tree[gen_normal_case.gen_tree[1].gen_level[0].C1] : gen_normal_case.idx_tree[gen_normal_case.gen_tree[1].gen_level[0].C0])
-1-StatusTests
0CoveredT9,T7,T4
1CoveredT9,T7,T4

 LINE       109
 EXPRESSION 
 Number  Term
      1  gen_normal_case.gen_tree[1].gen_level[1].gen_nodes.sel ? gen_normal_case.idx_tree[gen_normal_case.gen_tree[1].gen_level[1].C1] : gen_normal_case.idx_tree[gen_normal_case.gen_tree[1].gen_level[1].C0])
-1-StatusTests
0CoveredT9,T4,T10
1CoveredT9,T4,T10

 LINE       110
 EXPRESSION 
 Number  Term
      1  gen_normal_case.gen_tree[0].gen_level[0].gen_nodes.sel ? gen_normal_case.data_tree[gen_normal_case.gen_tree[0].gen_level[0].C1] : gen_normal_case.data_tree[gen_normal_case.gen_tree[0].gen_level[0].C0])
-1-StatusTests
0CoveredT9,T7,T4
1CoveredT9,T7,T4

 LINE       110
 EXPRESSION 
 Number  Term
      1  gen_normal_case.gen_tree[1].gen_level[0].gen_nodes.sel ? gen_normal_case.data_tree[gen_normal_case.gen_tree[1].gen_level[0].C1] : gen_normal_case.data_tree[gen_normal_case.gen_tree[1].gen_level[0].C0])
-1-StatusTests
0CoveredT9,T7,T4
1CoveredT9,T7,T4

 LINE       110
 EXPRESSION 
 Number  Term
      1  gen_normal_case.gen_tree[1].gen_level[1].gen_nodes.sel ? gen_normal_case.data_tree[gen_normal_case.gen_tree[1].gen_level[1].C1] : gen_normal_case.data_tree[gen_normal_case.gen_tree[1].gen_level[1].C0])
-1-StatusTests
0CoveredT9,T4,T10
1CoveredT9,T4,T10

 LINE       112
 EXPRESSION (gen_normal_case.gnt_tree[gen_normal_case.gen_tree[0].gen_level[0].Pa] & ((~gen_normal_case.gen_tree[0].gen_level[0].gen_nodes.sel)))
             ----------------------------------1----------------------------------   -----------------------------2-----------------------------
-1--2-StatusTests
01CoveredT9,T7,T4
10CoveredT4,T12,T13
11CoveredT7,T4,T8

 LINE       112
 EXPRESSION (gen_normal_case.gnt_tree[gen_normal_case.gen_tree[1].gen_level[0].Pa] & ((~gen_normal_case.gen_tree[1].gen_level[0].gen_nodes.sel)))
             ----------------------------------1----------------------------------   -----------------------------2-----------------------------
-1--2-StatusTests
01CoveredT9,T7,T4
10CoveredT4,T11,T12
11CoveredT7,T4,T8

 LINE       112
 EXPRESSION (gen_normal_case.gnt_tree[gen_normal_case.gen_tree[1].gen_level[1].Pa] & ((~gen_normal_case.gen_tree[1].gen_level[1].gen_nodes.sel)))
             ----------------------------------1----------------------------------   -----------------------------2-----------------------------
-1--2-StatusTests
01CoveredT9,T4,T10
10Not Covered
11CoveredT4,T12,T13

 LINE       113
 EXPRESSION (gen_normal_case.gnt_tree[gen_normal_case.gen_tree[0].gen_level[0].Pa] & gen_normal_case.gen_tree[0].gen_level[0].gen_nodes.sel)
             ----------------------------------1----------------------------------   ---------------------------2--------------------------
-1--2-StatusTests
01CoveredT9,T7,T4
10CoveredT7,T4,T8
11CoveredT4,T12,T13

 LINE       113
 EXPRESSION (gen_normal_case.gnt_tree[gen_normal_case.gen_tree[1].gen_level[0].Pa] & gen_normal_case.gen_tree[1].gen_level[0].gen_nodes.sel)
             ----------------------------------1----------------------------------   ---------------------------2--------------------------
-1--2-StatusTests
01CoveredT9,T7,T4
10CoveredT7,T4,T8
11CoveredT4,T11,T12

 LINE       113
 EXPRESSION (gen_normal_case.gnt_tree[gen_normal_case.gen_tree[1].gen_level[1].Pa] & gen_normal_case.gen_tree[1].gen_level[1].gen_nodes.sel)
             ----------------------------------1----------------------------------   ---------------------------2--------------------------
-1--2-StatusTests
01CoveredT9,T4,T10
10CoveredT4,T12,T13
11Not Covered

 LINE       132
 EXPRESSION (valid_o & ready_i)
             ---1---   ---2---
-1--2-StatusTests
01Not Covered
10CoveredT9,T7,T4
11CoveredT7,T4,T8

Branch Coverage for Module : prim_arbiter_fixed
Line No.TotalCoveredPercent
Branches 12 12 100.00
TERNARY 109 2 2 100.00
TERNARY 110 2 2 100.00
TERNARY 109 2 2 100.00
TERNARY 110 2 2 100.00
TERNARY 109 2 2 100.00
TERNARY 110 2 2 100.00


109 idx_tree[Pa] = (sel) ? idx_tree[C1] : idx_tree[C0]; -1- ==> ==>

Branches:
-1-StatusTests
1 Covered T9,T7,T4
0 Covered T9,T7,T4


110 data_tree[Pa] = (sel) ? data_tree[C1] : data_tree[C0]; -1- ==> ==>

Branches:
-1-StatusTests
1 Covered T9,T7,T4
0 Covered T9,T7,T4


109 idx_tree[Pa] = (sel) ? idx_tree[C1] : idx_tree[C0]; -1- ==> ==>

Branches:
-1-StatusTests
1 Covered T9,T7,T4
0 Covered T9,T7,T4


110 data_tree[Pa] = (sel) ? data_tree[C1] : data_tree[C0]; -1- ==> ==>

Branches:
-1-StatusTests
1 Covered T9,T7,T4
0 Covered T9,T7,T4


109 idx_tree[Pa] = (sel) ? idx_tree[C1] : idx_tree[C0]; -1- ==> ==>

Branches:
-1-StatusTests
1 Covered T9,T4,T10
0 Covered T9,T4,T10


110 data_tree[Pa] = (sel) ? data_tree[C1] : data_tree[C0]; -1- ==> ==>

Branches:
-1-StatusTests
1 Covered T9,T4,T10
0 Covered T9,T4,T10


Assert Coverage for Module : prim_arbiter_fixed
TotalAttemptedPercentSucceeded/MatchedPercent
Assertions 13 13 100.00 13 100.00
Cover properties 0 0 0
Cover sequences 0 0 0
Total 13 13 100.00 13 100.00




Assertion Details

NameAttemptsReal SuccessesFailuresIncomplete
CheckHotOne_A 660562094 660415981 0 0
CheckNGreaterZero_A 669 669 0 0
GntImpliesReady_A 660562094 7525 0 0
GntImpliesValid_A 660562094 7525 0 0
GrantKnown_A 660562094 660415981 0 0
IdxKnown_A 660562094 660415981 0 0
IndexIsCorrect_A 660562094 7525 0 0
NoReadyValidNoGrant_A 660562094 657400650 0 0
Priority_A 660562094 3015331 0 0
ReadyAndValidImplyGrant_A 660562094 7525 0 0
ReqAndReadyImplyGrant_A 660562094 7525 0 0
ReqImpliesValid_A 660562094 3015331 0 0
ValidKnown_A 660562094 660415981 0 0


CheckHotOne_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 660562094 660415981 0 0
T1 7243 7184 0 0
T2 2638 2551 0 0
T3 12805 12738 0 0
T4 225653 225571 0 0
T7 30458 30403 0 0
T9 3010 2842 0 0
T16 7768 7705 0 0
T30 103985 103921 0 0
T43 1521 1450 0 0
T44 5512 5419 0 0

CheckNGreaterZero_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 669 669 0 0
T1 1 1 0 0
T2 1 1 0 0
T3 1 1 0 0
T4 1 1 0 0
T7 1 1 0 0
T9 1 1 0 0
T16 1 1 0 0
T30 1 1 0 0
T43 1 1 0 0
T44 1 1 0 0

GntImpliesReady_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 660562094 7525 0 0
T4 225653 75 0 0
T5 0 187 0 0
T6 0 90 0 0
T7 30458 3 0 0
T8 0 9 0 0
T10 2586 0 0 0
T11 0 1 0 0
T12 0 13 0 0
T13 0 2 0 0
T16 7768 0 0 0
T17 0 10 0 0
T30 103985 0 0 0
T42 237952 0 0 0
T44 5512 0 0 0
T45 3802 0 0 0
T46 2369 0 0 0
T47 212216 0 0 0
T48 0 2 0 0

GntImpliesValid_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 660562094 7525 0 0
T4 225653 75 0 0
T5 0 187 0 0
T6 0 90 0 0
T7 30458 3 0 0
T8 0 9 0 0
T10 2586 0 0 0
T11 0 1 0 0
T12 0 13 0 0
T13 0 2 0 0
T16 7768 0 0 0
T17 0 10 0 0
T30 103985 0 0 0
T42 237952 0 0 0
T44 5512 0 0 0
T45 3802 0 0 0
T46 2369 0 0 0
T47 212216 0 0 0
T48 0 2 0 0

GrantKnown_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 660562094 660415981 0 0
T1 7243 7184 0 0
T2 2638 2551 0 0
T3 12805 12738 0 0
T4 225653 225571 0 0
T7 30458 30403 0 0
T9 3010 2842 0 0
T16 7768 7705 0 0
T30 103985 103921 0 0
T43 1521 1450 0 0
T44 5512 5419 0 0

IdxKnown_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 660562094 660415981 0 0
T1 7243 7184 0 0
T2 2638 2551 0 0
T3 12805 12738 0 0
T4 225653 225571 0 0
T7 30458 30403 0 0
T9 3010 2842 0 0
T16 7768 7705 0 0
T30 103985 103921 0 0
T43 1521 1450 0 0
T44 5512 5419 0 0

IndexIsCorrect_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 660562094 7525 0 0
T4 225653 75 0 0
T5 0 187 0 0
T6 0 90 0 0
T7 30458 3 0 0
T8 0 9 0 0
T10 2586 0 0 0
T11 0 1 0 0
T12 0 13 0 0
T13 0 2 0 0
T16 7768 0 0 0
T17 0 10 0 0
T30 103985 0 0 0
T42 237952 0 0 0
T44 5512 0 0 0
T45 3802 0 0 0
T46 2369 0 0 0
T47 212216 0 0 0
T48 0 2 0 0

NoReadyValidNoGrant_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 660562094 657400650 0 0
T1 7243 7184 0 0
T2 2638 2551 0 0
T3 12805 12738 0 0
T4 225653 212938 0 0
T7 30458 30312 0 0
T9 3010 1647 0 0
T16 7768 7705 0 0
T30 103985 103921 0 0
T43 1521 1450 0 0
T44 5512 5419 0 0

Priority_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 660562094 3015331 0 0
T4 225653 12633 0 0
T7 30458 91 0 0
T8 0 552 0 0
T9 3010 1195 0 0
T10 0 1558 0 0
T11 0 35 0 0
T12 0 2128 0 0
T13 0 128 0 0
T16 7768 0 0 0
T18 0 406089 0 0
T30 103985 0 0 0
T39 0 218570 0 0
T42 237952 0 0 0
T43 1521 0 0 0
T44 5512 0 0 0
T45 3802 0 0 0
T46 2369 0 0 0

ReadyAndValidImplyGrant_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 660562094 7525 0 0
T4 225653 75 0 0
T5 0 187 0 0
T6 0 90 0 0
T7 30458 3 0 0
T8 0 9 0 0
T10 2586 0 0 0
T11 0 1 0 0
T12 0 13 0 0
T13 0 2 0 0
T16 7768 0 0 0
T17 0 10 0 0
T30 103985 0 0 0
T42 237952 0 0 0
T44 5512 0 0 0
T45 3802 0 0 0
T46 2369 0 0 0
T47 212216 0 0 0
T48 0 2 0 0

ReqAndReadyImplyGrant_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 660562094 7525 0 0
T4 225653 75 0 0
T5 0 187 0 0
T6 0 90 0 0
T7 30458 3 0 0
T8 0 9 0 0
T10 2586 0 0 0
T11 0 1 0 0
T12 0 13 0 0
T13 0 2 0 0
T16 7768 0 0 0
T17 0 10 0 0
T30 103985 0 0 0
T42 237952 0 0 0
T44 5512 0 0 0
T45 3802 0 0 0
T46 2369 0 0 0
T47 212216 0 0 0
T48 0 2 0 0

ReqImpliesValid_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 660562094 3015331 0 0
T4 225653 12633 0 0
T7 30458 91 0 0
T8 0 552 0 0
T9 3010 1195 0 0
T10 0 1558 0 0
T11 0 35 0 0
T12 0 2128 0 0
T13 0 128 0 0
T16 7768 0 0 0
T18 0 406089 0 0
T30 103985 0 0 0
T39 0 218570 0 0
T42 237952 0 0 0
T43 1521 0 0 0
T44 5512 0 0 0
T45 3802 0 0 0
T46 2369 0 0 0

ValidKnown_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 660562094 660415981 0 0
T1 7243 7184 0 0
T2 2638 2551 0 0
T3 12805 12738 0 0
T4 225653 225571 0 0
T7 30458 30403 0 0
T9 3010 2842 0 0
T16 7768 7705 0 0
T30 103985 103921 0 0
T43 1521 1450 0 0
T44 5512 5419 0 0

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