Line Coverage for Instance : tb.dut.top_earlgrey.u_rv_plic.u_reg.u_ie0_0_e_11
 | Line No. | Total | Covered | Percent | 
| TOTAL |  | 7 | 7 | 100.00 | 
| ALWAYS | 56 | 4 | 4 | 100.00 | 
| CONT_ASSIGN | 64 | 1 | 1 | 100.00 | 
| CONT_ASSIGN | 65 | 1 | 1 | 100.00 | 
| CONT_ASSIGN | 72 | 1 | 1 | 100.00 | 
55                        always_ff @(posedge clk_i or negedge rst_ni) begin
56         1/1              if (!rst_ni) begin
           Tests:       T1 T2 T3 
57         1/1                q <= RESVAL;
           Tests:       T1 T2 T3 
58         1/1              end else if (wr_en) begin
           Tests:       T1 T2 T3 
59         1/1                q <= wr_data;
           Tests:       T30 T28 T128 
60                          end
                        MISSING_ELSE
61                        end
62                      
63                        // feed back out for consolidation
64         1/1            assign ds = wr_en ? wr_data : qs;
           Tests:       T30 T28 T128 
65         1/1            assign qe = wr_en;
           Tests:       T30 T28 T128 
66                      
67                        if (SwAccess == SwAccessRC) begin : gen_rc
68                          // In case of a SW RC colliding with a HW write, SW gets the value written by HW
69                          // but the register is cleared to 0. See #5416 for a discussion.
70                          assign qs = de && we ? d : q;
71                        end else begin : gen_no_rc
72         1/1              assign qs = q;
           Tests:       T129 T130 T131 
Cond Coverage for Instance : tb.dut.top_earlgrey.u_rv_plic.u_reg.u_ie0_0_e_11
 | Total | Covered | Percent | 
| Conditions | 2 | 2 | 100.00 | 
| Logical | 2 | 2 | 100.00 | 
| Non-Logical | 0 | 0 |  | 
| Event | 0 | 0 |  | 
 LINE       64
 EXPRESSION (wr_en ? wr_data : qs)
             --1--
| -1- | Status | Tests |                       
| 0 | Covered | T1,T2,T3 | 
| 1 | Covered | T30,T28,T128 | 
Branch Coverage for Instance : tb.dut.top_earlgrey.u_rv_plic.u_reg.u_ie0_0_e_11
 | Line No. | Total | Covered | Percent | 
| Branches | 
 | 
5 | 
5 | 
100.00 | 
| TERNARY | 
64 | 
2 | 
2 | 
100.00 | 
| IF | 
56 | 
3 | 
3 | 
100.00 | 
64           assign ds = wr_en ? wr_data : qs;
                               -1-  
                               ==>  
                               ==>  
Branches:
| -1- | Status | Tests | 
| 1 | 
Covered | 
T30,T28,T128 | 
| 0 | 
Covered | 
T1,T2,T3 | 
56             if (!rst_ni) begin
               -1-  
57               q <= RESVAL;
                 ==>
58             end else if (wr_en) begin
                        -2-  
59               q <= wr_data;
                 ==>
60             end
               MISSING_ELSE
               ==>
Branches:
| -1- | -2- | Status | Tests | 
| 1 | 
- | 
Covered | 
T1,T2,T3 | 
| 0 | 
1 | 
Covered | 
T30,T28,T128 | 
| 0 | 
0 | 
Covered | 
T1,T2,T3 | 
 
Line Coverage for Instance : tb.dut.top_earlgrey.u_rv_plic.u_reg.u_ie0_0_e_12
 | Line No. | Total | Covered | Percent | 
| TOTAL |  | 7 | 7 | 100.00 | 
| ALWAYS | 56 | 4 | 4 | 100.00 | 
| CONT_ASSIGN | 64 | 1 | 1 | 100.00 | 
| CONT_ASSIGN | 65 | 1 | 1 | 100.00 | 
| CONT_ASSIGN | 72 | 1 | 1 | 100.00 | 
55                        always_ff @(posedge clk_i or negedge rst_ni) begin
56         1/1              if (!rst_ni) begin
           Tests:       T1 T2 T3 
57         1/1                q <= RESVAL;
           Tests:       T1 T2 T3 
58         1/1              end else if (wr_en) begin
           Tests:       T1 T2 T3 
59         1/1                q <= wr_data;
           Tests:       T30 T28 T128 
60                          end
                        MISSING_ELSE
61                        end
62                      
63                        // feed back out for consolidation
64         1/1            assign ds = wr_en ? wr_data : qs;
           Tests:       T30 T28 T128 
65         1/1            assign qe = wr_en;
           Tests:       T30 T28 T128 
66                      
67                        if (SwAccess == SwAccessRC) begin : gen_rc
68                          // In case of a SW RC colliding with a HW write, SW gets the value written by HW
69                          // but the register is cleared to 0. See #5416 for a discussion.
70                          assign qs = de && we ? d : q;
71                        end else begin : gen_no_rc
72         1/1              assign qs = q;
           Tests:       T129 T130 T131 
Cond Coverage for Instance : tb.dut.top_earlgrey.u_rv_plic.u_reg.u_ie0_0_e_12
 | Total | Covered | Percent | 
| Conditions | 2 | 2 | 100.00 | 
| Logical | 2 | 2 | 100.00 | 
| Non-Logical | 0 | 0 |  | 
| Event | 0 | 0 |  | 
 LINE       64
 EXPRESSION (wr_en ? wr_data : qs)
             --1--
| -1- | Status | Tests |                       
| 0 | Covered | T1,T2,T3 | 
| 1 | Covered | T30,T28,T128 | 
Branch Coverage for Instance : tb.dut.top_earlgrey.u_rv_plic.u_reg.u_ie0_0_e_12
 | Line No. | Total | Covered | Percent | 
| Branches | 
 | 
5 | 
5 | 
100.00 | 
| TERNARY | 
64 | 
2 | 
2 | 
100.00 | 
| IF | 
56 | 
3 | 
3 | 
100.00 | 
64           assign ds = wr_en ? wr_data : qs;
                               -1-  
                               ==>  
                               ==>  
Branches:
| -1- | Status | Tests | 
| 1 | 
Covered | 
T30,T28,T128 | 
| 0 | 
Covered | 
T1,T2,T3 | 
56             if (!rst_ni) begin
               -1-  
57               q <= RESVAL;
                 ==>
58             end else if (wr_en) begin
                        -2-  
59               q <= wr_data;
                 ==>
60             end
               MISSING_ELSE
               ==>
Branches:
| -1- | -2- | Status | Tests | 
| 1 | 
- | 
Covered | 
T1,T2,T3 | 
| 0 | 
1 | 
Covered | 
T30,T28,T128 | 
| 0 | 
0 | 
Covered | 
T1,T2,T3 | 
 
Line Coverage for Instance : tb.dut.top_earlgrey.u_rv_plic.u_reg.u_ie0_0_e_13
 | Line No. | Total | Covered | Percent | 
| TOTAL |  | 7 | 7 | 100.00 | 
| ALWAYS | 56 | 4 | 4 | 100.00 | 
| CONT_ASSIGN | 64 | 1 | 1 | 100.00 | 
| CONT_ASSIGN | 65 | 1 | 1 | 100.00 | 
| CONT_ASSIGN | 72 | 1 | 1 | 100.00 | 
55                        always_ff @(posedge clk_i or negedge rst_ni) begin
56         1/1              if (!rst_ni) begin
           Tests:       T1 T2 T3 
57         1/1                q <= RESVAL;
           Tests:       T1 T2 T3 
58         1/1              end else if (wr_en) begin
           Tests:       T1 T2 T3 
59         1/1                q <= wr_data;
           Tests:       T30 T28 T128 
60                          end
                        MISSING_ELSE
61                        end
62                      
63                        // feed back out for consolidation
64         1/1            assign ds = wr_en ? wr_data : qs;
           Tests:       T30 T28 T128 
65         1/1            assign qe = wr_en;
           Tests:       T30 T28 T128 
66                      
67                        if (SwAccess == SwAccessRC) begin : gen_rc
68                          // In case of a SW RC colliding with a HW write, SW gets the value written by HW
69                          // but the register is cleared to 0. See #5416 for a discussion.
70                          assign qs = de && we ? d : q;
71                        end else begin : gen_no_rc
72         1/1              assign qs = q;
           Tests:       T129 T130 T131 
Cond Coverage for Instance : tb.dut.top_earlgrey.u_rv_plic.u_reg.u_ie0_0_e_13
 | Total | Covered | Percent | 
| Conditions | 2 | 2 | 100.00 | 
| Logical | 2 | 2 | 100.00 | 
| Non-Logical | 0 | 0 |  | 
| Event | 0 | 0 |  | 
 LINE       64
 EXPRESSION (wr_en ? wr_data : qs)
             --1--
| -1- | Status | Tests |                       
| 0 | Covered | T1,T2,T3 | 
| 1 | Covered | T30,T28,T128 | 
Branch Coverage for Instance : tb.dut.top_earlgrey.u_rv_plic.u_reg.u_ie0_0_e_13
 | Line No. | Total | Covered | Percent | 
| Branches | 
 | 
5 | 
5 | 
100.00 | 
| TERNARY | 
64 | 
2 | 
2 | 
100.00 | 
| IF | 
56 | 
3 | 
3 | 
100.00 | 
64           assign ds = wr_en ? wr_data : qs;
                               -1-  
                               ==>  
                               ==>  
Branches:
| -1- | Status | Tests | 
| 1 | 
Covered | 
T30,T28,T128 | 
| 0 | 
Covered | 
T1,T2,T3 | 
56             if (!rst_ni) begin
               -1-  
57               q <= RESVAL;
                 ==>
58             end else if (wr_en) begin
                        -2-  
59               q <= wr_data;
                 ==>
60             end
               MISSING_ELSE
               ==>
Branches:
| -1- | -2- | Status | Tests | 
| 1 | 
- | 
Covered | 
T1,T2,T3 | 
| 0 | 
1 | 
Covered | 
T30,T28,T128 | 
| 0 | 
0 | 
Covered | 
T1,T2,T3 | 
 
Line Coverage for Instance : tb.dut.top_earlgrey.u_rv_plic.u_reg.u_ie0_0_e_14
 | Line No. | Total | Covered | Percent | 
| TOTAL |  | 7 | 7 | 100.00 | 
| ALWAYS | 56 | 4 | 4 | 100.00 | 
| CONT_ASSIGN | 64 | 1 | 1 | 100.00 | 
| CONT_ASSIGN | 65 | 1 | 1 | 100.00 | 
| CONT_ASSIGN | 72 | 1 | 1 | 100.00 | 
55                        always_ff @(posedge clk_i or negedge rst_ni) begin
56         1/1              if (!rst_ni) begin
           Tests:       T1 T2 T3 
57         1/1                q <= RESVAL;
           Tests:       T1 T2 T3 
58         1/1              end else if (wr_en) begin
           Tests:       T1 T2 T3 
59         1/1                q <= wr_data;
           Tests:       T30 T28 T128 
60                          end
                        MISSING_ELSE
61                        end
62                      
63                        // feed back out for consolidation
64         1/1            assign ds = wr_en ? wr_data : qs;
           Tests:       T30 T28 T128 
65         1/1            assign qe = wr_en;
           Tests:       T30 T28 T128 
66                      
67                        if (SwAccess == SwAccessRC) begin : gen_rc
68                          // In case of a SW RC colliding with a HW write, SW gets the value written by HW
69                          // but the register is cleared to 0. See #5416 for a discussion.
70                          assign qs = de && we ? d : q;
71                        end else begin : gen_no_rc
72         1/1              assign qs = q;
           Tests:       T129 T130 T131 
Cond Coverage for Instance : tb.dut.top_earlgrey.u_rv_plic.u_reg.u_ie0_0_e_14
 | Total | Covered | Percent | 
| Conditions | 2 | 2 | 100.00 | 
| Logical | 2 | 2 | 100.00 | 
| Non-Logical | 0 | 0 |  | 
| Event | 0 | 0 |  | 
 LINE       64
 EXPRESSION (wr_en ? wr_data : qs)
             --1--
| -1- | Status | Tests |                       
| 0 | Covered | T1,T2,T3 | 
| 1 | Covered | T30,T28,T128 | 
Branch Coverage for Instance : tb.dut.top_earlgrey.u_rv_plic.u_reg.u_ie0_0_e_14
 | Line No. | Total | Covered | Percent | 
| Branches | 
 | 
5 | 
5 | 
100.00 | 
| TERNARY | 
64 | 
2 | 
2 | 
100.00 | 
| IF | 
56 | 
3 | 
3 | 
100.00 | 
64           assign ds = wr_en ? wr_data : qs;
                               -1-  
                               ==>  
                               ==>  
Branches:
| -1- | Status | Tests | 
| 1 | 
Covered | 
T30,T28,T128 | 
| 0 | 
Covered | 
T1,T2,T3 | 
56             if (!rst_ni) begin
               -1-  
57               q <= RESVAL;
                 ==>
58             end else if (wr_en) begin
                        -2-  
59               q <= wr_data;
                 ==>
60             end
               MISSING_ELSE
               ==>
Branches:
| -1- | -2- | Status | Tests | 
| 1 | 
- | 
Covered | 
T1,T2,T3 | 
| 0 | 
1 | 
Covered | 
T30,T28,T128 | 
| 0 | 
0 | 
Covered | 
T1,T2,T3 | 
 
