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.18 99.81 96.99 100.00 100.00 98.57 99.70


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.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
TOTAL4949100.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_ASSIGN37711100.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
377 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
01CoveredT24,T25,T26
10CoveredT2,T3,T4
11CoveredT24,T25,T26

 LINE       144
 EXPRESSION (((|bus_integ_error)) | init_error)
             ----------1---------   -----2----
-1--2-StatusTests
00CoveredT1,T2,T3
01CoveredT21,T22,T23
10CoveredT21,T22,T23

 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
001CoveredT21,T22,T23
010CoveredT21,T22,T23
100CoveredT7,T8,T9

 LINE       192
 EXPRESSION (escalate | init_error | ((|bus_integ_error)) | local_esc_reg)
             ----1---   -----2----   ----------3---------   ------4------
-1--2--3--4-StatusTests
0000CoveredT1,T2,T3
0001CoveredT7,T8,T9
0010CoveredT21,T22,T23
0100CoveredT21,T22,T23
1000CoveredT7,T8,T9

 LINE       209
 EXPRESSION (reg2hw.ctrl.init.q && reg2hw.ctrl.init.qe && ((!init_q)))
             ---------1--------    ---------2---------    -----3-----
-1--2--3-StatusTests
011CoveredT2,T7,T8
101CoveredT2,T3,T4
110Not Covered
111CoveredT2,T3,T4

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

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

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

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

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

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

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

 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
0111CoveredT2,T27,T28
1011CoveredT2,T3,T4
1101Not Covered
1110Not Covered
1111CoveredT2,T3,T4

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

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

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

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

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

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

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

 LINE       286
 EXPRESSION (key_seed_valid & ((~local_esc)))
             -------1------   -------2------
-1--2-StatusTests
01CoveredT3,T4,T7
10CoveredT7,T8,T9
11CoveredT2,T3,T4

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

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

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

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

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

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

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

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

 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
1CoveredT2,T3,T4

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

 LINE       506
 SUB-EXPRESSION (tl_gate_resp_pending & sram_rmw_in_progress)
                 ----------1---------   ----------2---------
