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

Module : sram_ctrl
SCORELINECONDTOGGLEFSMBRANCHASSERT
96.99 100.00 92.63 100.00 100.00 92.31

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

Module self-instances :
NAMESCORELINECONDTOGGLEFSMBRANCHASSERT
tb.dut 97.39 100.00 94.62 100.00 100.00 92.31



Module Instance : tb.dut

Instance :
SCORELINECONDTOGGLEFSMBRANCHASSERT
97.39 100.00 94.62 100.00 100.00 92.31


Instance's subtree :
SCORELINECONDTOGGLEFSMBRANCHASSERT
99.19 99.81 96.99 100.00 100.00 98.60 99.70


Parent :
SCORELINECONDTOGGLEFSMBRANCHASSERTNAME
tb


Subtrees :
NAMESCORELINECONDTOGGLEFSMBRANCHASSERT
gen_instr_ctrl.u_prim_lc_sync_hw_debug_en 100.00 100.00 100.00 100.00
gen_instr_ctrl.u_prim_mubi8_sync_otp_en_sram_ifetch 100.00 100.00 100.00 100.00
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.40 100.00 92.00 100.00 100.00 100.00
u_prim_sync_reqack_data 100.00 100.00 100.00 100.00 100.00
u_reg_regs 99.92 100.00 99.58 100.00 100.00 100.00
u_tlul_adapter_sram 98.81 99.46 96.34 100.00 100.00 97.04 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_ASSIGN14411100.00
CONT_ASSIGN17611100.00
CONT_ASSIGN17811100.00
CONT_ASSIGN18611100.00
CONT_ASSIGN19211100.00
CONT_ASSIGN20011100.00
CONT_ASSIGN20911100.00
CONT_ASSIGN21411100.00
ALWAYS21833100.00
CONT_ASSIGN23011100.00
CONT_ASSIGN23111100.00
CONT_ASSIGN25511100.00
CONT_ASSIGN25611100.00
CONT_ASSIGN26711100.00
CONT_ASSIGN27211100.00
CONT_ASSIGN27611100.00
CONT_ASSIGN27711100.00
CONT_ASSIGN28111100.00
CONT_ASSIGN28211100.00
CONT_ASSIGN28611100.00
CONT_ASSIGN28711100.00
ALWAYS2901111100.00
CONT_ASSIGN33411100.00
CONT_ASSIGN36611100.00
CONT_ASSIGN36811100.00
CONT_ASSIGN37011100.00
CONT_ASSIGN48411100.00
CONT_ASSIGN49011100.00
CONT_ASSIGN49111100.00
CONT_ASSIGN49211100.00
CONT_ASSIGN49311100.00
CONT_ASSIGN49411100.00
CONT_ASSIGN49511100.00
CONT_ASSIGN50611100.00
CONT_ASSIGN54111100.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
144 1 1
176 1 1
178 1 1
186 1 1
192 1 1
200 1 1
209 1 1
214 1 1
218 1 1
219 1 1
221 1 1
230 1 1
231 1 1
255 1 1
256 1 1
267 1 1
272 1 1
276 1 1
277 1 1
281 1 1
282 1 1
286 1 1
287 1 1
290 1 1
291 1 1
294 1 1
295 1 1
297 1 1
298 1 1
299 1 1
300 1 1
MISSING_ELSE
305 1 1
306 1 1
307 1 1
MISSING_ELSE
334 1 1
366 1 1
368 1 1
370 1 1
484 1 1
490 1 1
491 1 1
492 1 1
493 1 1
494 1 1
495 1 1
506 1 1
541 1 1


Cond Coverage for Module : sram_ctrl
TotalCoveredPercent
Conditions958892.63
Logical958892.63
Non-Logical00
Event00

 LINE       134
 EXPRESSION (reg2hw.alert_test.q & reg2hw.alert_test.qe)
             ---------1---------   ----------2---------
-1--2-StatusTests
01CoveredT20,T21,T22
10CoveredT1,T2,T3
11CoveredT20,T21,T22

 LINE       144
 EXPRESSION (((|bus_integ_error)) | init_error)
             ----------1---------   -----2----
-1--2-StatusTests
00CoveredT1,T2,T3
01CoveredT8,T18,T19
10CoveredT8,T18,T19

 LINE       186
 EXPRESSION (reg2hw.status.escalated.q | reg2hw.status.init_error.q | reg2hw.status.bus_integ_error.q)
             ------------1------------   -------------2------------   ---------------3---------------