Line Coverage for Instance : tb.dut.top_earlgrey.u_rv_plic.u_reg.u_ie0_0_e_15
 | Line No. | Total | Covered | Percent | 
| TOTAL |  | 7 | 7 | 100.00 | 
| ALWAYS | 56 | 4 | 4 | 100.00 | 
| CONT_ASSIGN | 64 | 1 | 1 | 100.00 | 
| CONT_ASSIGN | 65 | 1 | 1 | 100.00 | 
| CONT_ASSIGN | 72 | 1 | 1 | 100.00 | 
55                        always_ff @(posedge clk_i or negedge rst_ni) begin
56         1/1              if (!rst_ni) begin
           Tests:       T1 T2 T3 
57         1/1                q <= RESVAL;
           Tests:       T1 T2 T3 
58         1/1              end else if (wr_en) begin
           Tests:       T1 T2 T3 
59         1/1                q <= wr_data;
           Tests:       T30 T28 T128 
60                          end
                        MISSING_ELSE
61                        end
62                      
63                        // feed back out for consolidation
64         1/1            assign ds = wr_en ? wr_data : qs;
           Tests:       T30 T28 T128 
65         1/1            assign qe = wr_en;
           Tests:       T30 T28 T128 
66                      
67                        if (SwAccess == SwAccessRC) begin : gen_rc
68                          // In case of a SW RC colliding with a HW write, SW gets the value written by HW
69                          // but the register is cleared to 0. See #5416 for a discussion.
70                          assign qs = de && we ? d : q;
71                        end else begin : gen_no_rc
72         1/1              assign qs = q;
           Tests:       T129 T130 T131 
Cond Coverage for Instance : tb.dut.top_earlgrey.u_rv_plic.u_reg.u_ie0_0_e_15
 | Total | Covered | Percent | 
| Conditions | 2 | 2 | 100.00 | 
| Logical | 2 | 2 | 100.00 | 
| Non-Logical | 0 | 0 |  | 
| Event | 0 | 0 |  | 
 LINE       64
 EXPRESSION (wr_en ? wr_data : qs)
             --1--
| -1- | Status | Tests |                       
| 0 | Covered | T1,T2,T3 | 
| 1 | Covered | T30,T28,T128 | 
Branch Coverage for Instance : tb.dut.top_earlgrey.u_rv_plic.u_reg.u_ie0_0_e_15
 | Line No. | Total | Covered | Percent | 
| Branches | 
 | 
5 | 
5 | 
100.00 | 
| TERNARY | 
64 | 
2 | 
2 | 
100.00 | 
| IF | 
56 | 
3 | 
3 | 
100.00 | 
64           assign ds = wr_en ? wr_data : qs;
                               -1-  
                               ==>  
                               ==>  
Branches:
| -1- | Status | Tests | 
| 1 | 
Covered | 
T30,T28,T128 | 
| 0 | 
Covered | 
T1,T2,T3 | 
56             if (!rst_ni) begin
               -1-  
57               q <= RESVAL;
                 ==>
58             end else if (wr_en) begin
                        -2-  
59               q <= wr_data;
                 ==>
60             end
               MISSING_ELSE
               ==>
Branches:
| -1- | -2- | Status | Tests | 
| 1 | 
- | 
Covered | 
T1,T2,T3 | 
| 0 | 
1 | 
Covered | 
T30,T28,T128 | 
| 0 | 
0 | 
Covered | 
T1,T2,T3 | 
 
Line Coverage for Instance : tb.dut.top_earlgrey.u_rv_plic.u_reg.u_ie0_0_e_16
 | Line No. | Total | Covered | Percent | 
| TOTAL |  | 7 | 7 | 100.00 | 
| ALWAYS | 56 | 4 | 4 | 100.00 | 
| CONT_ASSIGN | 64 | 1 | 1 | 100.00 | 
| CONT_ASSIGN | 65 | 1 | 1 | 100.00 | 
| CONT_ASSIGN | 72 | 1 | 1 | 100.00 | 
55                        always_ff @(posedge clk_i or negedge rst_ni) begin
56         1/1              if (!rst_ni) begin
           Tests:       T1 T2 T3 
57         1/1                q <= RESVAL;
           Tests:       T1 T2 T3 
58         1/1              end else if (wr_en) begin
           Tests:       T1 T2 T3 
59         1/1                q <= wr_data;
           Tests:       T30 T28 T128 
60                          end
                        MISSING_ELSE
61                        end
62                      
63                        // feed back out for consolidation
64         1/1            assign ds = wr_en ? wr_data : qs;
           Tests:       T30 T28 T128 
65         1/1            assign qe = wr_en;
           Tests:       T30 T28 T128 
66                      
67                        if (SwAccess == SwAccessRC) begin : gen_rc
68                          // In case of a SW RC colliding with a HW write, SW gets the value written by HW
69                          // but the register is cleared to 0. See #5416 for a discussion.
70                          assign qs = de && we ? d : q;
71                        end else begin : gen_no_rc
72         1/1              assign qs = q;
           Tests:       T129 T130 T131 
Cond Coverage for Instance : tb.dut.top_earlgrey.u_rv_plic.u_reg.u_ie0_0_e_16
 | Total | Covered | Percent | 
| Conditions | 2 | 2 | 100.00 | 
| Logical | 2 | 2 | 100.00 | 
| Non-Logical | 0 | 0 |  | 
| Event | 0 | 0 |  | 
 LINE       64
 EXPRESSION (wr_en ? wr_data : qs)
             --1--
| -1- | Status | Tests |                       
| 0 | Covered | T1,T2,T3 | 
| 1 | Covered | T30,T28,T128 | 
Branch Coverage for Instance : tb.dut.top_earlgrey.u_rv_plic.u_reg.u_ie0_0_e_16
 | Line No. | Total | Covered | Percent | 
| Branches | 
 | 
5 | 
5 | 
100.00 | 
| TERNARY | 
64 | 
2 | 
2 | 
100.00 | 
| IF | 
56 | 
3 | 
3 | 
100.00 | 
64           assign ds = wr_en ? wr_data : qs;
                               -1-  
                               ==>  
                               ==>  
Branches:
| -1- | Status | Tests | 
| 1 | 
Covered | 
T30,T28,T128 | 
| 0 | 
Covered | 
T1,T2,T3 | 
56             if (!rst_ni) begin
               -1-  
57               q <= RESVAL;
                 ==>
58             end else if (wr_en) begin
                        -2-  
59               q <= wr_data;
                 ==>
60             end
               MISSING_ELSE
               ==>
Branches:
| -1- | -2- | Status | Tests | 
| 1 | 
- | 
Covered | 
T1,T2,T3 | 
| 0 | 
1 | 
Covered | 
T30,T28,T128 | 
| 0 | 
0 | 
Covered | 
T1,T2,T3 | 
 
Line Coverage for Instance : tb.dut.top_earlgrey.u_rv_plic.u_reg.u_ie0_0_e_17
 | Line No. | Total | Covered | Percent | 
| TOTAL |  | 7 | 7 | 100.00 | 
| ALWAYS | 56 | 4 | 4 | 100.00 | 
| CONT_ASSIGN | 64 | 1 | 1 | 100.00 | 
| CONT_ASSIGN | 65 | 1 | 1 | 100.00 | 
| CONT_ASSIGN | 72 | 1 | 1 | 100.00 | 
55                        always_ff @(posedge clk_i or negedge rst_ni) begin
56         1/1              if (!rst_ni) begin
           Tests:       T1 T2 T3 
57         1/1                q <= RESVAL;
           Tests:       T1 T2 T3 
58         1/1              end else if (wr_en) begin
           Tests:       T1 T2 T3 
59         1/1                q <= wr_data;
           Tests:       T30 T28 T128 
60                          end
                        MISSING_ELSE
61                        end
62                      
63                        // feed back out for consolidation
64         1/1            assign ds = wr_en ? wr_data : qs;
           Tests:       T30 T28 T128 
65         1/1            assign qe = wr_en;
           Tests:       T30 T28 T128 
66                      
67                        if (SwAccess == SwAccessRC) begin : gen_rc
68                          // In case of a SW RC colliding with a HW write, SW gets the value written by HW
69                          // but the register is cleared to 0. See #5416 for a discussion.
70                          assign qs = de && we ? d : q;
71                        end else begin : gen_no_rc
72         1/1              assign qs = q;
           Tests:       T129 T130 T131 
Cond Coverage for Instance : tb.dut.top_earlgrey.u_rv_plic.u_reg.u_ie0_0_e_17
 | Total | Covered | Percent | 
| Conditions | 2 | 2 | 100.00 | 
| Logical | 2 | 2 | 100.00 | 
| Non-Logical | 0 | 0 |  | 
| Event | 0 | 0 |  | 
 LINE       64
 EXPRESSION (wr_en ? wr_data : qs)
             --1--
| -1- | Status | Tests |                       
| 0 | Covered | T1,T2,T3 | 
| 1 | Covered | T30,T28,T128 | 
Branch Coverage for Instance : tb.dut.top_earlgrey.u_rv_plic.u_reg.u_ie0_0_e_17
 | Line No. | Total | Covered | Percent | 
| Branches | 
 | 
5 | 
5 | 
100.00 | 
| TERNARY | 
64 | 
2 | 
2 | 
100.00 | 
| IF | 
56 | 
3 | 
3 | 
100.00 | 
64           assign ds = wr_en ? wr_data : qs;
                               -1-  
                               ==>  
                               ==>  
Branches:
| -1- | Status | Tests | 
| 1 | 
Covered | 
T30,T28,T128 | 
| 0 | 
Covered | 
T1,T2,T3 | 
56             if (!rst_ni) begin
               -1-  
57               q <= RESVAL;
                 ==>
58             end else if (wr_en) begin
                        -2-  
59               q <= wr_data;
                 ==>
60             end
               MISSING_ELSE
               ==>
Branches:
| -1- | -2- | Status | Tests | 
| 1 | 
- | 
Covered | 
T1,T2,T3 | 
| 0 | 
1 | 
Covered | 
T30,T28,T128 | 
| 0 | 
0 | 
Covered | 
T1,T2,T3 | 
 
Line Coverage for Instance : tb.dut.top_earlgrey.u_rv_plic.u_reg.u_ie0_0_e_18
 | Line No. | Total | Covered | Percent | 
| TOTAL |  | 7 | 7 | 100.00 | 
| ALWAYS | 56 | 4 | 4 | 100.00 | 
| CONT_ASSIGN | 64 | 1 | 1 | 100.00 | 
| CONT_ASSIGN | 65 | 1 | 1 | 100.00 | 
| CONT_ASSIGN | 72 | 1 | 1 | 100.00 | 
55                        always_ff @(posedge clk_i or negedge rst_ni) begin
56         1/1              if (!rst_ni) begin
           Tests:       T1 T2 T3 
57         1/1                q <= RESVAL;
           Tests:       T1 T2 T3 
58         1/1              end else if (wr_en) begin
           Tests:       T1 T2 T3 
59         1/1                q <= wr_data;
           Tests:       T30 T28 T128 
60                          end
                        MISSING_ELSE
61                        end
62                      
63                        // feed back out for consolidation
64         1/1            assign ds = wr_en ? wr_data : qs;
           Tests:       T30 T28 T128 
65         1/1            assign qe = wr_en;
           Tests:       T30 T28 T128 
66                      
67                        if (SwAccess == SwAccessRC) begin : gen_rc
68                          // In case of a SW RC colliding with a HW write, SW gets the value written by HW
69                          // but the register is cleared to 0. See #5416 for a discussion.
70                          assign qs = de && we ? d : q;
71                        end else begin : gen_no_rc
72         1/1              assign qs = q;
           Tests:       T129 T130 T131 
Cond Coverage for Instance : tb.dut.top_earlgrey.u_rv_plic.u_reg.u_ie0_0_e_18
 | Total | Covered | Percent | 
| Conditions | 2 | 2 | 100.00 | 
| Logical | 2 | 2 | 100.00 | 
| Non-Logical | 0 | 0 |  | 
| Event | 0 | 0 |  | 
 LINE       64
 EXPRESSION (wr_en ? wr_data : qs)
             --1--
| -1- | Status | Tests |                       
| 0 | Covered | T1,T2,T3 | 
| 1 | Covered | T30,T28,T128 | 
Branch Coverage for Instance : tb.dut.top_earlgrey.u_rv_plic.u_reg.u_ie0_0_e_18
 | Line No. | Total | Covered | Percent | 
| Branches | 
 | 
5 | 
5 | 
100.00 | 
| TERNARY | 
64 | 
2 | 
2 | 
100.00 | 
| IF | 
56 | 
3 | 
3 | 
100.00 | 
64           assign ds = wr_en ? wr_data : qs;
                               -1-  
                               ==>  
                               ==>  
Branches:
| -1- | Status | Tests | 
| 1 | 
Covered | 
T30,T28,T128 | 
| 0 | 
Covered | 
T1,T2,T3 | 
56             if (!rst_ni) begin
               -1-  
57               q <= RESVAL;
                 ==>
58             end else if (wr_en) begin
                        -2-  
59               q <= wr_data;
                 ==>
60             end
               MISSING_ELSE
               ==>
Branches:
| -1- | -2- | Status | Tests | 
| 1 | 
- | 
Covered | 
T1,T2,T3 | 
| 0 | 
1 | 
Covered | 
T30,T28,T128 | 
| 0 | 
0 | 
Covered | 
T1,T2,T3 | 
 
