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
01CoveredT9,T18,T19
10CoveredT1,T2,T3
11CoveredT9,T18,T19

 LINE       144
 EXPRESSION (((|bus_integ_error)) | init_error)
             ----------1---------   -----2----
-1--2-StatusTests
00CoveredT1,T2,T3
01CoveredT15,T16,T17
10CoveredT15,T16,T17

 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
001CoveredT15,T16,T17
010CoveredT15,T16,T17
100CoveredT4,T7,T8

 LINE       192
 EXPRESSION (escalate | init_error | ((|bus_integ_error)) | local_esc_reg)
             ----1---   -----2----   ----------3---------   ------4------
-1--2--3--4-StatusTests
0000CoveredT1,T2,T3
0001CoveredT4,T7,T8
0010CoveredT15,T16,T17
0100CoveredT15,T16,T17
1000CoveredT4,T7,T8

 LINE       209
 EXPRESSION (reg2hw.ctrl.init.q && reg2hw.ctrl.init.qe && ((!init_q)))
             ---------1--------    ---------2---------    -----3-----
-1--2--3-StatusTests
011CoveredT4,T6,T7
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
110CoveredT4,T7,T20
111CoveredT1,T2,T3

 LINE       256
 EXPRESSION (init_done | init_trig | local_esc)
             ----1----   ----2----   ----3----
-1--2--3-StatusTests
000CoveredT1,T2,T3
001CoveredT4,T7,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
0111CoveredT6,T8,T21
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
110CoveredT4,T7,T8
111CoveredT1,T2,T3

 LINE       277
 EXPRESSION (key_req | key_ack | local_esc)
             ---1---   ---2---   ----3----
-1--2--3-StatusTests
000CoveredT1,T2,T3
001CoveredT4,T7,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
10CoveredT4,T7,T8
11CoveredT1,T2,T3

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

 LINE       286
 EXPRESSION (key_seed_valid & ((~local_esc)))
             -------1------   -------2------
-1--2-StatusTests
01CoveredT1,T2,T3
10CoveredT4,T8,T22
11CoveredT1,T2,T4

 LINE       287
 EXPRESSION (key_ack | local_esc)
             ---1---   ----2----
-1--2-StatusTests
00CoveredT1,T2,T3
01CoveredT4,T7,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
11CoveredT15,T16,T17

 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
1CoveredT4,T7,T8

 LINE       506
 SUB-EXPRESSION (tl_gate_resp_pending & sram_rmw_in_progress)
                 ----------1---------   ----------2---------
