Line Coverage for Module :
otp_ctrl_ecc_reg ( parameter Width=64,Depth=9,Aw=4,EccWidth=8 + Width=64,Depth=2,Aw=1,EccWidth=8 + Width=64,Depth=5,Aw=3,EccWidth=8 + Width=64,Depth=11,Aw=4,EccWidth=8 )
Line Coverage for Module self-instances :
| Line No. | Total | Covered | Percent |
TOTAL | | 14 | 14 | 100.00 |
ALWAYS | 60 | 8 | 8 | 100.00 |
CONT_ASSIGN | 87 | 1 | 1 | 100.00 |
ALWAYS | 90 | 5 | 5 | 100.00 |
59 always_comb begin : p_write
60 1/1 data_o = data_q;
Tests: T1 T2 T3
61 1/1 data_d = data_q;
Tests: T1 T2 T3
62 1/1 ecc_d = ecc_q;
Tests: T1 T2 T3
63
64 1/1 rdata_o = '0;
Tests: T1 T2 T3
65 1/1 if (32'(addr_i) < Depth) begin
Tests: T1 T2 T3
66 1/1 rdata_o = data_q[addr_i];
Tests: T1 T2 T3
67 1/1 if (wren_i) begin
Tests: T1 T2 T3
68 1/1 {ecc_d[addr_i], data_d[addr_i]} = ecc_enc;
Tests: T1 T2 T3
69 end
MISSING_ELSE
70 end
MISSING_ELSE
71 end
72 end
73
74 // Concurrent ECC checks.
75 logic [Depth-1:0][1:0] err;
76 for (genvar k = 0; k < Depth; k++) begin : gen_ecc_dec
77 prim_secded_inv_72_64_dec u_prim_secded_inv_72_64_dec (
78 .data_i({ecc_q[k], data_q[k]}),
79 // We only rely on the error detection mechanism,
80 // and not on error correction.
81 .data_o(),
82 .syndrome_o(),
83 .err_o(err[k])
84 );
85 end
86
87 1/1 assign ecc_err_o = |err;
Tests: T1 T2 T3
88
89 always_ff @(posedge clk_i or negedge rst_ni) begin : p_regs
90 1/1 if (!rst_ni) begin
Tests: T1 T2 T3
91 1/1 ecc_q <= {Depth{prim_secded_pkg::SecdedInv7264ZeroEcc}};
Tests: T1 T2 T3
92 1/1 data_q <= '0;
Tests: T1 T2 T3
93 end else begin
94 1/1 ecc_q <= ecc_d;
Tests: T1 T2 T3
95 1/1 data_q <= data_d;
Tests: T1 T2 T3
Line Coverage for Module :
otp_ctrl_ecc_reg ( parameter Width=64,Depth=1,Aw=1,EccWidth=8 )
Line Coverage for Module self-instances :
| Line No. | Total | Covered | Percent |
TOTAL | | 14 | 14 | 100.00 |
ALWAYS | 46 | 8 | 8 | 100.00 |
CONT_ASSIGN | 87 | 1 | 1 | 100.00 |
ALWAYS | 90 | 5 | 5 | 100.00 |
45 always_comb begin : p_write
46 1/1 data_o = data_q;
Tests: T1 T2 T3
47 1/1 data_d = data_q;
Tests: T1 T2 T3
48 1/1 ecc_d = ecc_q;
Tests: T1 T2 T3
49
50 1/1 rdata_o = '0;
Tests: T1 T2 T3
51 1/1 if (32'(addr_i) < Depth) begin
Tests: T1 T2 T3
52 1/1 rdata_o = data_q[0];
Tests: T1 T2 T3
53 1/1 if (wren_i) begin
Tests: T1 T2 T3
54 1/1 {ecc_d[0], data_d[0]} = ecc_enc;
Tests: T1 T2 T3
55 end
MISSING_ELSE
56 end
==> MISSING_ELSE
57 end
58 end else begin : gen_multiple_words
59 always_comb begin : p_write
60 data_o = data_q;
61 data_d = data_q;
62 ecc_d = ecc_q;
63
64 rdata_o = '0;
65 if (32'(addr_i) < Depth) begin
66 rdata_o = data_q[addr_i];
67 if (wren_i) begin
68 {ecc_d[addr_i], data_d[addr_i]} = ecc_enc;
69 end
70 end
71 end
72 end
73
74 // Concurrent ECC checks.
75 logic [Depth-1:0][1:0] err;
76 for (genvar k = 0; k < Depth; k++) begin : gen_ecc_dec
77 prim_secded_inv_72_64_dec u_prim_secded_inv_72_64_dec (
78 .data_i({ecc_q[k], data_q[k]}),
79 // We only rely on the error detection mechanism,
80 // and not on error correction.
81 .data_o(),
82 .syndrome_o(),
83 .err_o(err[k])
84 );
85 end
86
87 1/1 assign ecc_err_o = |err;
Tests: T1 T2 T3
88
89 always_ff @(posedge clk_i or negedge rst_ni) begin : p_regs
90 1/1 if (!rst_ni) begin
Tests: T1 T2 T3
91 1/1 ecc_q <= {Depth{prim_secded_pkg::SecdedInv7264ZeroEcc}};
Tests: T1 T2 T3
92 1/1 data_q <= '0;
Tests: T1 T2 T3
93 end else begin
94 1/1 ecc_q <= ecc_d;
Tests: T1 T2 T3
95 1/1 data_q <= data_d;
Tests: T1 T2 T3
Branch Coverage for Module :
otp_ctrl_ecc_reg
| Line No. | Total | Covered | Percent |
Branches |
|
5 |
5 |
100.00 |
IF |
90 |
2 |
2 |
100.00 |
IF |
65 |
3 |
3 |
100.00 |
90 if (!rst_ni) begin
-1-
91 ecc_q <= {Depth{prim_secded_pkg::SecdedInv7264ZeroEcc}};
==>
92 data_q <= '0;
93 end else begin
94 ecc_q <= ecc_d;
==>
Branches:
-1- | Status | Tests |
1 |
Covered |
T1,T2,T3 |
0 |
Covered |
T1,T2,T3 |
65 if (32'(addr_i) < Depth) begin
-1-
66 rdata_o = data_q[addr_i];
67 if (wren_i) begin
-2-
68 {ecc_d[addr_i], data_d[addr_i]} = ecc_enc;
==>
69 end
MISSING_ELSE
==>
70 end
MISSING_ELSE
==>
Branches:
-1- | -2- | Status | Tests |
1 |
1 |
Covered |
T1,T2,T3 |
1 |
0 |
Covered |
T1,T2,T3 |
0 |
- |
Covered |
T25 |
Assert Coverage for Module :
otp_ctrl_ecc_reg
Assertion Details
DataKnown_A
Name | Attempts | Real Successes | Failures | Incomplete |
Total |
1055945869 |
1046356388 |
0 |
0 |
T1 |
69806 |
68926 |
0 |
0 |
T2 |
228569 |
224257 |
0 |
0 |
T3 |
181786 |
178068 |
0 |
0 |
T4 |
456940 |
452364 |
0 |
0 |
T5 |
274824 |
268048 |
0 |
0 |
T6 |
338536 |
337766 |
0 |
0 |
T10 |
489192 |
488367 |
0 |
0 |
T11 |
230186 |
225082 |
0 |
0 |
T12 |
453167 |
450901 |
0 |
0 |
T13 |
811789 |
798039 |
0 |
0 |
DataOutKnown_A
Name | Attempts | Real Successes | Failures | Incomplete |
Total |
1055945869 |
1046356388 |
0 |
0 |
T1 |
69806 |
68926 |
0 |
0 |
T2 |
228569 |
224257 |
0 |
0 |
T3 |
181786 |
178068 |
0 |
0 |
T4 |
456940 |
452364 |
0 |
0 |
T5 |
274824 |
268048 |
0 |
0 |
T6 |
338536 |
337766 |
0 |
0 |
T10 |
489192 |
488367 |
0 |
0 |
T11 |
230186 |
225082 |
0 |
0 |
T12 |
453167 |
450901 |
0 |
0 |
T13 |
811789 |
798039 |
0 |
0 |
EccErrKnown_A
Name | Attempts | Real Successes | Failures | Incomplete |
Total |
1055945869 |
1046356388 |
0 |
0 |
T1 |
69806 |
68926 |
0 |
0 |
T2 |
228569 |
224257 |
0 |
0 |
T3 |
181786 |
178068 |
0 |
0 |
T4 |
456940 |
452364 |
0 |
0 |
T5 |
274824 |
268048 |
0 |
0 |
T6 |
338536 |
337766 |
0 |
0 |
T10 |
489192 |
488367 |
0 |
0 |
T11 |
230186 |
225082 |
0 |
0 |
T12 |
453167 |
450901 |
0 |
0 |
T13 |
811789 |
798039 |
0 |
0 |
EccKnown_A
Name | Attempts | Real Successes | Failures | Incomplete |
Total |
1055945869 |
1046356388 |
0 |
0 |
T1 |
69806 |
68926 |
0 |
0 |
T2 |
228569 |
224257 |
0 |
0 |
T3 |
181786 |
178068 |
0 |
0 |
T4 |
456940 |
452364 |
0 |
0 |
T5 |
274824 |
268048 |
0 |
0 |
T6 |
338536 |
337766 |
0 |
0 |
T10 |
489192 |
488367 |
0 |
0 |
T11 |
230186 |
225082 |
0 |
0 |
T12 |
453167 |
450901 |
0 |
0 |
T13 |
811789 |
798039 |
0 |
0 |
RDataOutKnown_A
Name | Attempts | Real Successes | Failures | Incomplete |
Total |
1055945869 |
1046356388 |
0 |
0 |
T1 |
69806 |
68926 |
0 |
0 |
T2 |
228569 |
224257 |
0 |
0 |
T3 |
181786 |
178068 |
0 |
0 |
T4 |
456940 |
452364 |
0 |
0 |
T5 |
274824 |
268048 |
0 |
0 |
T6 |
338536 |
337766 |
0 |
0 |
T10 |
489192 |
488367 |
0 |
0 |
T11 |
230186 |
225082 |
0 |
0 |
T12 |
453167 |
450901 |
0 |
0 |
T13 |
811789 |
798039 |
0 |
0 |
WidthMustBe64bit_A
Name | Attempts | Real Successes | Failures | Incomplete |
Total |
12320 |
12320 |
0 |
0 |
T1 |
11 |
11 |
0 |
0 |
T2 |
11 |
11 |
0 |
0 |
T3 |
11 |
11 |
0 |
0 |
T4 |
11 |
11 |
0 |
0 |
T5 |
11 |
11 |
0 |
0 |
T6 |
11 |
11 |
0 |
0 |
T10 |
11 |
11 |
0 |
0 |
T11 |
11 |
11 |
0 |
0 |
T12 |
11 |
11 |
0 |
0 |
T13 |
11 |
11 |
0 |
0 |
Line Coverage for Instance : tb.dut.gen_partitions[0].gen_unbuffered.u_part_unbuf.gen_ecc_reg.u_otp_ctrl_ecc_reg
| Line No. | Total | Covered | Percent |
TOTAL | | 14 | 14 | 100.00 |
ALWAYS | 46 | 8 | 8 | 100.00 |
CONT_ASSIGN | 87 | 1 | 1 | 100.00 |
ALWAYS | 90 | 5 | 5 | 100.00 |
45 always_comb begin : p_write
46 1/1 data_o = data_q;
Tests: T1 T2 T3
47 1/1 data_d = data_q;
Tests: T1 T2 T3
48 1/1 ecc_d = ecc_q;
Tests: T1 T2 T3
49
50 1/1 rdata_o = '0;
Tests: T1 T2 T3
51 1/1 if (32'(addr_i) < Depth) begin
Tests: T1 T2 T3
52 1/1 rdata_o = data_q[0];
Tests: T1 T2 T3
53 1/1 if (wren_i) begin
Tests: T1 T2 T3
54 1/1 {ecc_d[0], data_d[0]} = ecc_enc;
Tests: T1 T2 T3
55 end
MISSING_ELSE
56 end
==> MISSING_ELSE
57 end
58 end else begin : gen_multiple_words
59 always_comb begin : p_write
60 data_o = data_q;
61 data_d = data_q;
62 ecc_d = ecc_q;
63
64 rdata_o = '0;
65 if (32'(addr_i) < Depth) begin
66 rdata_o = data_q[addr_i];
67 if (wren_i) begin
68 {ecc_d[addr_i], data_d[addr_i]} = ecc_enc;
69 end
70 end
71 end
72 end
73
74 // Concurrent ECC checks.
75 logic [Depth-1:0][1:0] err;
76 for (genvar k = 0; k < Depth; k++) begin : gen_ecc_dec
77 prim_secded_inv_72_64_dec u_prim_secded_inv_72_64_dec (
78 .data_i({ecc_q[k], data_q[k]}),
79 // We only rely on the error detection mechanism,
80 // and not on error correction.
81 .data_o(),
82 .syndrome_o(),
83 .err_o(err[k])
84 );
85 end
86
87 1/1 assign ecc_err_o = |err;
Tests: T1 T2 T3
88
89 always_ff @(posedge clk_i or negedge rst_ni) begin : p_regs
90 1/1 if (!rst_ni) begin
Tests: T1 T2 T3
91 1/1 ecc_q <= {Depth{prim_secded_pkg::SecdedInv7264ZeroEcc}};
Tests: T1 T2 T3
92 1/1 data_q <= '0;
Tests: T1 T2 T3
93 end else begin
94 1/1 ecc_q <= ecc_d;
Tests: T1 T2 T3
95 1/1 data_q <= data_d;
Tests: T1 T2 T3
Branch Coverage for Instance : tb.dut.gen_partitions[0].gen_unbuffered.u_part_unbuf.gen_ecc_reg.u_otp_ctrl_ecc_reg
| Line No. | Total | Covered | Percent |
Branches |
|
5 |
4 |
80.00 |
IF |
90 |
2 |
2 |
100.00 |
IF |
65 |
3 |
2 |
66.67 |
90 if (!rst_ni) begin
-1-
91 ecc_q <= {Depth{prim_secded_pkg::SecdedInv7264ZeroEcc}};
==>
92 data_q <= '0;
93 end else begin
94 ecc_q <= ecc_d;
==>
Branches:
-1- | Status | Tests |
1 |
Covered |
T1,T2,T3 |
0 |
Covered |
T1,T2,T3 |
65 if (32'(addr_i) < Depth) begin
-1-
66 rdata_o = data_q[addr_i];
67 if (wren_i) begin
-2-
68 {ecc_d[addr_i], data_d[addr_i]} = ecc_enc;
==>
69 end
MISSING_ELSE
==>
70 end
MISSING_ELSE
==>
Branches:
-1- | -2- | Status | Tests |
1 |
1 |
Covered |
T1,T2,T3 |
1 |
0 |
Covered |
T1,T2,T3 |
0 |
- |
Not Covered |
|
Assert Coverage for Instance : tb.dut.gen_partitions[0].gen_unbuffered.u_part_unbuf.gen_ecc_reg.u_otp_ctrl_ecc_reg
Assertion Details
DataKnown_A
Name | Attempts | Real Successes | Failures | Incomplete |
Total |
95995079 |
95123308 |
0 |
0 |
T1 |
6346 |
6266 |
0 |
0 |
T2 |
20779 |
20387 |
0 |
0 |
T3 |
16526 |
16188 |
0 |
0 |
T4 |
41540 |
41124 |
0 |
0 |
T5 |
24984 |
24368 |
0 |
0 |
T6 |
30776 |
30706 |
0 |
0 |
T10 |
44472 |
44397 |
0 |
0 |
T11 |
20926 |
20462 |
0 |
0 |
T12 |
41197 |
40991 |
0 |
0 |
T13 |
73799 |
72549 |
0 |
0 |
DataOutKnown_A
Name | Attempts | Real Successes | Failures | Incomplete |
Total |
95995079 |
95123308 |
0 |
0 |
T1 |
6346 |
6266 |
0 |
0 |
T2 |
20779 |
20387 |
0 |
0 |
T3 |
16526 |
16188 |
0 |
0 |
T4 |
41540 |
41124 |
0 |
0 |
T5 |
24984 |
24368 |
0 |
0 |
T6 |
30776 |
30706 |
0 |
0 |
T10 |
44472 |
44397 |
0 |
0 |
T11 |
20926 |
20462 |
0 |
0 |
T12 |
41197 |
40991 |
0 |
0 |
T13 |
73799 |
72549 |
0 |
0 |
EccErrKnown_A
Name | Attempts | Real Successes | Failures | Incomplete |
Total |
95995079 |
95123308 |
0 |
0 |
T1 |
6346 |
6266 |
0 |
0 |
T2 |
20779 |
20387 |
0 |
0 |
T3 |
16526 |
16188 |
0 |
0 |
T4 |
41540 |
41124 |
0 |
0 |
T5 |
24984 |
24368 |
0 |
0 |
T6 |
30776 |
30706 |
0 |
0 |
T10 |
44472 |
44397 |
0 |
0 |
T11 |
20926 |
20462 |
0 |
0 |
T12 |
41197 |
40991 |
0 |
0 |
T13 |
73799 |
72549 |
0 |
0 |
EccKnown_A
Name | Attempts | Real Successes | Failures | Incomplete |
Total |
95995079 |
95123308 |
0 |
0 |
T1 |
6346 |
6266 |
0 |
0 |
T2 |
20779 |
20387 |
0 |
0 |
T3 |
16526 |
16188 |
0 |
0 |
T4 |
41540 |
41124 |
0 |
0 |
T5 |
24984 |
24368 |
0 |
0 |
T6 |
30776 |
30706 |
0 |
0 |
T10 |
44472 |
44397 |
0 |
0 |
T11 |
20926 |
20462 |
0 |
0 |
T12 |
41197 |
40991 |
0 |
0 |
T13 |
73799 |
72549 |
0 |
0 |
RDataOutKnown_A
Name | Attempts | Real Successes | Failures | Incomplete |
Total |
95995079 |
95123308 |
0 |
0 |
T1 |
6346 |
6266 |
0 |
0 |
T2 |
20779 |
20387 |
0 |
0 |
T3 |
16526 |
16188 |
0 |
0 |
T4 |
41540 |
41124 |
0 |
0 |
T5 |
24984 |
24368 |
0 |
0 |
T6 |
30776 |
30706 |
0 |
0 |
T10 |
44472 |
44397 |
0 |
0 |
T11 |
20926 |
20462 |
0 |
0 |
T12 |
41197 |
40991 |
0 |
0 |
T13 |
73799 |
72549 |
0 |
0 |
WidthMustBe64bit_A
Name | Attempts | Real Successes | Failures | Incomplete |
Total |
1120 |
1120 |
0 |
0 |
T1 |
1 |
1 |
0 |
0 |
T2 |
1 |
1 |
0 |
0 |
T3 |
1 |
1 |
0 |
0 |
T4 |
1 |
1 |
0 |
0 |
T5 |
1 |
1 |
0 |
0 |
T6 |
1 |
1 |
0 |
0 |
T10 |
1 |
1 |
0 |
0 |
T11 |
1 |
1 |
0 |
0 |
T12 |
1 |
1 |
0 |
0 |
T13 |
1 |
1 |
0 |
0 |
Line Coverage for Instance : tb.dut.gen_partitions[1].gen_unbuffered.u_part_unbuf.gen_ecc_reg.u_otp_ctrl_ecc_reg
| Line No. | Total | Covered | Percent |
TOTAL | | 14 | 14 | 100.00 |
ALWAYS | 46 | 8 | 8 | 100.00 |
CONT_ASSIGN | 87 | 1 | 1 | 100.00 |
ALWAYS | 90 | 5 | 5 | 100.00 |
45 always_comb begin : p_write
46 1/1 data_o = data_q;
Tests: T1 T2 T3
47 1/1 data_d = data_q;
Tests: T1 T2 T3
48 1/1 ecc_d = ecc_q;
Tests: T1 T2 T3
49
50 1/1 rdata_o = '0;
Tests: T1 T2 T3
51 1/1 if (32'(addr_i) < Depth) begin
Tests: T1 T2 T3
52 1/1 rdata_o = data_q[0];
Tests: T1 T2 T3
53 1/1 if (wren_i) begin
Tests: T1 T2 T3
54 1/1 {ecc_d[0], data_d[0]} = ecc_enc;
Tests: T1 T2 T3
55 end
MISSING_ELSE
56 end
==> MISSING_ELSE
57 end
58 end else begin : gen_multiple_words
59 always_comb begin : p_write
60 data_o = data_q;
61 data_d = data_q;
62 ecc_d = ecc_q;
63
64 rdata_o = '0;
65 if (32'(addr_i) < Depth) begin
66 rdata_o = data_q[addr_i];
67 if (wren_i) begin
68 {ecc_d[addr_i], data_d[addr_i]} = ecc_enc;
69 end
70 end
71 end
72 end
73
74 // Concurrent ECC checks.
75 logic [Depth-1:0][1:0] err;
76 for (genvar k = 0; k < Depth; k++) begin : gen_ecc_dec
77 prim_secded_inv_72_64_dec u_prim_secded_inv_72_64_dec (
78 .data_i({ecc_q[k], data_q[k]}),
79 // We only rely on the error detection mechanism,
80 // and not on error correction.
81 .data_o(),
82 .syndrome_o(),
83 .err_o(err[k])
84 );
85 end
86
87 1/1 assign ecc_err_o = |err;
Tests: T1 T2 T3
88
89 always_ff @(posedge clk_i or negedge rst_ni) begin : p_regs
90 1/1 if (!rst_ni) begin
Tests: T1 T2 T3
91 1/1 ecc_q <= {Depth{prim_secded_pkg::SecdedInv7264ZeroEcc}};
Tests: T1 T2 T3
92 1/1 data_q <= '0;
Tests: T1 T2 T3
93 end else begin
94 1/1 ecc_q <= ecc_d;
Tests: T1 T2 T3
95 1/1 data_q <= data_d;
Tests: T1 T2 T3
Branch Coverage for Instance : tb.dut.gen_partitions[1].gen_unbuffered.u_part_unbuf.gen_ecc_reg.u_otp_ctrl_ecc_reg
| Line No. | Total | Covered | Percent |
Branches |
|
5 |
4 |
80.00 |
IF |
90 |
2 |
2 |
100.00 |
IF |
65 |
3 |
2 |
66.67 |
90 if (!rst_ni) begin
-1-
91 ecc_q <= {Depth{prim_secded_pkg::SecdedInv7264ZeroEcc}};
==>
92 data_q <= '0;
93 end else begin
94 ecc_q <= ecc_d;
==>
Branches:
-1- | Status | Tests |
1 |
Covered |
T1,T2,T3 |
0 |
Covered |
T1,T2,T3 |
65 if (32'(addr_i) < Depth) begin
-1-
66 rdata_o = data_q[addr_i];
67 if (wren_i) begin
-2-
68 {ecc_d[addr_i], data_d[addr_i]} = ecc_enc;
==>
69 end
MISSING_ELSE
==>
70 end
MISSING_ELSE
==>
Branches:
-1- | -2- | Status | Tests |
1 |
1 |
Covered |
T1,T2,T3 |
1 |
0 |
Covered |
T1,T2,T3 |
0 |
- |
Not Covered |
|
Assert Coverage for Instance : tb.dut.gen_partitions[1].gen_unbuffered.u_part_unbuf.gen_ecc_reg.u_otp_ctrl_ecc_reg
Assertion Details
DataKnown_A
Name | Attempts | Real Successes | Failures | Incomplete |
Total |
95995079 |
95123308 |
0 |
0 |
T1 |
6346 |
6266 |
0 |
0 |
T2 |
20779 |
20387 |
0 |
0 |
T3 |
16526 |
16188 |
0 |
0 |
T4 |
41540 |
41124 |
0 |
0 |
T5 |
24984 |
24368 |
0 |
0 |
T6 |
30776 |
30706 |
0 |
0 |
T10 |
44472 |
44397 |
0 |
0 |
T11 |
20926 |
20462 |
0 |
0 |
T12 |
41197 |
40991 |
0 |
0 |
T13 |
73799 |
72549 |
0 |
0 |
DataOutKnown_A
Name | Attempts | Real Successes | Failures | Incomplete |
Total |
95995079 |
95123308 |
0 |
0 |
T1 |
6346 |
6266 |
0 |
0 |
T2 |
20779 |
20387 |
0 |
0 |
T3 |
16526 |
16188 |
0 |
0 |
T4 |
41540 |
41124 |
0 |
0 |
T5 |
24984 |
24368 |
0 |
0 |
T6 |
30776 |
30706 |
0 |
0 |
T10 |
44472 |
44397 |
0 |
0 |
T11 |
20926 |
20462 |
0 |
0 |
T12 |
41197 |
40991 |
0 |
0 |
T13 |
73799 |
72549 |
0 |
0 |
EccErrKnown_A
Name | Attempts | Real Successes | Failures | Incomplete |
Total |
95995079 |
95123308 |
0 |
0 |
T1 |
6346 |
6266 |
0 |
0 |
T2 |
20779 |
20387 |
0 |
0 |
T3 |
16526 |
16188 |
0 |
0 |
T4 |
41540 |
41124 |
0 |
0 |
T5 |
24984 |
24368 |
0 |
0 |
T6 |
30776 |
30706 |
0 |
0 |
T10 |
44472 |
44397 |
0 |
0 |
T11 |
20926 |
20462 |
0 |
0 |
T12 |
41197 |
40991 |
0 |
0 |
T13 |
73799 |
72549 |
0 |
0 |
EccKnown_A
Name | Attempts | Real Successes | Failures | Incomplete |
Total |
95995079 |
95123308 |
0 |
0 |
T1 |
6346 |
6266 |
0 |
0 |
T2 |
20779 |
20387 |
0 |
0 |
T3 |
16526 |
16188 |
0 |
0 |
T4 |
41540 |
41124 |
0 |
0 |
T5 |
24984 |
24368 |
0 |
0 |
T6 |
30776 |
30706 |
0 |
0 |
T10 |
44472 |
44397 |
0 |
0 |
T11 |
20926 |
20462 |
0 |
0 |
T12 |
41197 |
40991 |
0 |
0 |
T13 |
73799 |
72549 |
0 |
0 |
RDataOutKnown_A
Name | Attempts | Real Successes | Failures | Incomplete |
Total |
95995079 |
95123308 |
0 |
0 |
T1 |
6346 |
6266 |
0 |
0 |
T2 |
20779 |
20387 |
0 |
0 |
T3 |
16526 |
16188 |
0 |
0 |
T4 |
41540 |
41124 |
0 |
0 |
T5 |
24984 |
24368 |
0 |
0 |
T6 |
30776 |
30706 |
0 |
0 |
T10 |
44472 |
44397 |
0 |
0 |
T11 |
20926 |
20462 |
0 |
0 |
T12 |
41197 |
40991 |
0 |
0 |
T13 |
73799 |
72549 |
0 |
0 |
WidthMustBe64bit_A
Name | Attempts | Real Successes | Failures | Incomplete |
Total |
1120 |
1120 |
0 |
0 |
T1 |
1 |
1 |
0 |
0 |
T2 |
1 |
1 |
0 |
0 |
T3 |
1 |
1 |
0 |
0 |
T4 |
1 |
1 |
0 |
0 |
T5 |
1 |
1 |
0 |
0 |
T6 |
1 |
1 |
0 |
0 |
T10 |
1 |
1 |
0 |
0 |
T11 |
1 |
1 |
0 |
0 |
T12 |
1 |
1 |
0 |
0 |
T13 |
1 |
1 |
0 |
0 |
Line Coverage for Instance : tb.dut.gen_partitions[2].gen_unbuffered.u_part_unbuf.gen_ecc_reg.u_otp_ctrl_ecc_reg
| Line No. | Total | Covered | Percent |
TOTAL | | 14 | 14 | 100.00 |
ALWAYS | 46 | 8 | 8 | 100.00 |
CONT_ASSIGN | 87 | 1 | 1 | 100.00 |
ALWAYS | 90 | 5 | 5 | 100.00 |
45 always_comb begin : p_write
46 1/1 data_o = data_q;
Tests: T1 T2 T3
47 1/1 data_d = data_q;
Tests: T1 T2 T3
48 1/1 ecc_d = ecc_q;
Tests: T1 T2 T3
49
50 1/1 rdata_o = '0;
Tests: T1 T2 T3
51 1/1 if (32'(addr_i) < Depth) begin
Tests: T1 T2 T3
52 1/1 rdata_o = data_q[0];
Tests: T1 T2 T3
53 1/1 if (wren_i) begin
Tests: T1 T2 T3
54 1/1 {ecc_d[0], data_d[0]} = ecc_enc;
Tests: T1 T2 T3
55 end
MISSING_ELSE
56 end
==> MISSING_ELSE
57 end
58 end else begin : gen_multiple_words
59 always_comb begin : p_write
60 data_o = data_q;
61 data_d = data_q;
62 ecc_d = ecc_q;
63
64 rdata_o = '0;
65 if (32'(addr_i) < Depth) begin
66 rdata_o = data_q[addr_i];
67 if (wren_i) begin
68 {ecc_d[addr_i], data_d[addr_i]} = ecc_enc;
69 end
70 end
71 end
72 end
73
74 // Concurrent ECC checks.
75 logic [Depth-1:0][1:0] err;
76 for (genvar k = 0; k < Depth; k++) begin : gen_ecc_dec
77 prim_secded_inv_72_64_dec u_prim_secded_inv_72_64_dec (
78 .data_i({ecc_q[k], data_q[k]}),
79 // We only rely on the error detection mechanism,
80 // and not on error correction.
81 .data_o(),
82 .syndrome_o(),
83 .err_o(err[k])
84 );
85 end
86
87 1/1 assign ecc_err_o = |err;
Tests: T1 T2 T3
88
89 always_ff @(posedge clk_i or negedge rst_ni) begin : p_regs
90 1/1 if (!rst_ni) begin
Tests: T1 T2 T3
91 1/1 ecc_q <= {Depth{prim_secded_pkg::SecdedInv7264ZeroEcc}};
Tests: T1 T2 T3
92 1/1 data_q <= '0;
Tests: T1 T2 T3
93 end else begin
94 1/1 ecc_q <= ecc_d;
Tests: T1 T2 T3
95 1/1 data_q <= data_d;
Tests: T1 T2 T3
Branch Coverage for Instance : tb.dut.gen_partitions[2].gen_unbuffered.u_part_unbuf.gen_ecc_reg.u_otp_ctrl_ecc_reg
| Line No. | Total | Covered | Percent |
Branches |
|
5 |
4 |
80.00 |
IF |
90 |
2 |
2 |
100.00 |
IF |
65 |
3 |
2 |
66.67 |
90 if (!rst_ni) begin
-1-
91 ecc_q <= {Depth{prim_secded_pkg::SecdedInv7264ZeroEcc}};
==>
92 data_q <= '0;
93 end else begin
94 ecc_q <= ecc_d;
==>
Branches:
-1- | Status | Tests |
1 |
Covered |
T1,T2,T3 |
0 |
Covered |
T1,T2,T3 |
65 if (32'(addr_i) < Depth) begin
-1-
66 rdata_o = data_q[addr_i];
67 if (wren_i) begin
-2-
68 {ecc_d[addr_i], data_d[addr_i]} = ecc_enc;
==>
69 end
MISSING_ELSE
==>
70 end
MISSING_ELSE
==>
Branches:
-1- | -2- | Status | Tests |
1 |
1 |
Covered |
T1,T2,T3 |
1 |
0 |
Covered |
T1,T2,T3 |
0 |
- |
Not Covered |
|
Assert Coverage for Instance : tb.dut.gen_partitions[2].gen_unbuffered.u_part_unbuf.gen_ecc_reg.u_otp_ctrl_ecc_reg
Assertion Details
DataKnown_A
Name | Attempts | Real Successes | Failures | Incomplete |
Total |
95995079 |
95123308 |
0 |
0 |
T1 |
6346 |
6266 |
0 |
0 |
T2 |
20779 |
20387 |
0 |
0 |
T3 |
16526 |
16188 |
0 |
0 |
T4 |
41540 |
41124 |
0 |
0 |
T5 |
24984 |
24368 |
0 |
0 |
T6 |
30776 |
30706 |
0 |
0 |
T10 |
44472 |
44397 |
0 |
0 |
T11 |
20926 |
20462 |
0 |
0 |
T12 |
41197 |
40991 |
0 |
0 |
T13 |
73799 |
72549 |
0 |
0 |
DataOutKnown_A
Name | Attempts | Real Successes | Failures | Incomplete |
Total |
95995079 |
95123308 |
0 |
0 |
T1 |
6346 |
6266 |
0 |
0 |
T2 |
20779 |
20387 |
0 |
0 |
T3 |
16526 |
16188 |
0 |
0 |
T4 |
41540 |
41124 |
0 |
0 |
T5 |
24984 |
24368 |
0 |
0 |
T6 |
30776 |
30706 |
0 |
0 |
T10 |
44472 |
44397 |
0 |
0 |
T11 |
20926 |
20462 |
0 |
0 |
T12 |
41197 |
40991 |
0 |
0 |
T13 |
73799 |
72549 |
0 |
0 |
EccErrKnown_A
Name | Attempts | Real Successes | Failures | Incomplete |
Total |
95995079 |
95123308 |
0 |
0 |
T1 |
6346 |
6266 |
0 |
0 |
T2 |
20779 |
20387 |
0 |
0 |
T3 |
16526 |
16188 |
0 |
0 |
T4 |
41540 |
41124 |
0 |
0 |
T5 |
24984 |
24368 |
0 |
0 |
T6 |
30776 |
30706 |
0 |
0 |
T10 |
44472 |
44397 |
0 |
0 |
T11 |
20926 |
20462 |
0 |
0 |
T12 |
41197 |
40991 |
0 |
0 |
T13 |
73799 |
72549 |
0 |
0 |
EccKnown_A
Name | Attempts | Real Successes | Failures | Incomplete |
Total |
95995079 |
95123308 |
0 |
0 |
T1 |
6346 |
6266 |
0 |
0 |
T2 |
20779 |
20387 |
0 |
0 |
T3 |
16526 |
16188 |
0 |
0 |
T4 |
41540 |
41124 |
0 |
0 |
T5 |
24984 |
24368 |
0 |
0 |
T6 |
30776 |
30706 |
0 |
0 |
T10 |
44472 |
44397 |
0 |
0 |
T11 |
20926 |
20462 |
0 |
0 |
T12 |
41197 |
40991 |
0 |
0 |
T13 |
73799 |
72549 |
0 |
0 |
RDataOutKnown_A
Name | Attempts | Real Successes | Failures | Incomplete |
Total |
95995079 |
95123308 |
0 |
0 |
T1 |
6346 |
6266 |
0 |
0 |
T2 |
20779 |
20387 |
0 |
0 |
T3 |
16526 |
16188 |
0 |
0 |
T4 |
41540 |
41124 |
0 |
0 |
T5 |
24984 |
24368 |
0 |
0 |
T6 |
30776 |
30706 |
0 |
0 |
T10 |
44472 |
44397 |
0 |
0 |
T11 |
20926 |
20462 |
0 |
0 |
T12 |
41197 |
40991 |
0 |
0 |
T13 |
73799 |
72549 |
0 |
0 |
WidthMustBe64bit_A
Name | Attempts | Real Successes | Failures | Incomplete |
Total |
1120 |
1120 |
0 |
0 |
T1 |
1 |
1 |
0 |
0 |
T2 |
1 |
1 |
0 |
0 |
T3 |
1 |
1 |
0 |
0 |
T4 |
1 |
1 |
0 |
0 |
T5 |
1 |
1 |
0 |
0 |
T6 |
1 |
1 |
0 |
0 |
T10 |
1 |
1 |
0 |
0 |
T11 |
1 |
1 |
0 |
0 |
T12 |
1 |
1 |
0 |
0 |
T13 |
1 |
1 |
0 |
0 |
Line Coverage for Instance : tb.dut.gen_partitions[3].gen_unbuffered.u_part_unbuf.gen_ecc_reg.u_otp_ctrl_ecc_reg
| Line No. | Total | Covered | Percent |
TOTAL | | 14 | 14 | 100.00 |
ALWAYS | 46 | 8 | 8 | 100.00 |
CONT_ASSIGN | 87 | 1 | 1 | 100.00 |
ALWAYS | 90 | 5 | 5 | 100.00 |
45 always_comb begin : p_write
46 1/1 data_o = data_q;
Tests: T1 T2 T3
47 1/1 data_d = data_q;
Tests: T1 T2 T3
48 1/1 ecc_d = ecc_q;
Tests: T1 T2 T3
49
50 1/1 rdata_o = '0;
Tests: T1 T2 T3
51 1/1 if (32'(addr_i) < Depth) begin
Tests: T1 T2 T3
52 1/1 rdata_o = data_q[0];
Tests: T1 T2 T3
53 1/1 if (wren_i) begin
Tests: T1 T2 T3
54 1/1 {ecc_d[0], data_d[0]} = ecc_enc;
Tests: T1 T2 T3
55 end
MISSING_ELSE
56 end
==> MISSING_ELSE
57 end
58 end else begin : gen_multiple_words
59 always_comb begin : p_write
60 data_o = data_q;
61 data_d = data_q;
62 ecc_d = ecc_q;
63
64 rdata_o = '0;
65 if (32'(addr_i) < Depth) begin
66 rdata_o = data_q[addr_i];
67 if (wren_i) begin
68 {ecc_d[addr_i], data_d[addr_i]} = ecc_enc;
69 end
70 end
71 end
72 end
73
74 // Concurrent ECC checks.
75 logic [Depth-1:0][1:0] err;
76 for (genvar k = 0; k < Depth; k++) begin : gen_ecc_dec
77 prim_secded_inv_72_64_dec u_prim_secded_inv_72_64_dec (
78 .data_i({ecc_q[k], data_q[k]}),
79 // We only rely on the error detection mechanism,
80 // and not on error correction.
81 .data_o(),
82 .syndrome_o(),
83 .err_o(err[k])
84 );
85 end
86
87 1/1 assign ecc_err_o = |err;
Tests: T1 T2 T3
88
89 always_ff @(posedge clk_i or negedge rst_ni) begin : p_regs
90 1/1 if (!rst_ni) begin
Tests: T1 T2 T3
91 1/1 ecc_q <= {Depth{prim_secded_pkg::SecdedInv7264ZeroEcc}};
Tests: T1 T2 T3
92 1/1 data_q <= '0;
Tests: T1 T2 T3
93 end else begin
94 1/1 ecc_q <= ecc_d;
Tests: T1 T2 T3
95 1/1 data_q <= data_d;
Tests: T1 T2 T3
Branch Coverage for Instance : tb.dut.gen_partitions[3].gen_unbuffered.u_part_unbuf.gen_ecc_reg.u_otp_ctrl_ecc_reg
| Line No. | Total | Covered | Percent |
Branches |
|
5 |
4 |
80.00 |
IF |
90 |
2 |
2 |
100.00 |
IF |
65 |
3 |
2 |
66.67 |
90 if (!rst_ni) begin
-1-
91 ecc_q <= {Depth{prim_secded_pkg::SecdedInv7264ZeroEcc}};
==>
92 data_q <= '0;
93 end else begin
94 ecc_q <= ecc_d;
==>
Branches:
-1- | Status | Tests |
1 |
Covered |
T1,T2,T3 |
0 |
Covered |
T1,T2,T3 |
65 if (32'(addr_i) < Depth) begin
-1-
66 rdata_o = data_q[addr_i];
67 if (wren_i) begin
-2-
68 {ecc_d[addr_i], data_d[addr_i]} = ecc_enc;
==>
69 end
MISSING_ELSE
==>
70 end
MISSING_ELSE
==>
Branches:
-1- | -2- | Status | Tests |
1 |
1 |
Covered |
T1,T2,T3 |
1 |
0 |
Covered |
T1,T2,T3 |
0 |
- |
Not Covered |
|
Assert Coverage for Instance : tb.dut.gen_partitions[3].gen_unbuffered.u_part_unbuf.gen_ecc_reg.u_otp_ctrl_ecc_reg
Assertion Details
DataKnown_A
Name | Attempts | Real Successes | Failures | Incomplete |
Total |
95995079 |
95123308 |
0 |
0 |
T1 |
6346 |
6266 |
0 |
0 |
T2 |
20779 |
20387 |
0 |
0 |
T3 |
16526 |
16188 |
0 |
0 |
T4 |
41540 |
41124 |
0 |
0 |
T5 |
24984 |
24368 |
0 |
0 |
T6 |
30776 |
30706 |
0 |
0 |
T10 |
44472 |
44397 |
0 |
0 |
T11 |
20926 |
20462 |
0 |
0 |
T12 |
41197 |
40991 |
0 |
0 |
T13 |
73799 |
72549 |
0 |
0 |
DataOutKnown_A
Name | Attempts | Real Successes | Failures | Incomplete |
Total |
95995079 |
95123308 |
0 |
0 |
T1 |
6346 |
6266 |
0 |
0 |
T2 |
20779 |
20387 |
0 |
0 |
T3 |
16526 |
16188 |
0 |
0 |
T4 |
41540 |
41124 |
0 |
0 |
T5 |
24984 |
24368 |
0 |
0 |
T6 |
30776 |
30706 |
0 |
0 |
T10 |
44472 |
44397 |
0 |
0 |
T11 |
20926 |
20462 |
0 |
0 |
T12 |
41197 |
40991 |
0 |
0 |
T13 |
73799 |
72549 |
0 |
0 |
EccErrKnown_A
Name | Attempts | Real Successes | Failures | Incomplete |
Total |
95995079 |
95123308 |
0 |
0 |
T1 |
6346 |
6266 |
0 |
0 |
T2 |
20779 |
20387 |
0 |
0 |
T3 |
16526 |
16188 |
0 |
0 |
T4 |
41540 |
41124 |
0 |
0 |
T5 |
24984 |
24368 |
0 |
0 |
T6 |
30776 |
30706 |
0 |
0 |
T10 |
44472 |
44397 |
0 |
0 |
T11 |
20926 |
20462 |
0 |
0 |
T12 |
41197 |
40991 |
0 |
0 |
T13 |
73799 |
72549 |
0 |
0 |
EccKnown_A
Name | Attempts | Real Successes | Failures | Incomplete |
Total |
95995079 |
95123308 |
0 |
0 |
T1 |
6346 |
6266 |
0 |
0 |
T2 |
20779 |
20387 |
0 |
0 |
T3 |
16526 |
16188 |
0 |
0 |
T4 |
41540 |
41124 |
0 |
0 |
T5 |
24984 |
24368 |
0 |
0 |
T6 |
30776 |
30706 |
0 |
0 |
T10 |
44472 |
44397 |
0 |
0 |
T11 |
20926 |
20462 |
0 |
0 |
T12 |
41197 |
40991 |
0 |
0 |
T13 |
73799 |
72549 |
0 |
0 |
RDataOutKnown_A
Name | Attempts | Real Successes | Failures | Incomplete |
Total |
95995079 |
95123308 |
0 |
0 |
T1 |
6346 |
6266 |
0 |
0 |
T2 |
20779 |
20387 |
0 |
0 |
T3 |
16526 |
16188 |
0 |
0 |
T4 |
41540 |
41124 |
0 |
0 |
T5 |
24984 |
24368 |
0 |
0 |
T6 |
30776 |
30706 |
0 |
0 |
T10 |
44472 |
44397 |
0 |
0 |
T11 |
20926 |
20462 |
0 |
0 |
T12 |
41197 |
40991 |
0 |
0 |
T13 |
73799 |
72549 |
0 |
0 |
WidthMustBe64bit_A
Name | Attempts | Real Successes | Failures | Incomplete |
Total |
1120 |
1120 |
0 |
0 |
T1 |
1 |
1 |
0 |
0 |
T2 |
1 |
1 |
0 |
0 |
T3 |
1 |
1 |
0 |
0 |
T4 |
1 |
1 |
0 |
0 |
T5 |
1 |
1 |
0 |
0 |
T6 |
1 |
1 |
0 |
0 |
T10 |
1 |
1 |
0 |
0 |
T11 |
1 |
1 |
0 |
0 |
T12 |
1 |
1 |
0 |
0 |
T13 |
1 |
1 |
0 |
0 |
Line Coverage for Instance : tb.dut.gen_partitions[4].gen_unbuffered.u_part_unbuf.gen_ecc_reg.u_otp_ctrl_ecc_reg
| Line No. | Total | Covered | Percent |
TOTAL | | 14 | 14 | 100.00 |
ALWAYS | 46 | 8 | 8 | 100.00 |
CONT_ASSIGN | 87 | 1 | 1 | 100.00 |
ALWAYS | 90 | 5 | 5 | 100.00 |
45 always_comb begin : p_write
46 1/1 data_o = data_q;
Tests: T1 T2 T3
47 1/1 data_d = data_q;
Tests: T1 T2 T3
48 1/1 ecc_d = ecc_q;
Tests: T1 T2 T3
49
50 1/1 rdata_o = '0;
Tests: T1 T2 T3
51 1/1 if (32'(addr_i) < Depth) begin
Tests: T1 T2 T3
52 1/1 rdata_o = data_q[0];
Tests: T1 T2 T3
53 1/1 if (wren_i) begin
Tests: T1 T2 T3
54 1/1 {ecc_d[0], data_d[0]} = ecc_enc;
Tests: T1 T2 T3
55 end
MISSING_ELSE
56 end
==> MISSING_ELSE
57 end
58 end else begin : gen_multiple_words
59 always_comb begin : p_write
60 data_o = data_q;
61 data_d = data_q;
62 ecc_d = ecc_q;
63
64 rdata_o = '0;
65 if (32'(addr_i) < Depth) begin
66 rdata_o = data_q[addr_i];
67 if (wren_i) begin
68 {ecc_d[addr_i], data_d[addr_i]} = ecc_enc;
69 end
70 end
71 end
72 end
73
74 // Concurrent ECC checks.
75 logic [Depth-1:0][1:0] err;
76 for (genvar k = 0; k < Depth; k++) begin : gen_ecc_dec
77 prim_secded_inv_72_64_dec u_prim_secded_inv_72_64_dec (
78 .data_i({ecc_q[k], data_q[k]}),
79 // We only rely on the error detection mechanism,
80 // and not on error correction.
81 .data_o(),
82 .syndrome_o(),
83 .err_o(err[k])
84 );
85 end
86
87 1/1 assign ecc_err_o = |err;
Tests: T1 T2 T3
88
89 always_ff @(posedge clk_i or negedge rst_ni) begin : p_regs
90 1/1 if (!rst_ni) begin
Tests: T1 T2 T3
91 1/1 ecc_q <= {Depth{prim_secded_pkg::SecdedInv7264ZeroEcc}};
Tests: T1 T2 T3
92 1/1 data_q <= '0;
Tests: T1 T2 T3
93 end else begin
94 1/1 ecc_q <= ecc_d;
Tests: T1 T2 T3
95 1/1 data_q <= data_d;
Tests: T1 T2 T3
Branch Coverage for Instance : tb.dut.gen_partitions[4].gen_unbuffered.u_part_unbuf.gen_ecc_reg.u_otp_ctrl_ecc_reg
| Line No. | Total | Covered | Percent |
Branches |
|
5 |
4 |
80.00 |
IF |
90 |
2 |
2 |
100.00 |
IF |
65 |
3 |
2 |
66.67 |
90 if (!rst_ni) begin
-1-
91 ecc_q <= {Depth{prim_secded_pkg::SecdedInv7264ZeroEcc}};
==>
92 data_q <= '0;
93 end else begin
94 ecc_q <= ecc_d;
==>
Branches:
-1- | Status | Tests |
1 |
Covered |
T1,T2,T3 |
0 |
Covered |
T1,T2,T3 |
65 if (32'(addr_i) < Depth) begin
-1-
66 rdata_o = data_q[addr_i];
67 if (wren_i) begin
-2-
68 {ecc_d[addr_i], data_d[addr_i]} = ecc_enc;
==>
69 end
MISSING_ELSE
==>
70 end
MISSING_ELSE
==>
Branches:
-1- | -2- | Status | Tests |
1 |
1 |
Covered |
T1,T2,T3 |
1 |
0 |
Covered |
T1,T2,T3 |
0 |
- |
Not Covered |
|
Assert Coverage for Instance : tb.dut.gen_partitions[4].gen_unbuffered.u_part_unbuf.gen_ecc_reg.u_otp_ctrl_ecc_reg
Assertion Details
DataKnown_A
Name | Attempts | Real Successes | Failures | Incomplete |
Total |
95995079 |
95123308 |
0 |
0 |
T1 |
6346 |
6266 |
0 |
0 |
T2 |
20779 |
20387 |
0 |
0 |
T3 |
16526 |
16188 |
0 |
0 |
T4 |
41540 |
41124 |
0 |
0 |
T5 |
24984 |
24368 |
0 |
0 |
T6 |
30776 |
30706 |
0 |
0 |
T10 |
44472 |
44397 |
0 |
0 |
T11 |
20926 |
20462 |
0 |
0 |
T12 |
41197 |
40991 |
0 |
0 |
T13 |
73799 |
72549 |
0 |
0 |
DataOutKnown_A
Name | Attempts | Real Successes | Failures | Incomplete |
Total |
95995079 |
95123308 |
0 |
0 |
T1 |
6346 |
6266 |
0 |
0 |
T2 |
20779 |
20387 |
0 |
0 |
T3 |
16526 |
16188 |
0 |
0 |
T4 |
41540 |
41124 |
0 |
0 |
T5 |
24984 |
24368 |
0 |
0 |
T6 |
30776 |
30706 |
0 |
0 |
T10 |
44472 |
44397 |
0 |
0 |
T11 |
20926 |
20462 |
0 |
0 |
T12 |
41197 |
40991 |
0 |
0 |
T13 |
73799 |
72549 |
0 |
0 |
EccErrKnown_A
Name | Attempts | Real Successes | Failures | Incomplete |
Total |
95995079 |
95123308 |
0 |
0 |
T1 |
6346 |
6266 |
0 |
0 |
T2 |
20779 |
20387 |
0 |
0 |
T3 |
16526 |
16188 |
0 |
0 |
T4 |
41540 |
41124 |
0 |
0 |
T5 |
24984 |
24368 |
0 |
0 |
T6 |
30776 |
30706 |
0 |
0 |
T10 |
44472 |
44397 |
0 |
0 |
T11 |
20926 |
20462 |
0 |
0 |
T12 |
41197 |
40991 |
0 |
0 |
T13 |
73799 |
72549 |
0 |
0 |
EccKnown_A
Name | Attempts | Real Successes | Failures | Incomplete |
Total |
95995079 |
95123308 |
0 |
0 |
T1 |
6346 |
6266 |
0 |
0 |
T2 |
20779 |
20387 |
0 |
0 |
T3 |
16526 |
16188 |
0 |
0 |
T4 |
41540 |
41124 |
0 |
0 |
T5 |
24984 |
24368 |
0 |
0 |
T6 |
30776 |
30706 |
0 |
0 |
T10 |
44472 |
44397 |
0 |
0 |
T11 |
20926 |
20462 |
0 |
0 |
T12 |
41197 |
40991 |
0 |
0 |
T13 |
73799 |
72549 |
0 |
0 |
RDataOutKnown_A
Name | Attempts | Real Successes | Failures | Incomplete |
Total |
95995079 |
95123308 |
0 |
0 |
T1 |
6346 |
6266 |
0 |
0 |
T2 |
20779 |
20387 |
0 |
0 |
T3 |
16526 |
16188 |
0 |
0 |
T4 |
41540 |
41124 |
0 |
0 |
T5 |
24984 |
24368 |
0 |
0 |
T6 |
30776 |
30706 |
0 |
0 |
T10 |
44472 |
44397 |
0 |
0 |
T11 |
20926 |
20462 |
0 |
0 |
T12 |
41197 |
40991 |
0 |
0 |
T13 |
73799 |
72549 |
0 |
0 |
WidthMustBe64bit_A
Name | Attempts | Real Successes | Failures | Incomplete |
Total |
1120 |
1120 |
0 |
0 |
T1 |
1 |
1 |
0 |
0 |
T2 |
1 |
1 |
0 |
0 |
T3 |
1 |
1 |
0 |
0 |
T4 |
1 |
1 |
0 |
0 |
T5 |
1 |
1 |
0 |
0 |
T6 |
1 |
1 |
0 |
0 |
T10 |
1 |
1 |
0 |
0 |
T11 |
1 |
1 |
0 |
0 |
T12 |
1 |
1 |
0 |
0 |
T13 |
1 |
1 |
0 |
0 |
Line Coverage for Instance : tb.dut.gen_partitions[5].gen_buffered.u_part_buf.u_otp_ctrl_ecc_reg
| Line No. | Total | Covered | Percent |
TOTAL | | 14 | 14 | 100.00 |
ALWAYS | 60 | 8 | 8 | 100.00 |
CONT_ASSIGN | 87 | 1 | 1 | 100.00 |
ALWAYS | 90 | 5 | 5 | 100.00 |
59 always_comb begin : p_write
60 1/1 data_o = data_q;
Tests: T1 T2 T3
61 1/1 data_d = data_q;
Tests: T1 T2 T3
62 1/1 ecc_d = ecc_q;
Tests: T1 T2 T3
63
64 1/1 rdata_o = '0;
Tests: T1 T2 T3
65 1/1 if (32'(addr_i) < Depth) begin
Tests: T1 T2 T3
66 1/1 rdata_o = data_q[addr_i];
Tests: T1 T2 T3
67 1/1 if (wren_i) begin
Tests: T1 T2 T3
68 1/1 {ecc_d[addr_i], data_d[addr_i]} = ecc_enc;
Tests: T1 T2 T3
69 end
MISSING_ELSE
70 end
MISSING_ELSE
71 end
72 end
73
74 // Concurrent ECC checks.
75 logic [Depth-1:0][1:0] err;
76 for (genvar k = 0; k < Depth; k++) begin : gen_ecc_dec
77 prim_secded_inv_72_64_dec u_prim_secded_inv_72_64_dec (
78 .data_i({ecc_q[k], data_q[k]}),
79 // We only rely on the error detection mechanism,
80 // and not on error correction.
81 .data_o(),
82 .syndrome_o(),
83 .err_o(err[k])
84 );
85 end
86
87 1/1 assign ecc_err_o = |err;
Tests: T1 T2 T3
88
89 always_ff @(posedge clk_i or negedge rst_ni) begin : p_regs
90 1/1 if (!rst_ni) begin
Tests: T1 T2 T3
91 1/1 ecc_q <= {Depth{prim_secded_pkg::SecdedInv7264ZeroEcc}};
Tests: T1 T2 T3
92 1/1 data_q <= '0;
Tests: T1 T2 T3
93 end else begin
94 1/1 ecc_q <= ecc_d;
Tests: T1 T2 T3
95 1/1 data_q <= data_d;
Tests: T1 T2 T3
Branch Coverage for Instance : tb.dut.gen_partitions[5].gen_buffered.u_part_buf.u_otp_ctrl_ecc_reg
| Line No. | Total | Covered | Percent |
Branches |
|
5 |
5 |
100.00 |
IF |
90 |
2 |
2 |
100.00 |
IF |
65 |
3 |
3 |
100.00 |
90 if (!rst_ni) begin
-1-
91 ecc_q <= {Depth{prim_secded_pkg::SecdedInv7264ZeroEcc}};
==>
92 data_q <= '0;
93 end else begin
94 ecc_q <= ecc_d;
==>
Branches:
-1- | Status | Tests |
1 |
Covered |
T1,T2,T3 |
0 |
Covered |
T1,T2,T3 |
65 if (32'(addr_i) < Depth) begin
-1-
66 rdata_o = data_q[addr_i];
67 if (wren_i) begin
-2-
68 {ecc_d[addr_i], data_d[addr_i]} = ecc_enc;
==>
69 end
MISSING_ELSE
==>
70 end
MISSING_ELSE
==>
Branches:
-1- | -2- | Status | Tests |
1 |
1 |
Covered |
T1,T2,T3 |
1 |
0 |
Covered |
T1,T2,T3 |
0 |
- |
Covered |
T25 |
Assert Coverage for Instance : tb.dut.gen_partitions[5].gen_buffered.u_part_buf.u_otp_ctrl_ecc_reg
Assertion Details
DataKnown_A
Name | Attempts | Real Successes | Failures | Incomplete |
Total |
95995079 |
95123308 |
0 |
0 |
T1 |
6346 |
6266 |
0 |
0 |
T2 |
20779 |
20387 |
0 |
0 |
T3 |
16526 |
16188 |
0 |
0 |
T4 |
41540 |
41124 |
0 |
0 |
T5 |
24984 |
24368 |
0 |
0 |
T6 |
30776 |
30706 |
0 |
0 |
T10 |
44472 |
44397 |
0 |
0 |
T11 |
20926 |
20462 |
0 |
0 |
T12 |
41197 |
40991 |
0 |
0 |
T13 |
73799 |
72549 |
0 |
0 |
DataOutKnown_A
Name | Attempts | Real Successes | Failures | Incomplete |
Total |
95995079 |
95123308 |
0 |
0 |
T1 |
6346 |
6266 |
0 |
0 |
T2 |
20779 |
20387 |
0 |
0 |
T3 |
16526 |
16188 |
0 |
0 |
T4 |
41540 |
41124 |
0 |
0 |
T5 |
24984 |
24368 |
0 |
0 |
T6 |
30776 |
30706 |
0 |
0 |
T10 |
44472 |
44397 |
0 |
0 |
T11 |
20926 |
20462 |
0 |
0 |
T12 |
41197 |
40991 |
0 |
0 |
T13 |
73799 |
72549 |
0 |
0 |
EccErrKnown_A
Name | Attempts | Real Successes | Failures | Incomplete |
Total |
95995079 |
95123308 |
0 |
0 |
T1 |
6346 |
6266 |
0 |
0 |
T2 |
20779 |
20387 |
0 |
0 |
T3 |
16526 |
16188 |
0 |
0 |
T4 |
41540 |
41124 |
0 |
0 |
T5 |
24984 |
24368 |
0 |
0 |
T6 |
30776 |
30706 |
0 |
0 |
T10 |
44472 |
44397 |
0 |
0 |
T11 |
20926 |
20462 |
0 |
0 |
T12 |
41197 |
40991 |
0 |
0 |
T13 |
73799 |
72549 |
0 |
0 |
EccKnown_A
Name | Attempts | Real Successes | Failures | Incomplete |
Total |
95995079 |
95123308 |
0 |
0 |
T1 |
6346 |
6266 |
0 |
0 |
T2 |
20779 |
20387 |
0 |
0 |
T3 |
16526 |
16188 |
0 |
0 |
T4 |
41540 |
41124 |
0 |
0 |
T5 |
24984 |
24368 |
0 |
0 |
T6 |
30776 |
30706 |
0 |
0 |
T10 |
44472 |
44397 |
0 |
0 |
T11 |
20926 |
20462 |
0 |
0 |
T12 |
41197 |
40991 |
0 |
0 |
T13 |
73799 |
72549 |
0 |
0 |
RDataOutKnown_A
Name | Attempts | Real Successes | Failures | Incomplete |
Total |
95995079 |
95123308 |
0 |
0 |
T1 |
6346 |
6266 |
0 |
0 |
T2 |
20779 |
20387 |
0 |
0 |
T3 |
16526 |
16188 |
0 |
0 |
T4 |
41540 |
41124 |
0 |
0 |
T5 |
24984 |
24368 |
0 |
0 |
T6 |
30776 |
30706 |
0 |
0 |
T10 |
44472 |
44397 |
0 |
0 |
T11 |
20926 |
20462 |
0 |
0 |
T12 |
41197 |
40991 |
0 |
0 |
T13 |
73799 |
72549 |
0 |
0 |
WidthMustBe64bit_A
Name | Attempts | Real Successes | Failures | Incomplete |
Total |
1120 |
1120 |
0 |
0 |
T1 |
1 |
1 |
0 |
0 |
T2 |
1 |
1 |
0 |
0 |
T3 |
1 |
1 |
0 |
0 |
T4 |
1 |
1 |
0 |
0 |
T5 |
1 |
1 |
0 |
0 |
T6 |
1 |
1 |
0 |
0 |
T10 |
1 |
1 |
0 |
0 |
T11 |
1 |
1 |
0 |
0 |
T12 |
1 |
1 |
0 |
0 |
T13 |
1 |
1 |
0 |
0 |
Line Coverage for Instance : tb.dut.gen_partitions[6].gen_buffered.u_part_buf.u_otp_ctrl_ecc_reg
| Line No. | Total | Covered | Percent |
TOTAL | | 14 | 14 | 100.00 |
ALWAYS | 60 | 8 | 8 | 100.00 |
CONT_ASSIGN | 87 | 1 | 1 | 100.00 |
ALWAYS | 90 | 5 | 5 | 100.00 |
59 always_comb begin : p_write
60 1/1 data_o = data_q;
Tests: T1 T2 T3
61 1/1 data_d = data_q;
Tests: T1 T2 T3
62 1/1 ecc_d = ecc_q;
Tests: T1 T2 T3
63
64 1/1 rdata_o = '0;
Tests: T1 T2 T3
65 1/1 if (32'(addr_i) < Depth) begin
Tests: T1 T2 T3
66 1/1 rdata_o = data_q[addr_i];
Tests: T1 T2 T3
67 1/1 if (wren_i) begin
Tests: T1 T2 T3
68 1/1 {ecc_d[addr_i], data_d[addr_i]} = ecc_enc;
Tests: T1 T2 T3
69 end
MISSING_ELSE
70 end
==> MISSING_ELSE
71 end
72 end
73
74 // Concurrent ECC checks.
75 logic [Depth-1:0][1:0] err;
76 for (genvar k = 0; k < Depth; k++) begin : gen_ecc_dec
77 prim_secded_inv_72_64_dec u_prim_secded_inv_72_64_dec (
78 .data_i({ecc_q[k], data_q[k]}),
79 // We only rely on the error detection mechanism,
80 // and not on error correction.
81 .data_o(),
82 .syndrome_o(),
83 .err_o(err[k])
84 );
85 end
86
87 1/1 assign ecc_err_o = |err;
Tests: T1 T2 T3
88
89 always_ff @(posedge clk_i or negedge rst_ni) begin : p_regs
90 1/1 if (!rst_ni) begin
Tests: T1 T2 T3
91 1/1 ecc_q <= {Depth{prim_secded_pkg::SecdedInv7264ZeroEcc}};
Tests: T1 T2 T3
92 1/1 data_q <= '0;
Tests: T1 T2 T3
93 end else begin
94 1/1 ecc_q <= ecc_d;
Tests: T1 T2 T3
95 1/1 data_q <= data_d;
Tests: T1 T2 T3
Branch Coverage for Instance : tb.dut.gen_partitions[6].gen_buffered.u_part_buf.u_otp_ctrl_ecc_reg
| Line No. | Total | Covered | Percent |
Branches |
|
4 |
4 |
100.00 |
IF |
90 |
2 |
2 |
100.00 |
IF |
65 |
2 |
2 |
100.00 |
90 if (!rst_ni) begin
-1-
91 ecc_q <= {Depth{prim_secded_pkg::SecdedInv7264ZeroEcc}};
==>
92 data_q <= '0;
93 end else begin
94 ecc_q <= ecc_d;
==>
Branches:
-1- | Status | Tests |
1 |
Covered |
T1,T2,T3 |
0 |
Covered |
T1,T2,T3 |
65 if (32'(addr_i) < Depth) begin
-1-
66 rdata_o = data_q[addr_i];
67 if (wren_i) begin
-2-
68 {ecc_d[addr_i], data_d[addr_i]} = ecc_enc;
==>
69 end
MISSING_ELSE
==>
70 end
MISSING_ELSE
==> (Excluded)
Exclude Annotation: VC_COV_UNR
Branches:
-1- | -2- | Status | Tests | Exclude Annotation |
1 |
1 |
Covered |
T1,T2,T3 |
|
1 |
0 |
Covered |
T1,T2,T3 |
|
0 |
- |
Excluded |
|
VC_COV_UNR |
Assert Coverage for Instance : tb.dut.gen_partitions[6].gen_buffered.u_part_buf.u_otp_ctrl_ecc_reg
Assertion Details
DataKnown_A
Name | Attempts | Real Successes | Failures | Incomplete |
Total |
95995079 |
95123308 |
0 |
0 |
T1 |
6346 |
6266 |
0 |
0 |
T2 |
20779 |
20387 |
0 |
0 |
T3 |
16526 |
16188 |
0 |
0 |
T4 |
41540 |
41124 |
0 |
0 |
T5 |
24984 |
24368 |
0 |
0 |
T6 |
30776 |
30706 |
0 |
0 |
T10 |
44472 |
44397 |
0 |
0 |
T11 |
20926 |
20462 |
0 |
0 |
T12 |
41197 |
40991 |
0 |
0 |
T13 |
73799 |
72549 |
0 |
0 |
DataOutKnown_A
Name | Attempts | Real Successes | Failures | Incomplete |
Total |
95995079 |
95123308 |
0 |
0 |
T1 |
6346 |
6266 |
0 |
0 |
T2 |
20779 |
20387 |
0 |
0 |
T3 |
16526 |
16188 |
0 |
0 |
T4 |
41540 |
41124 |
0 |
0 |
T5 |
24984 |
24368 |
0 |
0 |
T6 |
30776 |
30706 |
0 |
0 |
T10 |
44472 |
44397 |
0 |
0 |
T11 |
20926 |
20462 |
0 |
0 |
T12 |
41197 |
40991 |
0 |
0 |
T13 |
73799 |
72549 |
0 |
0 |
EccErrKnown_A
Name | Attempts | Real Successes | Failures | Incomplete |
Total |
95995079 |
95123308 |
0 |
0 |
T1 |
6346 |
6266 |
0 |
0 |
T2 |
20779 |
20387 |
0 |
0 |
T3 |
16526 |
16188 |
0 |
0 |
T4 |
41540 |
41124 |
0 |
0 |
T5 |
24984 |
24368 |
0 |
0 |
T6 |
30776 |
30706 |
0 |
0 |
T10 |
44472 |
44397 |
0 |
0 |
T11 |
20926 |
20462 |
0 |
0 |
T12 |
41197 |
40991 |
0 |
0 |
T13 |
73799 |
72549 |
0 |
0 |
EccKnown_A
Name | Attempts | Real Successes | Failures | Incomplete |
Total |
95995079 |
95123308 |
0 |
0 |
T1 |
6346 |
6266 |
0 |
0 |
T2 |
20779 |
20387 |
0 |
0 |
T3 |
16526 |
16188 |
0 |
0 |
T4 |
41540 |
41124 |
0 |
0 |
T5 |
24984 |
24368 |
0 |
0 |
T6 |
30776 |
30706 |
0 |
0 |
T10 |
44472 |
44397 |
0 |
0 |
T11 |
20926 |
20462 |
0 |
0 |
T12 |
41197 |
40991 |
0 |
0 |
T13 |
73799 |
72549 |
0 |
0 |
RDataOutKnown_A
Name | Attempts | Real Successes | Failures | Incomplete |
Total |
95995079 |
95123308 |
0 |
0 |
T1 |
6346 |
6266 |
0 |
0 |
T2 |
20779 |
20387 |
0 |
0 |
T3 |
16526 |
16188 |
0 |
0 |
T4 |
41540 |
41124 |
0 |
0 |
T5 |
24984 |
24368 |
0 |
0 |
T6 |
30776 |
30706 |
0 |
0 |
T10 |
44472 |
44397 |
0 |
0 |
T11 |
20926 |
20462 |
0 |
0 |
T12 |
41197 |
40991 |
0 |
0 |
T13 |
73799 |
72549 |
0 |
0 |
WidthMustBe64bit_A
Name | Attempts | Real Successes | Failures | Incomplete |
Total |
1120 |
1120 |
0 |
0 |
T1 |
1 |
1 |
0 |
0 |
T2 |
1 |
1 |
0 |
0 |
T3 |
1 |
1 |
0 |
0 |
T4 |
1 |
1 |
0 |
0 |
T5 |
1 |
1 |
0 |
0 |
T6 |
1 |
1 |
0 |
0 |
T10 |
1 |
1 |
0 |
0 |
T11 |
1 |
1 |
0 |
0 |
T12 |
1 |
1 |
0 |
0 |
T13 |
1 |
1 |
0 |
0 |
Line Coverage for Instance : tb.dut.gen_partitions[7].gen_buffered.u_part_buf.u_otp_ctrl_ecc_reg
| Line No. | Total | Covered | Percent |
TOTAL | | 14 | 14 | 100.00 |
ALWAYS | 60 | 8 | 8 | 100.00 |
CONT_ASSIGN | 87 | 1 | 1 | 100.00 |
ALWAYS | 90 | 5 | 5 | 100.00 |
59 always_comb begin : p_write
60 1/1 data_o = data_q;
Tests: T1 T2 T3
61 1/1 data_d = data_q;
Tests: T1 T2 T3
62 1/1 ecc_d = ecc_q;
Tests: T1 T2 T3
63
64 1/1 rdata_o = '0;
Tests: T1 T2 T3
65 1/1 if (32'(addr_i) < Depth) begin
Tests: T1 T2 T3
66 1/1 rdata_o = data_q[addr_i];
Tests: T1 T2 T3
67 1/1 if (wren_i) begin
Tests: T1 T2 T3
68 1/1 {ecc_d[addr_i], data_d[addr_i]} = ecc_enc;
Tests: T1 T2 T3
69 end
MISSING_ELSE
70 end
MISSING_ELSE
71 end
72 end
73
74 // Concurrent ECC checks.
75 logic [Depth-1:0][1:0] err;
76 for (genvar k = 0; k < Depth; k++) begin : gen_ecc_dec
77 prim_secded_inv_72_64_dec u_prim_secded_inv_72_64_dec (
78 .data_i({ecc_q[k], data_q[k]}),
79 // We only rely on the error detection mechanism,
80 // and not on error correction.
81 .data_o(),
82 .syndrome_o(),
83 .err_o(err[k])
84 );
85 end
86
87 1/1 assign ecc_err_o = |err;
Tests: T1 T2 T3
88
89 always_ff @(posedge clk_i or negedge rst_ni) begin : p_regs
90 1/1 if (!rst_ni) begin
Tests: T1 T2 T3
91 1/1 ecc_q <= {Depth{prim_secded_pkg::SecdedInv7264ZeroEcc}};
Tests: T1 T2 T3
92 1/1 data_q <= '0;
Tests: T1 T2 T3
93 end else begin
94 1/1 ecc_q <= ecc_d;
Tests: T1 T2 T3
95 1/1 data_q <= data_d;
Tests: T1 T2 T3
Branch Coverage for Instance : tb.dut.gen_partitions[7].gen_buffered.u_part_buf.u_otp_ctrl_ecc_reg
| Line No. | Total | Covered | Percent |
Branches |
|
5 |
5 |
100.00 |
IF |
90 |
2 |
2 |
100.00 |
IF |
65 |
3 |
3 |
100.00 |
90 if (!rst_ni) begin
-1-
91 ecc_q <= {Depth{prim_secded_pkg::SecdedInv7264ZeroEcc}};
==>
92 data_q <= '0;
93 end else begin
94 ecc_q <= ecc_d;
==>
Branches:
-1- | Status | Tests |
1 |
Covered |
T1,T2,T3 |
0 |
Covered |
T1,T2,T3 |
65 if (32'(addr_i) < Depth) begin
-1-
66 rdata_o = data_q[addr_i];
67 if (wren_i) begin
-2-
68 {ecc_d[addr_i], data_d[addr_i]} = ecc_enc;
==>
69 end
MISSING_ELSE
==>
70 end
MISSING_ELSE
==>
Branches:
-1- | -2- | Status | Tests |
1 |
1 |
Covered |
T1,T2,T3 |
1 |
0 |
Covered |
T1,T2,T3 |
0 |
- |
Covered |
T25 |
Assert Coverage for Instance : tb.dut.gen_partitions[7].gen_buffered.u_part_buf.u_otp_ctrl_ecc_reg
Assertion Details
DataKnown_A
Name | Attempts | Real Successes | Failures | Incomplete |
Total |
95995079 |
95123308 |
0 |
0 |
T1 |
6346 |
6266 |
0 |
0 |
T2 |
20779 |
20387 |
0 |
0 |
T3 |
16526 |
16188 |
0 |
0 |
T4 |
41540 |
41124 |
0 |
0 |
T5 |
24984 |
24368 |
0 |
0 |
T6 |
30776 |
30706 |
0 |
0 |
T10 |
44472 |
44397 |
0 |
0 |
T11 |
20926 |
20462 |
0 |
0 |
T12 |
41197 |
40991 |
0 |
0 |
T13 |
73799 |
72549 |
0 |
0 |
DataOutKnown_A
Name | Attempts | Real Successes | Failures | Incomplete |
Total |
95995079 |
95123308 |
0 |
0 |
T1 |
6346 |
6266 |
0 |
0 |
T2 |
20779 |
20387 |
0 |
0 |
T3 |
16526 |
16188 |
0 |
0 |
T4 |
41540 |
41124 |
0 |
0 |
T5 |
24984 |
24368 |
0 |
0 |
T6 |
30776 |
30706 |
0 |
0 |
T10 |
44472 |
44397 |
0 |
0 |
T11 |
20926 |
20462 |
0 |
0 |
T12 |
41197 |
40991 |
0 |
0 |
T13 |
73799 |
72549 |
0 |
0 |
EccErrKnown_A
Name | Attempts | Real Successes | Failures | Incomplete |
Total |
95995079 |
95123308 |
0 |
0 |
T1 |
6346 |
6266 |
0 |
0 |
T2 |
20779 |
20387 |
0 |
0 |
T3 |
16526 |
16188 |
0 |
0 |
T4 |
41540 |
41124 |
0 |
0 |
T5 |
24984 |
24368 |
0 |
0 |
T6 |
30776 |
30706 |
0 |
0 |
T10 |
44472 |
44397 |
0 |
0 |
T11 |
20926 |
20462 |
0 |
0 |
T12 |
41197 |
40991 |
0 |
0 |
T13 |
73799 |
72549 |
0 |
0 |
EccKnown_A
Name | Attempts | Real Successes | Failures | Incomplete |
Total |
95995079 |
95123308 |
0 |
0 |
T1 |
6346 |
6266 |
0 |
0 |
T2 |
20779 |
20387 |
0 |
0 |
T3 |
16526 |
16188 |
0 |
0 |
T4 |
41540 |
41124 |
0 |
0 |
T5 |
24984 |
24368 |
0 |
0 |
T6 |
30776 |
30706 |
0 |
0 |
T10 |
44472 |
44397 |
0 |
0 |
T11 |
20926 |
20462 |
0 |
0 |
T12 |
41197 |
40991 |
0 |
0 |
T13 |
73799 |
72549 |
0 |
0 |
RDataOutKnown_A
Name | Attempts | Real Successes | Failures | Incomplete |
Total |
95995079 |
95123308 |
0 |
0 |
T1 |
6346 |
6266 |
0 |
0 |
T2 |
20779 |
20387 |
0 |
0 |
T3 |
16526 |
16188 |
0 |
0 |
T4 |
41540 |
41124 |
0 |
0 |
T5 |
24984 |
24368 |
0 |
0 |
T6 |
30776 |
30706 |
0 |
0 |
T10 |
44472 |
44397 |
0 |
0 |
T11 |
20926 |
20462 |
0 |
0 |
T12 |
41197 |
40991 |
0 |
0 |
T13 |
73799 |
72549 |
0 |
0 |
WidthMustBe64bit_A
Name | Attempts | Real Successes | Failures | Incomplete |
Total |
1120 |
1120 |
0 |
0 |
T1 |
1 |
1 |
0 |
0 |
T2 |
1 |
1 |
0 |
0 |
T3 |
1 |
1 |
0 |
0 |
T4 |
1 |
1 |
0 |
0 |
T5 |
1 |
1 |
0 |
0 |
T6 |
1 |
1 |
0 |
0 |
T10 |
1 |
1 |
0 |
0 |
T11 |
1 |
1 |
0 |
0 |
T12 |
1 |
1 |
0 |
0 |
T13 |
1 |
1 |
0 |
0 |
Line Coverage for Instance : tb.dut.gen_partitions[8].gen_buffered.u_part_buf.u_otp_ctrl_ecc_reg
| Line No. | Total | Covered | Percent |
TOTAL | | 14 | 14 | 100.00 |
ALWAYS | 60 | 8 | 8 | 100.00 |
CONT_ASSIGN | 87 | 1 | 1 | 100.00 |
ALWAYS | 90 | 5 | 5 | 100.00 |
59 always_comb begin : p_write
60 1/1 data_o = data_q;
Tests: T1 T2 T3
61 1/1 data_d = data_q;
Tests: T1 T2 T3
62 1/1 ecc_d = ecc_q;
Tests: T1 T2 T3
63
64 1/1 rdata_o = '0;
Tests: T1 T2 T3
65 1/1 if (32'(addr_i) < Depth) begin
Tests: T1 T2 T3
66 1/1 rdata_o = data_q[addr_i];
Tests: T1 T2 T3
67 1/1 if (wren_i) begin
Tests: T1 T2 T3
68 1/1 {ecc_d[addr_i], data_d[addr_i]} = ecc_enc;
Tests: T1 T2 T3
69 end
MISSING_ELSE
70 end
MISSING_ELSE
71 end
72 end
73
74 // Concurrent ECC checks.
75 logic [Depth-1:0][1:0] err;
76 for (genvar k = 0; k < Depth; k++) begin : gen_ecc_dec
77 prim_secded_inv_72_64_dec u_prim_secded_inv_72_64_dec (
78 .data_i({ecc_q[k], data_q[k]}),
79 // We only rely on the error detection mechanism,
80 // and not on error correction.
81 .data_o(),
82 .syndrome_o(),
83 .err_o(err[k])
84 );
85 end
86
87 1/1 assign ecc_err_o = |err;
Tests: T1 T2 T3
88
89 always_ff @(posedge clk_i or negedge rst_ni) begin : p_regs
90 1/1 if (!rst_ni) begin
Tests: T1 T2 T3
91 1/1 ecc_q <= {Depth{prim_secded_pkg::SecdedInv7264ZeroEcc}};
Tests: T1 T2 T3
92 1/1 data_q <= '0;
Tests: T1 T2 T3
93 end else begin
94 1/1 ecc_q <= ecc_d;
Tests: T1 T2 T3
95 1/1 data_q <= data_d;
Tests: T1 T2 T3
Branch Coverage for Instance : tb.dut.gen_partitions[8].gen_buffered.u_part_buf.u_otp_ctrl_ecc_reg
| Line No. | Total | Covered | Percent |
Branches |
|
5 |
5 |
100.00 |
IF |
90 |
2 |
2 |
100.00 |
IF |
65 |
3 |
3 |
100.00 |
90 if (!rst_ni) begin
-1-
91 ecc_q <= {Depth{prim_secded_pkg::SecdedInv7264ZeroEcc}};
==>
92 data_q <= '0;
93 end else begin
94 ecc_q <= ecc_d;
==>
Branches:
-1- | Status | Tests |
1 |
Covered |
T1,T2,T3 |
0 |
Covered |
T1,T2,T3 |
65 if (32'(addr_i) < Depth) begin
-1-
66 rdata_o = data_q[addr_i];
67 if (wren_i) begin
-2-
68 {ecc_d[addr_i], data_d[addr_i]} = ecc_enc;
==>
69 end
MISSING_ELSE
==>
70 end
MISSING_ELSE
==>
Branches:
-1- | -2- | Status | Tests |
1 |
1 |
Covered |
T1,T2,T3 |
1 |
0 |
Covered |
T1,T2,T3 |
0 |
- |
Covered |
T25 |
Assert Coverage for Instance : tb.dut.gen_partitions[8].gen_buffered.u_part_buf.u_otp_ctrl_ecc_reg
Assertion Details
DataKnown_A
Name | Attempts | Real Successes | Failures | Incomplete |
Total |
95995079 |
95123308 |
0 |
0 |
T1 |
6346 |
6266 |
0 |
0 |
T2 |
20779 |
20387 |
0 |
0 |
T3 |
16526 |
16188 |
0 |
0 |
T4 |
41540 |
41124 |
0 |
0 |
T5 |
24984 |
24368 |
0 |
0 |
T6 |
30776 |
30706 |
0 |
0 |
T10 |
44472 |
44397 |
0 |
0 |
T11 |
20926 |
20462 |
0 |
0 |
T12 |
41197 |
40991 |
0 |
0 |
T13 |
73799 |
72549 |
0 |
0 |
DataOutKnown_A
Name | Attempts | Real Successes | Failures | Incomplete |
Total |
95995079 |
95123308 |
0 |
0 |
T1 |
6346 |
6266 |
0 |
0 |
T2 |
20779 |
20387 |
0 |
0 |
T3 |
16526 |
16188 |
0 |
0 |
T4 |
41540 |
41124 |
0 |
0 |
T5 |
24984 |
24368 |
0 |
0 |
T6 |
30776 |
30706 |
0 |
0 |
T10 |
44472 |
44397 |
0 |
0 |
T11 |
20926 |
20462 |
0 |
0 |
T12 |
41197 |
40991 |
0 |
0 |
T13 |
73799 |
72549 |
0 |
0 |
EccErrKnown_A
Name | Attempts | Real Successes | Failures | Incomplete |
Total |
95995079 |
95123308 |
0 |
0 |
T1 |
6346 |
6266 |
0 |
0 |
T2 |
20779 |
20387 |
0 |
0 |
T3 |
16526 |
16188 |
0 |
0 |
T4 |
41540 |
41124 |
0 |
0 |
T5 |
24984 |
24368 |
0 |
0 |
T6 |
30776 |
30706 |
0 |
0 |
T10 |
44472 |
44397 |
0 |
0 |
T11 |
20926 |
20462 |
0 |
0 |
T12 |
41197 |
40991 |
0 |
0 |
T13 |
73799 |
72549 |
0 |
0 |
EccKnown_A
Name | Attempts | Real Successes | Failures | Incomplete |
Total |
95995079 |
95123308 |
0 |
0 |
T1 |
6346 |
6266 |
0 |
0 |
T2 |
20779 |
20387 |
0 |
0 |
T3 |
16526 |
16188 |
0 |
0 |
T4 |
41540 |
41124 |
0 |
0 |
T5 |
24984 |
24368 |
0 |
0 |
T6 |
30776 |
30706 |
0 |
0 |
T10 |
44472 |
44397 |
0 |
0 |
T11 |
20926 |
20462 |
0 |
0 |
T12 |
41197 |
40991 |
0 |
0 |
T13 |
73799 |
72549 |
0 |
0 |
RDataOutKnown_A
Name | Attempts | Real Successes | Failures | Incomplete |
Total |
95995079 |
95123308 |
0 |
0 |
T1 |
6346 |
6266 |
0 |
0 |
T2 |
20779 |
20387 |
0 |
0 |
T3 |
16526 |
16188 |
0 |
0 |
T4 |
41540 |
41124 |
0 |
0 |
T5 |
24984 |
24368 |
0 |
0 |
T6 |
30776 |
30706 |
0 |
0 |
T10 |
44472 |
44397 |
0 |
0 |
T11 |
20926 |
20462 |
0 |
0 |
T12 |
41197 |
40991 |
0 |
0 |
T13 |
73799 |
72549 |
0 |
0 |
WidthMustBe64bit_A
Name | Attempts | Real Successes | Failures | Incomplete |
Total |
1120 |
1120 |
0 |
0 |
T1 |
1 |
1 |
0 |
0 |
T2 |
1 |
1 |
0 |
0 |
T3 |
1 |
1 |
0 |
0 |
T4 |
1 |
1 |
0 |
0 |
T5 |
1 |
1 |
0 |
0 |
T6 |
1 |
1 |
0 |
0 |
T10 |
1 |
1 |
0 |
0 |
T11 |
1 |
1 |
0 |
0 |
T12 |
1 |
1 |
0 |
0 |
T13 |
1 |
1 |
0 |
0 |
Line Coverage for Instance : tb.dut.gen_partitions[9].gen_buffered.u_part_buf.u_otp_ctrl_ecc_reg
| Line No. | Total | Covered | Percent |
TOTAL | | 14 | 14 | 100.00 |
ALWAYS | 60 | 8 | 8 | 100.00 |
CONT_ASSIGN | 87 | 1 | 1 | 100.00 |
ALWAYS | 90 | 5 | 5 | 100.00 |
59 always_comb begin : p_write
60 1/1 data_o = data_q;
Tests: T1 T2 T3
61 1/1 data_d = data_q;
Tests: T1 T2 T3
62 1/1 ecc_d = ecc_q;
Tests: T1 T2 T3
63
64 1/1 rdata_o = '0;
Tests: T1 T2 T3
65 1/1 if (32'(addr_i) < Depth) begin
Tests: T1 T2 T3
66 1/1 rdata_o = data_q[addr_i];
Tests: T1 T2 T3
67 1/1 if (wren_i) begin
Tests: T1 T2 T3
68 1/1 {ecc_d[addr_i], data_d[addr_i]} = ecc_enc;
Tests: T1 T2 T3
69 end
MISSING_ELSE
70 end
MISSING_ELSE
71 end
72 end
73
74 // Concurrent ECC checks.
75 logic [Depth-1:0][1:0] err;
76 for (genvar k = 0; k < Depth; k++) begin : gen_ecc_dec
77 prim_secded_inv_72_64_dec u_prim_secded_inv_72_64_dec (
78 .data_i({ecc_q[k], data_q[k]}),
79 // We only rely on the error detection mechanism,
80 // and not on error correction.
81 .data_o(),
82 .syndrome_o(),
83 .err_o(err[k])
84 );
85 end
86
87 1/1 assign ecc_err_o = |err;
Tests: T1 T2 T3
88
89 always_ff @(posedge clk_i or negedge rst_ni) begin : p_regs
90 1/1 if (!rst_ni) begin
Tests: T1 T2 T3
91 1/1 ecc_q <= {Depth{prim_secded_pkg::SecdedInv7264ZeroEcc}};
Tests: T1 T2 T3
92 1/1 data_q <= '0;
Tests: T1 T2 T3
93 end else begin
94 1/1 ecc_q <= ecc_d;
Tests: T1 T2 T3
95 1/1 data_q <= data_d;
Tests: T1 T2 T3
Branch Coverage for Instance : tb.dut.gen_partitions[9].gen_buffered.u_part_buf.u_otp_ctrl_ecc_reg
| Line No. | Total | Covered | Percent |
Branches |
|
5 |
5 |
100.00 |
IF |
90 |
2 |
2 |
100.00 |
IF |
65 |
3 |
3 |
100.00 |
90 if (!rst_ni) begin
-1-
91 ecc_q <= {Depth{prim_secded_pkg::SecdedInv7264ZeroEcc}};
==>
92 data_q <= '0;
93 end else begin
94 ecc_q <= ecc_d;
==>
Branches:
-1- | Status | Tests |
1 |
Covered |
T1,T2,T3 |
0 |
Covered |
T1,T2,T3 |
65 if (32'(addr_i) < Depth) begin
-1-
66 rdata_o = data_q[addr_i];
67 if (wren_i) begin
-2-
68 {ecc_d[addr_i], data_d[addr_i]} = ecc_enc;
==>
69 end
MISSING_ELSE
==>
70 end
MISSING_ELSE
==>
Branches:
-1- | -2- | Status | Tests |
1 |
1 |
Covered |
T1,T2,T3 |
1 |
0 |
Covered |
T1,T2,T3 |
0 |
- |
Covered |
T25 |
Assert Coverage for Instance : tb.dut.gen_partitions[9].gen_buffered.u_part_buf.u_otp_ctrl_ecc_reg
Assertion Details
DataKnown_A
Name | Attempts | Real Successes | Failures | Incomplete |
Total |
95995079 |
95123308 |
0 |
0 |
T1 |
6346 |
6266 |
0 |
0 |
T2 |
20779 |
20387 |
0 |
0 |
T3 |
16526 |
16188 |
0 |
0 |
T4 |
41540 |
41124 |
0 |
0 |
T5 |
24984 |
24368 |
0 |
0 |
T6 |
30776 |
30706 |
0 |
0 |
T10 |
44472 |
44397 |
0 |
0 |
T11 |
20926 |
20462 |
0 |
0 |
T12 |
41197 |
40991 |
0 |
0 |
T13 |
73799 |
72549 |
0 |
0 |
DataOutKnown_A
Name | Attempts | Real Successes | Failures | Incomplete |
Total |
95995079 |
95123308 |
0 |
0 |
T1 |
6346 |
6266 |
0 |
0 |
T2 |
20779 |
20387 |
0 |
0 |
T3 |
16526 |
16188 |
0 |
0 |
T4 |
41540 |
41124 |
0 |
0 |
T5 |
24984 |
24368 |
0 |
0 |
T6 |
30776 |
30706 |
0 |
0 |
T10 |
44472 |
44397 |
0 |
0 |
T11 |
20926 |
20462 |
0 |
0 |
T12 |
41197 |
40991 |
0 |
0 |
T13 |
73799 |
72549 |
0 |
0 |
EccErrKnown_A
Name | Attempts | Real Successes | Failures | Incomplete |
Total |
95995079 |
95123308 |
0 |
0 |
T1 |
6346 |
6266 |
0 |
0 |
T2 |
20779 |
20387 |
0 |
0 |
T3 |
16526 |
16188 |
0 |
0 |
T4 |
41540 |
41124 |
0 |
0 |
T5 |
24984 |
24368 |
0 |
0 |
T6 |
30776 |
30706 |
0 |
0 |
T10 |
44472 |
44397 |
0 |
0 |
T11 |
20926 |
20462 |
0 |
0 |
T12 |
41197 |
40991 |
0 |
0 |
T13 |
73799 |
72549 |
0 |
0 |
EccKnown_A
Name | Attempts | Real Successes | Failures | Incomplete |
Total |
95995079 |
95123308 |
0 |
0 |
T1 |
6346 |
6266 |
0 |
0 |
T2 |
20779 |
20387 |
0 |
0 |
T3 |
16526 |
16188 |
0 |
0 |
T4 |
41540 |
41124 |
0 |
0 |
T5 |
24984 |
24368 |
0 |
0 |
T6 |
30776 |
30706 |
0 |
0 |
T10 |
44472 |
44397 |
0 |
0 |
T11 |
20926 |
20462 |
0 |
0 |
T12 |
41197 |
40991 |
0 |
0 |
T13 |
73799 |
72549 |
0 |
0 |
RDataOutKnown_A
Name | Attempts | Real Successes | Failures | Incomplete |
Total |
95995079 |
95123308 |
0 |
0 |
T1 |
6346 |
6266 |
0 |
0 |
T2 |
20779 |
20387 |
0 |
0 |
T3 |
16526 |
16188 |
0 |
0 |
T4 |
41540 |
41124 |
0 |
0 |
T5 |
24984 |
24368 |
0 |
0 |
T6 |
30776 |
30706 |
0 |
0 |
T10 |
44472 |
44397 |
0 |
0 |
T11 |
20926 |
20462 |
0 |
0 |
T12 |
41197 |
40991 |
0 |
0 |
T13 |
73799 |
72549 |
0 |
0 |
WidthMustBe64bit_A
Name | Attempts | Real Successes | Failures | Incomplete |
Total |
1120 |
1120 |
0 |
0 |
T1 |
1 |
1 |
0 |
0 |
T2 |
1 |
1 |
0 |
0 |
T3 |
1 |
1 |
0 |
0 |
T4 |
1 |
1 |
0 |
0 |
T5 |
1 |
1 |
0 |
0 |
T6 |
1 |
1 |
0 |
0 |
T10 |
1 |
1 |
0 |
0 |
T11 |
1 |
1 |
0 |
0 |
T12 |
1 |
1 |
0 |
0 |
T13 |
1 |
1 |
0 |
0 |
Line Coverage for Instance : tb.dut.gen_partitions[10].gen_lifecycle.u_part_buf.u_otp_ctrl_ecc_reg
| Line No. | Total | Covered | Percent |
TOTAL | | 14 | 14 | 100.00 |
ALWAYS | 60 | 8 | 8 | 100.00 |
CONT_ASSIGN | 87 | 1 | 1 | 100.00 |
ALWAYS | 90 | 5 | 5 | 100.00 |
59 always_comb begin : p_write
60 1/1 data_o = data_q;
Tests: T1 T2 T3
61 1/1 data_d = data_q;
Tests: T1 T2 T3
62 1/1 ecc_d = ecc_q;
Tests: T1 T2 T3
63
64 1/1 rdata_o = '0;
Tests: T1 T2 T3
65 1/1 if (32'(addr_i) < Depth) begin
Tests: T1 T2 T3
66 1/1 rdata_o = data_q[addr_i];
Tests: T1 T2 T3
67 1/1 if (wren_i) begin
Tests: T1 T2 T3
68 1/1 {ecc_d[addr_i], data_d[addr_i]} = ecc_enc;
Tests: T1 T2 T3
69 end
MISSING_ELSE
70 end
MISSING_ELSE
71 end
72 end
73
74 // Concurrent ECC checks.
75 logic [Depth-1:0][1:0] err;
76 for (genvar k = 0; k < Depth; k++) begin : gen_ecc_dec
77 prim_secded_inv_72_64_dec u_prim_secded_inv_72_64_dec (
78 .data_i({ecc_q[k], data_q[k]}),
79 // We only rely on the error detection mechanism,
80 // and not on error correction.
81 .data_o(),
82 .syndrome_o(),
83 .err_o(err[k])
84 );
85 end
86
87 1/1 assign ecc_err_o = |err;
Tests: T1 T2 T3
88
89 always_ff @(posedge clk_i or negedge rst_ni) begin : p_regs
90 1/1 if (!rst_ni) begin
Tests: T1 T2 T3
91 1/1 ecc_q <= {Depth{prim_secded_pkg::SecdedInv7264ZeroEcc}};
Tests: T1 T2 T3
92 1/1 data_q <= '0;
Tests: T1 T2 T3
93 end else begin
94 1/1 ecc_q <= ecc_d;
Tests: T1 T2 T3
95 1/1 data_q <= data_d;
Tests: T1 T2 T3
Branch Coverage for Instance : tb.dut.gen_partitions[10].gen_lifecycle.u_part_buf.u_otp_ctrl_ecc_reg
| Line No. | Total | Covered | Percent |
Branches |
|
5 |
5 |
100.00 |
IF |
90 |
2 |
2 |
100.00 |
IF |
65 |
3 |
3 |
100.00 |
90 if (!rst_ni) begin
-1-
91 ecc_q <= {Depth{prim_secded_pkg::SecdedInv7264ZeroEcc}};
==>
92 data_q <= '0;
93 end else begin
94 ecc_q <= ecc_d;
==>
Branches:
-1- | Status | Tests |
1 |
Covered |
T1,T2,T3 |
0 |
Covered |
T1,T2,T3 |
65 if (32'(addr_i) < Depth) begin
-1-
66 rdata_o = data_q[addr_i];
67 if (wren_i) begin
-2-
68 {ecc_d[addr_i], data_d[addr_i]} = ecc_enc;
==>
69 end
MISSING_ELSE
==>
70 end
MISSING_ELSE
==>
Branches:
-1- | -2- | Status | Tests |
1 |
1 |
Covered |
T1,T2,T3 |
1 |
0 |
Covered |
T1,T2,T3 |
0 |
- |
Covered |
T25 |
Assert Coverage for Instance : tb.dut.gen_partitions[10].gen_lifecycle.u_part_buf.u_otp_ctrl_ecc_reg
Assertion Details
DataKnown_A
Name | Attempts | Real Successes | Failures | Incomplete |
Total |
95995079 |
95123308 |
0 |
0 |
T1 |
6346 |
6266 |
0 |
0 |
T2 |
20779 |
20387 |
0 |
0 |
T3 |
16526 |
16188 |
0 |
0 |
T4 |
41540 |
41124 |
0 |
0 |
T5 |
24984 |
24368 |
0 |
0 |
T6 |
30776 |
30706 |
0 |
0 |
T10 |
44472 |
44397 |
0 |
0 |
T11 |
20926 |
20462 |
0 |
0 |
T12 |
41197 |
40991 |
0 |
0 |
T13 |
73799 |
72549 |
0 |
0 |
DataOutKnown_A
Name | Attempts | Real Successes | Failures | Incomplete |
Total |
95995079 |
95123308 |
0 |
0 |
T1 |
6346 |
6266 |
0 |
0 |
T2 |
20779 |
20387 |
0 |
0 |
T3 |
16526 |
16188 |
0 |
0 |
T4 |
41540 |
41124 |
0 |
0 |
T5 |
24984 |
24368 |
0 |
0 |
T6 |
30776 |
30706 |
0 |
0 |
T10 |
44472 |
44397 |
0 |
0 |
T11 |
20926 |
20462 |
0 |
0 |
T12 |
41197 |
40991 |
0 |
0 |
T13 |
73799 |
72549 |
0 |
0 |
EccErrKnown_A
Name | Attempts | Real Successes | Failures | Incomplete |
Total |
95995079 |
95123308 |
0 |
0 |
T1 |
6346 |
6266 |
0 |
0 |
T2 |
20779 |
20387 |
0 |
0 |
T3 |
16526 |
16188 |
0 |
0 |
T4 |
41540 |
41124 |
0 |
0 |
T5 |
24984 |
24368 |
0 |
0 |
T6 |
30776 |
30706 |
0 |
0 |
T10 |
44472 |
44397 |
0 |
0 |
T11 |
20926 |
20462 |
0 |
0 |
T12 |
41197 |
40991 |
0 |
0 |
T13 |
73799 |
72549 |
0 |
0 |
EccKnown_A
Name | Attempts | Real Successes | Failures | Incomplete |
Total |
95995079 |
95123308 |
0 |
0 |
T1 |
6346 |
6266 |
0 |
0 |
T2 |
20779 |
20387 |
0 |
0 |
T3 |
16526 |
16188 |
0 |
0 |
T4 |
41540 |
41124 |
0 |
0 |
T5 |
24984 |
24368 |
0 |
0 |
T6 |
30776 |
30706 |
0 |
0 |
T10 |
44472 |
44397 |
0 |
0 |
T11 |
20926 |
20462 |
0 |
0 |
T12 |
41197 |
40991 |
0 |
0 |
T13 |
73799 |
72549 |
0 |
0 |
RDataOutKnown_A
Name | Attempts | Real Successes | Failures | Incomplete |
Total |
95995079 |
95123308 |
0 |
0 |
T1 |
6346 |
6266 |
0 |
0 |
T2 |
20779 |
20387 |
0 |
0 |
T3 |
16526 |
16188 |
0 |
0 |
T4 |
41540 |
41124 |
0 |
0 |
T5 |
24984 |
24368 |
0 |
0 |
T6 |
30776 |
30706 |
0 |
0 |
T10 |
44472 |
44397 |
0 |
0 |
T11 |
20926 |
20462 |
0 |
0 |
T12 |
41197 |
40991 |
0 |
0 |
T13 |
73799 |
72549 |
0 |
0 |
WidthMustBe64bit_A
Name | Attempts | Real Successes | Failures | Incomplete |
Total |
1120 |
1120 |
0 |
0 |
T1 |
1 |
1 |
0 |
0 |
T2 |
1 |
1 |
0 |
0 |
T3 |
1 |
1 |
0 |
0 |
T4 |
1 |
1 |
0 |
0 |
T5 |
1 |
1 |
0 |
0 |
T6 |
1 |
1 |
0 |
0 |
T10 |
1 |
1 |
0 |
0 |
T11 |
1 |
1 |
0 |
0 |
T12 |
1 |
1 |
0 |
0 |
T13 |
1 |
1 |
0 |
0 |