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

Module : sram_ctrl
SCORELINECONDTOGGLEFSMBRANCHASSERT
95.31 100.00 90.82 100.00 100.00 85.71

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

Module self-instances :
NAMESCORELINECONDTOGGLEFSMBRANCHASSERT
tb.dut 95.68 100.00 92.71 100.00 100.00 85.71



Module Instance : tb.dut

Instance :
SCORELINECONDTOGGLEFSMBRANCHASSERT
95.68 100.00 92.71 100.00 100.00 85.71


Instance's subtree :
SCORELINECONDTOGGLEFSMBRANCHASSERT
98.51 99.41 95.61 100.00 100.00 96.49 99.56


Parent :
SCORELINECONDTOGGLEFSMBRANCHASSERTNAME
tb


Subtrees :
NAMESCORELINECONDTOGGLEFSMBRANCHASSERT
sram_ctrl_regs_csr_assert 100.00 100.00
tlul_assert_device_ram 100.00 100.00 100.00 100.00
tlul_assert_device_regs 100.00 100.00 100.00 100.00
u_lfsr 100.00 100.00
u_prim_alert_sender_parity 100.00 100.00
u_prim_count 100.00 100.00
u_prim_lc_sync 100.00 100.00 100.00 100.00
u_prim_ram_1p_scr 98.49 100.00 92.45 100.00 100.00 100.00
u_prim_sync_reqack_data 100.00 100.00 100.00 100.00 100.00
u_reg_regs 98.50 99.03 96.77 100.00 96.72 100.00
u_tlul_adapter_sram 98.26 99.16 95.57 100.00 100.00 94.82 100.00
u_tlul_data_integ_enc 100.00 100.00
u_tlul_lc_gate 96.79 100.00 100.00 100.00 96.43 87.50

Line Coverage for Module : sram_ctrl
Line No.TotalCoveredPercent
TOTAL5151100.00
CONT_ASSIGN12611100.00
CONT_ASSIGN13411100.00
CONT_ASSIGN13711100.00
CONT_ASSIGN14111100.00
CONT_ASSIGN14511100.00
CONT_ASSIGN14811100.00
CONT_ASSIGN18011100.00
CONT_ASSIGN18211100.00
CONT_ASSIGN19011100.00
CONT_ASSIGN19711100.00
CONT_ASSIGN20611100.00
CONT_ASSIGN21511100.00
CONT_ASSIGN22011100.00
ALWAYS22433100.00
CONT_ASSIGN23611100.00
CONT_ASSIGN23711100.00
CONT_ASSIGN26111100.00
CONT_ASSIGN26211100.00
CONT_ASSIGN27311100.00
CONT_ASSIGN27811100.00
CONT_ASSIGN28211100.00
CONT_ASSIGN28311100.00
CONT_ASSIGN28711100.00
CONT_ASSIGN28811100.00
CONT_ASSIGN29211100.00
CONT_ASSIGN29311100.00
ALWAYS2961111100.00
CONT_ASSIGN34011100.00
CONT_ASSIGN38311100.00
CONT_ASSIGN46011100.00
CONT_ASSIGN50111100.00
CONT_ASSIGN50711100.00
CONT_ASSIGN50811100.00
CONT_ASSIGN50911100.00
CONT_ASSIGN51011100.00
CONT_ASSIGN51111100.00
CONT_ASSIGN51211100.00
CONT_ASSIGN52311100.00
CONT_ASSIGN56011100.00
WARNING: The source file '/workspace/default/sim-vcs/../src/lowrisc_ip_sram_ctrl_0.1/rtl/sram_ctrl.sv' or '../src/lowrisc_ip_sram_ctrl_0.1/rtl/sram_ctrl.sv' was not found, so annotated line coverage report could not be generated.
Line No.CoveredStatements
126 1 1
134 1 1
137 1 1
141 1 1
145 1 1
148 1 1
180 1 1
182 1 1
190 1 1
197 1 1
206 1 1
215 1 1
220 1 1
224 1 1
225 1 1
227 1 1
236 1 1
237 1 1
261 1 1
262 1 1
273 1 1
278 1 1
282 1 1
283 1 1
287 1 1
288 1 1
292 1 1
293 1 1
296 1 1
297 1 1
300 1 1
301 1 1
303 1 1
304 1 1
305 1 1
306 1 1
MISSING_ELSE
311 1 1
312 1 1
313 1 1
MISSING_ELSE
340 1 1
383 1 1
460 1 1
501 1 1
507 1 1
508 1 1
509 1 1
510 1 1
511 1 1
512 1 1
523 1 1
560 1 1


Cond Coverage for Module : sram_ctrl
TotalCoveredPercent
Conditions988990.82
Logical988990.82
Non-Logical00
Event00

 LINE       134
 EXPRESSION (reg2hw.alert_test.q & reg2hw.alert_test.qe)
             ---------1---------   ----------2---------
-1--2-StatusTests
01CoveredT18,T19,T20
10CoveredT1,T2,T3
11CoveredT18,T19,T20

 LINE       148
 EXPRESSION (((|bus_integ_error)) | init_error | readback_error)
             ----------1---------   -----2----   -------3------
-1--2--3-StatusTests
000CoveredT1,T2,T3
001Not Covered
010CoveredT21,T22,T23
100CoveredT21,T22,T23

 LINE       190
 EXPRESSION (reg2hw.status.escalated.q | reg2hw.status.init_error.q | reg2hw.status.bus_integ_error.q | reg2hw.status.readback_error.q)
             ------------1------------   -------------2------------   ---------------3---------------   ---------------4--------------
-1--2--3--4-StatusTests
0000CoveredT1,T2,T3
0001Not Covered
0010CoveredT21,T22,T23
0100CoveredT21,T22,T23
1000CoveredT7,T8,T9

 LINE       197
 EXPRESSION (escalate | init_error | ((|bus_integ_error)) | readback_error | local_esc_reg)
             ----1---   -----2----   ----------3---------   -------4------   ------5------
-1--2--3--4--5-StatusTests
00000CoveredT1,T2,T3
00001CoveredT7,T8,T9
00010Not Covered
00100CoveredT21,T22,T23
01000CoveredT21,T22,T23
10000CoveredT7,T8,T9

 LINE       215
 EXPRESSION (reg2hw.ctrl.init.q && reg2hw.ctrl.init.qe && ((!init_q)))
             ---------1--------    ---------2---------    -----3-----