-1--2-StatusTests
01Not Covered
10CoveredT7,T8,T9
11CoveredT8,T9,T29

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,T13,T8 Yes T1,T2,T3 INPUT
clk_otp_i Yes Yes T1,T2,T3 Yes T1,T2,T3 INPUT
rst_otp_ni Yes Yes T7,T13,T8 Yes T1,T2,T3 INPUT
ram_tl_i.d_ready Yes Yes T7,T5,T13 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,T4,T7 Yes T2,T4,T7 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,T4 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,T4 Yes T2,T3,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 T2,T7,T13 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 T7,T5,T13 Yes T1,T2,T3 INPUT
regs_tl_i.a_user.data_intg[6:0] Yes Yes T2,T7,T11 Yes T2,T7,T11 INPUT
regs_tl_i.a_user.cmd_intg[6:0] Yes Yes T2,T3,T4 Yes T2,T3,T7 INPUT
regs_tl_i.a_user.instr_type[3:0] Yes Yes T11,T13,T17 Yes T11,T13,T30 INPUT
regs_tl_i.a_user.rsvd[4:0] Unreachable Unreachable Unreachable INPUT
regs_tl_i.a_data[31:0] Yes Yes T2,T7,T11 Yes T2,T7,T11 INPUT
regs_tl_i.a_mask[3:0] Yes Yes T2,T7,T11 Yes T2,T7,T11 INPUT
regs_tl_i.a_address[31:0] Yes Yes T2,T7,T11 Yes T2,T7,T11 INPUT
regs_tl_i.a_source[7:0] Yes Yes T2,T3,T10 Yes T2,T11,T13 INPUT
regs_tl_i.a_size[1:0] Yes Yes T2,T3,T4 Yes T2,T3,T4 INPUT
regs_tl_i.a_param[2:0] Unreachable Unreachable Unreachable INPUT
regs_tl_i.a_opcode[2:0] Yes Yes T2,T3,T4 Yes T2,T3,T4 INPUT
regs_tl_i.a_valid Yes Yes T2,T3,T4 Yes T2,T3,T4 INPUT
regs_tl_o.a_ready Yes Yes T2,T3,T4 Yes T2,T3,T4 OUTPUT
regs_tl_o.d_error Yes Yes T13,T15,T28 Yes T13,T15,T28 OUTPUT
regs_tl_o.d_user.data_intg[6:0] Yes Yes T7,T13,T8 Yes T7,T13,T8 OUTPUT
regs_tl_o.d_user.rsp_intg[5:0] Yes Yes *T2,*T3,*T4 Yes T2,T3,T4 OUTPUT
regs_tl_o.d_user.rsp_intg[6] Unreachable Unreachable Unreachable OUTPUT
regs_tl_o.d_data[31:0] Yes Yes T2,T7,T13 Yes T2,T3,T4 OUTPUT
regs_tl_o.d_sink Unreachable Unreachable Unreachable OUTPUT
regs_tl_o.d_source[7:0] Yes Yes T2,T3,T7 Yes T2,T3,T7 OUTPUT
regs_tl_o.d_size[1:0] Yes Yes T2,T3,T4 Yes T2,T3,T4 OUTPUT
regs_tl_o.d_param[2:0] Unreachable Unreachable Unreachable OUTPUT
regs_tl_o.d_opcode[0] Yes Yes *T2,*T7,*T13 Yes T2,T7,T13 OUTPUT
regs_tl_o.d_opcode[2:1] Unreachable Unreachable Unreachable OUTPUT
regs_tl_o.d_valid Yes Yes T2,T3,T4 Yes T2,T3,T4 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 T24,T25,T21 Yes T24,T25,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 T24,T25,T21 Yes T24,T25,T21 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 T2,T7,T13 Yes T2,T7,T13 INPUT
otp_en_sram_ifetch_i[7:0] Yes Yes T2,T7,T13 Yes T2,T7,T13 INPUT
sram_otp_key_o.req Yes Yes T2,T3,T4 Yes T2,T3,T4 OUTPUT
sram_otp_key_i.seed_valid Yes Yes T3,T4,T7 Yes T3,T7,T10 INPUT
sram_otp_key_i.nonce[127:0] Yes Yes T3,T4,T7 Yes T2,T3,T4 INPUT
sram_otp_key_i.key[127:0] Yes Yes T3,T4,T7 Yes T2,T3,T4 INPUT
sram_otp_key_i.ack Yes Yes T2,T3,T4 Yes T2,T3,T4 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 T2,T3,T4
0 1 Covered T2,T3,T4
0 0 Covered T1,T2,T3


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

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


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

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


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

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


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

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


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

Branches:
-1-StatusTests
1 Covered T2,T3,T4
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 T2,T3,T4
0 1 Covered T7,T8,T9
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 T2,T3,T4
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 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 289145462 289024183 0 0
FpvSecCmCntCheck_A 289145462 80 0 0
FpvSecCmFifoRptrCheck_A 289145462 80 0 0
FpvSecCmFifoWptrCheck_A 289145462 80 0 0
FpvSecCmLcGateFsmCheck_A 289145462 0 0 0
FpvSecCmRegWeOnehotCheck_A 289145462 80 0 0
NonceWidthsLessThanSource_A 891 891 0 0
RamTlOutKnown_A 289145462 289024183 0 0
RamTlOutPayLoadKnown_A 289145462 125781085 0 0
RamTlOutPayLoadKnown_AKnownEnable 289145462 289024183 0 0
RegsTlOutKnown_A 289145462 289024183 0 0
SramOtpKeyKnown_A 289145462 289024183 0 0
TlulGntIsCorrect_A 289145462 63493717 0 0


AlertOutKnown_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 289145462 289024183 0 0
T1 13231 13148 0 0
T2 309640 309563 0 0
T3 228228 228142 0 0
T4 411854 411774 0 0
T5 40443 40384 0 0
T7 481846 481450 0 0
T10 320247 320177 0 0
T11 210161 210073 0 0
T12 10228 10148 0 0
T13 133642 133541 0 0

FpvSecCmCntCheck_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 289145462 80 0 0
T21 118204 20 0 0
T22 0 20 0 0
T23 0 20 0 0
T26 928 0 0 0
T29 903800 0 0 0
T33 0 10 0 0
T34 0 10 0 0
T35 268568 0 0 0
T36 128858 0 0 0
T37 13059 0 0 0
T38 213443 0 0 0
T39 162134 0 0 0
T40 943 0 0 0
T41 30157 0 0 0