Line Coverage for Instance : tb.dut.top_earlgrey.u_rv_plic.u_reg.u_ie0_0_e_19
 | Line No. | Total | Covered | Percent | 
| TOTAL |  | 7 | 7 | 100.00 | 
| ALWAYS | 56 | 4 | 4 | 100.00 | 
| CONT_ASSIGN | 64 | 1 | 1 | 100.00 | 
| CONT_ASSIGN | 65 | 1 | 1 | 100.00 | 
| CONT_ASSIGN | 72 | 1 | 1 | 100.00 | 
55                        always_ff @(posedge clk_i or negedge rst_ni) begin
56         1/1              if (!rst_ni) begin
           Tests:       T1 T2 T3 
57         1/1                q <= RESVAL;
           Tests:       T1 T2 T3 
58         1/1              end else if (wr_en) begin
           Tests:       T1 T2 T3 
59         1/1                q <= wr_data;
           Tests:       T30 T28 T128 
60                          end
                        MISSING_ELSE
61                        end
62                      
63                        // feed back out for consolidation
64         1/1            assign ds = wr_en ? wr_data : qs;
           Tests:       T30 T28 T128 
65         1/1            assign qe = wr_en;
           Tests:       T30 T28 T128 
66                      
67                        if (SwAccess == SwAccessRC) begin : gen_rc
68                          // In case of a SW RC colliding with a HW write, SW gets the value written by HW
69                          // but the register is cleared to 0. See #5416 for a discussion.
70                          assign qs = de && we ? d : q;
71                        end else begin : gen_no_rc
72         1/1              assign qs = q;
           Tests:       T30 T275 T124 
Cond Coverage for Instance : tb.dut.top_earlgrey.u_rv_plic.u_reg.u_ie0_0_e_19
 | Total | Covered | Percent | 
| Conditions | 2 | 2 | 100.00 | 
| Logical | 2 | 2 | 100.00 | 
| Non-Logical | 0 | 0 |  | 
| Event | 0 | 0 |  | 
 LINE       64
 EXPRESSION (wr_en ? wr_data : qs)
             --1--
| -1- | Status | Tests |                       
| 0 | Covered | T1,T2,T3 | 
| 1 | Covered | T30,T28,T128 | 
Branch Coverage for Instance : tb.dut.top_earlgrey.u_rv_plic.u_reg.u_ie0_0_e_19
 | Line No. | Total | Covered | Percent | 
| Branches | 
 | 
5 | 
5 | 
100.00 | 
| TERNARY | 
64 | 
2 | 
2 | 
100.00 | 
| IF | 
56 | 
3 | 
3 | 
100.00 | 
64           assign ds = wr_en ? wr_data : qs;
                               -1-  
                               ==>  
                               ==>  
Branches:
| -1- | Status | Tests | 
| 1 | 
Covered | 
T30,T28,T128 | 
| 0 | 
Covered | 
T1,T2,T3 | 
56             if (!rst_ni) begin
               -1-  
57               q <= RESVAL;
                 ==>
58             end else if (wr_en) begin
                        -2-  
59               q <= wr_data;
                 ==>
60             end
               MISSING_ELSE
               ==>
Branches:
| -1- | -2- | Status | Tests | 
| 1 | 
- | 
Covered | 
T1,T2,T3 | 
| 0 | 
1 | 
Covered | 
T30,T28,T128 | 
| 0 | 
0 | 
Covered | 
T1,T2,T3 | 
 
Line Coverage for Instance : tb.dut.top_earlgrey.u_rv_plic.u_reg.u_ie0_0_e_20
 | Line No. | Total | Covered | Percent | 
| TOTAL |  | 7 | 7 | 100.00 | 
| ALWAYS | 56 | 4 | 4 | 100.00 | 
| CONT_ASSIGN | 64 | 1 | 1 | 100.00 | 
| CONT_ASSIGN | 65 | 1 | 1 | 100.00 | 
| CONT_ASSIGN | 72 | 1 | 1 | 100.00 | 
55                        always_ff @(posedge clk_i or negedge rst_ni) begin
56         1/1              if (!rst_ni) begin
           Tests:       T1 T2 T3 
57         1/1                q <= RESVAL;
           Tests:       T1 T2 T3 
58         1/1              end else if (wr_en) begin
           Tests:       T1 T2 T3 
59         1/1                q <= wr_data;
           Tests:       T30 T28 T128 
60                          end
                        MISSING_ELSE
61                        end
62                      
63                        // feed back out for consolidation
64         1/1            assign ds = wr_en ? wr_data : qs;
           Tests:       T30 T28 T128 
65         1/1            assign qe = wr_en;
           Tests:       T30 T28 T128 
66                      
67                        if (SwAccess == SwAccessRC) begin : gen_rc
68                          // In case of a SW RC colliding with a HW write, SW gets the value written by HW
69                          // but the register is cleared to 0. See #5416 for a discussion.
70                          assign qs = de && we ? d : q;
71                        end else begin : gen_no_rc
72         1/1              assign qs = q;
           Tests:       T30 T275 T124 
Cond Coverage for Instance : tb.dut.top_earlgrey.u_rv_plic.u_reg.u_ie0_0_e_20
 | Total | Covered | Percent | 
| Conditions | 2 | 2 | 100.00 | 
| Logical | 2 | 2 | 100.00 | 
| Non-Logical | 0 | 0 |  | 
| Event | 0 | 0 |  | 
 LINE       64
 EXPRESSION (wr_en ? wr_data : qs)
             --1--
| -1- | Status | Tests |                       
| 0 | Covered | T1,T2,T3 | 
| 1 | Covered | T30,T28,T128 | 
Branch Coverage for Instance : tb.dut.top_earlgrey.u_rv_plic.u_reg.u_ie0_0_e_20
 | Line No. | Total | Covered | Percent | 
| Branches | 
 | 
5 | 
5 | 
100.00 | 
| TERNARY | 
64 | 
2 | 
2 | 
100.00 | 
| IF | 
56 | 
3 | 
3 | 
100.00 | 
64           assign ds = wr_en ? wr_data : qs;
                               -1-  
                               ==>  
                               ==>  
Branches:
| -1- | Status | Tests | 
| 1 | 
Covered | 
T30,T28,T128 | 
| 0 | 
Covered | 
T1,T2,T3 | 
56             if (!rst_ni) begin
               -1-  
57               q <= RESVAL;
                 ==>
58             end else if (wr_en) begin
                        -2-  
59               q <= wr_data;
                 ==>
60             end
               MISSING_ELSE
               ==>
Branches:
| -1- | -2- | Status | Tests | 
| 1 | 
- | 
Covered | 
T1,T2,T3 | 
| 0 | 
1 | 
Covered | 
T30,T28,T128 | 
| 0 | 
0 | 
Covered | 
T1,T2,T3 | 
 
Line Coverage for Instance : tb.dut.top_earlgrey.u_rv_plic.u_reg.u_ie0_0_e_21
 | Line No. | Total | Covered | Percent | 
| TOTAL |  | 7 | 7 | 100.00 | 
| ALWAYS | 56 | 4 | 4 | 100.00 | 
| CONT_ASSIGN | 64 | 1 | 1 | 100.00 | 
| CONT_ASSIGN | 65 | 1 | 1 | 100.00 | 
| CONT_ASSIGN | 72 | 1 | 1 | 100.00 | 
55                        always_ff @(posedge clk_i or negedge rst_ni) begin
56         1/1              if (!rst_ni) begin
           Tests:       T1 T2 T3 
57         1/1                q <= RESVAL;
           Tests:       T1 T2 T3 
58         1/1              end else if (wr_en) begin
           Tests:       T1 T2 T3 
59         1/1                q <= wr_data;
           Tests:       T30 T28 T128 
60                          end
                        MISSING_ELSE
61                        end
62                      
63                        // feed back out for consolidation
64         1/1            assign ds = wr_en ? wr_data : qs;
           Tests:       T30 T28 T128 
65         1/1            assign qe = wr_en;
           Tests:       T30 T28 T128 
66                      
67                        if (SwAccess == SwAccessRC) begin : gen_rc
68                          // In case of a SW RC colliding with a HW write, SW gets the value written by HW
69                          // but the register is cleared to 0. See #5416 for a discussion.
70                          assign qs = de && we ? d : q;
71                        end else begin : gen_no_rc
72         1/1              assign qs = q;
           Tests:       T30 T275 T124 
Cond Coverage for Instance : tb.dut.top_earlgrey.u_rv_plic.u_reg.u_ie0_0_e_21
 | Total | Covered | Percent | 
| Conditions | 2 | 2 | 100.00 | 
| Logical | 2 | 2 | 100.00 | 
| Non-Logical | 0 | 0 |  | 
| Event | 0 | 0 |  | 
 LINE       64
 EXPRESSION (wr_en ? wr_data : qs)
             --1--
| -1- | Status | Tests |                       
| 0 | Covered | T1,T2,T3 | 
| 1 | Covered | T30,T28,T128 | 
Branch Coverage for Instance : tb.dut.top_earlgrey.u_rv_plic.u_reg.u_ie0_0_e_21
 | Line No. | Total | Covered | Percent | 
| Branches | 
 | 
5 | 
5 | 
100.00 | 
| TERNARY | 
64 | 
2 | 
2 | 
100.00 | 
| IF | 
56 | 
3 | 
3 | 
100.00 | 
64           assign ds = wr_en ? wr_data : qs;
                               -1-  
                               ==>  
                               ==>  
Branches:
| -1- | Status | Tests | 
| 1 | 
Covered | 
T30,T28,T128 | 
| 0 | 
Covered | 
T1,T2,T3 | 
56             if (!rst_ni) begin
               -1-  
57               q <= RESVAL;
                 ==>
58             end else if (wr_en) begin
                        -2-  
59               q <= wr_data;
                 ==>
60             end
               MISSING_ELSE
               ==>
Branches:
| -1- | -2- | Status | Tests | 
| 1 | 
- | 
Covered | 
T1,T2,T3 | 
| 0 | 
1 | 
Covered | 
T30,T28,T128 | 
| 0 | 
0 | 
Covered | 
T1,T2,T3 | 
 
Line Coverage for Instance : tb.dut.top_earlgrey.u_rv_plic.u_reg.u_ie0_0_e_22
 | Line No. | Total | Covered | Percent | 
| TOTAL |  | 7 | 7 | 100.00 | 
| ALWAYS | 56 | 4 | 4 | 100.00 | 
| CONT_ASSIGN | 64 | 1 | 1 | 100.00 | 
| CONT_ASSIGN | 65 | 1 | 1 | 100.00 | 
| CONT_ASSIGN | 72 | 1 | 1 | 100.00 | 
55                        always_ff @(posedge clk_i or negedge rst_ni) begin
56         1/1              if (!rst_ni) begin
           Tests:       T1 T2 T3 
57         1/1                q <= RESVAL;
           Tests:       T1 T2 T3 
58         1/1              end else if (wr_en) begin
           Tests:       T1 T2 T3 
59         1/1                q <= wr_data;
           Tests:       T30 T28 T128 
60                          end
                        MISSING_ELSE
61                        end
62                      
63                        // feed back out for consolidation
64         1/1            assign ds = wr_en ? wr_data : qs;
           Tests:       T30 T28 T128 
65         1/1            assign qe = wr_en;
           Tests:       T30 T28 T128 
66                      
67                        if (SwAccess == SwAccessRC) begin : gen_rc
68                          // In case of a SW RC colliding with a HW write, SW gets the value written by HW
69                          // but the register is cleared to 0. See #5416 for a discussion.
70                          assign qs = de && we ? d : q;
71                        end else begin : gen_no_rc
72         1/1              assign qs = q;
           Tests:       T30 T275 T124 
Cond Coverage for Instance : tb.dut.top_earlgrey.u_rv_plic.u_reg.u_ie0_0_e_22
 | Total | Covered | Percent | 
| Conditions | 2 | 2 | 100.00 | 
| Logical | 2 | 2 | 100.00 | 
| Non-Logical | 0 | 0 |  | 
| Event | 0 | 0 |  | 
 LINE       64
 EXPRESSION (wr_en ? wr_data : qs)
             --1--
| -1- | Status | Tests |                       
| 0 | Covered | T1,T2,T3 | 
| 1 | Covered | T30,T28,T128 | 
Branch Coverage for Instance : tb.dut.top_earlgrey.u_rv_plic.u_reg.u_ie0_0_e_22
 | Line No. | Total | Covered | Percent | 
| Branches | 
 | 
5 | 
5 | 
100.00 | 
| TERNARY | 
64 | 
2 | 
2 | 
100.00 | 
| IF | 
56 | 
3 | 
3 | 
100.00 | 
64           assign ds = wr_en ? wr_data : qs;
                               -1-  
                               ==>  
                               ==>  
Branches:
| -1- | Status | Tests | 
| 1 | 
Covered | 
T30,T28,T128 | 
| 0 | 
Covered | 
T1,T2,T3 | 
56             if (!rst_ni) begin
               -1-  
57               q <= RESVAL;
                 ==>
58             end else if (wr_en) begin
                        -2-  
59               q <= wr_data;
                 ==>
60             end
               MISSING_ELSE
               ==>
Branches:
| -1- | -2- | Status | Tests | 
| 1 | 
- | 
Covered | 
T1,T2,T3 | 
| 0 | 
1 | 
Covered | 
T30,T28,T128 | 
| 0 | 
0 | 
Covered | 
T1,T2,T3 | 
 