-1--2-StatusTests
01Not Covered
10CoveredT4,T7,T8
11CoveredT23,T24,T25

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 T4,T11,T7 Yes T1,T2,T3 INPUT
clk_otp_i Yes Yes T1,T2,T3 Yes T1,T2,T3 INPUT
rst_otp_ni Yes Yes T4,T11,T7 Yes T1,T2,T3 INPUT
ram_tl_i.d_ready Yes Yes T5,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 T4,T5,T6 Yes T4,T5,T6 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,T3 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 T4,T5,T6 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,T3 Yes T1,T2,T3 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 T5,T6,T11 Yes T1,T2,T3 INPUT
regs_tl_i.a_user.data_intg[6:0] Yes Yes T1,T4,T10 Yes T1,T4,T9 INPUT
regs_tl_i.a_user.cmd_intg[6:0] Yes Yes T1,T2,T4 Yes T1,T2,T4 INPUT
regs_tl_i.a_user.instr_type[3:0] Yes Yes T1,T10,T11 Yes T1,T10,T11 INPUT
regs_tl_i.a_user.rsvd[4:0] Unreachable Unreachable Unreachable INPUT
regs_tl_i.a_data[31:0] Yes Yes T1,T4,T10 Yes T1,T4,T9 INPUT
regs_tl_i.a_mask[3:0] Yes Yes T1,T4,T10 Yes T1,T4,T10 INPUT
regs_tl_i.a_address[31:0] Yes Yes T1,T4,T10 Yes T1,T4,T10 INPUT
regs_tl_i.a_source[7:0] Yes Yes T1,T4,T10 Yes T1,T4,T10 INPUT
regs_tl_i.a_size[1:0] Yes Yes T1,T2,T3 Yes T1,T2,T3 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 T11,T26,T27 Yes T11,T26,T27 OUTPUT
regs_tl_o.d_user.data_intg[6:0] Yes Yes T4,T11,T7 Yes T4,T11,T7 OUTPUT
regs_tl_o.d_user.rsp_intg[5:0] Yes Yes *T1,*T2,*T4 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 T4,T6,T11 Yes T1,T2,T3 OUTPUT
regs_tl_o.d_sink Unreachable Unreachable Unreachable OUTPUT
regs_tl_o.d_source[7:0] Yes Yes T4,T10,T11 Yes T1,T2,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 *T4,*T6,*T11 Yes T4,T6,T11 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 T9,T18,T19 Yes T9,T18,T19 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 T9,T18,T19 Yes T9,T18,T19 OUTPUT
lc_escalate_en_i[3:0] Yes Yes T4,T7,T8 Yes T4,T7,T8 INPUT
lc_hw_debug_en_i[3:0] Yes Yes T6,T28,T29 Yes T6,T28,T29 INPUT
otp_en_sram_ifetch_i[7:0] Yes Yes T5,T6,T28 Yes T6,T28,T8 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,T2,T4 INPUT
sram_otp_key_i.nonce[127:0] Yes Yes T1,T2,T3 Yes T1,T2,T3 INPUT
sram_otp_key_i.key[127:0] Yes Yes T1,T2,T4 Yes T1,T2,T3 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 T30,T31,T32 Yes T30,T31,T32 INPUT
cfg_i.rf_cfg.cfg_en Yes Yes T30,T31,T32 Yes T30,T31,T32 INPUT
cfg_i.ram_cfg.cfg[3:0] Yes Yes T30,T31,T32 Yes T30,T31,T32 INPUT
cfg_i.ram_cfg.cfg_en Yes Yes T30,T31,T32 Yes T30,T31,T32 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 T4,T7,T8
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 T4,T7,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 1176884530 1176764445 0 0
FpvSecCmCntCheck_A 1176884530 70 0 0
FpvSecCmFifoRptrCheck_A 1176884530 70 0 0
FpvSecCmFifoWptrCheck_A 1176884530 70 0 0
FpvSecCmLcGateFsmCheck_A 1176884530 0 0 0
FpvSecCmRegWeOnehotCheck_A 1176884530 70 0 0
NonceWidthsLessThanSource_A 905 905 0 0
RamTlOutKnown_A 1176884530 1176764445 0 0
RamTlOutPayLoadKnown_A 1176884530 321710074 0 0
RamTlOutPayLoadKnown_AKnownEnable 1176884530 1176764445 0 0
RegsTlOutKnown_A 1176884530 1176764445 0 0
SramOtpKeyKnown_A 1176884530 1176764445 0 0
TlulGntIsCorrect_A 1176884530 179333053 0 0


AlertOutKnown_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 1176884530 1176764445 0 0
T1 927396 927343 0 0
T2 998302 998245 0 0
T3 640614 640558 0 0
T4 640750 640559 0 0
T5 339690 339612 0 0
T6 154084 154078 0 0
T9 636 586 0 0
T10 69424 69354 0 0
T11 66956 66563 0 0
T12 75164 75072 0 0

FpvSecCmCntCheck_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 1176884530 70 0 0
T15 32523 20 0 0
T16 0 10 0 0
T17 0 20 0 0
T33 0 10 0 0
T34 0 10 0 0
T35 74309 0 0 0
T36 305172 0 0 0
T37 72786 0 0 0
T38 469840 0 0 0
T39 160194 0 0 0
T40 118301 0 0 0
T41 1297 0 0 0
T42 111586 0 0 0
T43 35107 0 0 0