FpvSecCmFifoRptrCheck_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 289145462 80 0 0
T21 118204 20 0 0
T22 0 20 0 0
T23 0 20 0 0
T26 928 0 0 0
T29 903800 0 0 0
T33 0 10 0 0
T34 0 10 0 0
T35 268568 0 0 0
T36 128858 0 0 0
T37 13059 0 0 0
T38 213443 0 0 0
T39 162134 0 0 0
T40 943 0 0 0
T41 30157 0 0 0

FpvSecCmFifoWptrCheck_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 289145462 80 0 0
T21 118204 20 0 0
T22 0 20 0 0
T23 0 20 0 0
T26 928 0 0 0
T29 903800 0 0 0
T33 0 10 0 0
T34 0 10 0 0
T35 268568 0 0 0
T36 128858 0 0 0
T37 13059 0 0 0
T38 213443 0 0 0
T39 162134 0 0 0
T40 943 0 0 0
T41 30157 0 0 0

FpvSecCmLcGateFsmCheck_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 289145462 0 0 0

FpvSecCmRegWeOnehotCheck_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 289145462 80 0 0
T21 118204 20 0 0
T22 0 20 0 0
T23 0 20 0 0
T26 928 0 0 0
T29 903800 0 0 0
T33 0 10 0 0
T34 0 10 0 0
T35 268568 0 0 0
T36 128858 0 0 0
T37 13059 0 0 0
T38 213443 0 0 0
T39 162134 0 0 0
T40 943 0 0 0
T41 30157 0 0 0

NonceWidthsLessThanSource_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 891 891 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
T7 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 289145462 289024183 0 0
T1 13231 13148 0 0
T2 309640 309563 0 0
T3 228228 228142 0 0
T4 411854 411774 0 0
T5 40443 40384 0 0
T7 481846 481450 0 0
T10 320247 320177 0 0
T11 210161 210073 0 0
T12 10228 10148 0 0
T13 133642 133541 0 0

RamTlOutPayLoadKnown_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 289145462 125781085 0 0
T1 13231 6142 0 0
T2 309640 177706 0 0
T3 228228 188045 0 0
T4 411854 343458 0 0
T5 40443 11257 0 0
T7 481846 286568 0 0
T10 320247 174951 0 0
T11 210161 105148 0 0
T12 10228 6919 0 0
T13 133642 94910 0 0

RamTlOutPayLoadKnown_AKnownEnable
NameAttemptsReal SuccessesFailuresIncomplete
Total 289145462 289024183 0 0
T1 13231 13148 0 0
T2 309640 309563 0 0
T3 228228 228142 0 0
T4 411854 411774 0 0
T5 40443 40384 0 0
T7 481846 481450 0 0
T10 320247 320177 0 0
T11 210161 210073 0 0
T12 10228 10148 0 0
T13 133642 133541 0 0

RegsTlOutKnown_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 289145462 289024183 0 0
T1 13231 13148 0 0
T2 309640 309563 0 0
T3 228228 228142 0 0
T4 411854 411774 0 0
T5 40443 40384 0 0
T7 481846 481450 0 0
T10 320247 320177 0 0
T11 210161 210073 0 0
T12 10228 10148 0 0
T13 133642 133541 0 0

SramOtpKeyKnown_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 289145462 289024183 0 0
T1 13231 13148 0 0
T2 309640 309563 0 0
T3 228228 228142 0 0
T4 411854 411774 0 0
T5 40443 40384 0 0
T7 481846 481450 0 0
T10 320247 320177 0 0
T11 210161 210073 0 0
T12 10228 10148 0 0
T13 133642 133541 0 0

TlulGntIsCorrect_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 289145462 63493717 0 0
T1 13231 6142 0 0
T2 309640 74249 0 0
T3 228228 196598 0 0
T4 411854 359154 0 0
T5 40443 5591 0 0
T7 481846 119241 0 0
T10 320247 211238 0 0
T11 210161 130194 0 0
T12 10228 6919 0 0
T13 133642 65084 0 0