Line Coverage for Instance : tb.dut.top_earlgrey.u_rv_plic.u_reg.u_ie0_0_e_23
 | Line No. | Total | Covered | Percent | 
| TOTAL |  | 7 | 7 | 100.00 | 
| ALWAYS | 56 | 4 | 4 | 100.00 | 
| CONT_ASSIGN | 64 | 1 | 1 | 100.00 | 
| CONT_ASSIGN | 65 | 1 | 1 | 100.00 | 
| CONT_ASSIGN | 72 | 1 | 1 | 100.00 | 
55                        always_ff @(posedge clk_i or negedge rst_ni) begin
56         1/1              if (!rst_ni) begin
           Tests:       T1 T2 T3 
57         1/1                q <= RESVAL;
           Tests:       T1 T2 T3 
58         1/1              end else if (wr_en) begin
           Tests:       T1 T2 T3 
59         1/1                q <= wr_data;
           Tests:       T30 T28 T128 
60                          end
                        MISSING_ELSE
61                        end
62                      
63                        // feed back out for consolidation
64         1/1            assign ds = wr_en ? wr_data : qs;
           Tests:       T30 T28 T128 
65         1/1            assign qe = wr_en;
           Tests:       T30 T28 T128 
66                      
67                        if (SwAccess == SwAccessRC) begin : gen_rc
68                          // In case of a SW RC colliding with a HW write, SW gets the value written by HW
69                          // but the register is cleared to 0. See #5416 for a discussion.
70                          assign qs = de && we ? d : q;
71                        end else begin : gen_no_rc
72         1/1              assign qs = q;
           Tests:       T30 T275 T124 
Cond Coverage for Instance : tb.dut.top_earlgrey.u_rv_plic.u_reg.u_ie0_0_e_23
 | Total | Covered | Percent | 
| Conditions | 2 | 2 | 100.00 | 
| Logical | 2 | 2 | 100.00 | 
| Non-Logical | 0 | 0 |  | 
| Event | 0 | 0 |  | 
 LINE       64
 EXPRESSION (wr_en ? wr_data : qs)
             --1--
| -1- | Status | Tests |                       
| 0 | Covered | T1,T2,T3 | 
| 1 | Covered | T30,T28,T128 | 
Branch Coverage for Instance : tb.dut.top_earlgrey.u_rv_plic.u_reg.u_ie0_0_e_23
 | Line No. | Total | Covered | Percent | 
| Branches | 
 | 
5 | 
5 | 
100.00 | 
| TERNARY | 
64 | 
2 | 
2 | 
100.00 | 
| IF | 
56 | 
3 | 
3 | 
100.00 | 
64           assign ds = wr_en ? wr_data : qs;
                               -1-  
                               ==>  
                               ==>  
Branches:
| -1- | Status | Tests | 
| 1 | 
Covered | 
T30,T28,T128 | 
| 0 | 
Covered | 
T1,T2,T3 | 
56             if (!rst_ni) begin
               -1-  
57               q <= RESVAL;
                 ==>
58             end else if (wr_en) begin
                        -2-  
59               q <= wr_data;
                 ==>
60             end
               MISSING_ELSE
               ==>
Branches:
| -1- | -2- | Status | Tests | 
| 1 | 
- | 
Covered | 
T1,T2,T3 | 
| 0 | 
1 | 
Covered | 
T30,T28,T128 | 
| 0 | 
0 | 
Covered | 
T1,T2,T3 | 
 
Line Coverage for Instance : tb.dut.top_earlgrey.u_rv_plic.u_reg.u_ie0_0_e_24
 | Line No. | Total | Covered | Percent | 
| TOTAL |  | 7 | 7 | 100.00 | 
| ALWAYS | 56 | 4 | 4 | 100.00 | 
| CONT_ASSIGN | 64 | 1 | 1 | 100.00 | 
| CONT_ASSIGN | 65 | 1 | 1 | 100.00 | 
| CONT_ASSIGN | 72 | 1 | 1 | 100.00 | 
55                        always_ff @(posedge clk_i or negedge rst_ni) begin
56         1/1              if (!rst_ni) begin
           Tests:       T1 T2 T3 
57         1/1                q <= RESVAL;
           Tests:       T1 T2 T3 
58         1/1              end else if (wr_en) begin
           Tests:       T1 T2 T3 
59         1/1                q <= wr_data;
           Tests:       T30 T28 T128 
60                          end
                        MISSING_ELSE
61                        end
62                      
63                        // feed back out for consolidation
64         1/1            assign ds = wr_en ? wr_data : qs;
           Tests:       T30 T28 T128 
65         1/1            assign qe = wr_en;
           Tests:       T30 T28 T128 
66                      
67                        if (SwAccess == SwAccessRC) begin : gen_rc
68                          // In case of a SW RC colliding with a HW write, SW gets the value written by HW
69                          // but the register is cleared to 0. See #5416 for a discussion.
70                          assign qs = de && we ? d : q;
71                        end else begin : gen_no_rc
72         1/1              assign qs = q;
           Tests:       T30 T275 T124 
Cond Coverage for Instance : tb.dut.top_earlgrey.u_rv_plic.u_reg.u_ie0_0_e_24
 | Total | Covered | Percent | 
| Conditions | 2 | 2 | 100.00 | 
| Logical | 2 | 2 | 100.00 | 
| Non-Logical | 0 | 0 |  | 
| Event | 0 | 0 |  | 
 LINE       64
 EXPRESSION (wr_en ? wr_data : qs)
             --1--
| -1- | Status | Tests |                       
| 0 | Covered | T1,T2,T3 | 
| 1 | Covered | T30,T28,T128 | 
Branch Coverage for Instance : tb.dut.top_earlgrey.u_rv_plic.u_reg.u_ie0_0_e_24
 | Line No. | Total | Covered | Percent | 
| Branches | 
 | 
5 | 
5 | 
100.00 | 
| TERNARY | 
64 | 
2 | 
2 | 
100.00 | 
| IF | 
56 | 
3 | 
3 | 
100.00 | 
64           assign ds = wr_en ? wr_data : qs;
                               -1-  
                               ==>  
                               ==>  
Branches:
| -1- | Status | Tests | 
| 1 | 
Covered | 
T30,T28,T128 | 
| 0 | 
Covered | 
T1,T2,T3 | 
56             if (!rst_ni) begin
               -1-  
57               q <= RESVAL;
                 ==>
58             end else if (wr_en) begin
                        -2-  
59               q <= wr_data;
                 ==>
60             end
               MISSING_ELSE
               ==>
Branches:
| -1- | -2- | Status | Tests | 
| 1 | 
- | 
Covered | 
T1,T2,T3 | 
| 0 | 
1 | 
Covered | 
T30,T28,T128 | 
| 0 | 
0 | 
Covered | 
T1,T2,T3 | 
 
Line Coverage for Instance : tb.dut.top_earlgrey.u_rv_plic.u_reg.u_ie0_0_e_25
 | Line No. | Total | Covered | Percent | 
| TOTAL |  | 7 | 7 | 100.00 | 
| ALWAYS | 56 | 4 | 4 | 100.00 | 
| CONT_ASSIGN | 64 | 1 | 1 | 100.00 | 
| CONT_ASSIGN | 65 | 1 | 1 | 100.00 | 
| CONT_ASSIGN | 72 | 1 | 1 | 100.00 | 
55                        always_ff @(posedge clk_i or negedge rst_ni) begin
56         1/1              if (!rst_ni) begin
           Tests:       T1 T2 T3 
57         1/1                q <= RESVAL;
           Tests:       T1 T2 T3 
58         1/1              end else if (wr_en) begin
           Tests:       T1 T2 T3 
59         1/1                q <= wr_data;
           Tests:       T30 T28 T128 
60                          end
                        MISSING_ELSE
61                        end
62                      
63                        // feed back out for consolidation
64         1/1            assign ds = wr_en ? wr_data : qs;
           Tests:       T30 T28 T128 
65         1/1            assign qe = wr_en;
           Tests:       T30 T28 T128 
66                      
67                        if (SwAccess == SwAccessRC) begin : gen_rc
68                          // In case of a SW RC colliding with a HW write, SW gets the value written by HW
69                          // but the register is cleared to 0. See #5416 for a discussion.
70                          assign qs = de && we ? d : q;
71                        end else begin : gen_no_rc
72         1/1              assign qs = q;
           Tests:       T30 T275 T124 
Cond Coverage for Instance : tb.dut.top_earlgrey.u_rv_plic.u_reg.u_ie0_0_e_25
 | Total | Covered | Percent | 
| Conditions | 2 | 2 | 100.00 | 
| Logical | 2 | 2 | 100.00 | 
| Non-Logical | 0 | 0 |  | 
| Event | 0 | 0 |  | 
 LINE       64
 EXPRESSION (wr_en ? wr_data : qs)
             --1--
| -1- | Status | Tests |                       
| 0 | Covered | T1,T2,T3 | 
| 1 | Covered | T30,T28,T128 | 
Branch Coverage for Instance : tb.dut.top_earlgrey.u_rv_plic.u_reg.u_ie0_0_e_25
 | Line No. | Total | Covered | Percent | 
| Branches | 
 | 
5 | 
5 | 
100.00 | 
| TERNARY | 
64 | 
2 | 
2 | 
100.00 | 
| IF | 
56 | 
3 | 
3 | 
100.00 | 
64           assign ds = wr_en ? wr_data : qs;
                               -1-  
                               ==>  
                               ==>  
Branches:
| -1- | Status | Tests | 
| 1 | 
Covered | 
T30,T28,T128 | 
| 0 | 
Covered | 
T1,T2,T3 | 
56             if (!rst_ni) begin
               -1-  
57               q <= RESVAL;
                 ==>
58             end else if (wr_en) begin
                        -2-  
59               q <= wr_data;
                 ==>
60             end
               MISSING_ELSE
               ==>
Branches:
| -1- | -2- | Status | Tests | 
| 1 | 
- | 
Covered | 
T1,T2,T3 | 
| 0 | 
1 | 
Covered | 
T30,T28,T128 | 
| 0 | 
0 | 
Covered | 
T1,T2,T3 | 
 
Line Coverage for Instance : tb.dut.top_earlgrey.u_rv_plic.u_reg.u_ie0_0_e_26
 | Line No. | Total | Covered | Percent | 
| TOTAL |  | 7 | 7 | 100.00 | 
| ALWAYS | 56 | 4 | 4 | 100.00 | 
| CONT_ASSIGN | 64 | 1 | 1 | 100.00 | 
| CONT_ASSIGN | 65 | 1 | 1 | 100.00 | 
| CONT_ASSIGN | 72 | 1 | 1 | 100.00 | 
55                        always_ff @(posedge clk_i or negedge rst_ni) begin
56         1/1              if (!rst_ni) begin
           Tests:       T1 T2 T3 
57         1/1                q <= RESVAL;
           Tests:       T1 T2 T3 
58         1/1              end else if (wr_en) begin
           Tests:       T1 T2 T3 
59         1/1                q <= wr_data;
           Tests:       T30 T28 T128 
60                          end
                        MISSING_ELSE
61                        end
62                      
63                        // feed back out for consolidation
64         1/1            assign ds = wr_en ? wr_data : qs;
           Tests:       T30 T28 T128 
65         1/1            assign qe = wr_en;
           Tests:       T30 T28 T128 
66                      
67                        if (SwAccess == SwAccessRC) begin : gen_rc
68                          // In case of a SW RC colliding with a HW write, SW gets the value written by HW
69                          // but the register is cleared to 0. See #5416 for a discussion.
70                          assign qs = de && we ? d : q;
71                        end else begin : gen_no_rc
72         1/1              assign qs = q;
           Tests:       T30 T275 T124 
Cond Coverage for Instance : tb.dut.top_earlgrey.u_rv_plic.u_reg.u_ie0_0_e_26
 | Total | Covered | Percent | 
| Conditions | 2 | 2 | 100.00 | 
| Logical | 2 | 2 | 100.00 | 
| Non-Logical | 0 | 0 |  | 
| Event | 0 | 0 |  | 
 LINE       64
 EXPRESSION (wr_en ? wr_data : qs)
             --1--
| -1- | Status | Tests |                       
| 0 | Covered | T1,T2,T3 | 
| 1 | Covered | T30,T28,T128 | 
Branch Coverage for Instance : tb.dut.top_earlgrey.u_rv_plic.u_reg.u_ie0_0_e_26
 | Line No. | Total | Covered | Percent | 
| Branches | 
 | 
5 | 
5 | 
100.00 | 
| TERNARY | 
64 | 
2 | 
2 | 
100.00 | 
| IF | 
56 | 
3 | 
3 | 
100.00 | 
64           assign ds = wr_en ? wr_data : qs;
                               -1-  
                               ==>  
                               ==>  
Branches:
| -1- | Status | Tests | 
| 1 | 
Covered | 
T30,T28,T128 | 
| 0 | 
Covered | 
T1,T2,T3 | 
56             if (!rst_ni) begin
               -1-  
57               q <= RESVAL;
                 ==>
58             end else if (wr_en) begin
                        -2-  
59               q <= wr_data;
                 ==>
60             end
               MISSING_ELSE
               ==>
Branches:
| -1- | -2- | Status | Tests | 
| 1 | 
- | 
Covered | 
T1,T2,T3 | 
| 0 | 
1 | 
Covered | 
T30,T28,T128 | 
| 0 | 
0 | 
Covered | 
T1,T2,T3 | 
 