FpvSecCmFifoRptrCheck_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 1176884530 70 0 0
T15 32523 20 0 0
T16 0 10 0 0
T17 0 20 0 0
T33 0 10 0 0
T34 0 10 0 0
T35 74309 0 0 0
T36 305172 0 0 0
T37 72786 0 0 0
T38 469840 0 0 0
T39 160194 0 0 0
T40 118301 0 0 0
T41 1297 0 0 0
T42 111586 0 0 0
T43 35107 0 0 0

FpvSecCmFifoWptrCheck_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 1176884530 70 0 0
T15 32523 20 0 0
T16 0 10 0 0
T17 0 20 0 0
T33 0 10 0 0
T34 0 10 0 0
T35 74309 0 0 0
T36 305172 0 0 0
T37 72786 0 0 0
T38 469840 0 0 0
T39 160194 0 0 0
T40 118301 0 0 0
T41 1297 0 0 0
T42 111586 0 0 0
T43 35107 0 0 0

FpvSecCmLcGateFsmCheck_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 1176884530 0 0 0

FpvSecCmRegWeOnehotCheck_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 1176884530 70 0 0
T15 32523 20 0 0
T16 0 10 0 0
T17 0 20 0 0
T33 0 10 0 0
T34 0 10 0 0
T35 74309 0 0 0
T36 305172 0 0 0
T37 72786 0 0 0
T38 469840 0 0 0
T39 160194 0 0 0
T40 118301 0 0 0
T41 1297 0 0 0
T42 111586 0 0 0
T43 35107 0 0 0

NonceWidthsLessThanSource_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 905 905 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
T9 1 1 0 0
T10 1 1 0 0
T11 1 1 0 0
T12 1 1 0 0

RamTlOutKnown_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 1176884530 1176764445 0 0
T1 927396 927343 0 0
T2 998302 998245 0 0
T3 640614 640558 0 0
T4 640750 640559 0 0
T5 339690 339612 0 0
T6 154084 154078 0 0
T9 636 586 0 0
T10 69424 69354 0 0
T11 66956 66563 0 0
T12 75164 75072 0 0

RamTlOutPayLoadKnown_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 1176884530 321710074 0 0
T1 927396 144024 0 0
T2 998302 133599 0 0
T3 640614 246326 0 0
T4 640750 2423 0 0
T5 339690 38812 0 0
T6 154084 809112 0 0
T9 636 0 0 0
T10 69424 2888 0 0
T11 66956 30023 0 0
T12 75164 6944 0 0
T13 0 3552 0 0

RamTlOutPayLoadKnown_AKnownEnable
NameAttemptsReal SuccessesFailuresIncomplete
Total 1176884530 1176764445 0 0
T1 927396 927343 0 0
T2 998302 998245 0 0
T3 640614 640558 0 0
T4 640750 640559 0 0
T5 339690 339612 0 0
T6 154084 154078 0 0
T9 636 586 0 0
T10 69424 69354 0 0
T11 66956 66563 0 0
T12 75164 75072 0 0

RegsTlOutKnown_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 1176884530 1176764445 0 0
T1 927396 927343 0 0
T2 998302 998245 0 0
T3 640614 640558 0 0
T4 640750 640559 0 0
T5 339690 339612 0 0
T6 154084 154078 0 0
T9 636 586 0 0
T10 69424 69354 0 0
T11 66956 66563 0 0
T12 75164 75072 0 0

SramOtpKeyKnown_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 1176884530 1176764445 0 0
T1 927396 927343 0 0
T2 998302 998245 0 0
T3 640614 640558 0 0
T4 640750 640559 0 0
T5 339690 339612 0 0
T6 154084 154078 0 0
T9 636 586 0 0
T10 69424 69354 0 0
T11 66956 66563 0 0
T12 75164 75072 0 0

TlulGntIsCorrect_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 1176884530 179333053 0 0
T1 927396 182444 0 0
T2 998302 180169 0 0
T3 640614 346639 0 0
T4 640750 807 0 0
T5 339690 17305 0 0
T6 154084 85849 0 0
T9 636 0 0 0
T10 69424 2996 0 0
T11 66956 42 0 0
T12 75164 7585 0 0
T13 0 711 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
01CoveredT9,T18,T19
10CoveredT1,T2,T3
11CoveredT9,T18,T19

 LINE       144
 EXPRESSION (((|bus_integ_error)) | init_error)
             ----------1---------   -----2----