Line Coverage for Instance : tb.dut
Line No.TotalCoveredPercent
TOTAL4949100.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_ASSIGN37711100.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
377 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
01CoveredT24,T25,T26
10CoveredT2,T3,T4
11CoveredT24,T25,T26

 LINE       144
 EXPRESSION (((|bus_integ_error)) | init_error)
             ----------1---------   -----2----
-1--2-StatusTests
00CoveredT1,T2,T3
01CoveredT21,T22,T23
10CoveredT21,T22,T23

 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
001CoveredT21,T22,T23
010CoveredT21,T22,T23
100CoveredT7,T8,T9

 LINE       192
 EXPRESSION (escalate | init_error | ((|bus_integ_error)) | local_esc_reg)
             ----1---   -----2----   ----------3---------   ------4------
-1--2--3--4-StatusTests
0000CoveredT1,T2,T3
0001CoveredT7,T8,T9
0010CoveredT21,T22,T23
0100CoveredT21,T22,T23
1000CoveredT7,T8,T9

 LINE       209
 EXPRESSION (reg2hw.ctrl.init.q && reg2hw.ctrl.init.qe && ((!init_q)))
             ---------1--------    ---------2---------    -----3-----
-1--2--3-StatusTests
011CoveredT2,T7,T8
101CoveredT2,T3,T4
110Not Covered
111CoveredT2,T3,T4

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

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

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

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

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

 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
110CoveredT7,T8,T9
111CoveredT2,T3,T4

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

 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
0111CoveredT2,T27,T28
1011CoveredT2,T3,T4
1101Not Covered
1110Not Covered
1111CoveredT2,T3,T4

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

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

 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
110CoveredT7,T8,T9
111CoveredT2,T3,T4

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

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

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

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

 LINE       286
 EXPRESSION (key_seed_valid & ((~local_esc)))
             -------1------   -------2------
-1--2-StatusTests
01CoveredT3,T4,T7
10CoveredT7,T8,T9
11CoveredT2,T3,T4

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

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

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

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

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

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

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

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

 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
1CoveredT2,T3,T4

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

 LINE       506
 SUB-EXPRESSION (tl_gate_resp_pending & sram_rmw_in_progress)
                 ----------1---------   ----------2---------