Line Coverage for Instance : tb.dut.top_earlgrey.u_rv_plic.u_reg.u_ie0_0_e_27
 | Line No. | Total | Covered | Percent | 
| TOTAL |  | 7 | 7 | 100.00 | 
| ALWAYS | 56 | 4 | 4 | 100.00 | 
| CONT_ASSIGN | 64 | 1 | 1 | 100.00 | 
| CONT_ASSIGN | 65 | 1 | 1 | 100.00 | 
| CONT_ASSIGN | 72 | 1 | 1 | 100.00 | 
55                        always_ff @(posedge clk_i or negedge rst_ni) begin
56         1/1              if (!rst_ni) begin
           Tests:       T1 T2 T3 
57         1/1                q <= RESVAL;
           Tests:       T1 T2 T3 
58         1/1              end else if (wr_en) begin
           Tests:       T1 T2 T3 
59         1/1                q <= wr_data;
           Tests:       T30 T28 T128 
60                          end
                        MISSING_ELSE
61                        end
62                      
63                        // feed back out for consolidation
64         1/1            assign ds = wr_en ? wr_data : qs;
           Tests:       T30 T28 T128 
65         1/1            assign qe = wr_en;
           Tests:       T30 T28 T128 
66                      
67                        if (SwAccess == SwAccessRC) begin : gen_rc
68                          // In case of a SW RC colliding with a HW write, SW gets the value written by HW
69                          // but the register is cleared to 0. See #5416 for a discussion.
70                          assign qs = de && we ? d : q;
71                        end else begin : gen_no_rc
72         1/1              assign qs = q;
           Tests:       T30 T275 T124 
Cond Coverage for Instance : tb.dut.top_earlgrey.u_rv_plic.u_reg.u_ie0_0_e_27
 | Total | Covered | Percent | 
| Conditions | 2 | 2 | 100.00 | 
| Logical | 2 | 2 | 100.00 | 
| Non-Logical | 0 | 0 |  | 
| Event | 0 | 0 |  | 
 LINE       64
 EXPRESSION (wr_en ? wr_data : qs)
             --1--
| -1- | Status | Tests |                       
| 0 | Covered | T1,T2,T3 | 
| 1 | Covered | T30,T28,T128 | 
Branch Coverage for Instance : tb.dut.top_earlgrey.u_rv_plic.u_reg.u_ie0_0_e_27
 | Line No. | Total | Covered | Percent | 
| Branches | 
 | 
5 | 
5 | 
100.00 | 
| TERNARY | 
64 | 
2 | 
2 | 
100.00 | 
| IF | 
56 | 
3 | 
3 | 
100.00 | 
64           assign ds = wr_en ? wr_data : qs;
                               -1-  
                               ==>  
                               ==>  
Branches:
| -1- | Status | Tests | 
| 1 | 
Covered | 
T30,T28,T128 | 
| 0 | 
Covered | 
T1,T2,T3 | 
56             if (!rst_ni) begin
               -1-  
57               q <= RESVAL;
                 ==>
58             end else if (wr_en) begin
                        -2-  
59               q <= wr_data;
                 ==>
60             end
               MISSING_ELSE
               ==>
Branches:
| -1- | -2- | Status | Tests | 
| 1 | 
- | 
Covered | 
T1,T2,T3 | 
| 0 | 
1 | 
Covered | 
T30,T28,T128 | 
| 0 | 
0 | 
Covered | 
T1,T2,T3 | 
 
Line Coverage for Instance : tb.dut.top_earlgrey.u_rv_plic.u_reg.u_ie0_0_e_28
 | Line No. | Total | Covered | Percent | 
| TOTAL |  | 7 | 7 | 100.00 | 
| ALWAYS | 56 | 4 | 4 | 100.00 | 
| CONT_ASSIGN | 64 | 1 | 1 | 100.00 | 
| CONT_ASSIGN | 65 | 1 | 1 | 100.00 | 
| CONT_ASSIGN | 72 | 1 | 1 | 100.00 | 
55                        always_ff @(posedge clk_i or negedge rst_ni) begin
56         1/1              if (!rst_ni) begin
           Tests:       T1 T2 T3 
57         1/1                q <= RESVAL;
           Tests:       T1 T2 T3 
58         1/1              end else if (wr_en) begin
           Tests:       T1 T2 T3 
59         1/1                q <= wr_data;
           Tests:       T30 T28 T128 
60                          end
                        MISSING_ELSE
61                        end
62                      
63                        // feed back out for consolidation
64         1/1            assign ds = wr_en ? wr_data : qs;
           Tests:       T30 T28 T128 
65         1/1            assign qe = wr_en;
           Tests:       T30 T28 T128 
66                      
67                        if (SwAccess == SwAccessRC) begin : gen_rc
68                          // In case of a SW RC colliding with a HW write, SW gets the value written by HW
69                          // but the register is cleared to 0. See #5416 for a discussion.
70                          assign qs = de && we ? d : q;
71                        end else begin : gen_no_rc
72         1/1              assign qs = q;
           Tests:       T28 T275 T124 
Cond Coverage for Instance : tb.dut.top_earlgrey.u_rv_plic.u_reg.u_ie0_0_e_28
 | Total | Covered | Percent | 
| Conditions | 2 | 2 | 100.00 | 
| Logical | 2 | 2 | 100.00 | 
| Non-Logical | 0 | 0 |  | 
| Event | 0 | 0 |  | 
 LINE       64
 EXPRESSION (wr_en ? wr_data : qs)
             --1--
| -1- | Status | Tests |                       
| 0 | Covered | T1,T2,T3 | 
| 1 | Covered | T30,T28,T128 | 
Branch Coverage for Instance : tb.dut.top_earlgrey.u_rv_plic.u_reg.u_ie0_0_e_28
 | Line No. | Total | Covered | Percent | 
| Branches | 
 | 
5 | 
5 | 
100.00 | 
| TERNARY | 
64 | 
2 | 
2 | 
100.00 | 
| IF | 
56 | 
3 | 
3 | 
100.00 | 
64           assign ds = wr_en ? wr_data : qs;
                               -1-  
                               ==>  
                               ==>  
Branches:
| -1- | Status | Tests | 
| 1 | 
Covered | 
T30,T28,T128 | 
| 0 | 
Covered | 
T1,T2,T3 | 
56             if (!rst_ni) begin
               -1-  
57               q <= RESVAL;
                 ==>
58             end else if (wr_en) begin
                        -2-  
59               q <= wr_data;
                 ==>
60             end
               MISSING_ELSE
               ==>
Branches:
| -1- | -2- | Status | Tests | 
| 1 | 
- | 
Covered | 
T1,T2,T3 | 
| 0 | 
1 | 
Covered | 
T30,T28,T128 | 
| 0 | 
0 | 
Covered | 
T1,T2,T3 | 
 
Line Coverage for Instance : tb.dut.top_earlgrey.u_rv_plic.u_reg.u_ie0_0_e_29
 | Line No. | Total | Covered | Percent | 
| TOTAL |  | 7 | 7 | 100.00 | 
| ALWAYS | 56 | 4 | 4 | 100.00 | 
| CONT_ASSIGN | 64 | 1 | 1 | 100.00 | 
| CONT_ASSIGN | 65 | 1 | 1 | 100.00 | 
| CONT_ASSIGN | 72 | 1 | 1 | 100.00 | 
55                        always_ff @(posedge clk_i or negedge rst_ni) begin
56         1/1              if (!rst_ni) begin
           Tests:       T1 T2 T3 
57         1/1                q <= RESVAL;
           Tests:       T1 T2 T3 
58         1/1              end else if (wr_en) begin
           Tests:       T1 T2 T3 
59         1/1                q <= wr_data;
           Tests:       T30 T28 T128 
60                          end
                        MISSING_ELSE
61                        end
62                      
63                        // feed back out for consolidation
64         1/1            assign ds = wr_en ? wr_data : qs;
           Tests:       T30 T28 T128 
65         1/1            assign qe = wr_en;
           Tests:       T30 T28 T128 
66                      
67                        if (SwAccess == SwAccessRC) begin : gen_rc
68                          // In case of a SW RC colliding with a HW write, SW gets the value written by HW
69                          // but the register is cleared to 0. See #5416 for a discussion.
70                          assign qs = de && we ? d : q;
71                        end else begin : gen_no_rc
72         1/1              assign qs = q;
           Tests:       T28 T275 T124 
Cond Coverage for Instance : tb.dut.top_earlgrey.u_rv_plic.u_reg.u_ie0_0_e_29
 | Total | Covered | Percent | 
| Conditions | 2 | 2 | 100.00 | 
| Logical | 2 | 2 | 100.00 | 
| Non-Logical | 0 | 0 |  | 
| Event | 0 | 0 |  | 
 LINE       64
 EXPRESSION (wr_en ? wr_data : qs)
             --1--
| -1- | Status | Tests |                       
| 0 | Covered | T1,T2,T3 | 
| 1 | Covered | T30,T28,T128 | 
Branch Coverage for Instance : tb.dut.top_earlgrey.u_rv_plic.u_reg.u_ie0_0_e_29
 | Line No. | Total | Covered | Percent | 
| Branches | 
 | 
5 | 
5 | 
100.00 | 
| TERNARY | 
64 | 
2 | 
2 | 
100.00 | 
| IF | 
56 | 
3 | 
3 | 
100.00 | 
64           assign ds = wr_en ? wr_data : qs;
                               -1-  
                               ==>  
                               ==>  
Branches:
| -1- | Status | Tests | 
| 1 | 
Covered | 
T30,T28,T128 | 
| 0 | 
Covered | 
T1,T2,T3 | 
56             if (!rst_ni) begin
               -1-  
57               q <= RESVAL;
                 ==>
58             end else if (wr_en) begin
                        -2-  
59               q <= wr_data;
                 ==>
60             end
               MISSING_ELSE
               ==>
Branches:
| -1- | -2- | Status | Tests | 
| 1 | 
- | 
Covered | 
T1,T2,T3 | 
| 0 | 
1 | 
Covered | 
T30,T28,T128 | 
| 0 | 
0 | 
Covered | 
T1,T2,T3 | 
 
Line Coverage for Instance : tb.dut.top_earlgrey.u_rv_plic.u_reg.u_ie0_0_e_30
 | Line No. | Total | Covered | Percent | 
| TOTAL |  | 7 | 7 | 100.00 | 
| ALWAYS | 56 | 4 | 4 | 100.00 | 
| CONT_ASSIGN | 64 | 1 | 1 | 100.00 | 
| CONT_ASSIGN | 65 | 1 | 1 | 100.00 | 
| CONT_ASSIGN | 72 | 1 | 1 | 100.00 | 
55                        always_ff @(posedge clk_i or negedge rst_ni) begin
56         1/1              if (!rst_ni) begin
           Tests:       T1 T2 T3 
57         1/1                q <= RESVAL;
           Tests:       T1 T2 T3 
58         1/1              end else if (wr_en) begin
           Tests:       T1 T2 T3 
59         1/1                q <= wr_data;
           Tests:       T30 T28 T128 
60                          end
                        MISSING_ELSE
61                        end
62                      
63                        // feed back out for consolidation
64         1/1            assign ds = wr_en ? wr_data : qs;
           Tests:       T30 T28 T128 
65         1/1            assign qe = wr_en;
           Tests:       T30 T28 T128 
66                      
67                        if (SwAccess == SwAccessRC) begin : gen_rc
68                          // In case of a SW RC colliding with a HW write, SW gets the value written by HW
69                          // but the register is cleared to 0. See #5416 for a discussion.
70                          assign qs = de && we ? d : q;
71                        end else begin : gen_no_rc
72         1/1              assign qs = q;
           Tests:       T28 T275 T124 
Cond Coverage for Instance : tb.dut.top_earlgrey.u_rv_plic.u_reg.u_ie0_0_e_30
 | Total | Covered | Percent | 
| Conditions | 2 | 2 | 100.00 | 
| Logical | 2 | 2 | 100.00 | 
| Non-Logical | 0 | 0 |  | 
| Event | 0 | 0 |  | 
 LINE       64
 EXPRESSION (wr_en ? wr_data : qs)
             --1--
| -1- | Status | Tests |                       
| 0 | Covered | T1,T2,T3 | 
| 1 | Covered | T30,T28,T128 | 
Branch Coverage for Instance : tb.dut.top_earlgrey.u_rv_plic.u_reg.u_ie0_0_e_30
 | Line No. | Total | Covered | Percent | 
| Branches | 
 | 
5 | 
5 | 
100.00 | 
| TERNARY | 
64 | 
2 | 
2 | 
100.00 | 
| IF | 
56 | 
3 | 
3 | 
100.00 | 
64           assign ds = wr_en ? wr_data : qs;
                               -1-  
                               ==>  
                               ==>  
Branches:
| -1- | Status | Tests | 
| 1 | 
Covered | 
T30,T28,T128 | 
| 0 | 
Covered | 
T1,T2,T3 | 
56             if (!rst_ni) begin
               -1-  
57               q <= RESVAL;
                 ==>
58             end else if (wr_en) begin
                        -2-  
59               q <= wr_data;
                 ==>
60             end
               MISSING_ELSE
               ==>
Branches:
| -1- | -2- | Status | Tests | 
| 1 | 
- | 
Covered | 
T1,T2,T3 | 
| 0 | 
1 | 
Covered | 
T30,T28,T128 | 
| 0 | 
0 | 
Covered | 
T1,T2,T3 | 
 