-1--2-StatusTests
00CoveredT1,T2,T3
01CoveredT15,T16,T17
10CoveredT15,T16,T17

 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
001CoveredT15,T16,T17
010CoveredT15,T16,T17
100CoveredT4,T7,T8

 LINE       192
 EXPRESSION (escalate | init_error | ((|bus_integ_error)) | local_esc_reg)
             ----1---   -----2----   ----------3---------   ------4------
-1--2--3--4-StatusTests
0000CoveredT1,T2,T3
0001CoveredT4,T7,T8
0010CoveredT15,T16,T17
0100CoveredT15,T16,T17
1000CoveredT4,T7,T8

 LINE       209
 EXPRESSION (reg2hw.ctrl.init.q && reg2hw.ctrl.init.qe && ((!init_q)))
             ---------1--------    ---------2---------    -----3-----
-1--2--3-StatusTests
011CoveredT4,T6,T7
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
110CoveredT4,T7,T20
111CoveredT1,T2,T3

 LINE       256
 EXPRESSION (init_done | init_trig | local_esc)
             ----1----   ----2----   ----3----
-1--2--3-StatusTests
000CoveredT1,T2,T3
001CoveredT4,T7,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
0111CoveredT6,T8,T21
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
110CoveredT4,T7,T8
111CoveredT1,T2,T3

 LINE       277
 EXPRESSION (key_req | key_ack | local_esc)
             ---1---   ---2---   ----3----
-1--2--3-StatusTests
000CoveredT1,T2,T3
001CoveredT4,T7,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
10CoveredT4,T7,T8
11CoveredT1,T2,T3

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

 LINE       286
 EXPRESSION (key_seed_valid & ((~local_esc)))
             -------1------   -------2------
-1--2-StatusTests
01CoveredT1,T2,T3
10CoveredT4,T8,T22
11CoveredT1,T2,T4

 LINE       287
 EXPRESSION (key_ack | local_esc)
             ---1---   ----2----
-1--2-StatusTests
00CoveredT1,T2,T3
01CoveredT4,T7,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
11CoveredT15,T16,T17

 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
1CoveredT4,T7,T8

 LINE       506
 SUB-EXPRESSION (tl_gate_resp_pending & sram_rmw_in_progress)
                 ----------1---------   ----------2---------