-1--2-StatusTests
01Not Covered
10CoveredT7,T8,T9
11CoveredT8,T9,T29

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,T13,T8 Yes T1,T2,T3 INPUT
clk_otp_i Yes Yes T1,T2,T3 Yes T1,T2,T3 INPUT
rst_otp_ni Yes Yes T7,T13,T8 Yes T1,T2,T3 INPUT
ram_tl_i.d_ready Yes Yes T7,T5,T13 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,T4,T7 Yes T2,T4,T7 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,T4 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,T4 Yes T2,T3,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 T2,T7,T13 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 T7,T5,T13 Yes T1,T2,T3 INPUT
regs_tl_i.a_user.data_intg[6:0] Yes Yes T2,T7,T11 Yes T2,T7,T11 INPUT
regs_tl_i.a_user.cmd_intg[6:0] Yes Yes T2,T3,T4 Yes T2,T3,T7 INPUT
regs_tl_i.a_user.instr_type[3:0] Yes Yes T11,T13,T17 Yes T11,T13,T30 INPUT
regs_tl_i.a_user.rsvd[4:0] Unreachable Unreachable Unreachable INPUT
regs_tl_i.a_data[31:0] Yes Yes T2,T7,T11 Yes T2,T7,T11 INPUT
regs_tl_i.a_mask[3:0] Yes Yes T2,T7,T11 Yes T2,T7,T11 INPUT
regs_tl_i.a_address[31:0] Yes Yes T2,T7,T11 Yes T2,T7,T11 INPUT
regs_tl_i.a_source[7:0] Yes Yes T2,T3,T10 Yes T2,T11,T13 INPUT
regs_tl_i.a_size[1:0] Yes Yes T2,T3,T4 Yes T2,T3,T4 INPUT
regs_tl_i.a_param[2:0] Unreachable Unreachable Unreachable INPUT
regs_tl_i.a_opcode[2:0] Yes Yes T2,T3,T4 Yes T2,T3,T4 INPUT
regs_tl_i.a_valid Yes Yes T2,T3,T4 Yes T2,T3,T4 INPUT
regs_tl_o.a_ready Yes Yes T2,T3,T4 Yes T2,T3,T4 OUTPUT
regs_tl_o.d_error Yes Yes T13,T15,T28 Yes T13,T15,T28 OUTPUT
regs_tl_o.d_user.data_intg[6:0] Yes Yes T7,T13,T8 Yes T7,T13,T8 OUTPUT
regs_tl_o.d_user.rsp_intg[5:0] Yes Yes *T2,*T3,*T4 Yes T2,T3,T4 OUTPUT
regs_tl_o.d_user.rsp_intg[6] Unreachable Unreachable Unreachable OUTPUT
regs_tl_o.d_data[31:0] Yes Yes T2,T7,T13 Yes T2,T3,T4 OUTPUT
regs_tl_o.d_sink Unreachable Unreachable Unreachable OUTPUT
regs_tl_o.d_source[7:0] Yes Yes T2,T3,T7 Yes T2,T3,T7 OUTPUT
regs_tl_o.d_size[1:0] Yes Yes T2,T3,T4 Yes T2,T3,T4 OUTPUT
regs_tl_o.d_param[2:0] Unreachable Unreachable Unreachable OUTPUT
regs_tl_o.d_opcode[0] Yes Yes *T2,*T7,*T13 Yes T2,T7,T13 OUTPUT
regs_tl_o.d_opcode[2:1] Unreachable Unreachable Unreachable OUTPUT
regs_tl_o.d_valid Yes Yes T2,T3,T4 Yes T2,T3,T4 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 T24,T25,T21 Yes T24,T25,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 T24,T25,T21 Yes T24,T25,T21 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 T2,T7,T13 Yes T2,T7,T13 INPUT
otp_en_sram_ifetch_i[7:0] Yes Yes T2,T7,T13 Yes T2,T7,T13 INPUT
sram_otp_key_o.req Yes Yes T2,T3,T4 Yes T2,T3,T4 OUTPUT
sram_otp_key_i.seed_valid Yes Yes T3,T4,T7 Yes T3,T7,T10 INPUT
sram_otp_key_i.nonce[127:0] Yes Yes T3,T4,T7 Yes T2,T3,T4 INPUT
sram_otp_key_i.key[127:0] Yes Yes T3,T4,T7 Yes T2,T3,T4 INPUT
sram_otp_key_i.ack Yes Yes T2,T3,T4 Yes T2,T3,T4 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 T2,T3,T4
0 1 Covered T2,T3,T4
0 0 Covered T1,T2,T3


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

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


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

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


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

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


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

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


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

Branches:
-1-StatusTests
1 Covered T2,T3,T4
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 T2,T3,T4
0 1 Covered T7,T8,T9
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 T2,T3,T4
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 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 289145462 289024183 0 0
FpvSecCmCntCheck_A 289145462 80 0 0
FpvSecCmFifoRptrCheck_A 289145462 80 0 0
FpvSecCmFifoWptrCheck_A 289145462 80 0 0
FpvSecCmLcGateFsmCheck_A 289145462 0 0 0
FpvSecCmRegWeOnehotCheck_A 289145462 80 0 0
NonceWidthsLessThanSource_A 891 891 0 0
RamTlOutKnown_A 289145462 289024183 0 0
RamTlOutPayLoadKnown_A 289145462 125781085 0 0
RamTlOutPayLoadKnown_AKnownEnable 289145462 289024183 0 0
RegsTlOutKnown_A 289145462 289024183 0 0
SramOtpKeyKnown_A 289145462 289024183 0 0
TlulGntIsCorrect_A 289145462 63493717 0 0


AlertOutKnown_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 289145462 289024183 0 0
T1 13231 13148 0 0
T2 309640 309563 0 0
T3 228228 228142 0 0
T4 411854 411774 0 0
T5 40443 40384 0 0
T7 481846 481450 0 0
T10 320247 320177 0 0
T11 210161 210073 0 0
T12 10228 10148 0 0
T13 133642 133541 0 0

FpvSecCmCntCheck_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 289145462 80 0 0
T21 118204 20 0 0
T22 0 20 0 0
T23 0 20 0 0
T26 928 0 0 0
T29 903800 0 0 0
T33 0 10 0 0
T34 0 10 0 0
T35 268568 0 0 0
T36 128858 0 0 0
T37 13059 0 0 0
T38 213443 0 0 0
T39 162134 0 0 0
T40 943 0 0 0
T41 30157 0 0 0