Line Coverage for Instance : tb.dut.top_earlgrey.u_rv_plic.u_reg.u_ie0_0_e_31
 | Line No. | Total | Covered | Percent | 
| TOTAL |  | 7 | 7 | 100.00 | 
| ALWAYS | 56 | 4 | 4 | 100.00 | 
| CONT_ASSIGN | 64 | 1 | 1 | 100.00 | 
| CONT_ASSIGN | 65 | 1 | 1 | 100.00 | 
| CONT_ASSIGN | 72 | 1 | 1 | 100.00 | 
55                        always_ff @(posedge clk_i or negedge rst_ni) begin
56         1/1              if (!rst_ni) begin
           Tests:       T1 T2 T3 
57         1/1                q <= RESVAL;
           Tests:       T1 T2 T3 
58         1/1              end else if (wr_en) begin
           Tests:       T1 T2 T3 
59         1/1                q <= wr_data;
           Tests:       T30 T28 T128 
60                          end
                        MISSING_ELSE
61                        end
62                      
63                        // feed back out for consolidation
64         1/1            assign ds = wr_en ? wr_data : qs;
           Tests:       T30 T28 T128 
65         1/1            assign qe = wr_en;
           Tests:       T30 T28 T128 
66                      
67                        if (SwAccess == SwAccessRC) begin : gen_rc
68                          // In case of a SW RC colliding with a HW write, SW gets the value written by HW
69                          // but the register is cleared to 0. See #5416 for a discussion.
70                          assign qs = de && we ? d : q;
71                        end else begin : gen_no_rc
72         1/1              assign qs = q;
           Tests:       T28 T275 T124 
Cond Coverage for Instance : tb.dut.top_earlgrey.u_rv_plic.u_reg.u_ie0_0_e_31
 | Total | Covered | Percent | 
| Conditions | 2 | 2 | 100.00 | 
| Logical | 2 | 2 | 100.00 | 
| Non-Logical | 0 | 0 |  | 
| Event | 0 | 0 |  | 
 LINE       64
 EXPRESSION (wr_en ? wr_data : qs)
             --1--
| -1- | Status | Tests |                       
| 0 | Covered | T1,T2,T3 | 
| 1 | Covered | T30,T28,T128 | 
Branch Coverage for Instance : tb.dut.top_earlgrey.u_rv_plic.u_reg.u_ie0_0_e_31
 | Line No. | Total | Covered | Percent | 
| Branches | 
 | 
5 | 
5 | 
100.00 | 
| TERNARY | 
64 | 
2 | 
2 | 
100.00 | 
| IF | 
56 | 
3 | 
3 | 
100.00 | 
64           assign ds = wr_en ? wr_data : qs;
                               -1-  
                               ==>  
                               ==>  
Branches:
| -1- | Status | Tests | 
| 1 | 
Covered | 
T30,T28,T128 | 
| 0 | 
Covered | 
T1,T2,T3 | 
56             if (!rst_ni) begin
               -1-  
57               q <= RESVAL;
                 ==>
58             end else if (wr_en) begin
                        -2-  
59               q <= wr_data;
                 ==>
60             end
               MISSING_ELSE
               ==>
Branches:
| -1- | -2- | Status | Tests | 
| 1 | 
- | 
Covered | 
T1,T2,T3 | 
| 0 | 
1 | 
Covered | 
T30,T28,T128 | 
| 0 | 
0 | 
Covered | 
T1,T2,T3 | 
 
Line Coverage for Instance : tb.dut.top_earlgrey.u_rv_plic.u_reg.u_ie0_1_e_32
 | Line No. | Total | Covered | Percent | 
| TOTAL |  | 7 | 7 | 100.00 | 
| ALWAYS | 56 | 4 | 4 | 100.00 | 
| CONT_ASSIGN | 64 | 1 | 1 | 100.00 | 
| CONT_ASSIGN | 65 | 1 | 1 | 100.00 | 
| CONT_ASSIGN | 72 | 1 | 1 | 100.00 | 
55                        always_ff @(posedge clk_i or negedge rst_ni) begin
56         1/1              if (!rst_ni) begin
           Tests:       T1 T2 T3 
57         1/1                q <= RESVAL;
           Tests:       T1 T2 T3 
58         1/1              end else if (wr_en) begin
           Tests:       T1 T2 T3 
59         1/1                q <= wr_data;
           Tests:       T28 T29 T275 
60                          end
                        MISSING_ELSE
61                        end
62                      
63                        // feed back out for consolidation
64         1/1            assign ds = wr_en ? wr_data : qs;
           Tests:       T28 T29 T275 
65         1/1            assign qe = wr_en;
           Tests:       T28 T29 T275 
66                      
67                        if (SwAccess == SwAccessRC) begin : gen_rc
68                          // In case of a SW RC colliding with a HW write, SW gets the value written by HW
69                          // but the register is cleared to 0. See #5416 for a discussion.
70                          assign qs = de && we ? d : q;
71                        end else begin : gen_no_rc
72         1/1              assign qs = q;
           Tests:       T28 T275 T124 
Cond Coverage for Instance : tb.dut.top_earlgrey.u_rv_plic.u_reg.u_ie0_1_e_32
 | Total | Covered | Percent | 
| Conditions | 2 | 2 | 100.00 | 
| Logical | 2 | 2 | 100.00 | 
| Non-Logical | 0 | 0 |  | 
| Event | 0 | 0 |  | 
 LINE       64
 EXPRESSION (wr_en ? wr_data : qs)
             --1--
| -1- | Status | Tests |                       
| 0 | Covered | T1,T2,T3 | 
| 1 | Covered | T28,T29,T275 | 
Branch Coverage for Instance : tb.dut.top_earlgrey.u_rv_plic.u_reg.u_ie0_1_e_32
 | Line No. | Total | Covered | Percent | 
| Branches | 
 | 
5 | 
5 | 
100.00 | 
| TERNARY | 
64 | 
2 | 
2 | 
100.00 | 
| IF | 
56 | 
3 | 
3 | 
100.00 | 
64           assign ds = wr_en ? wr_data : qs;
                               -1-  
                               ==>  
                               ==>  
Branches:
| -1- | Status | Tests | 
| 1 | 
Covered | 
T28,T29,T275 | 
| 0 | 
Covered | 
T1,T2,T3 | 
56             if (!rst_ni) begin
               -1-  
57               q <= RESVAL;
                 ==>
58             end else if (wr_en) begin
                        -2-  
59               q <= wr_data;
                 ==>
60             end
               MISSING_ELSE
               ==>
Branches:
| -1- | -2- | Status | Tests | 
| 1 | 
- | 
Covered | 
T1,T2,T3 | 
| 0 | 
1 | 
Covered | 
T28,T29,T275 | 
| 0 | 
0 | 
Covered | 
T1,T2,T3 | 
 
Line Coverage for Instance : tb.dut.top_earlgrey.u_rv_plic.u_reg.u_ie0_1_e_33
 | Line No. | Total | Covered | Percent | 
| TOTAL |  | 7 | 7 | 100.00 | 
| ALWAYS | 56 | 4 | 4 | 100.00 | 
| CONT_ASSIGN | 64 | 1 | 1 | 100.00 | 
| CONT_ASSIGN | 65 | 1 | 1 | 100.00 | 
| CONT_ASSIGN | 72 | 1 | 1 | 100.00 | 
55                        always_ff @(posedge clk_i or negedge rst_ni) begin
56         1/1              if (!rst_ni) begin
           Tests:       T1 T2 T3 
57         1/1                q <= RESVAL;
           Tests:       T1 T2 T3 
58         1/1              end else if (wr_en) begin
           Tests:       T1 T2 T3 
59         1/1                q <= wr_data;
           Tests:       T28 T29 T275 
60                          end
                        MISSING_ELSE
61                        end
62                      
63                        // feed back out for consolidation
64         1/1            assign ds = wr_en ? wr_data : qs;
           Tests:       T28 T29 T275 
65         1/1            assign qe = wr_en;
           Tests:       T28 T29 T275 
66                      
67                        if (SwAccess == SwAccessRC) begin : gen_rc
68                          // In case of a SW RC colliding with a HW write, SW gets the value written by HW
69                          // but the register is cleared to 0. See #5416 for a discussion.
70                          assign qs = de && we ? d : q;
71                        end else begin : gen_no_rc
72         1/1              assign qs = q;
           Tests:       T28 T275 T124 
Cond Coverage for Instance : tb.dut.top_earlgrey.u_rv_plic.u_reg.u_ie0_1_e_33
 | Total | Covered | Percent | 
| Conditions | 2 | 2 | 100.00 | 
| Logical | 2 | 2 | 100.00 | 
| Non-Logical | 0 | 0 |  | 
| Event | 0 | 0 |  | 
 LINE       64
 EXPRESSION (wr_en ? wr_data : qs)
             --1--
| -1- | Status | Tests |                       
| 0 | Covered | T1,T2,T3 | 
| 1 | Covered | T28,T29,T275 | 
Branch Coverage for Instance : tb.dut.top_earlgrey.u_rv_plic.u_reg.u_ie0_1_e_33
 | Line No. | Total | Covered | Percent | 
| Branches | 
 | 
5 | 
5 | 
100.00 | 
| TERNARY | 
64 | 
2 | 
2 | 
100.00 | 
| IF | 
56 | 
3 | 
3 | 
100.00 | 
64           assign ds = wr_en ? wr_data : qs;
                               -1-  
                               ==>  
                               ==>  
Branches:
| -1- | Status | Tests | 
| 1 | 
Covered | 
T28,T29,T275 | 
| 0 | 
Covered | 
T1,T2,T3 | 
56             if (!rst_ni) begin
               -1-  
57               q <= RESVAL;
                 ==>
58             end else if (wr_en) begin
                        -2-  
59               q <= wr_data;
                 ==>
60             end
               MISSING_ELSE
               ==>
Branches:
| -1- | -2- | Status | Tests | 
| 1 | 
- | 
Covered | 
T1,T2,T3 | 
| 0 | 
1 | 
Covered | 
T28,T29,T275 | 
| 0 | 
0 | 
Covered | 
T1,T2,T3 | 
 
Line Coverage for Instance : tb.dut.top_earlgrey.u_rv_plic.u_reg.u_ie0_1_e_34
 | Line No. | Total | Covered | Percent | 
| TOTAL |  | 7 | 7 | 100.00 | 
| ALWAYS | 56 | 4 | 4 | 100.00 | 
| CONT_ASSIGN | 64 | 1 | 1 | 100.00 | 
| CONT_ASSIGN | 65 | 1 | 1 | 100.00 | 
| CONT_ASSIGN | 72 | 1 | 1 | 100.00 | 
55                        always_ff @(posedge clk_i or negedge rst_ni) begin
56         1/1              if (!rst_ni) begin
           Tests:       T1 T2 T3 
57         1/1                q <= RESVAL;
           Tests:       T1 T2 T3 
58         1/1              end else if (wr_en) begin
           Tests:       T1 T2 T3 
59         1/1                q <= wr_data;
           Tests:       T28 T29 T275 
60                          end
                        MISSING_ELSE
61                        end
62                      
63                        // feed back out for consolidation
64         1/1            assign ds = wr_en ? wr_data : qs;
           Tests:       T28 T29 T275 
65         1/1            assign qe = wr_en;
           Tests:       T28 T29 T275 
66                      
67                        if (SwAccess == SwAccessRC) begin : gen_rc
68                          // In case of a SW RC colliding with a HW write, SW gets the value written by HW
69                          // but the register is cleared to 0. See #5416 for a discussion.
70                          assign qs = de && we ? d : q;
71                        end else begin : gen_no_rc
72         1/1              assign qs = q;
           Tests:       T28 T275 T124 
Cond Coverage for Instance : tb.dut.top_earlgrey.u_rv_plic.u_reg.u_ie0_1_e_34
 | Total | Covered | Percent | 
| Conditions | 2 | 2 | 100.00 | 
| Logical | 2 | 2 | 100.00 | 
| Non-Logical | 0 | 0 |  | 
| Event | 0 | 0 |  | 
 LINE       64
 EXPRESSION (wr_en ? wr_data : qs)
             --1--
| -1- | Status | Tests |                       
| 0 | Covered | T1,T2,T3 | 
| 1 | Covered | T28,T29,T275 | 
Branch Coverage for Instance : tb.dut.top_earlgrey.u_rv_plic.u_reg.u_ie0_1_e_34
 | Line No. | Total | Covered | Percent | 
| Branches | 
 | 
5 | 
5 | 
100.00 | 
| TERNARY | 
64 | 
2 | 
2 | 
100.00 | 
| IF | 
56 | 
3 | 
3 | 
100.00 | 
64           assign ds = wr_en ? wr_data : qs;
                               -1-  
                               ==>  
                               ==>  
Branches:
| -1- | Status | Tests | 
| 1 | 
Covered | 
T28,T29,T275 | 
| 0 | 
Covered | 
T1,T2,T3 | 
56             if (!rst_ni) begin
               -1-  
57               q <= RESVAL;
                 ==>
58             end else if (wr_en) begin
                        -2-  
59               q <= wr_data;
                 ==>
60             end
               MISSING_ELSE
               ==>
Branches:
| -1- | -2- | Status | Tests | 
| 1 | 
- | 
Covered | 
T1,T2,T3 | 
| 0 | 
1 | 
Covered | 
T28,T29,T275 | 
| 0 | 
0 | 
Covered | 
T1,T2,T3 | 
 