-1--2-StatusTests
01Not Covered
10CoveredT4,T7,T8
11CoveredT23,T24,T25

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 T4,T11,T7 Yes T1,T2,T3 INPUT
clk_otp_i Yes Yes T1,T2,T3 Yes T1,T2,T3 INPUT
rst_otp_ni Yes Yes T4,T11,T7 Yes T1,T2,T3 INPUT
ram_tl_i.d_ready Yes Yes T5,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 T4,T5,T6 Yes T4,T5,T6 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,T3 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 T4,T5,T6 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,T3 Yes T1,T2,T3 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 T5,T6,T11 Yes T1,T2,T3 INPUT
regs_tl_i.a_user.data_intg[6:0] Yes Yes T1,T4,T10 Yes T1,T4,T9 INPUT
regs_tl_i.a_user.cmd_intg[6:0] Yes Yes T1,T2,T4 Yes T1,T2,T4 INPUT
regs_tl_i.a_user.instr_type[3:0] Yes Yes T1,T10,T11 Yes T1,T10,T11 INPUT
regs_tl_i.a_user.rsvd[4:0] Unreachable Unreachable Unreachable INPUT
regs_tl_i.a_data[31:0] Yes Yes T1,T4,T10 Yes T1,T4,T9 INPUT
regs_tl_i.a_mask[3:0] Yes Yes T1,T4,T10 Yes T1,T4,T10 INPUT
regs_tl_i.a_address[31:0] Yes Yes T1,T4,T10 Yes T1,T4,T10 INPUT
regs_tl_i.a_source[7:0] Yes Yes T1,T4,T10 Yes T1,T4,T10 INPUT
regs_tl_i.a_size[1:0] Yes Yes T1,T2,T3 Yes T1,T2,T3 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 T11,T26,T27 Yes T11,T26,T27 OUTPUT
regs_tl_o.d_user.data_intg[6:0] Yes Yes T4,T11,T7 Yes T4,T11,T7 OUTPUT
regs_tl_o.d_user.rsp_intg[5:0] Yes Yes *T1,*T2,*T4 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 T4,T6,T11 Yes T1,T2,T3 OUTPUT
regs_tl_o.d_sink Unreachable Unreachable Unreachable OUTPUT
regs_tl_o.d_source[7:0] Yes Yes T4,T10,T11 Yes T1,T2,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 *T4,*T6,*T11 Yes T4,T6,T11 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 T9,T18,T19 Yes T9,T18,T19 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 T9,T18,T19 Yes T9,T18,T19 OUTPUT
lc_escalate_en_i[3:0] Yes Yes T4,T7,T8 Yes T4,T7,T8 INPUT
lc_hw_debug_en_i[3:0] Yes Yes T6,T28,T29 Yes T6,T28,T29 INPUT
otp_en_sram_ifetch_i[7:0] Yes Yes T5,T6,T28 Yes T6,T28,T8 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,T2,T4 INPUT
sram_otp_key_i.nonce[127:0] Yes Yes T1,T2,T3 Yes T1,T2,T3 INPUT
sram_otp_key_i.key[127:0] Yes Yes T1,T2,T4 Yes T1,T2,T3 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 T30,T31,T32 Yes T30,T31,T32 INPUT
cfg_i.rf_cfg.cfg_en Yes Yes T30,T31,T32 Yes T30,T31,T32 INPUT
cfg_i.ram_cfg.cfg[3:0] Yes Yes T30,T31,T32 Yes T30,T31,T32 INPUT
cfg_i.ram_cfg.cfg_en Yes Yes T30,T31,T32 Yes T30,T31,T32 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 T4,T7,T8
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 T4,T7,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 1176884530 1176764445 0 0
FpvSecCmCntCheck_A 1176884530 70 0 0
FpvSecCmFifoRptrCheck_A 1176884530 70 0 0
FpvSecCmFifoWptrCheck_A 1176884530 70 0 0
FpvSecCmLcGateFsmCheck_A 1176884530 0 0 0
FpvSecCmRegWeOnehotCheck_A 1176884530 70 0 0
NonceWidthsLessThanSource_A 905 905 0 0
RamTlOutKnown_A 1176884530 1176764445 0 0
RamTlOutPayLoadKnown_A 1176884530 321710074 0 0
RamTlOutPayLoadKnown_AKnownEnable 1176884530 1176764445 0 0
RegsTlOutKnown_A 1176884530 1176764445 0 0
SramOtpKeyKnown_A 1176884530 1176764445 0 0
TlulGntIsCorrect_A 1176884530 179333053 0 0


AlertOutKnown_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 1176884530 1176764445 0 0
T1 927396 927343 0 0
T2 998302 998245 0 0
T3 640614 640558 0 0
T4 640750 640559 0 0
T5 339690 339612 0 0
T6 154084 154078 0 0
T9 636 586 0 0
T10 69424 69354 0 0
T11 66956 66563 0 0
T12 75164 75072 0 0

FpvSecCmCntCheck_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 1176884530 70 0 0
T15 32523 20 0 0
T16 0 10 0 0
T17 0 20 0 0
T33 0 10 0 0
T34 0 10 0 0
T35 74309 0 0 0
T36 305172 0 0 0
T37 72786 0 0 0
T38 469840 0 0 0
T39 160194 0 0 0
T40 118301 0 0 0
T41 1297 0 0 0
T42 111586 0 0 0
T43 35107 0 0 0