-1--2--3-StatusTests
000CoveredT1,T2,T3
001CoveredT8,T18,T19
010CoveredT8,T18,T19
100CoveredT5,T6,T7

 LINE       192
 EXPRESSION (escalate | init_error | ((|bus_integ_error)) | local_esc_reg)
             ----1---   -----2----   ----------3---------   ------4------
-1--2--3--4-StatusTests
0000CoveredT1,T2,T3
0001CoveredT5,T6,T8
0010CoveredT8,T18,T19
0100CoveredT8,T18,T19
1000CoveredT5,T6,T7

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

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

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

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

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

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

 LINE       255
 EXPRESSION (init_done & ((~init_trig)) & ((~local_esc)))
             ----1----   -------2------   -------3------
-1--2--3-StatusTests
011CoveredT1,T2,T3
101Not Covered
110CoveredT5,T6,T7
111CoveredT1,T2,T3

 LINE       256
 EXPRESSION (init_done | init_trig | local_esc)
             ----1----   ----2----   ----3----
-1--2--3-StatusTests
000CoveredT1,T2,T3
001CoveredT5,T6,T8
010CoveredT1,T2,T3
100CoveredT1,T2,T3

 LINE       267
 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
0111CoveredT11,T14,T23
1011CoveredT1,T2,T3
1101Not Covered
1110Not Covered
1111CoveredT1,T2,T3

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

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

 LINE       276
 EXPRESSION (key_ack & ((~key_req)) & ((~local_esc)))
             ---1---   ------2-----   -------3------
-1--2--3-StatusTests
011CoveredT1,T2,T3
101Not Covered
110CoveredT5,T6,T7
111CoveredT1,T2,T3

 LINE       277
 EXPRESSION (key_req | key_ack | local_esc)
             ---1---   ---2---   ----3----
-1--2--3-StatusTests
000CoveredT1,T2,T3
001CoveredT5,T6,T8
010CoveredT1,T2,T3
100CoveredT1,T2,T3

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

 LINE       281
 SUB-EXPRESSION (key_ack & ((~local_esc)))
                 ---1---   -------2------
-1--2-StatusTests
01CoveredT1,T2,T3
10CoveredT5,T6,T7
11CoveredT1,T2,T3

 LINE       282
 EXPRESSION (key_ack | local_esc)
             ---1---   ----2----
-1--2-StatusTests
00CoveredT1,T2,T3
01CoveredT5,T6,T8
10CoveredT1,T2,T3

 LINE       286
 EXPRESSION (key_seed_valid & ((~local_esc)))
             -------1------   -------2------
-1--2-StatusTests
01CoveredT1,T2,T3
10CoveredT5,T6,T7
11CoveredT1,T2,T3

 LINE       287
 EXPRESSION (key_ack | local_esc)
             ---1---   ----2----
-1--2-StatusTests
00CoveredT1,T2,T3
01CoveredT5,T6,T8
10CoveredT1,T2,T3

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

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

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

 LINE       492
 EXPRESSION (((|bus_integ_error[2:1])) & ((~init_req)))
             ------------1------------   ------2------