-1--2--3-StatusTests
011CoveredT6,T11,T7
101CoveredT1,T2,T3
110Not Covered
111CoveredT1,T2,T3

 LINE       220
 EXPRESSION (init_done ? 1'b0 : (init_trig ? 1'b1 : init_q))
             ----1----
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT1,T2,T3

 LINE       220
 SUB-EXPRESSION (init_trig ? 1'b1 : init_q)
                 ----1----
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT1,T2,T3

 LINE       236
 EXPRESSION (init_q & ((~key_req_pending_q)))
             ---1--   -----------2----------
-1--2-StatusTests
01CoveredT1,T2,T3
10CoveredT1,T2,T3
11CoveredT1,T2,T3

 LINE       237
 EXPRESSION ((init_cnt == 10'((Depth - 1))) & init_req)
             ---------------1--------------   ----2---
-1--2-StatusTests
01CoveredT1,T2,T3
10CoveredT1,T2,T3
11CoveredT1,T2,T3

 LINE       237
 SUB-EXPRESSION (init_cnt == 10'((Depth - 1)))
                ---------------1--------------
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT1,T2,T3

 LINE       261
 EXPRESSION (init_done & ((~init_trig)) & ((~local_esc)))
             ----1----   -------2------   -------3------
-1--2--3-StatusTests
011CoveredT1,T2,T3
101Not Covered
110CoveredT7,T8,T9
111CoveredT1,T2,T3

 LINE       262
 EXPRESSION (init_done | init_trig | local_esc)
             ----1----   ----2----   ----3----
-1--2--3-StatusTests
000CoveredT1,T2,T3
001CoveredT7,T8,T9
010CoveredT1,T2,T3
100CoveredT1,T2,T3

 LINE       273
 EXPRESSION (reg2hw.ctrl.renew_scr_key.q && reg2hw.ctrl.renew_scr_key.qe && ((!key_req_pending_q)) && ((!init_q)))
             -------------1-------------    --------------2-------------    -----------3----------    -----4-----
-1--2--3--4-StatusTests
0111CoveredT6,T24,T25
1011CoveredT1,T2,T3
1101Not Covered
1110Not Covered
1111CoveredT1,T2,T3

 LINE       278
 EXPRESSION (key_req ? 1'b1 : (key_ack ? 1'b0 : key_req_pending_q))
             ---1---
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT1,T2,T3

 LINE       278
 SUB-EXPRESSION (key_ack ? 1'b0 : key_req_pending_q)
                 ---1---
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT1,T2,T3

 LINE       282
 EXPRESSION (key_ack & ((~key_req)) & ((~local_esc)))
             ---1---   ------2-----   -------3------
-1--2--3-StatusTests
011CoveredT1,T2,T3
101Not Covered
110CoveredT7,T8,T9
111CoveredT1,T2,T3

 LINE       283
 EXPRESSION (key_req | key_ack | local_esc)
             ---1---   ---2---   ----3----
-1--2--3-StatusTests
000CoveredT1,T2,T3
001CoveredT7,T8,T9
010CoveredT1,T2,T3
100CoveredT1,T2,T3

 LINE       287
 EXPRESSION ((key_ack & ((~local_esc))) ? MuBi4True : MuBi4False)
             -------------1------------
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT1,T2,T3

 LINE       287
 SUB-EXPRESSION (key_ack & ((~local_esc)))
                 ---1---   -------2------
-1--2-StatusTests
01CoveredT1,T2,T3
10CoveredT7,T8,T9
11CoveredT1,T2,T3

 LINE       288
 EXPRESSION (key_ack | local_esc)
             ---1---   ----2----
-1--2-StatusTests
00CoveredT1,T2,T3
01CoveredT7,T8,T9
10CoveredT1,T2,T3

 LINE       292
 EXPRESSION (key_seed_valid & ((~local_esc)))
             -------1------   -------2------
-1--2-StatusTests
01CoveredT1,T3,T5
10CoveredT7,T8,T9
11CoveredT1,T2,T5

 LINE       293
 EXPRESSION (key_ack | local_esc)
             ---1---   ----2----
-1--2-StatusTests
00CoveredT1,T2,T3
01CoveredT7,T8,T9
10CoveredT1,T2,T3

 LINE       501
 EXPRESSION (tlul_req | init_req)
             ----1---   ----2---
-1--2-StatusTests
00CoveredT1,T2,T3
01CoveredT1,T2,T3
10CoveredT1,T2,T3

 LINE       507
 EXPRESSION (key_valid & ((~init_req)))
             ----1----   ------2------
-1--2-StatusTests
01CoveredT1,T2,T3
10CoveredT1,T2,T3
11CoveredT1,T2,T3

 LINE       508
 EXPRESSION (tlul_we | init_req)
             ---1---   ----2---
-1--2-StatusTests
00CoveredT1,T2,T3
01CoveredT1,T2,T3
10CoveredT1,T2,T3

 LINE       509
 EXPRESSION (((|bus_integ_error[2:1])) & ((~init_req)))
             ------------1------------   ------2------
-1--2-StatusTests
01CoveredT1,T2,T3
10Not Covered
11CoveredT21,T22,T23

 LINE       510
 EXPRESSION (init_req ? init_cnt : tlul_addr)
             ----1---
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT1,T2,T3

 LINE       511
 EXPRESSION (init_req ? lfsr_out_integ : tlul_wdata)
             ----1---
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT1,T2,T3

 LINE       512
 EXPRESSION (init_req ? ({sram_ctrl_pkg::DataWidth {1'b1}}) : tlul_wmask)
             ----1---
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT1,T2,T3

 LINE       523
 EXPRESSION (key_req_pending_q ? 1'b0 : (reg2hw.status.escalated.q ? (tl_gate_resp_pending & sram_compound_txn_in_progress) : 1'b1))
             --------1--------
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT1,T2,T3

 LINE       523
 SUB-EXPRESSION (reg2hw.status.escalated.q ? (tl_gate_resp_pending & sram_compound_txn_in_progress) : 1'b1)
                 ------------1------------
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT7,T8,T9

 LINE       523
 SUB-EXPRESSION (tl_gate_resp_pending & sram_compound_txn_in_progress)
                 ----------1---------   --------------2--------------
-1--2-StatusTests
01CoveredT9,T26,T27
10CoveredT7,T8,T9
11CoveredT7,T28,T26

Toggle Coverage for Module : sram_ctrl
TotalCoveredPercent
Totals 60 60 100.00
Total Bits 1226 1226 100.00
Total Bits 0->1 613 613 100.00
Total Bits 1->0 613 613 100.00

Ports 60 60 100.00
Port Bits 1226 1226 100.00
Port Bits 0->1 613 613 100.00
Port Bits 1->0 613 613 100.00

Port Details
NameToggleToggle 1->0TestsToggle 0->1TestsDirection
clk_i Yes Yes T1,T2,T3 Yes T1,T2,T3 INPUT
rst_ni Yes Yes T7,T8,T29 Yes T1,T2,T3 INPUT
clk_otp_i Yes Yes T1,T2,T3 Yes T1,T2,T3 INPUT
rst_otp_ni Yes Yes T7,T8,T29 Yes T1,T2,T3 INPUT
ram_tl_i.d_ready Yes Yes T4,T6,T11 Yes T1,T2,T3 INPUT
ram_tl_i.a_user.data_intg[6:0] Yes Yes T1,T2,T3 Yes T1,T2,T3 INPUT
ram_tl_i.a_user.cmd_intg[6:0] Yes Yes T1,T2,T3 Yes T1,T2,T3 INPUT
ram_tl_i.a_user.instr_type[3:0] Yes Yes T6,T13,T29 Yes T5,T6,T29 INPUT
ram_tl_i.a_user.rsvd[4:0] Unreachable Unreachable Unreachable INPUT
ram_tl_i.a_data[31:0] Yes Yes T1,T2,T3 Yes T1,T2,T3 INPUT
ram_tl_i.a_mask[3:0] Yes Yes T2,T3,T4 Yes T2,T3,T5 INPUT
ram_tl_i.a_address[31:0] Yes Yes T2,T3,T4 Yes T2,T3,T4 INPUT
ram_tl_i.a_source[7:0] Yes Yes T1,T2,T3 Yes T1,T2,T3 INPUT
ram_tl_i.a_size[1:0] Yes Yes T2,T3,T5 Yes T2,T3,T5 INPUT
ram_tl_i.a_param[2:0] Unreachable Unreachable Unreachable INPUT
ram_tl_i.a_opcode[2:0] Yes Yes T1,T2,T3 Yes T1,T2,T3 INPUT
ram_tl_i.a_valid Yes Yes T1,T2,T3 Yes T1,T2,T3 INPUT
ram_tl_o.a_ready Yes Yes T1,T2,T3 Yes T1,T2,T3 OUTPUT
ram_tl_o.d_error Yes Yes T1,T2,T3 Yes T6,T7,T8 OUTPUT
ram_tl_o.d_user.data_intg[6:0] Yes Yes T1,T2,T3 Yes T1,T2,T3 OUTPUT
ram_tl_o.d_user.rsp_intg[5:0] Yes Yes *T1,T2,T3 Yes T1,T2,T3 OUTPUT
ram_tl_o.d_user.rsp_intg[6] Unreachable Unreachable Unreachable OUTPUT
ram_tl_o.d_data[31:0] Yes Yes T1,T2,T3 Yes T1,T2,T3 OUTPUT
ram_tl_o.d_sink Unreachable Unreachable Unreachable OUTPUT
ram_tl_o.d_source[7:0] Yes Yes T1,T2,T3 Yes T1,T2,T3 OUTPUT
ram_tl_o.d_size[1:0] Yes Yes T2,T3,T4 Yes T2,T3,T4 OUTPUT
ram_tl_o.d_param[2:0] Unreachable Unreachable Unreachable OUTPUT
ram_tl_o.d_opcode[0] Yes Yes *T1,*T2,*T3 Yes T1,T2,T3 OUTPUT
ram_tl_o.d_opcode[2:1] Unreachable Unreachable Unreachable OUTPUT
ram_tl_o.d_valid Yes Yes T1,T2,T3 Yes T1,T2,T3 OUTPUT
regs_tl_i.d_ready Yes Yes T4,T6,T11 Yes T1,T2,T3 INPUT
regs_tl_i.a_user.data_intg[6:0] Yes Yes T2,T5,T6 Yes T2,T5,T6 INPUT
regs_tl_i.a_user.cmd_intg[6:0] Yes Yes T2,T5,T4 Yes T1,T2,T5 INPUT
regs_tl_i.a_user.instr_type[3:0] Yes Yes T2,T5,T6 Yes T2,T6,T10 INPUT
regs_tl_i.a_user.rsvd[4:0] Unreachable Unreachable Unreachable INPUT
regs_tl_i.a_data[31:0] Yes Yes T2,T5,T4 Yes T2,T5,T4 INPUT
regs_tl_i.a_mask[3:0] Yes Yes T2,T5,T6 Yes T2,T5,T6 INPUT
regs_tl_i.a_address[31:0] Yes Yes T2,T5,T6 Yes T2,T5,T6 INPUT
regs_tl_i.a_source[7:0] Yes Yes T2,T5,T6 Yes T2,T3,T5 INPUT
regs_tl_i.a_size[1:0] Yes Yes T2,T5,T4 Yes T1,T2,T4 INPUT
regs_tl_i.a_param[2:0] Unreachable Unreachable Unreachable INPUT
regs_tl_i.a_opcode[2:0] Yes Yes T2,T5,T4 Yes T1,T2,T3 INPUT
regs_tl_i.a_valid Yes Yes T1,T2,T3 Yes T1,T2,T3 INPUT
regs_tl_o.a_ready Yes Yes T1,T2,T3 Yes T1,T2,T3 OUTPUT
regs_tl_o.d_error Yes Yes T29,T30,T31 Yes T29,T30,T31 OUTPUT
regs_tl_o.d_user.data_intg[6:0] Yes Yes T7,T8,T29 Yes T7,T8,T29 OUTPUT
regs_tl_o.d_user.rsp_intg[5:0] Yes Yes *T2,*T4,*T6 Yes T1,T2,T3 OUTPUT
regs_tl_o.d_user.rsp_intg[6] Unreachable Unreachable Unreachable OUTPUT
regs_tl_o.d_data[31:0] Yes Yes T6,T7,T8 Yes T1,T2,T3 OUTPUT
regs_tl_o.d_sink Unreachable Unreachable Unreachable OUTPUT
regs_tl_o.d_source[7:0] Yes Yes T2,T6,T12 Yes T1,T2,T3 OUTPUT
regs_tl_o.d_size[1:0] Yes Yes T2,T4,T6 Yes T1,T2,T3 OUTPUT
regs_tl_o.d_param[2:0] Unreachable Unreachable Unreachable OUTPUT
regs_tl_o.d_opcode[0] Yes Yes *T6,*T7,*T8 Yes T6,T7,T8 OUTPUT
regs_tl_o.d_opcode[2:1] Unreachable Unreachable Unreachable OUTPUT
regs_tl_o.d_valid Yes Yes T1,T2,T3 Yes T1,T2,T3 OUTPUT
alert_rx_i[0].ack_n Yes Yes T1,T2,T3 Yes T1,T2,T3 INPUT
alert_rx_i[0].ack_p Yes Yes T18,T19,T20 Yes T18,T19,T20 INPUT
alert_rx_i[0].ping_n Unreachable Unreachable Unreachable INPUT
alert_rx_i[0].ping_p Unreachable Unreachable Unreachable INPUT
alert_tx_o[0].alert_n Yes Yes T1,T2,T3 Yes T1,T2,T3 OUTPUT
alert_tx_o[0].alert_p Yes Yes T18,T19,T20 Yes T18,T19,T20 OUTPUT
lc_escalate_en_i[3:0] Yes Yes T7,T8,T9 Yes T7,T8,T9 INPUT
lc_hw_debug_en_i[3:0] Yes Yes T6,T29,T32 Yes T6,T29,T32 INPUT
otp_en_sram_ifetch_i[7:0] Yes Yes T6,T32,T33 Yes T6,T32,T33 INPUT
sram_otp_key_o.req Yes Yes T1,T2,T3 Yes T1,T2,T3 OUTPUT
sram_otp_key_i.seed_valid Yes Yes T1,T5,T6 Yes T6,T11,T7 INPUT
sram_otp_key_i.nonce[127:0] Yes Yes T3,T6,T11 Yes T5,T6,T11 INPUT
sram_otp_key_i.key[127:0] Yes Yes T5,T6,T10 Yes T6,T11,T13 INPUT
sram_otp_key_i.ack Yes Yes T1,T2,T3 Yes T1,T2,T3 INPUT
cfg_i.rf_cfg.cfg[3:0] Yes Yes T34,T35,T36 Yes T34,T35,T36 INPUT
cfg_i.rf_cfg.cfg_en Yes Yes T34,T35,T36 Yes T34,T35,T36 INPUT
cfg_i.ram_cfg.cfg[3:0] Yes Yes T34,T35,T36 Yes T34,T35,T36 INPUT
cfg_i.ram_cfg.cfg_en Yes Yes T34,T35,T36 Yes T34,T35,T36 INPUT

*Tests covering at least one bit in the range

Branch Coverage for Module : sram_ctrl
Line No.TotalCoveredPercent
Branches 24 24 100.00
TERNARY 220 3 3 100.00
TERNARY 278 3 3 100.00
TERNARY 287 2 2 100.00
TERNARY 510 2 2 100.00
TERNARY 511 2 2 100.00
TERNARY 512 2 2 100.00
TERNARY 523 3 3 100.00
IF 224 2 2 100.00
IF 296 5 5 100.00

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

LineNo. Expression -1-: 220 (init_done) ? -2-: 220 (init_trig) ?

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


LineNo. Expression -1-: 278 (key_req) ? -2-: 278 (key_ack) ?

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


LineNo. Expression -1-: 287 ((key_ack & (~local_esc))) ?

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


LineNo. Expression -1-: 510 (init_req) ?

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


LineNo. Expression -1-: 511 (init_req) ?

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


LineNo. Expression -1-: 512 (init_req) ?

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


LineNo. Expression -1-: 523 (key_req_pending_q) ? -2-: 523 (reg2hw.status.escalated.q) ?

Branches:
-1--2-StatusTests
1 - Covered T1,T2,T3
0 1 Covered T7,T8,T9
0 0 Covered T1,T2,T3


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

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


LineNo. Expression -1-: 296 if ((!rst_ni)) -2-: 304 if (key_ack) -3-: 311 if (local_esc)

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


Assert Coverage for Module : sram_ctrl
TotalAttemptedPercentSucceeded/MatchedPercent
Assertions 14 14 100.00 12 85.71
Cover properties 0 0 0
Cover sequences 0 0 0
Total 14 14 100.00 12 85.71




Assertion Details

NameAttemptsReal SuccessesFailuresIncomplete
AlertOutKnown_A 206805172 206719192 0 0
FpvSecCmCntCheck_A 206805172 80 0 0
FpvSecCmFifoRptrCheck_A 206805172 80 0 0
FpvSecCmFifoWptrCheck_A 206805172 80 0 0
FpvSecCmLcGateFsmCheck_A 206805172 0 0 0
FpvSecCmRegWeOnehotCheck_A 206805172 80 0 0
FpvSecCmTlSramByteFsm_A 206805172 0 0 0
NonceWidthsLessThanSource_A 761 761 0 0
RamTlOutKnown_A 206805172 206719192 0 0
RamTlOutPayLoadKnown_A 206805172 78785096 0 0
RamTlOutPayLoadKnown_AKnownEnable 206805172 206719192 0 0
RegsTlOutKnown_A 206805172 206719192 0 0
SramOtpKeyKnown_A 206805172 206719192 0 0
TlulGntIsCorrect_A 206805172 61670194 0 0


AlertOutKnown_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 206805172 206719192 0 0
T1 9980 9926 0 0
T2 10309 10240 0 0
T3 14845 14763 0 0
T4 108465 108408 0 0
T5 8399 8346 0 0
T6 146680 146674 0 0
T10 9856 9798 0 0
T11 388678 388595 0 0
T12 13173 13105 0 0
T13 7754 7697 0 0

FpvSecCmCntCheck_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 206805172 80 0 0
T21 42260 20 0 0
T22 0 10 0 0
T23 0 20 0 0
T37 0 20 0 0
T38 0 10 0 0
T39 102413 0 0 0
T40 7361 0 0 0
T41 3594 0 0 0
T42 10445 0 0 0
T43 105480 0 0 0
T44 79271 0 0 0
T45 37294 0 0 0
T46 15819 0 0 0
T47 827117 0 0 0

FpvSecCmFifoRptrCheck_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 206805172 80 0 0
T21 42260 20 0 0
T22 0 10 0 0
T23 0 20 0 0
T37 0 20 0 0
T38 0 10 0 0
T39 102413 0 0 0
T40 7361 0 0 0
T41 3594 0 0 0
T42 10445 0 0 0
T43 105480 0 0 0
T44 79271 0 0 0
T45 37294 0 0 0
T46 15819 0 0 0
T47 827117 0 0 0

FpvSecCmFifoWptrCheck_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 206805172 80 0 0
T21 42260 20 0 0
T22 0 10 0 0
T23 0 20 0 0
T37 0 20 0 0
T38 0 10 0 0
T39 102413 0 0 0
T40 7361 0 0 0
T41 3594 0 0 0
T42 10445 0 0 0
T43 105480 0 0 0
T44 79271 0 0 0
T45 37294 0 0 0
T46 15819 0 0 0
T47 827117 0 0 0

FpvSecCmLcGateFsmCheck_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 206805172 0 0 0

FpvSecCmRegWeOnehotCheck_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 206805172 80 0 0
T21 42260 20 0 0
T22 0 10 0 0
T23 0 20 0 0
T37 0 20 0 0
T38 0 10 0 0
T39 102413 0 0 0
T40 7361 0 0 0
T41 3594 0 0 0
T42 10445 0 0 0
T43 105480 0 0 0
T44 79271 0 0 0
T45 37294 0 0 0
T46 15819 0 0 0
T47 827117 0 0 0

FpvSecCmTlSramByteFsm_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 206805172 0 0 0

NonceWidthsLessThanSource_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 761 761 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

RamTlOutKnown_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 206805172 206719192 0 0
T1 9980 9926 0 0
T2 10309 10240 0 0
T3 14845 14763 0 0
T4 108465 108408 0 0
T5 8399 8346 0 0
T6 146680 146674 0 0
T10 9856 9798 0 0
T11 388678 388595 0 0
T12 13173 13105 0 0
T13 7754 7697 0 0

RamTlOutPayLoadKnown_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 206805172 78785096 0 0
T1 9980 5257 0 0
T2 10309 7288 0 0
T3 14845 10000 0 0
T4 108465 44999 0 0
T5 8399 1185 0 0
T6 146680 589712 0 0
T10 9856 6021 0 0
T11 388678 165109 0 0
T12 13173 6142 0 0
T13 7754 4636 0 0

RamTlOutPayLoadKnown_AKnownEnable
NameAttemptsReal SuccessesFailuresIncomplete
Total 206805172 206719192 0 0
T1 9980 9926 0 0
T2 10309 10240 0 0
T3 14845 14763 0 0
T4 108465 108408 0 0
T5 8399 8346 0 0
T6 146680 146674 0 0
T10 9856 9798 0 0
T11 388678 388595 0 0
T12 13173 13105 0 0
T13 7754 7697 0 0

RegsTlOutKnown_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 206805172 206719192 0 0
T1 9980 9926 0 0
T2 10309 10240 0 0
T3 14845 14763 0 0
T4 108465 108408 0 0
T5 8399 8346 0 0
T6 146680 146674 0 0
T10 9856 9798 0 0
T11 388678 388595 0 0
T12 13173 13105 0 0
T13 7754 7697 0 0

SramOtpKeyKnown_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 206805172 206719192 0 0
T1 9980 9926 0 0
T2 10309 10240 0 0
T3 14845 14763 0 0
T4 108465 108408 0 0
T5 8399 8346 0 0
T6 146680 146674 0 0
T10 9856 9798 0 0
T11 388678 388595 0 0
T12 13173 13105 0 0
T13 7754 7697 0 0

TlulGntIsCorrect_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 206805172 61670194 0 0
T1 9980 5257 0 0
T2 10309 7581 0 0
T3 14845 10914 0 0
T4 108465 16034 0 0
T5 8399 1185 0 0
T6 146680 124088 0 0
T10 9856 6540 0 0
T11 388678 53969 0 0
T12 13173 6142 0 0
T13 7754 4636 0 0

Line Coverage for Instance : tb.dut
Line No.TotalCoveredPercent
TOTAL5151100.00
CONT_ASSIGN12611100.00
CONT_ASSIGN13411100.00
CONT_ASSIGN13711100.00
CONT_ASSIGN14111100.00
CONT_ASSIGN14511100.00
CONT_ASSIGN14811100.00
CONT_ASSIGN18011100.00
CONT_ASSIGN18211100.00
CONT_ASSIGN19011100.00
CONT_ASSIGN19711100.00
CONT_ASSIGN20611100.00
CONT_ASSIGN21511100.00
CONT_ASSIGN22011100.00
ALWAYS22433100.00
CONT_ASSIGN23611100.00
CONT_ASSIGN23711100.00
CONT_ASSIGN26111100.00
CONT_ASSIGN26211100.00
CONT_ASSIGN27311100.00
CONT_ASSIGN27811100.00
CONT_ASSIGN28211100.00
CONT_ASSIGN28311100.00
CONT_ASSIGN28711100.00
CONT_ASSIGN28811100.00
CONT_ASSIGN29211100.00
CONT_ASSIGN29311100.00
ALWAYS2961111100.00
CONT_ASSIGN34011100.00
CONT_ASSIGN38311100.00
CONT_ASSIGN46011100.00
CONT_ASSIGN50111100.00
CONT_ASSIGN50711100.00
CONT_ASSIGN50811100.00
CONT_ASSIGN50911100.00
CONT_ASSIGN51011100.00
CONT_ASSIGN51111100.00
CONT_ASSIGN51211100.00
CONT_ASSIGN52311100.00
CONT_ASSIGN56011100.00
WARNING: The source file '/workspace/default/sim-vcs/../src/lowrisc_ip_sram_ctrl_0.1/rtl/sram_ctrl.sv' or '../src/lowrisc_ip_sram_ctrl_0.1/rtl/sram_ctrl.sv' was not found, so annotated line coverage report could not be generated.
Line No.CoveredStatements
126 1 1
134 1 1
137 1 1
141 1 1
145 1 1
148 1 1
180 1 1
182 1 1
190 1 1
197 1 1
206 1 1
215 1 1
220 1 1
224 1 1
225 1 1
227 1 1
236 1 1
237 1 1
261 1 1
262 1 1
273 1 1
278 1 1
282 1 1
283 1 1
287 1 1
288 1 1
292 1 1
293 1 1
296 1 1
297 1 1
300 1 1
301 1 1
303 1 1
304 1 1
305 1 1
306 1 1
MISSING_ELSE
311 1 1
312 1 1
313 1 1
MISSING_ELSE
340 1 1
383 1 1
460 1 1
501 1 1
507 1 1
508 1 1
509 1 1
510 1 1
511 1 1
512 1 1
523 1 1
560 1 1


Cond Coverage for Instance : tb.dut
TotalCoveredPercent
Conditions968992.71
Logical968992.71
Non-Logical00
Event00

 LINE       134
 EXPRESSION (reg2hw.alert_test.q & reg2hw.alert_test.qe)
             ---------1---------   ----------2---------
-1--2-StatusTests
01CoveredT18,T19,T20
10CoveredT1,T2,T3
11CoveredT18,T19,T20

 LINE       148
 EXPRESSION (((|bus_integ_error)) | init_error | readback_error)
             ----------1---------   -----2----   -------3------
-1--2--3-StatusTests
000CoveredT1,T2,T3
001Not Covered
010CoveredT21,T22,T23
100CoveredT21,T22,T23

 LINE       190
 EXPRESSION (reg2hw.status.escalated.q | reg2hw.status.init_error.q | reg2hw.status.bus_integ_error.q | reg2hw.status.readback_error.q)
             ------------1------------   -------------2------------   ---------------3---------------   ---------------4--------------
-1--2--3--4-StatusTests
0000CoveredT1,T2,T3
0001Not Covered
0010CoveredT21,T22,T23
0100CoveredT21,T22,T23
1000CoveredT7,T8,T9

 LINE       197
 EXPRESSION (escalate | init_error | ((|bus_integ_error)) | readback_error | local_esc_reg)
             ----1---   -----2----   ----------3---------   -------4------   ------5------
-1--2--3--4--5-StatusTests
00000CoveredT1,T2,T3
00001CoveredT7,T8,T9
00010Not Covered
00100CoveredT21,T22,T23
01000CoveredT21,T22,T23
10000CoveredT7,T8,T9

 LINE       215
 EXPRESSION (reg2hw.ctrl.init.q && reg2hw.ctrl.init.qe && ((!init_q)))
             ---------1--------    ---------2---------    -----3-----
-1--2--3-StatusTests
011CoveredT6,T11,T7
101CoveredT1,T2,T3
110Not Covered
111CoveredT1,T2,T3

 LINE       220
 EXPRESSION (init_done ? 1'b0 : (init_trig ? 1'b1 : init_q))
             ----1----
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT1,T2,T3

 LINE       220
 SUB-EXPRESSION (init_trig ? 1'b1 : init_q)
                 ----1----
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT1,T2,T3

 LINE       236
 EXPRESSION (init_q & ((~key_req_pending_q)))
             ---1--   -----------2----------
-1--2-StatusTests
01CoveredT1,T2,T3
10CoveredT1,T2,T3
11CoveredT1,T2,T3

 LINE       237
 EXPRESSION ((init_cnt == 10'((Depth - 1))) & init_req)
             ---------------1--------------   ----2---
-1--2-StatusTests
01CoveredT1,T2,T3
10CoveredT1,T2,T3
11CoveredT1,T2,T3

 LINE       237
 SUB-EXPRESSION (init_cnt == 10'((Depth - 1)))
                ---------------1--------------
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT1,T2,T3

 LINE       261
 EXPRESSION (init_done & ((~init_trig)) & ((~local_esc)))
             ----1----   -------2------   -------3------
-1--2--3-StatusTestsExclude Annotation
011CoveredT1,T2,T3
101Excluded [LOWRISK] we don't issue a new init when there is a unfinished init
110CoveredT7,T8,T9
111CoveredT1,T2,T3

 LINE       262
 EXPRESSION (init_done | init_trig | local_esc)
             ----1----   ----2----   ----3----
-1--2--3-StatusTests
000CoveredT1,T2,T3
001CoveredT7,T8,T9
010CoveredT1,T2,T3
100CoveredT1,T2,T3

 LINE       273
 EXPRESSION (reg2hw.ctrl.renew_scr_key.q && reg2hw.ctrl.renew_scr_key.qe && ((!key_req_pending_q)) && ((!init_q)))
             -------------1-------------    --------------2-------------    -----------3----------    -----4-----
-1--2--3--4-StatusTests
0111CoveredT6,T24,T25
1011CoveredT1,T2,T3
1101Not Covered
1110Not Covered
1111CoveredT1,T2,T3

 LINE       278
 EXPRESSION (key_req ? 1'b1 : (key_ack ? 1'b0 : key_req_pending_q))
             ---1---
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT1,T2,T3

 LINE       278
 SUB-EXPRESSION (key_ack ? 1'b0 : key_req_pending_q)
                 ---1---
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT1,T2,T3

 LINE       282
 EXPRESSION (key_ack & ((~key_req)) & ((~local_esc)))
             ---1---   ------2-----   -------3------
-1--2--3-StatusTestsExclude Annotation
011CoveredT1,T2,T3
101Excluded [UNSUPPORTED] ACK can't come without REQ
110CoveredT7,T8,T9
111CoveredT1,T2,T3

 LINE       283
 EXPRESSION (key_req | key_ack | local_esc)
             ---1---   ---2---   ----3----
-1--2--3-StatusTests
000CoveredT1,T2,T3
001CoveredT7,T8,T9
010CoveredT1,T2,T3
100CoveredT1,T2,T3

 LINE       287
 EXPRESSION ((key_ack & ((~local_esc))) ? MuBi4True : MuBi4False)
             -------------1------------
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT1,T2,T3

 LINE       287
 SUB-EXPRESSION (key_ack & ((~local_esc)))
                 ---1---   -------2------
-1--2-StatusTests
01CoveredT1,T2,T3
10CoveredT7,T8,T9
11CoveredT1,T2,T3

 LINE       288
 EXPRESSION (key_ack | local_esc)
             ---1---   ----2----
-1--2-StatusTests
00CoveredT1,T2,T3
01CoveredT7,T8,T9
10CoveredT1,T2,T3

 LINE       292
 EXPRESSION (key_seed_valid & ((~local_esc)))
             -------1------   -------2------
-1--2-StatusTests
01CoveredT1,T3,T5
10CoveredT7,T8,T9
11CoveredT1,T2,T5

 LINE       293
 EXPRESSION (key_ack | local_esc)
             ---1---   ----2----
-1--2-StatusTests
00CoveredT1,T2,T3
01CoveredT7,T8,T9
10CoveredT1,T2,T3

 LINE       501
 EXPRESSION (tlul_req | init_req)
             ----1---   ----2---
-1--2-StatusTests
00CoveredT1,T2,T3
01CoveredT1,T2,T3
10CoveredT1,T2,T3

 LINE       507
 EXPRESSION (key_valid & ((~init_req)))
             ----1----   ------2------
-1--2-StatusTests
01CoveredT1,T2,T3
10CoveredT1,T2,T3
11CoveredT1,T2,T3

 LINE       508
 EXPRESSION (tlul_we | init_req)
             ---1---   ----2---
-1--2-StatusTests
00CoveredT1,T2,T3
01CoveredT1,T2,T3
10CoveredT1,T2,T3

 LINE       509
 EXPRESSION (((|bus_integ_error[2:1])) & ((~init_req)))
             ------------1------------   ------2------
-1--2-StatusTests
01CoveredT1,T2,T3
10Not Covered
11CoveredT21,T22,T23

 LINE       510
 EXPRESSION (init_req ? init_cnt : tlul_addr)
             ----1---
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT1,T2,T3

 LINE       511
 EXPRESSION (init_req ? lfsr_out_integ : tlul_wdata)
             ----1---
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT1,T2,T3

 LINE       512
 EXPRESSION (init_req ? ({sram_ctrl_pkg::DataWidth {1'b1}}) : tlul_wmask)
             ----1---
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT1,T2,T3

 LINE       523
 EXPRESSION (key_req_pending_q ? 1'b0 : (reg2hw.status.escalated.q ? (tl_gate_resp_pending & sram_compound_txn_in_progress) : 1'b1))
             --------1--------
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT1,T2,T3

 LINE       523
 SUB-EXPRESSION (reg2hw.status.escalated.q ? (tl_gate_resp_pending & sram_compound_txn_in_progress) : 1'b1)
                 ------------1------------
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT7,T8,T9

 LINE       523
 SUB-EXPRESSION (tl_gate_resp_pending & sram_compound_txn_in_progress)
                 ----------1---------   --------------2--------------
-1--2-StatusTests
01CoveredT9,T26,T27
10CoveredT7,T8,T9
11CoveredT7,T28,T26

Toggle Coverage for Instance : tb.dut
TotalCoveredPercent
Totals 60 60 100.00
Total Bits 1226 1226 100.00
Total Bits 0->1 613 613 100.00
Total Bits 1->0 613 613 100.00

Ports 60 60 100.00
Port Bits 1226 1226 100.00
Port Bits 0->1 613 613 100.00
Port Bits 1->0 613 613 100.00

Port Details
NameToggleToggle 1->0TestsToggle 0->1TestsDirection
clk_i Yes Yes T1,T2,T3 Yes T1,T2,T3 INPUT
rst_ni Yes Yes T7,T8,T29 Yes T1,T2,T3 INPUT
clk_otp_i Yes Yes T1,T2,T3 Yes T1,T2,T3 INPUT
rst_otp_ni Yes Yes T7,T8,T29 Yes T1,T2,T3 INPUT
ram_tl_i.d_ready Yes Yes T4,T6,T11 Yes T1,T2,T3 INPUT
ram_tl_i.a_user.data_intg[6:0] Yes Yes T1,T2,T3 Yes T1,T2,T3 INPUT
ram_tl_i.a_user.cmd_intg[6:0] Yes Yes T1,T2,T3 Yes T1,T2,T3 INPUT
ram_tl_i.a_user.instr_type[3:0] Yes Yes T6,T13,T29 Yes T5,T6,T29 INPUT
ram_tl_i.a_user.rsvd[4:0] Unreachable Unreachable Unreachable INPUT
ram_tl_i.a_data[31:0] Yes Yes T1,T2,T3 Yes T1,T2,T3 INPUT
ram_tl_i.a_mask[3:0] Yes Yes T2,T3,T4 Yes T2,T3,T5 INPUT
ram_tl_i.a_address[31:0] Yes Yes T2,T3,T4 Yes T2,T3,T4 INPUT
ram_tl_i.a_source[7:0] Yes Yes T1,T2,T3 Yes T1,T2,T3 INPUT
ram_tl_i.a_size[1:0] Yes Yes T2,T3,T5 Yes T2,T3,T5 INPUT
ram_tl_i.a_param[2:0] Unreachable Unreachable Unreachable INPUT
ram_tl_i.a_opcode[2:0] Yes Yes T1,T2,T3 Yes T1,T2,T3 INPUT
ram_tl_i.a_valid Yes Yes T1,T2,T3 Yes T1,T2,T3 INPUT
ram_tl_o.a_ready Yes Yes T1,T2,T3 Yes T1,T2,T3 OUTPUT
ram_tl_o.d_error Yes Yes T1,T2,T3 Yes T6,T7,T8 OUTPUT
ram_tl_o.d_user.data_intg[6:0] Yes Yes T1,T2,T3 Yes T1,T2,T3 OUTPUT
ram_tl_o.d_user.rsp_intg[5:0] Yes Yes *T1,T2,T3 Yes T1,T2,T3 OUTPUT
ram_tl_o.d_user.rsp_intg[6] Unreachable Unreachable Unreachable OUTPUT
ram_tl_o.d_data[31:0] Yes Yes T1,T2,T3 Yes T1,T2,T3 OUTPUT
ram_tl_o.d_sink Unreachable Unreachable Unreachable OUTPUT
ram_tl_o.d_source[7:0] Yes Yes T1,T2,T3 Yes T1,T2,T3 OUTPUT
ram_tl_o.d_size[1:0] Yes Yes T2,T3,T4 Yes T2,T3,T4 OUTPUT
ram_tl_o.d_param[2:0] Unreachable Unreachable Unreachable OUTPUT
ram_tl_o.d_opcode[0] Yes Yes *T1,*T2,*T3 Yes T1,T2,T3 OUTPUT
ram_tl_o.d_opcode[2:1] Unreachable Unreachable Unreachable OUTPUT
ram_tl_o.d_valid Yes Yes T1,T2,T3 Yes T1,T2,T3 OUTPUT
regs_tl_i.d_ready Yes Yes T4,T6,T11 Yes T1,T2,T3 INPUT
regs_tl_i.a_user.data_intg[6:0] Yes Yes T2,T5,T6 Yes T2,T5,T6 INPUT
regs_tl_i.a_user.cmd_intg[6:0] Yes Yes T2,T5,T4 Yes T1,T2,T5 INPUT
regs_tl_i.a_user.instr_type[3:0] Yes Yes T2,T5,T6 Yes T2,T6,T10 INPUT
regs_tl_i.a_user.rsvd[4:0] Unreachable Unreachable Unreachable INPUT
regs_tl_i.a_data[31:0] Yes Yes T2,T5,T4 Yes T2,T5,T4 INPUT
regs_tl_i.a_mask[3:0] Yes Yes T2,T5,T6 Yes T2,T5,T6 INPUT
regs_tl_i.a_address[31:0] Yes Yes T2,T5,T6 Yes T2,T5,T6 INPUT
regs_tl_i.a_source[7:0] Yes Yes T2,T5,T6 Yes T2,T3,T5 INPUT
regs_tl_i.a_size[1:0] Yes Yes T2,T5,T4 Yes T1,T2,T4 INPUT
regs_tl_i.a_param[2:0] Unreachable Unreachable Unreachable INPUT
regs_tl_i.a_opcode[2:0] Yes Yes T2,T5,T4 Yes T1,T2,T3 INPUT
regs_tl_i.a_valid Yes Yes T1,T2,T3 Yes T1,T2,T3 INPUT
regs_tl_o.a_ready Yes Yes T1,T2,T3 Yes T1,T2,T3 OUTPUT
regs_tl_o.d_error Yes Yes T29,T30,T31 Yes T29,T30,T31 OUTPUT
regs_tl_o.d_user.data_intg[6:0] Yes Yes T7,T8,T29 Yes T7,T8,T29 OUTPUT
regs_tl_o.d_user.rsp_intg[5:0] Yes Yes *T2,*T4,*T6 Yes T1,T2,T3 OUTPUT
regs_tl_o.d_user.rsp_intg[6] Unreachable Unreachable Unreachable OUTPUT
regs_tl_o.d_data[31:0] Yes Yes T6,T7,T8 Yes T1,T2,T3 OUTPUT
regs_tl_o.d_sink Unreachable Unreachable Unreachable OUTPUT
regs_tl_o.d_source[7:0] Yes Yes T2,T6,T12 Yes T1,T2,T3 OUTPUT
regs_tl_o.d_size[1:0] Yes Yes T2,T4,T6 Yes T1,T2,T3 OUTPUT
regs_tl_o.d_param[2:0] Unreachable Unreachable Unreachable OUTPUT
regs_tl_o.d_opcode[0] Yes Yes *T6,*T7,*T8 Yes T6,T7,T8 OUTPUT
regs_tl_o.d_opcode[2:1] Unreachable Unreachable Unreachable OUTPUT
regs_tl_o.d_valid Yes Yes T1,T2,T3 Yes T1,T2,T3 OUTPUT
alert_rx_i[0].ack_n Yes Yes T1,T2,T3 Yes T1,T2,T3 INPUT
alert_rx_i[0].ack_p Yes Yes T18,T19,T20 Yes T18,T19,T20 INPUT
alert_rx_i[0].ping_n Unreachable Unreachable Unreachable INPUT
alert_rx_i[0].ping_p Unreachable Unreachable Unreachable INPUT
alert_tx_o[0].alert_n Yes Yes T1,T2,T3 Yes T1,T2,T3 OUTPUT
alert_tx_o[0].alert_p Yes Yes T18,T19,T20 Yes T18,T19,T20 OUTPUT
lc_escalate_en_i[3:0] Yes Yes T7,T8,T9 Yes T7,T8,T9 INPUT
lc_hw_debug_en_i[3:0] Yes Yes T6,T29,T32 Yes T6,T29,T32 INPUT
otp_en_sram_ifetch_i[7:0] Yes Yes T6,T32,T33 Yes T6,T32,T33 INPUT
sram_otp_key_o.req Yes Yes T1,T2,T3 Yes T1,T2,T3 OUTPUT
sram_otp_key_i.seed_valid Yes Yes T1,T5,T6 Yes T6,T11,T7 INPUT
sram_otp_key_i.nonce[127:0] Yes Yes T3,T6,T11 Yes T5,T6,T11 INPUT
sram_otp_key_i.key[127:0] Yes Yes T5,T6,T10 Yes T6,T11,T13 INPUT
sram_otp_key_i.ack Yes Yes T1,T2,T3 Yes T1,T2,T3 INPUT
cfg_i.rf_cfg.cfg[3:0] Yes Yes T34,T35,T36 Yes T34,T35,T36 INPUT
cfg_i.rf_cfg.cfg_en Yes Yes T34,T35,T36 Yes T34,T35,T36 INPUT
cfg_i.ram_cfg.cfg[3:0] Yes Yes T34,T35,T36 Yes T34,T35,T36 INPUT
cfg_i.ram_cfg.cfg_en Yes Yes T34,T35,T36 Yes T34,T35,T36 INPUT

*Tests covering at least one bit in the range

Branch Coverage for Instance : tb.dut
Line No.TotalCoveredPercent
Branches 24 24 100.00
TERNARY 220 3 3 100.00
TERNARY 278 3 3 100.00
TERNARY 287 2 2 100.00
TERNARY 510 2 2 100.00
TERNARY 511 2 2 100.00
TERNARY 512 2 2 100.00
TERNARY 523 3 3 100.00
IF 224 2 2 100.00
IF 296 5 5 100.00

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

LineNo. Expression -1-: 220 (init_done) ? -2-: 220 (init_trig) ?

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


LineNo. Expression -1-: 278 (key_req) ? -2-: 278 (key_ack) ?

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


LineNo. Expression -1-: 287 ((key_ack & (~local_esc))) ?

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


LineNo. Expression -1-: 510 (init_req) ?

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


LineNo. Expression -1-: 511 (init_req) ?

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


LineNo. Expression -1-: 512 (init_req) ?

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


LineNo. Expression -1-: 523 (key_req_pending_q) ? -2-: 523 (reg2hw.status.escalated.q) ?

Branches:
-1--2-StatusTests
1 - Covered T1,T2,T3
0 1 Covered T7,T8,T9
0 0 Covered T1,T2,T3


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

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


LineNo. Expression -1-: 296 if ((!rst_ni)) -2-: 304 if (key_ack) -3-: 311 if (local_esc)

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


Assert Coverage for Instance : tb.dut
TotalAttemptedPercentSucceeded/MatchedPercent
Assertions 14 14 100.00 12 85.71
Cover properties 0 0 0
Cover sequences 0 0 0
Total 14 14 100.00 12 85.71




Assertion Details

NameAttemptsReal SuccessesFailuresIncomplete
AlertOutKnown_A 206805172 206719192 0 0
FpvSecCmCntCheck_A 206805172 80 0 0
FpvSecCmFifoRptrCheck_A 206805172 80 0 0
FpvSecCmFifoWptrCheck_A 206805172 80 0 0
FpvSecCmLcGateFsmCheck_A 206805172 0 0 0
FpvSecCmRegWeOnehotCheck_A 206805172 80 0 0
FpvSecCmTlSramByteFsm_A 206805172 0 0 0
NonceWidthsLessThanSource_A 761 761 0 0
RamTlOutKnown_A 206805172 206719192 0 0
RamTlOutPayLoadKnown_A 206805172 78785096 0 0
RamTlOutPayLoadKnown_AKnownEnable 206805172 206719192 0 0
RegsTlOutKnown_A 206805172 206719192 0 0
SramOtpKeyKnown_A 206805172 206719192 0 0
TlulGntIsCorrect_A 206805172 61670194 0 0


AlertOutKnown_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 206805172 206719192 0 0
T1 9980 9926 0 0
T2 10309 10240 0 0
T3 14845 14763 0 0
T4 108465 108408 0 0
T5 8399 8346 0 0
T6 146680 146674 0 0
T10 9856 9798 0 0
T11 388678 388595 0 0
T12 13173 13105 0 0
T13 7754 7697 0 0

FpvSecCmCntCheck_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 206805172 80 0 0
T21 42260 20 0 0
T22 0 10 0 0
T23 0 20 0 0
T37 0 20 0 0
T38 0 10 0 0
T39 102413 0 0 0
T40 7361 0 0 0
T41 3594 0 0 0
T42 10445 0 0 0
T43 105480 0 0 0
T44 79271 0 0 0
T45 37294 0 0 0
T46 15819 0 0 0
T47 827117 0 0 0

FpvSecCmFifoRptrCheck_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 206805172 80 0 0
T21 42260 20 0 0
T22 0 10 0 0
T23 0 20 0 0
T37 0 20 0 0
T38 0 10 0 0
T39 102413 0 0 0
T40 7361 0 0 0
T41 3594 0 0 0
T42 10445 0 0 0
T43 105480 0 0 0
T44 79271 0 0 0
T45 37294 0 0 0
T46 15819 0 0 0
T47 827117 0 0 0

FpvSecCmFifoWptrCheck_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 206805172 80 0 0
T21 42260 20 0 0
T22 0 10 0 0
T23 0 20 0 0
T37 0 20 0 0
T38 0 10 0 0
T39 102413 0 0 0
T40 7361 0 0 0
T41 3594 0 0 0
T42 10445 0 0 0
T43 105480 0 0 0
T44 79271 0 0 0
T45 37294 0 0 0
T46 15819 0 0 0
T47 827117 0 0 0

FpvSecCmLcGateFsmCheck_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 206805172 0 0 0

FpvSecCmRegWeOnehotCheck_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 206805172 80 0 0
T21 42260 20 0 0
T22 0 10 0 0
T23 0 20 0 0
T37 0 20 0 0
T38 0 10 0 0
T39 102413 0 0 0
T40 7361 0 0 0
T41 3594 0 0 0
T42 10445 0 0 0
T43 105480 0 0 0
T44 79271 0 0 0
T45 37294 0 0 0
T46 15819 0 0 0
T47 827117 0 0 0

FpvSecCmTlSramByteFsm_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 206805172 0 0 0

NonceWidthsLessThanSource_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 761 761 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

RamTlOutKnown_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 206805172 206719192 0 0
T1 9980 9926 0 0
T2 10309 10240 0 0
T3 14845 14763 0 0
T4 108465 108408 0 0
T5 8399 8346 0 0
T6 146680 146674 0 0
T10 9856 9798 0 0
T11 388678 388595 0 0
T12 13173 13105 0 0
T13 7754 7697 0 0

RamTlOutPayLoadKnown_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 206805172 78785096 0 0
T1 9980 5257 0 0
T2 10309 7288 0 0
T3 14845 10000 0 0
T4 108465 44999 0 0
T5 8399 1185 0 0
T6 146680 589712 0 0
T10 9856 6021 0 0
T11 388678 165109 0 0
T12 13173 6142 0 0
T13 7754 4636 0 0

RamTlOutPayLoadKnown_AKnownEnable
NameAttemptsReal SuccessesFailuresIncomplete
Total 206805172 206719192 0 0
T1 9980 9926 0 0
T2 10309 10240 0 0
T3 14845 14763 0 0
T4 108465 108408 0 0
T5 8399 8346 0 0
T6 146680 146674 0 0
T10 9856 9798 0 0
T11 388678 388595 0 0
T12 13173 13105 0 0
T13 7754 7697 0 0

RegsTlOutKnown_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 206805172 206719192 0 0
T1 9980 9926 0 0
T2 10309 10240 0 0
T3 14845 14763 0 0
T4 108465 108408 0 0
T5 8399 8346 0 0
T6 146680 146674 0 0
T10 9856 9798 0 0
T11 388678 388595 0 0
T12 13173 13105 0 0
T13 7754 7697 0 0

SramOtpKeyKnown_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 206805172 206719192 0 0
T1 9980 9926 0 0
T2 10309 10240 0 0
T3 14845 14763 0 0
T4 108465 108408 0 0
T5 8399 8346 0 0
T6 146680 146674 0 0
T10 9856 9798 0 0
T11 388678 388595 0 0
T12 13173 13105 0 0
T13 7754 7697 0 0

TlulGntIsCorrect_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 206805172 61670194 0 0
T1 9980 5257 0 0
T2 10309 7581 0 0
T3 14845 10914 0 0
T4 108465 16034 0 0
T5 8399 1185 0 0
T6 146680 124088 0 0
T10 9856 6540 0 0
T11 388678 53969 0 0
T12 13173 6142 0 0
T13 7754 4636 0 0

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