FpvSecCmFifoRptrCheck_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 289145462 80 0 0
T21 118204 20 0 0
T22 0 20 0 0
T23 0 20 0 0
T26 928 0 0 0
T29 903800 0 0 0
T33 0 10 0 0
T34 0 10 0 0
T35 268568 0 0 0
T36 128858 0 0 0
T37 13059 0 0 0
T38 213443 0 0 0
T39 162134 0 0 0
T40 943 0 0 0
T41 30157 0 0 0

FpvSecCmFifoWptrCheck_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 289145462 80 0 0
T21 118204 20 0 0
T22 0 20 0 0
T23 0 20 0 0
T26 928 0 0 0
T29 903800 0 0 0
T33 0 10 0 0
T34 0 10 0 0
T35 268568 0 0 0
T36 128858 0 0 0
T37 13059 0 0 0
T38 213443 0 0 0
T39 162134 0 0 0
T40 943 0 0 0
T41 30157 0 0 0

FpvSecCmLcGateFsmCheck_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 289145462 0 0 0

FpvSecCmRegWeOnehotCheck_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 289145462 80 0 0
T21 118204 20 0 0
T22 0 20 0 0
T23 0 20 0 0
T26 928 0 0 0
T29 903800 0 0 0
T33 0 10 0 0
T34 0 10 0 0
T35 268568 0 0 0
T36 128858 0 0 0
T37 13059 0 0 0
T38 213443 0 0 0
T39 162134 0 0 0
T40 943 0 0 0
T41 30157 0 0 0

NonceWidthsLessThanSource_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 891 891 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
T7 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 289145462 289024183 0 0
T1 13231 13148 0 0
T2 309640 309563 0 0
T3 228228 228142 0 0
T4 411854 411774 0 0
T5 40443 40384 0 0
T7 481846 481450 0 0
T10 320247 320177 0 0
T11 210161 210073 0 0
T12 10228 10148 0 0
T13 133642 133541 0 0

RamTlOutPayLoadKnown_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 289145462 125781085 0 0
T1 13231 6142 0 0
T2 309640 177706 0 0
T3 228228 188045 0 0
T4 411854 343458 0 0
T5 40443 11257 0 0
T7 481846 286568 0 0
T10 320247 174951 0 0
T11 210161 105148 0 0
T12 10228 6919 0 0
T13 133642 94910 0 0

RamTlOutPayLoadKnown_AKnownEnable
NameAttemptsReal SuccessesFailuresIncomplete
Total 289145462 289024183 0 0
T1 13231 13148 0 0
T2 309640 309563 0 0
T3 228228 228142 0 0
T4 411854 411774 0 0
T5 40443 40384 0 0
T7 481846 481450 0 0
T10 320247 320177 0 0
T11 210161 210073 0 0
T12 10228 10148 0 0
T13 133642 133541 0 0

RegsTlOutKnown_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 289145462 289024183 0 0
T1 13231 13148 0 0
T2 309640 309563 0 0
T3 228228 228142 0 0
T4 411854 411774 0 0
T5 40443 40384 0 0
T7 481846 481450 0 0
T10 320247 320177 0 0
T11 210161 210073 0 0
T12 10228 10148 0 0
T13 133642 133541 0 0

SramOtpKeyKnown_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 289145462 289024183 0 0
T1 13231 13148 0 0
T2 309640 309563 0 0
T3 228228 228142 0 0
T4 411854 411774 0 0
T5 40443 40384 0 0
T7 481846 481450 0 0
T10 320247 320177 0 0
T11 210161 210073 0 0
T12 10228 10148 0 0
T13 133642 133541 0 0

TlulGntIsCorrect_A
NameAttemptsReal SuccessesFailuresIncomplete
Total 289145462 63493717 0 0
T1 13231 6142 0 0
T2 309640 74249 0 0
T3 228228 196598 0 0
T4 411854 359154 0 0
T5 40443 5591 0 0
T7 481846 119241 0 0
T10 320247 211238 0 0
T11 210161 130194 0 0
T12 10228 6919 0 0
T13 133642 65084 0 0

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