-1--2-StatusTests
01CoveredT1,T2,T3
10Not Covered
11CoveredT8,T18,T19

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

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

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

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

 LINE       506
 SUB-EXPRESSION (reg2hw.status.escalated.q ? (tl_gate_resp_pending & sram_rmw_in_progress) : 1'b1)
                 ------------1------------
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT5,T6,T7

 LINE       506
 SUB-EXPRESSION (tl_gate_resp_pending & sram_rmw_in_progress)
                 ----------1---------   ----------2---------
-1--2-StatusTests
01Not Covered
10CoveredT5,T6,T7
11CoveredT5,T6,T24

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 T5,T6,T8 Yes T1,T2,T3 INPUT
clk_otp_i Yes Yes T1,T2,T3 Yes T1,T2,T3 INPUT
rst_otp_ni Yes Yes T5,T6,T8 Yes T1,T2,T3 INPUT
ram_tl_i.d_ready Yes Yes T1,T2,T4 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 T2,T11,T14 Yes T2,T11,T14 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 T1,T2,T3 Yes T1,T2,T3 INPUT
ram_tl_i.a_address[31:0] Yes Yes T1,T2,T3 Yes T1,T2,T3 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 T1,T2,T3 Yes T1,T2,T4 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 T5,T11,T14 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 T1,T2,T4 Yes T1,T2,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 T1,T2,T4 Yes T1,T2,T3 INPUT
regs_tl_i.a_user.data_intg[6:0] Yes Yes T1,T3,T5 Yes T1,T3,T5 INPUT
regs_tl_i.a_user.cmd_intg[6:0] Yes Yes T1,T3,T5 Yes T1,T3,T4 INPUT
regs_tl_i.a_user.instr_type[3:0] Yes Yes T1,T3,T11 Yes T1,T3,T10 INPUT
regs_tl_i.a_user.rsvd[4:0] Unreachable Unreachable Unreachable INPUT
regs_tl_i.a_data[31:0] Yes Yes T1,T3,T5 Yes T1,T3,T5 INPUT
regs_tl_i.a_mask[3:0] Yes Yes T1,T5,T10 Yes T1,T3,T5 INPUT
regs_tl_i.a_address[31:0] Yes Yes T1,T3,T5 Yes T1,T3,T5 INPUT
regs_tl_i.a_source[7:0] Yes Yes T1,T3,T4 Yes T1,T3,T10 INPUT
regs_tl_i.a_size[1:0] Yes Yes T1,T2,T3 Yes T1,T3,T4 INPUT
regs_tl_i.a_param[2:0] Unreachable Unreachable Unreachable INPUT
regs_tl_i.a_opcode[2:0] Yes Yes T1,T2,T3 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 T25,T26,T27 Yes T25,T26,T27 OUTPUT
regs_tl_o.d_user.data_intg[6:0] Yes Yes T5,T6,T8 Yes T5,T6,T8 OUTPUT
regs_tl_o.d_user.rsp_intg[5:0] Yes Yes *T1,*T2,*T5 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 T5,T11,T14 Yes T1,T2,T3 OUTPUT
regs_tl_o.d_sink Unreachable Unreachable Unreachable OUTPUT
regs_tl_o.d_source[7:0] Yes Yes T4,T11,T12 Yes T2,T3,T4 OUTPUT
regs_tl_o.d_size[1:0] Yes Yes T1,T2,T3 Yes T1,T2,T3 OUTPUT
regs_tl_o.d_param[2:0] Unreachable Unreachable Unreachable OUTPUT
regs_tl_o.d_opcode[0] Yes Yes *T5,*T11,*T14 Yes T5,T11,T14 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 T8,T20,T21 Yes T8,T20,T21 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 T8,T20,T21 Yes T8,T20,T21 OUTPUT
lc_escalate_en_i[3:0] Yes Yes T5,T6,T7 Yes T5,T6,T7 INPUT
lc_hw_debug_en_i[3:0] Yes Yes T11,T14,T17 Yes T11,T14,T17 INPUT
otp_en_sram_ifetch_i[7:0] Yes Yes T11,T14,T17 Yes T11,T14,T17 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,T2,T4 Yes T1,T3,T4 INPUT
sram_otp_key_i.nonce[127:0] Yes Yes T1,T4,T5 Yes T1,T5,T12 INPUT
sram_otp_key_i.key[127:0] Yes Yes T1,T4,T5 Yes T1,T4,T5 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 T10,T28,T29 Yes T10,T28,T29 INPUT
cfg_i.rf_cfg.cfg_en Yes Yes T10,T28,T29 Yes T10,T28,T29 INPUT
cfg_i.ram_cfg.cfg[3:0] Yes Yes T10,T28,T29 Yes T10,T28,T29 INPUT
cfg_i.ram_cfg.cfg_en Yes Yes T10,T28,T29 Yes T10,T28,T29 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 214 3 3 100.00
TERNARY 272 3 3 100.00
TERNARY 281 2 2 100.00
TERNARY 493 2 2 100.00
TERNARY 494 2 2 100.00
TERNARY 495 2 2 100.00
TERNARY 506 3 3 100.00
IF 218 2 2 100.00
IF 290 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-: 214 (init_done) ? -2-: 214 (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-: 272 (key_req) ? -2-: 272 (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-: 281 ((key_ack & (~local_esc))) ?

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


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

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


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

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


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

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


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

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


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

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


LineNo. Expression -1-: 290 if ((!rst_ni)) -2-: 298 if (key_ack) -3-: 305 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 T5,T6,T8
0 - 0 Covered T1,T2,T3


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




Assertion Details

NameAttemptsReal SuccessesFailuresIncomplete
AlertOutKnown_A 1135821653 1135701678 0 0
FpvSecCmCntCheck_A 1135821653 70 0 0
FpvSecCmFifoRptrCheck_A 1135821653 70 0 0
FpvSecCmFifoWptrCheck_A 1135821653 70 0 0
FpvSecCmLcGateFsmCheck_A 1135821653 0 0 0
FpvSecCmRegWeOnehotCheck_A 1135821653 70 0 0
NonceWidthsLessThanSource_A 900 900 0 0
RamTlOutKnown_A 1135821653 1135701678 0 0
RamTlOutPayLoadKnown_A 1135821653 346819278 0 0
RamTlOutPayLoadKnown_AKnownEnable 1135821653 1135701678 0 0
RegsTlOutKnown_A 1135821653 1135701678 0 0
SramOtpKeyKnown_A 1135821653 1135701678 0 0
TlulGntIsCorrect_A 1135821653 166645274 0 0


AlertOutKnown_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 1135821653 1135701678 0 0
T1 149893 149887 0 0
T2 108496 108491 0 0
T3 67626 67568 0 0
T4 262619 262612 0 0
T5 120829 120804 0 0
T9 67246 67186 0 0
T10 34477 34427 0 0
T11 105136 105126 0 0
T12 235801 235795 0 0
T13 144839 144838 0 0

FpvSecCmCntCheck_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 1135821653 70 0 0
T8 11493 10 0 0
T18 0 10 0 0
T19 0 10 0 0
T23 441877 0 0 0
T25 45265 0 0 0
T30 0 20 0 0
T31 0 20 0 0
T32 520937 0 0 0
T33 686917 0 0 0
T34 151306 0 0 0
T35 159188 0 0 0
T36 114921 0 0 0
T37 102920 0 0 0
T38 252823 0 0 0

FpvSecCmFifoRptrCheck_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 1135821653 70 0 0
T8 11493 10 0 0
T18 0 10 0 0
T19 0 10 0 0
T23 441877 0 0 0
T25 45265 0 0 0
T30 0 20 0 0
T31 0 20 0 0
T32 520937 0 0 0
T33 686917 0 0 0
T34 151306 0 0 0
T35 159188 0 0 0
T36 114921 0 0 0
T37 102920 0 0 0
T38 252823 0 0 0

FpvSecCmFifoWptrCheck_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 1135821653 70 0 0
T8 11493 10 0 0
T18 0 10 0 0
T19 0 10 0 0
T23 441877 0 0 0
T25 45265 0 0 0
T30 0 20 0 0
T31 0 20 0 0
T32 520937 0 0 0
T33 686917 0 0 0
T34 151306 0 0 0
T35 159188 0 0 0
T36 114921 0 0 0
T37 102920 0 0 0
T38 252823 0 0 0

FpvSecCmLcGateFsmCheck_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 1135821653 0 0 0

FpvSecCmRegWeOnehotCheck_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 1135821653 70 0 0
T8 11493 10 0 0
T18 0 10 0 0
T19 0 10 0 0
T23 441877 0 0 0
T25 45265 0 0 0
T30 0 20 0 0
T31 0 20 0 0
T32 520937 0 0 0
T33 686917 0 0 0
T34 151306 0 0 0
T35 159188 0 0 0
T36 114921 0 0 0
T37 102920 0 0 0
T38 252823 0 0 0

NonceWidthsLessThanSource_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 900 900 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
T9 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 1135821653 1135701678 0 0
T1 149893 149887 0 0
T2 108496 108491 0 0
T3 67626 67568 0 0
T4 262619 262612 0 0
T5 120829 120804 0 0
T9 67246 67186 0 0
T10 34477 34427 0 0
T11 105136 105126 0 0
T12 235801 235795 0 0
T13 144839 144838 0 0

RamTlOutPayLoadKnown_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 1135821653 346819278 0 0
T1 149893 388751 0 0
T2 108496 470302 0 0
T3 67626 1125 0 0
T4 262619 166292 0 0
T5 120829 3828 0 0
T9 67246 639 0 0
T10 34477 0 0 0
T11 105136 158974 0 0
T12 235801 148974 0 0
T13 144839 618963 0 0
T14 0 926164 0 0

RamTlOutPayLoadKnown_AKnownEnable
NameAttemptsReal SuccessesFailuresIncomplete
Total 1135821653 1135701678 0 0
T1 149893 149887 0 0
T2 108496 108491 0 0
T3 67626 67568 0 0
T4 262619 262612 0 0
T5 120829 120804 0 0
T9 67246 67186 0 0
T10 34477 34427 0 0
T11 105136 105126 0 0
T12 235801 235795 0 0
T13 144839 144838 0 0

RegsTlOutKnown_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 1135821653 1135701678 0 0
T1 149893 149887 0 0
T2 108496 108491 0 0
T3 67626 67568 0 0
T4 262619 262612 0 0
T5 120829 120804 0 0
T9 67246 67186 0 0
T10 34477 34427 0 0
T11 105136 105126 0 0
T12 235801 235795 0 0
T13 144839 144838 0 0

SramOtpKeyKnown_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 1135821653 1135701678 0 0
T1 149893 149887 0 0
T2 108496 108491 0 0
T3 67626 67568 0 0
T4 262619 262612 0 0
T5 120829 120804 0 0
T9 67246 67186 0 0
T10 34477 34427 0 0
T11 105136 105126 0 0
T12 235801 235795 0 0
T13 144839 144838 0 0

TlulGntIsCorrect_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 1135821653 166645274 0 0
T1 149893 276348 0 0
T2 108496 205497 0 0
T3 67626 1125 0 0
T4 262619 452237 0 0
T5 120829 1410 0 0
T9 67246 639 0 0
T10 34477 0 0 0
T11 105136 66227 0 0
T12 235801 399720 0 0
T13 144839 137625 0 0
T14 0 95301 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_ASSIGN14411100.00
CONT_ASSIGN17611100.00
CONT_ASSIGN17811100.00
CONT_ASSIGN18611100.00
CONT_ASSIGN19211100.00
CONT_ASSIGN20011100.00
CONT_ASSIGN20911100.00
CONT_ASSIGN21411100.00
ALWAYS21833100.00
CONT_ASSIGN23011100.00
CONT_ASSIGN23111100.00
CONT_ASSIGN25511100.00
CONT_ASSIGN25611100.00
CONT_ASSIGN26711100.00
CONT_ASSIGN27211100.00
CONT_ASSIGN27611100.00
CONT_ASSIGN27711100.00
CONT_ASSIGN28111100.00
CONT_ASSIGN28211100.00
CONT_ASSIGN28611100.00
CONT_ASSIGN28711100.00
ALWAYS2901111100.00
CONT_ASSIGN33411100.00
CONT_ASSIGN36611100.00
CONT_ASSIGN36811100.00
CONT_ASSIGN37011100.00
CONT_ASSIGN48411100.00
CONT_ASSIGN49011100.00
CONT_ASSIGN49111100.00
CONT_ASSIGN49211100.00
CONT_ASSIGN49311100.00
CONT_ASSIGN49411100.00
CONT_ASSIGN49511100.00
CONT_ASSIGN50611100.00
CONT_ASSIGN54111100.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
144 1 1
176 1 1
178 1 1
186 1 1
192 1 1
200 1 1
209 1 1
214 1 1
218 1 1
219 1 1
221 1 1
230 1 1
231 1 1
255 1 1
256 1 1
267 1 1
272 1 1
276 1 1
277 1 1
281 1 1
282 1 1
286 1 1
287 1 1
290 1 1
291 1 1
294 1 1
295 1 1
297 1 1
298 1 1
299 1 1
300 1 1
MISSING_ELSE
305 1 1
306 1 1
307 1 1
MISSING_ELSE
334 1 1
366 1 1
368 1 1
370 1 1
484 1 1
490 1 1
491 1 1
492 1 1
493 1 1
494 1 1
495 1 1
506 1 1
541 1 1


Cond Coverage for Instance : tb.dut
TotalCoveredPercent
Conditions938894.62
Logical938894.62
Non-Logical00
Event00

 LINE       134
 EXPRESSION (reg2hw.alert_test.q & reg2hw.alert_test.qe)
             ---------1---------   ----------2---------
-1--2-StatusTests
01CoveredT20,T21,T22
10CoveredT1,T2,T3
11CoveredT20,T21,T22

 LINE       144
 EXPRESSION (((|bus_integ_error)) | init_error)
             ----------1---------   -----2----
-1--2-StatusTests
00CoveredT1,T2,T3
01CoveredT8,T18,T19
10CoveredT8,T18,T19

 LINE       186
 EXPRESSION (reg2hw.status.escalated.q | reg2hw.status.init_error.q | reg2hw.status.bus_integ_error.q)
             ------------1------------   -------------2------------   ---------------3---------------
-1--2--3-StatusTests
000CoveredT1,T2,T3
001CoveredT8,T18,T19
010CoveredT8,T18,T19
100CoveredT5,T6,T7

 LINE       192
 EXPRESSION (escalate | init_error | ((|bus_integ_error)) | local_esc_reg)
             ----1---   -----2----   ----------3---------   ------4------
-1--2--3--4-StatusTests
0000CoveredT1,T2,T3
0001CoveredT5,T6,T8
0010CoveredT8,T18,T19
0100CoveredT8,T18,T19
1000CoveredT5,T6,T7

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

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

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

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

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

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

 LINE       255
 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
110CoveredT5,T6,T7
111CoveredT1,T2,T3

 LINE       256
 EXPRESSION (init_done | init_trig | local_esc)
             ----1----   ----2----   ----3----
-1--2--3-StatusTests
000CoveredT1,T2,T3
001CoveredT5,T6,T8
010CoveredT1,T2,T3
100CoveredT1,T2,T3

 LINE       267
 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
0111CoveredT11,T14,T23
1011CoveredT1,T2,T3
1101Not Covered
1110Not Covered
1111CoveredT1,T2,T3

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

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

 LINE       276
 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
110CoveredT5,T6,T7
111CoveredT1,T2,T3

 LINE       277
 EXPRESSION (key_req | key_ack | local_esc)
             ---1---   ---2---   ----3----
-1--2--3-StatusTests
000CoveredT1,T2,T3
001CoveredT5,T6,T8
010CoveredT1,T2,T3
100CoveredT1,T2,T3

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

 LINE       281
 SUB-EXPRESSION (key_ack & ((~local_esc)))
                 ---1---   -------2------
-1--2-StatusTests
01CoveredT1,T2,T3
10CoveredT5,T6,T7
11CoveredT1,T2,T3

 LINE       282
 EXPRESSION (key_ack | local_esc)
             ---1---   ----2----
-1--2-StatusTests
00CoveredT1,T2,T3
01CoveredT5,T6,T8
10CoveredT1,T2,T3

 LINE       286
 EXPRESSION (key_seed_valid & ((~local_esc)))
             -------1------   -------2------
-1--2-StatusTests
01CoveredT1,T2,T3
10CoveredT5,T6,T7
11CoveredT1,T2,T3

 LINE       287
 EXPRESSION (key_ack | local_esc)
             ---1---   ----2----
-1--2-StatusTests
00CoveredT1,T2,T3
01CoveredT5,T6,T8
10CoveredT1,T2,T3

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

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

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

 LINE       492
 EXPRESSION (((|bus_integ_error[2:1])) & ((~init_req)))
             ------------1------------   ------2------
-1--2-StatusTests
01CoveredT1,T2,T3
10Not Covered
11CoveredT8,T18,T19

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

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

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

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

 LINE       506
 SUB-EXPRESSION (reg2hw.status.escalated.q ? (tl_gate_resp_pending & sram_rmw_in_progress) : 1'b1)
                 ------------1------------
-1-StatusTests
0CoveredT1,T2,T3
1CoveredT5,T6,T7

 LINE       506
 SUB-EXPRESSION (tl_gate_resp_pending & sram_rmw_in_progress)
                 ----------1---------   ----------2---------
-1--2-StatusTests
01Not Covered
10CoveredT5,T6,T7
11CoveredT5,T6,T24

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 T5,T6,T8 Yes T1,T2,T3 INPUT
clk_otp_i Yes Yes T1,T2,T3 Yes T1,T2,T3 INPUT
rst_otp_ni Yes Yes T5,T6,T8 Yes T1,T2,T3 INPUT
ram_tl_i.d_ready Yes Yes T1,T2,T4 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 T2,T11,T14 Yes T2,T11,T14 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 T1,T2,T3 Yes T1,T2,T3 INPUT
ram_tl_i.a_address[31:0] Yes Yes T1,T2,T3 Yes T1,T2,T3 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 T1,T2,T3 Yes T1,T2,T4 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 T5,T11,T14 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 T1,T2,T4 Yes T1,T2,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 T1,T2,T4 Yes T1,T2,T3 INPUT
regs_tl_i.a_user.data_intg[6:0] Yes Yes T1,T3,T5 Yes T1,T3,T5 INPUT
regs_tl_i.a_user.cmd_intg[6:0] Yes Yes T1,T3,T5 Yes T1,T3,T4 INPUT
regs_tl_i.a_user.instr_type[3:0] Yes Yes T1,T3,T11 Yes T1,T3,T10 INPUT
regs_tl_i.a_user.rsvd[4:0] Unreachable Unreachable Unreachable INPUT
regs_tl_i.a_data[31:0] Yes Yes T1,T3,T5 Yes T1,T3,T5 INPUT
regs_tl_i.a_mask[3:0] Yes Yes T1,T5,T10 Yes T1,T3,T5 INPUT
regs_tl_i.a_address[31:0] Yes Yes T1,T3,T5 Yes T1,T3,T5 INPUT
regs_tl_i.a_source[7:0] Yes Yes T1,T3,T4 Yes T1,T3,T10 INPUT
regs_tl_i.a_size[1:0] Yes Yes T1,T2,T3 Yes T1,T3,T4 INPUT
regs_tl_i.a_param[2:0] Unreachable Unreachable Unreachable INPUT
regs_tl_i.a_opcode[2:0] Yes Yes T1,T2,T3 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 T25,T26,T27 Yes T25,T26,T27 OUTPUT
regs_tl_o.d_user.data_intg[6:0] Yes Yes T5,T6,T8 Yes T5,T6,T8 OUTPUT
regs_tl_o.d_user.rsp_intg[5:0] Yes Yes *T1,*T2,*T5 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 T5,T11,T14 Yes T1,T2,T3 OUTPUT
regs_tl_o.d_sink Unreachable Unreachable Unreachable OUTPUT
regs_tl_o.d_source[7:0] Yes Yes T4,T11,T12 Yes T2,T3,T4 OUTPUT
regs_tl_o.d_size[1:0] Yes Yes T1,T2,T3 Yes T1,T2,T3 OUTPUT
regs_tl_o.d_param[2:0] Unreachable Unreachable Unreachable OUTPUT
regs_tl_o.d_opcode[0] Yes Yes *T5,*T11,*T14 Yes T5,T11,T14 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 T8,T20,T21 Yes T8,T20,T21 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 T8,T20,T21 Yes T8,T20,T21 OUTPUT
lc_escalate_en_i[3:0] Yes Yes T5,T6,T7 Yes T5,T6,T7 INPUT
lc_hw_debug_en_i[3:0] Yes Yes T11,T14,T17 Yes T11,T14,T17 INPUT
otp_en_sram_ifetch_i[7:0] Yes Yes T11,T14,T17 Yes T11,T14,T17 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,T2,T4 Yes T1,T3,T4 INPUT
sram_otp_key_i.nonce[127:0] Yes Yes T1,T4,T5 Yes T1,T5,T12 INPUT
sram_otp_key_i.key[127:0] Yes Yes T1,T4,T5 Yes T1,T4,T5 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 T10,T28,T29 Yes T10,T28,T29 INPUT
cfg_i.rf_cfg.cfg_en Yes Yes T10,T28,T29 Yes T10,T28,T29 INPUT
cfg_i.ram_cfg.cfg[3:0] Yes Yes T10,T28,T29 Yes T10,T28,T29 INPUT
cfg_i.ram_cfg.cfg_en Yes Yes T10,T28,T29 Yes T10,T28,T29 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 214 3 3 100.00
TERNARY 272 3 3 100.00
TERNARY 281 2 2 100.00
TERNARY 493 2 2 100.00
TERNARY 494 2 2 100.00
TERNARY 495 2 2 100.00
TERNARY 506 3 3 100.00
IF 218 2 2 100.00
IF 290 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-: 214 (init_done) ? -2-: 214 (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-: 272 (key_req) ? -2-: 272 (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-: 281 ((key_ack & (~local_esc))) ?

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


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

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


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

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


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

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


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

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


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

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


LineNo. Expression -1-: 290 if ((!rst_ni)) -2-: 298 if (key_ack) -3-: 305 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 T5,T6,T8
0 - 0 Covered T1,T2,T3


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




Assertion Details

NameAttemptsReal SuccessesFailuresIncomplete
AlertOutKnown_A 1135821653 1135701678 0 0
FpvSecCmCntCheck_A 1135821653 70 0 0
FpvSecCmFifoRptrCheck_A 1135821653 70 0 0
FpvSecCmFifoWptrCheck_A 1135821653 70 0 0
FpvSecCmLcGateFsmCheck_A 1135821653 0 0 0
FpvSecCmRegWeOnehotCheck_A 1135821653 70 0 0
NonceWidthsLessThanSource_A 900 900 0 0
RamTlOutKnown_A 1135821653 1135701678 0 0
RamTlOutPayLoadKnown_A 1135821653 346819278 0 0
RamTlOutPayLoadKnown_AKnownEnable 1135821653 1135701678 0 0
RegsTlOutKnown_A 1135821653 1135701678 0 0
SramOtpKeyKnown_A 1135821653 1135701678 0 0
TlulGntIsCorrect_A 1135821653 166645274 0 0


AlertOutKnown_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 1135821653 1135701678 0 0
T1 149893 149887 0 0
T2 108496 108491 0 0
T3 67626 67568 0 0
T4 262619 262612 0 0
T5 120829 120804 0 0
T9 67246 67186 0 0
T10 34477 34427 0 0
T11 105136 105126 0 0
T12 235801 235795 0 0
T13 144839 144838 0 0

FpvSecCmCntCheck_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 1135821653 70 0 0
T8 11493 10 0 0
T18 0 10 0 0
T19 0 10 0 0
T23 441877 0 0 0
T25 45265 0 0 0
T30 0 20 0 0
T31 0 20 0 0
T32 520937 0 0 0
T33 686917 0 0 0
T34 151306 0 0 0
T35 159188 0 0 0
T36 114921 0 0 0
T37 102920 0 0 0
T38 252823 0 0 0

FpvSecCmFifoRptrCheck_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 1135821653 70 0 0
T8 11493 10 0 0
T18 0 10 0 0
T19 0 10 0 0
T23 441877 0 0 0
T25 45265 0 0 0
T30 0 20 0 0
T31 0 20 0 0
T32 520937 0 0 0
T33 686917 0 0 0
T34 151306 0 0 0
T35 159188 0 0 0
T36 114921 0 0 0
T37 102920 0 0 0
T38 252823 0 0 0

FpvSecCmFifoWptrCheck_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 1135821653 70 0 0
T8 11493 10 0 0
T18 0 10 0 0
T19 0 10 0 0
T23 441877 0 0 0
T25 45265 0 0 0
T30 0 20 0 0
T31 0 20 0 0
T32 520937 0 0 0
T33 686917 0 0 0
T34 151306 0 0 0
T35 159188 0 0 0
T36 114921 0 0 0
T37 102920 0 0 0
T38 252823 0 0 0

FpvSecCmLcGateFsmCheck_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 1135821653 0 0 0

FpvSecCmRegWeOnehotCheck_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 1135821653 70 0 0
T8 11493 10 0 0
T18 0 10 0 0
T19 0 10 0 0
T23 441877 0 0 0
T25 45265 0 0 0
T30 0 20 0 0
T31 0 20 0 0
T32 520937 0 0 0
T33 686917 0 0 0
T34 151306 0 0 0
T35 159188 0 0 0
T36 114921 0 0 0
T37 102920 0 0 0
T38 252823 0 0 0

NonceWidthsLessThanSource_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 900 900 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
T9 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 1135821653 1135701678 0 0
T1 149893 149887 0 0
T2 108496 108491 0 0
T3 67626 67568 0 0
T4 262619 262612 0 0
T5 120829 120804 0 0
T9 67246 67186 0 0
T10 34477 34427 0 0
T11 105136 105126 0 0
T12 235801 235795 0 0
T13 144839 144838 0 0

RamTlOutPayLoadKnown_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 1135821653 346819278 0 0
T1 149893 388751 0 0
T2 108496 470302 0 0
T3 67626 1125 0 0
T4 262619 166292 0 0
T5 120829 3828 0 0
T9 67246 639 0 0
T10 34477 0 0 0
T11 105136 158974 0 0
T12 235801 148974 0 0
T13 144839 618963 0 0
T14 0 926164 0 0

RamTlOutPayLoadKnown_AKnownEnable
NameAttemptsReal SuccessesFailuresIncomplete
Total 1135821653 1135701678 0 0
T1 149893 149887 0 0
T2 108496 108491 0 0
T3 67626 67568 0 0
T4 262619 262612 0 0
T5 120829 120804 0 0
T9 67246 67186 0 0
T10 34477 34427 0 0
T11 105136 105126 0 0
T12 235801 235795 0 0
T13 144839 144838 0 0

RegsTlOutKnown_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 1135821653 1135701678 0 0
T1 149893 149887 0 0
T2 108496 108491 0 0
T3 67626 67568 0 0
T4 262619 262612 0 0
T5 120829 120804 0 0
T9 67246 67186 0 0
T10 34477 34427 0 0
T11 105136 105126 0 0
T12 235801 235795 0 0
T13 144839 144838 0 0

SramOtpKeyKnown_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 1135821653 1135701678 0 0
T1 149893 149887 0 0
T2 108496 108491 0 0
T3 67626 67568 0 0
T4 262619 262612 0 0
T5 120829 120804 0 0
T9 67246 67186 0 0
T10 34477 34427 0 0
T11 105136 105126 0 0
T12 235801 235795 0 0
T13 144839 144838 0 0

TlulGntIsCorrect_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 1135821653 166645274 0 0
T1 149893 276348 0 0
T2 108496 205497 0 0
T3 67626 1125 0 0
T4 262619 452237 0 0
T5 120829 1410 0 0
T9 67246 639 0 0
T10 34477 0 0 0
T11 105136 66227 0 0
T12 235801 399720 0 0
T13 144839 137625 0 0
T14 0 95301 0 0

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