Line Coverage for Instance : tb.dut.top_earlgrey.u_rv_plic.u_reg.u_ie0_1_e_35
 | Line No. | Total | Covered | Percent | 
| TOTAL |  | 7 | 7 | 100.00 | 
| ALWAYS | 56 | 4 | 4 | 100.00 | 
| CONT_ASSIGN | 64 | 1 | 1 | 100.00 | 
| CONT_ASSIGN | 65 | 1 | 1 | 100.00 | 
| CONT_ASSIGN | 72 | 1 | 1 | 100.00 | 
55                        always_ff @(posedge clk_i or negedge rst_ni) begin
56         1/1              if (!rst_ni) begin
           Tests:       T1 T2 T3 
57         1/1                q <= RESVAL;
           Tests:       T1 T2 T3 
58         1/1              end else if (wr_en) begin
           Tests:       T1 T2 T3 
59         1/1                q <= wr_data;
           Tests:       T28 T29 T275 
60                          end
                        MISSING_ELSE
61                        end
62                      
63                        // feed back out for consolidation
64         1/1            assign ds = wr_en ? wr_data : qs;
           Tests:       T28 T29 T275 
65         1/1            assign qe = wr_en;
           Tests:       T28 T29 T275 
66                      
67                        if (SwAccess == SwAccessRC) begin : gen_rc
68                          // In case of a SW RC colliding with a HW write, SW gets the value written by HW
69                          // but the register is cleared to 0. See #5416 for a discussion.
70                          assign qs = de && we ? d : q;
71                        end else begin : gen_no_rc
72         1/1              assign qs = q;
           Tests:       T28 T275 T124 
Cond Coverage for Instance : tb.dut.top_earlgrey.u_rv_plic.u_reg.u_ie0_1_e_35
 | Total | Covered | Percent | 
| Conditions | 2 | 2 | 100.00 | 
| Logical | 2 | 2 | 100.00 | 
| Non-Logical | 0 | 0 |  | 
| Event | 0 | 0 |  | 
 LINE       64
 EXPRESSION (wr_en ? wr_data : qs)
             --1--
| -1- | Status | Tests |                       
| 0 | Covered | T1,T2,T3 | 
| 1 | Covered | T28,T29,T275 | 
Branch Coverage for Instance : tb.dut.top_earlgrey.u_rv_plic.u_reg.u_ie0_1_e_35
 | Line No. | Total | Covered | Percent | 
| Branches | 
 | 
5 | 
5 | 
100.00 | 
| TERNARY | 
64 | 
2 | 
2 | 
100.00 | 
| IF | 
56 | 
3 | 
3 | 
100.00 | 
64           assign ds = wr_en ? wr_data : qs;
                               -1-  
                               ==>  
                               ==>  
Branches:
| -1- | Status | Tests | 
| 1 | 
Covered | 
T28,T29,T275 | 
| 0 | 
Covered | 
T1,T2,T3 | 
56             if (!rst_ni) begin
               -1-  
57               q <= RESVAL;
                 ==>
58             end else if (wr_en) begin
                        -2-  
59               q <= wr_data;
                 ==>
60             end
               MISSING_ELSE
               ==>
Branches:
| -1- | -2- | Status | Tests | 
| 1 | 
- | 
Covered | 
T1,T2,T3 | 
| 0 | 
1 | 
Covered | 
T28,T29,T275 | 
| 0 | 
0 | 
Covered | 
T1,T2,T3 | 
 
Line Coverage for Instance : tb.dut.top_earlgrey.u_rv_plic.u_reg.u_ie0_1_e_36
 | Line No. | Total | Covered | Percent | 
| TOTAL |  | 7 | 7 | 100.00 | 
| ALWAYS | 56 | 4 | 4 | 100.00 | 
| CONT_ASSIGN | 64 | 1 | 1 | 100.00 | 
| CONT_ASSIGN | 65 | 1 | 1 | 100.00 | 
| CONT_ASSIGN | 72 | 1 | 1 | 100.00 | 
55                        always_ff @(posedge clk_i or negedge rst_ni) begin
56         1/1              if (!rst_ni) begin
           Tests:       T1 T2 T3 
57         1/1                q <= RESVAL;
           Tests:       T1 T2 T3 
58         1/1              end else if (wr_en) begin
           Tests:       T1 T2 T3 
59         1/1                q <= wr_data;
           Tests:       T28 T29 T275 
60                          end
                        MISSING_ELSE
61                        end
62                      
63                        // feed back out for consolidation
64         1/1            assign ds = wr_en ? wr_data : qs;
           Tests:       T28 T29 T275 
65         1/1            assign qe = wr_en;
           Tests:       T28 T29 T275 
66                      
67                        if (SwAccess == SwAccessRC) begin : gen_rc
68                          // In case of a SW RC colliding with a HW write, SW gets the value written by HW
69                          // but the register is cleared to 0. See #5416 for a discussion.
70                          assign qs = de && we ? d : q;
71                        end else begin : gen_no_rc
72         1/1              assign qs = q;
           Tests:       T28 T275 T124 
Cond Coverage for Instance : tb.dut.top_earlgrey.u_rv_plic.u_reg.u_ie0_1_e_36
 | Total | Covered | Percent | 
| Conditions | 2 | 2 | 100.00 | 
| Logical | 2 | 2 | 100.00 | 
| Non-Logical | 0 | 0 |  | 
| Event | 0 | 0 |  | 
 LINE       64
 EXPRESSION (wr_en ? wr_data : qs)
             --1--
| -1- | Status | Tests |                       
| 0 | Covered | T1,T2,T3 | 
| 1 | Covered | T28,T29,T275 | 
Branch Coverage for Instance : tb.dut.top_earlgrey.u_rv_plic.u_reg.u_ie0_1_e_36
 | Line No. | Total | Covered | Percent | 
| Branches | 
 | 
5 | 
5 | 
100.00 | 
| TERNARY | 
64 | 
2 | 
2 | 
100.00 | 
| IF | 
56 | 
3 | 
3 | 
100.00 | 
64           assign ds = wr_en ? wr_data : qs;
                               -1-  
                               ==>  
                               ==>  
Branches:
| -1- | Status | Tests | 
| 1 | 
Covered | 
T28,T29,T275 | 
| 0 | 
Covered | 
T1,T2,T3 | 
56             if (!rst_ni) begin
               -1-  
57               q <= RESVAL;
                 ==>
58             end else if (wr_en) begin
                        -2-  
59               q <= wr_data;
                 ==>
60             end
               MISSING_ELSE
               ==>
Branches:
| -1- | -2- | Status | Tests | 
| 1 | 
- | 
Covered | 
T1,T2,T3 | 
| 0 | 
1 | 
Covered | 
T28,T29,T275 | 
| 0 | 
0 | 
Covered | 
T1,T2,T3 | 
 
Line Coverage for Instance : tb.dut.top_earlgrey.u_rv_plic.u_reg.u_ie0_1_e_37
 | Line No. | Total | Covered | Percent | 
| TOTAL |  | 7 | 7 | 100.00 | 
| ALWAYS | 56 | 4 | 4 | 100.00 | 
| CONT_ASSIGN | 64 | 1 | 1 | 100.00 | 
| CONT_ASSIGN | 65 | 1 | 1 | 100.00 | 
| CONT_ASSIGN | 72 | 1 | 1 | 100.00 | 
55                        always_ff @(posedge clk_i or negedge rst_ni) begin
56         1/1              if (!rst_ni) begin
           Tests:       T1 T2 T3 
57         1/1                q <= RESVAL;
           Tests:       T1 T2 T3 
58         1/1              end else if (wr_en) begin
           Tests:       T1 T2 T3 
59         1/1                q <= wr_data;
           Tests:       T28 T29 T275 
60                          end
                        MISSING_ELSE
61                        end
62                      
63                        // feed back out for consolidation
64         1/1            assign ds = wr_en ? wr_data : qs;
           Tests:       T28 T29 T275 
65         1/1            assign qe = wr_en;
           Tests:       T28 T29 T275 
66                      
67                        if (SwAccess == SwAccessRC) begin : gen_rc
68                          // In case of a SW RC colliding with a HW write, SW gets the value written by HW
69                          // but the register is cleared to 0. See #5416 for a discussion.
70                          assign qs = de && we ? d : q;
71                        end else begin : gen_no_rc
72         1/1              assign qs = q;
           Tests:       T29 T275 T124 
Cond Coverage for Instance : tb.dut.top_earlgrey.u_rv_plic.u_reg.u_ie0_1_e_37
 | Total | Covered | Percent | 
| Conditions | 2 | 2 | 100.00 | 
| Logical | 2 | 2 | 100.00 | 
| Non-Logical | 0 | 0 |  | 
| Event | 0 | 0 |  | 
 LINE       64
 EXPRESSION (wr_en ? wr_data : qs)
             --1--
| -1- | Status | Tests |                       
| 0 | Covered | T1,T2,T3 | 
| 1 | Covered | T28,T29,T275 | 
Branch Coverage for Instance : tb.dut.top_earlgrey.u_rv_plic.u_reg.u_ie0_1_e_37
 | Line No. | Total | Covered | Percent | 
| Branches | 
 | 
5 | 
5 | 
100.00 | 
| TERNARY | 
64 | 
2 | 
2 | 
100.00 | 
| IF | 
56 | 
3 | 
3 | 
100.00 | 
64           assign ds = wr_en ? wr_data : qs;
                               -1-  
                               ==>  
                               ==>  
Branches:
| -1- | Status | Tests | 
| 1 | 
Covered | 
T28,T29,T275 | 
| 0 | 
Covered | 
T1,T2,T3 | 
56             if (!rst_ni) begin
               -1-  
57               q <= RESVAL;
                 ==>
58             end else if (wr_en) begin
                        -2-  
59               q <= wr_data;
                 ==>
60             end
               MISSING_ELSE
               ==>
Branches:
| -1- | -2- | Status | Tests | 
| 1 | 
- | 
Covered | 
T1,T2,T3 | 
| 0 | 
1 | 
Covered | 
T28,T29,T275 | 
| 0 | 
0 | 
Covered | 
T1,T2,T3 | 
 
Line Coverage for Instance : tb.dut.top_earlgrey.u_rv_plic.u_reg.u_ie0_1_e_38
 | Line No. | Total | Covered | Percent | 
| TOTAL |  | 7 | 7 | 100.00 | 
| ALWAYS | 56 | 4 | 4 | 100.00 | 
| CONT_ASSIGN | 64 | 1 | 1 | 100.00 | 
| CONT_ASSIGN | 65 | 1 | 1 | 100.00 | 
| CONT_ASSIGN | 72 | 1 | 1 | 100.00 | 
55                        always_ff @(posedge clk_i or negedge rst_ni) begin
56         1/1              if (!rst_ni) begin
           Tests:       T1 T2 T3 
57         1/1                q <= RESVAL;
           Tests:       T1 T2 T3 
58         1/1              end else if (wr_en) begin
           Tests:       T1 T2 T3 
59         1/1                q <= wr_data;
           Tests:       T28 T29 T275 
60                          end
                        MISSING_ELSE
61                        end
62                      
63                        // feed back out for consolidation
64         1/1            assign ds = wr_en ? wr_data : qs;
           Tests:       T28 T29 T275 
65         1/1            assign qe = wr_en;
           Tests:       T28 T29 T275 
66                      
67                        if (SwAccess == SwAccessRC) begin : gen_rc
68                          // In case of a SW RC colliding with a HW write, SW gets the value written by HW
69                          // but the register is cleared to 0. See #5416 for a discussion.
70                          assign qs = de && we ? d : q;
71                        end else begin : gen_no_rc
72         1/1              assign qs = q;
           Tests:       T29 T275 T124 
Cond Coverage for Instance : tb.dut.top_earlgrey.u_rv_plic.u_reg.u_ie0_1_e_38
 | Total | Covered | Percent | 
| Conditions | 2 | 2 | 100.00 | 
| Logical | 2 | 2 | 100.00 | 
| Non-Logical | 0 | 0 |  | 
| Event | 0 | 0 |  | 
 LINE       64
 EXPRESSION (wr_en ? wr_data : qs)
             --1--
| -1- | Status | Tests |                       
| 0 | Covered | T1,T2,T3 | 
| 1 | Covered | T28,T29,T275 | 
Branch Coverage for Instance : tb.dut.top_earlgrey.u_rv_plic.u_reg.u_ie0_1_e_38
 | Line No. | Total | Covered | Percent | 
| Branches | 
 | 
5 | 
5 | 
100.00 | 
| TERNARY | 
64 | 
2 | 
2 | 
100.00 | 
| IF | 
56 | 
3 | 
3 | 
100.00 | 
64           assign ds = wr_en ? wr_data : qs;
                               -1-  
                               ==>  
                               ==>  
Branches:
| -1- | Status | Tests | 
| 1 | 
Covered | 
T28,T29,T275 | 
| 0 | 
Covered | 
T1,T2,T3 | 
56             if (!rst_ni) begin
               -1-  
57               q <= RESVAL;
                 ==>
58             end else if (wr_en) begin
                        -2-  
59               q <= wr_data;
                 ==>
60             end
               MISSING_ELSE
               ==>
Branches:
| -1- | -2- | Status | Tests | 
| 1 | 
- | 
Covered | 
T1,T2,T3 | 
| 0 | 
1 | 
Covered | 
T28,T29,T275 | 
| 0 | 
0 | 
Covered | 
T1,T2,T3 | 
 