FpvSecCmFifoRptrCheck_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 1176884530 70 0 0
T15 32523 20 0 0
T16 0 10 0 0
T17 0 20 0 0
T33 0 10 0 0
T34 0 10 0 0
T35 74309 0 0 0
T36 305172 0 0 0
T37 72786 0 0 0
T38 469840 0 0 0
T39 160194 0 0 0
T40 118301 0 0 0
T41 1297 0 0 0
T42 111586 0 0 0
T43 35107 0 0 0

FpvSecCmFifoWptrCheck_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 1176884530 70 0 0
T15 32523 20 0 0
T16 0 10 0 0
T17 0 20 0 0
T33 0 10 0 0
T34 0 10 0 0
T35 74309 0 0 0
T36 305172 0 0 0
T37 72786 0 0 0
T38 469840 0 0 0
T39 160194 0 0 0
T40 118301 0 0 0
T41 1297 0 0 0
T42 111586 0 0 0
T43 35107 0 0 0

FpvSecCmLcGateFsmCheck_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 1176884530 0 0 0

FpvSecCmRegWeOnehotCheck_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 1176884530 70 0 0
T15 32523 20 0 0
T16 0 10 0 0
T17 0 20 0 0
T33 0 10 0 0
T34 0 10 0 0
T35 74309 0 0 0
T36 305172 0 0 0
T37 72786 0 0 0
T38 469840 0 0 0
T39 160194 0 0 0
T40 118301 0 0 0
T41 1297 0 0 0
T42 111586 0 0 0
T43 35107 0 0 0

NonceWidthsLessThanSource_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 905 905 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
T9 1 1 0 0
T10 1 1 0 0
T11 1 1 0 0
T12 1 1 0 0

RamTlOutKnown_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 1176884530 1176764445 0 0
T1 927396 927343 0 0
T2 998302 998245 0 0
T3 640614 640558 0 0
T4 640750 640559 0 0
T5 339690 339612 0 0
T6 154084 154078 0 0
T9 636 586 0 0
T10 69424 69354 0 0
T11 66956 66563 0 0
T12 75164 75072 0 0

RamTlOutPayLoadKnown_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 1176884530 321710074 0 0
T1 927396 144024 0 0
T2 998302 133599 0 0
T3 640614 246326 0 0
T4 640750 2423 0 0
T5 339690 38812 0 0
T6 154084 809112 0 0
T9 636 0 0 0
T10 69424 2888 0 0
T11 66956 30023 0 0
T12 75164 6944 0 0
T13 0 3552 0 0

RamTlOutPayLoadKnown_AKnownEnable
NameAttemptsReal SuccessesFailuresIncomplete
Total 1176884530 1176764445 0 0
T1 927396 927343 0 0
T2 998302 998245 0 0
T3 640614 640558 0 0
T4 640750 640559 0 0
T5 339690 339612 0 0
T6 154084 154078 0 0
T9 636 586 0 0
T10 69424 69354 0 0
T11 66956 66563 0 0
T12 75164 75072 0 0

RegsTlOutKnown_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 1176884530 1176764445 0 0
T1 927396 927343 0 0
T2 998302 998245 0 0
T3 640614 640558 0 0
T4 640750 640559 0 0
T5 339690 339612 0 0
T6 154084 154078 0 0
T9 636 586 0 0
T10 69424 69354 0 0
T11 66956 66563 0 0
T12 75164 75072 0 0

SramOtpKeyKnown_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 1176884530 1176764445 0 0
T1 927396 927343 0 0
T2 998302 998245 0 0
T3 640614 640558 0 0
T4 640750 640559 0 0
T5 339690 339612 0 0
T6 154084 154078 0 0
T9 636 586 0 0
T10 69424 69354 0 0
T11 66956 66563 0 0
T12 75164 75072 0 0

TlulGntIsCorrect_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 1176884530 179333053 0 0
T1 927396 182444 0 0
T2 998302 180169 0 0
T3 640614 346639 0 0
T4 640750 807 0 0
T5 339690 17305 0 0
T6 154084 85849 0 0
T9 636 0 0 0
T10 69424 2996 0 0
T11 66956 42 0 0
T12 75164 7585 0 0
T13 0 711 0 0

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