Line Coverage for Instance : tb.dut.top_earlgrey.u_rv_plic.u_reg.u_ie0_1_e_39
 | Line No. | Total | Covered | Percent | 
| TOTAL |  | 7 | 7 | 100.00 | 
| ALWAYS | 56 | 4 | 4 | 100.00 | 
| CONT_ASSIGN | 64 | 1 | 1 | 100.00 | 
| CONT_ASSIGN | 65 | 1 | 1 | 100.00 | 
| CONT_ASSIGN | 72 | 1 | 1 | 100.00 | 
55                        always_ff @(posedge clk_i or negedge rst_ni) begin
56         1/1              if (!rst_ni) begin
           Tests:       T1 T2 T3 
57         1/1                q <= RESVAL;
           Tests:       T1 T2 T3 
58         1/1              end else if (wr_en) begin
           Tests:       T1 T2 T3 
59         1/1                q <= wr_data;
           Tests:       T28 T29 T275 
60                          end
                        MISSING_ELSE
61                        end
62                      
63                        // feed back out for consolidation
64         1/1            assign ds = wr_en ? wr_data : qs;
           Tests:       T28 T29 T275 
65         1/1            assign qe = wr_en;
           Tests:       T28 T29 T275 
66                      
67                        if (SwAccess == SwAccessRC) begin : gen_rc
68                          // In case of a SW RC colliding with a HW write, SW gets the value written by HW
69                          // but the register is cleared to 0. See #5416 for a discussion.
70                          assign qs = de && we ? d : q;
71                        end else begin : gen_no_rc
72         1/1              assign qs = q;
           Tests:       T29 T275 T124 
Cond Coverage for Instance : tb.dut.top_earlgrey.u_rv_plic.u_reg.u_ie0_1_e_39
 | Total | Covered | Percent | 
| Conditions | 2 | 2 | 100.00 | 
| Logical | 2 | 2 | 100.00 | 
| Non-Logical | 0 | 0 |  | 
| Event | 0 | 0 |  | 
 LINE       64
 EXPRESSION (wr_en ? wr_data : qs)
             --1--
| -1- | Status | Tests |                       
| 0 | Covered | T1,T2,T3 | 
| 1 | Covered | T28,T29,T275 | 
Branch Coverage for Instance : tb.dut.top_earlgrey.u_rv_plic.u_reg.u_ie0_1_e_39
 | Line No. | Total | Covered | Percent | 
| Branches | 
 | 
5 | 
5 | 
100.00 | 
| TERNARY | 
64 | 
2 | 
2 | 
100.00 | 
| IF | 
56 | 
3 | 
3 | 
100.00 | 
64           assign ds = wr_en ? wr_data : qs;
                               -1-  
                               ==>  
                               ==>  
Branches:
| -1- | Status | Tests | 
| 1 | 
Covered | 
T28,T29,T275 | 
| 0 | 
Covered | 
T1,T2,T3 | 
56             if (!rst_ni) begin
               -1-  
57               q <= RESVAL;
                 ==>
58             end else if (wr_en) begin
                        -2-  
59               q <= wr_data;
                 ==>
60             end
               MISSING_ELSE
               ==>
Branches:
| -1- | -2- | Status | Tests | 
| 1 | 
- | 
Covered | 
T1,T2,T3 | 
| 0 | 
1 | 
Covered | 
T28,T29,T275 | 
| 0 | 
0 | 
Covered | 
T1,T2,T3 | 
 
Line Coverage for Instance : tb.dut.top_earlgrey.u_rv_plic.u_reg.u_ie0_1_e_40
 | Line No. | Total | Covered | Percent | 
| TOTAL |  | 7 | 7 | 100.00 | 
| ALWAYS | 56 | 4 | 4 | 100.00 | 
| CONT_ASSIGN | 64 | 1 | 1 | 100.00 | 
| CONT_ASSIGN | 65 | 1 | 1 | 100.00 | 
| CONT_ASSIGN | 72 | 1 | 1 | 100.00 | 
55                        always_ff @(posedge clk_i or negedge rst_ni) begin
56         1/1              if (!rst_ni) begin
           Tests:       T1 T2 T3 
57         1/1                q <= RESVAL;
           Tests:       T1 T2 T3 
58         1/1              end else if (wr_en) begin
           Tests:       T1 T2 T3 
59         1/1                q <= wr_data;
           Tests:       T28 T29 T275 
60                          end
                        MISSING_ELSE
61                        end
62                      
63                        // feed back out for consolidation
64         1/1            assign ds = wr_en ? wr_data : qs;
           Tests:       T28 T29 T275 
65         1/1            assign qe = wr_en;
           Tests:       T28 T29 T275 
66                      
67                        if (SwAccess == SwAccessRC) begin : gen_rc
68                          // In case of a SW RC colliding with a HW write, SW gets the value written by HW
69                          // but the register is cleared to 0. See #5416 for a discussion.
70                          assign qs = de && we ? d : q;
71                        end else begin : gen_no_rc
72         1/1              assign qs = q;
           Tests:       T29 T275 T124 
Cond Coverage for Instance : tb.dut.top_earlgrey.u_rv_plic.u_reg.u_ie0_1_e_40
 | Total | Covered | Percent | 
| Conditions | 2 | 2 | 100.00 | 
| Logical | 2 | 2 | 100.00 | 
| Non-Logical | 0 | 0 |  | 
| Event | 0 | 0 |  | 
 LINE       64
 EXPRESSION (wr_en ? wr_data : qs)
             --1--
| -1- | Status | Tests |                       
| 0 | Covered | T1,T2,T3 | 
| 1 | Covered | T28,T29,T275 | 
Branch Coverage for Instance : tb.dut.top_earlgrey.u_rv_plic.u_reg.u_ie0_1_e_40
 | Line No. | Total | Covered | Percent | 
| Branches | 
 | 
5 | 
5 | 
100.00 | 
| TERNARY | 
64 | 
2 | 
2 | 
100.00 | 
| IF | 
56 | 
3 | 
3 | 
100.00 | 
64           assign ds = wr_en ? wr_data : qs;
                               -1-  
                               ==>  
                               ==>  
Branches:
| -1- | Status | Tests | 
| 1 | 
Covered | 
T28,T29,T275 | 
| 0 | 
Covered | 
T1,T2,T3 | 
56             if (!rst_ni) begin
               -1-  
57               q <= RESVAL;
                 ==>
58             end else if (wr_en) begin
                        -2-  
59               q <= wr_data;
                 ==>
60             end
               MISSING_ELSE
               ==>
Branches:
| -1- | -2- | Status | Tests | 
| 1 | 
- | 
Covered | 
T1,T2,T3 | 
| 0 | 
1 | 
Covered | 
T28,T29,T275 | 
| 0 | 
0 | 
Covered | 
T1,T2,T3 | 
 
Line Coverage for Instance : tb.dut.top_earlgrey.u_rv_plic.u_reg.u_ie0_1_e_41
 | Line No. | Total | Covered | Percent | 
| TOTAL |  | 7 | 7 | 100.00 | 
| ALWAYS | 56 | 4 | 4 | 100.00 | 
| CONT_ASSIGN | 64 | 1 | 1 | 100.00 | 
| CONT_ASSIGN | 65 | 1 | 1 | 100.00 | 
| CONT_ASSIGN | 72 | 1 | 1 | 100.00 | 
55                        always_ff @(posedge clk_i or negedge rst_ni) begin
56         1/1              if (!rst_ni) begin
           Tests:       T1 T2 T3 
57         1/1                q <= RESVAL;
           Tests:       T1 T2 T3 
58         1/1              end else if (wr_en) begin
           Tests:       T1 T2 T3 
59         1/1                q <= wr_data;
           Tests:       T28 T29 T275 
60                          end
                        MISSING_ELSE
61                        end
62                      
63                        // feed back out for consolidation
64         1/1            assign ds = wr_en ? wr_data : qs;
           Tests:       T28 T29 T275 
65         1/1            assign qe = wr_en;
           Tests:       T28 T29 T275 
66                      
67                        if (SwAccess == SwAccessRC) begin : gen_rc
68                          // In case of a SW RC colliding with a HW write, SW gets the value written by HW
69                          // but the register is cleared to 0. See #5416 for a discussion.
70                          assign qs = de && we ? d : q;
71                        end else begin : gen_no_rc
72         1/1              assign qs = q;
           Tests:       T29 T275 T124 
Cond Coverage for Instance : tb.dut.top_earlgrey.u_rv_plic.u_reg.u_ie0_1_e_41
 | Total | Covered | Percent | 
| Conditions | 2 | 2 | 100.00 | 
| Logical | 2 | 2 | 100.00 | 
| Non-Logical | 0 | 0 |  | 
| Event | 0 | 0 |  | 
 LINE       64
 EXPRESSION (wr_en ? wr_data : qs)
             --1--
| -1- | Status | Tests |                       
| 0 | Covered | T1,T2,T3 | 
| 1 | Covered | T28,T29,T275 | 
Branch Coverage for Instance : tb.dut.top_earlgrey.u_rv_plic.u_reg.u_ie0_1_e_41
 | Line No. | Total | Covered | Percent | 
| Branches | 
 | 
5 | 
5 | 
100.00 | 
| TERNARY | 
64 | 
2 | 
2 | 
100.00 | 
| IF | 
56 | 
3 | 
3 | 
100.00 | 
64           assign ds = wr_en ? wr_data : qs;
                               -1-  
                               ==>  
                               ==>  
Branches:
| -1- | Status | Tests | 
| 1 | 
Covered | 
T28,T29,T275 | 
| 0 | 
Covered | 
T1,T2,T3 | 
56             if (!rst_ni) begin
               -1-  
57               q <= RESVAL;
                 ==>
58             end else if (wr_en) begin
                        -2-  
59               q <= wr_data;
                 ==>
60             end
               MISSING_ELSE
               ==>
Branches:
| -1- | -2- | Status | Tests | 
| 1 | 
- | 
Covered | 
T1,T2,T3 | 
| 0 | 
1 | 
Covered | 
T28,T29,T275 | 
| 0 | 
0 | 
Covered | 
T1,T2,T3 | 
 
Line Coverage for Instance : tb.dut.top_earlgrey.u_rv_plic.u_reg.u_ie0_1_e_42
 | Line No. | Total | Covered | Percent | 
| TOTAL |  | 7 | 7 | 100.00 | 
| ALWAYS | 56 | 4 | 4 | 100.00 | 
| CONT_ASSIGN | 64 | 1 | 1 | 100.00 | 
| CONT_ASSIGN | 65 | 1 | 1 | 100.00 | 
| CONT_ASSIGN | 72 | 1 | 1 | 100.00 | 
55                        always_ff @(posedge clk_i or negedge rst_ni) begin
56         1/1              if (!rst_ni) begin
           Tests:       T1 T2 T3 
57         1/1                q <= RESVAL;
           Tests:       T1 T2 T3 
58         1/1              end else if (wr_en) begin
           Tests:       T1 T2 T3 
59         1/1                q <= wr_data;
           Tests:       T28 T29 T275 
60                          end
                        MISSING_ELSE
61                        end
62                      
63                        // feed back out for consolidation
64         1/1            assign ds = wr_en ? wr_data : qs;
           Tests:       T28 T29 T275 
65         1/1            assign qe = wr_en;
           Tests:       T28 T29 T275 
66                      
67                        if (SwAccess == SwAccessRC) begin : gen_rc
68                          // In case of a SW RC colliding with a HW write, SW gets the value written by HW
69                          // but the register is cleared to 0. See #5416 for a discussion.
70                          assign qs = de && we ? d : q;
71                        end else begin : gen_no_rc
72         1/1              assign qs = q;
           Tests:       T29 T275 T124 
Cond Coverage for Instance : tb.dut.top_earlgrey.u_rv_plic.u_reg.u_ie0_1_e_42
 | Total | Covered | Percent | 
| Conditions | 2 | 2 | 100.00 | 
| Logical | 2 | 2 | 100.00 | 
| Non-Logical | 0 | 0 |  | 
| Event | 0 | 0 |  | 
 LINE       64
 EXPRESSION (wr_en ? wr_data : qs)
             --1--
| -1- | Status | Tests |                       
| 0 | Covered | T1,T2,T3 | 
| 1 | Covered | T28,T29,T275 | 
Branch Coverage for Instance : tb.dut.top_earlgrey.u_rv_plic.u_reg.u_ie0_1_e_42
 | Line No. | Total | Covered | Percent | 
| Branches | 
 | 
5 | 
5 | 
100.00 | 
| TERNARY | 
64 | 
2 | 
2 | 
100.00 | 
| IF | 
56 | 
3 | 
3 | 
100.00 | 
64           assign ds = wr_en ? wr_data : qs;
                               -1-  
                               ==>  
                               ==>  
Branches:
| -1- | Status | Tests | 
| 1 | 
Covered | 
T28,T29,T275 | 
| 0 | 
Covered | 
T1,T2,T3 | 
56             if (!rst_ni) begin
               -1-  
57               q <= RESVAL;
                 ==>
58             end else if (wr_en) begin
                        -2-  
59               q <= wr_data;
                 ==>
60             end
               MISSING_ELSE
               ==>
Branches:
| -1- | -2- | Status | Tests | 
| 1 | 
- | 
Covered | 
T1,T2,T3 | 
| 0 | 
1 | 
Covered | 
T28,T29,T275 | 
| 0 | 
0 | 
Covered | 
T1,T2,T3 |