{"block":{"name":"sram_ctrl","variant":"ret","commit":"1521b5f2d5d90c126b1cbab588514f5ecff12f40","commit_short":"1521b5f","branch":"master","url":"https://github.com/lowRISC/opentitan/tree/1521b5f2d5d90c126b1cbab588514f5ecff12f40","revision_info":"GitHub Revision: [`1521b5f`](https://github.com/lowrisc/opentitan/tree/1521b5f2d5d90c126b1cbab588514f5ecff12f40)"},"tool":{"name":"xcelium","version":"unknown"},"timestamp":"2026-05-01T16:00:28Z","build_seed":null,"testplan_ref":"https://opentitan.org/book/hw/ip/sram_ctrl_ret/data/sram_ctrl_testplan.html","stages":{"V1":{"testpoints":{"smoke":{"tests":{"sram_ctrl_smoke":{"max_time":2.0,"sim_time":84.342756,"passed":5,"total":5,"percent":100.0}},"passed":5,"total":5,"percent":100.0},"csr_hw_reset":{"tests":{"sram_ctrl_csr_hw_reset":{"max_time":29.0,"sim_time":28.966623,"passed":5,"total":5,"percent":100.0}},"passed":5,"total":5,"percent":100.0},"csr_rw":{"tests":{"sram_ctrl_csr_rw":{"max_time":29.0,"sim_time":22.597202000000003,"passed":20,"total":20,"percent":100.0}},"passed":20,"total":20,"percent":100.0},"csr_bit_bash":{"tests":{"sram_ctrl_csr_bit_bash":{"max_time":30.0,"sim_time":183.05034,"passed":5,"total":5,"percent":100.0}},"passed":5,"total":5,"percent":100.0},"csr_aliasing":{"tests":{"sram_ctrl_csr_aliasing":{"max_time":29.0,"sim_time":25.197568999999998,"passed":5,"total":5,"percent":100.0}},"passed":5,"total":5,"percent":100.0},"csr_mem_rw_with_rand_reset":{"tests":{"sram_ctrl_csr_mem_rw_with_rand_reset":{"max_time":29.0,"sim_time":47.815857,"passed":15,"total":20,"percent":75.0}},"passed":15,"total":20,"percent":75.0},"regwen_csr_and_corresponding_lockable_csr":{"tests":{"sram_ctrl_csr_rw":{"max_time":29.0,"sim_time":22.597202000000003,"passed":20,"total":20,"percent":100.0},"sram_ctrl_csr_aliasing":{"max_time":29.0,"sim_time":25.197568999999998,"passed":5,"total":5,"percent":100.0}},"passed":25,"total":25,"percent":100.0},"mem_walk":{"tests":{"sram_ctrl_mem_walk":{"max_time":12.0,"sim_time":1850.855388,"passed":5,"total":5,"percent":100.0}},"passed":5,"total":5,"percent":100.0},"mem_partial_access":{"tests":{"sram_ctrl_mem_partial_access":{"max_time":6.0,"sim_time":360.19823599999995,"passed":5,"total":5,"percent":100.0}},"passed":5,"total":5,"percent":100.0}},"passed":65,"total":70,"percent":92.85714285714286},"V2":{"testpoints":{"multiple_keys":{"tests":{"sram_ctrl_multiple_keys":{"max_time":10.0,"sim_time":979.808606,"passed":5,"total":5,"percent":100.0}},"passed":5,"total":5,"percent":100.0},"stress_pipeline":{"tests":{"sram_ctrl_stress_pipeline":{"max_time":183.0,"sim_time":12604.485766000002,"passed":5,"total":5,"percent":100.0}},"passed":5,"total":5,"percent":100.0},"bijection":{"tests":{"sram_ctrl_bijection":{"max_time":8.0,"sim_time":1261.501716,"passed":5,"total":5,"percent":100.0}},"passed":5,"total":5,"percent":100.0},"access_during_key_req":{"tests":{"sram_ctrl_access_during_key_req":{"max_time":22.0,"sim_time":3132.272872,"passed":5,"total":5,"percent":100.0}},"passed":5,"total":5,"percent":100.0},"lc_escalation":{"tests":{"sram_ctrl_lc_escalation":{"max_time":7.0,"sim_time":2213.4673199999997,"passed":5,"total":5,"percent":100.0}},"passed":5,"total":5,"percent":100.0},"executable":{"tests":{"sram_ctrl_executable":{"max_time":17.0,"sim_time":1807.439099,"passed":5,"total":5,"percent":100.0}},"passed":5,"total":5,"percent":100.0},"partial_access":{"tests":{"sram_ctrl_partial_access":{"max_time":3.0,"sim_time":275.465635,"passed":5,"total":5,"percent":100.0},"sram_ctrl_partial_access_b2b":{"max_time":368.0,"sim_time":19248.590934,"passed":5,"total":5,"percent":100.0}},"passed":10,"total":10,"percent":100.0},"max_throughput":{"tests":{"sram_ctrl_max_throughput":{"max_time":2.0,"sim_time":136.689073,"passed":5,"total":5,"percent":100.0},"sram_ctrl_throughput_w_partial_write":{"max_time":2.0,"sim_time":138.287832,"passed":5,"total":5,"percent":100.0},"sram_ctrl_throughput_w_readback":{"max_time":2.0,"sim_time":34.525684999999996,"passed":5,"total":5,"percent":100.0}},"passed":15,"total":15,"percent":100.0},"regwen":{"tests":{"sram_ctrl_regwen":{"max_time":10.0,"sim_time":841.424694,"passed":5,"total":5,"percent":100.0}},"passed":5,"total":5,"percent":100.0},"ram_cfg":{"tests":{"sram_ctrl_ram_cfg":{"max_time":2.0,"sim_time":77.830688,"passed":5,"total":5,"percent":100.0}},"passed":5,"total":5,"percent":100.0},"stress_all":{"tests":{"sram_ctrl_stress_all":{"max_time":45.0,"sim_time":3668.654296,"passed":5,"total":5,"percent":100.0}},"passed":5,"total":5,"percent":100.0},"alert_test":{"tests":{"sram_ctrl_alert_test":{"max_time":2.0,"sim_time":29.820715,"passed":50,"total":50,"percent":100.0}},"passed":50,"total":50,"percent":100.0},"tl_d_oob_addr_access":{"tests":{"sram_ctrl_tl_errors":{"max_time":30.0,"sim_time":131.781604,"passed":20,"total":20,"percent":100.0}},"passed":20,"total":20,"percent":100.0},"tl_d_illegal_access":{"tests":{"sram_ctrl_tl_errors":{"max_time":30.0,"sim_time":131.781604,"passed":20,"total":20,"percent":100.0}},"passed":20,"total":20,"percent":100.0},"tl_d_outstanding_access":{"tests":{"sram_ctrl_csr_hw_reset":{"max_time":29.0,"sim_time":28.966623,"passed":5,"total":5,"percent":100.0},"sram_ctrl_csr_rw":{"max_time":29.0,"sim_time":22.597202000000003,"passed":20,"total":20,"percent":100.0},"sram_ctrl_csr_aliasing":{"max_time":29.0,"sim_time":25.197568999999998,"passed":5,"total":5,"percent":100.0},"sram_ctrl_same_csr_outstanding":{"max_time":29.0,"sim_time":13.986197,"passed":20,"total":20,"percent":100.0}},"passed":50,"total":50,"percent":100.0},"tl_d_partial_access":{"tests":{"sram_ctrl_csr_hw_reset":{"max_time":29.0,"sim_time":28.966623,"passed":5,"total":5,"percent":100.0},"sram_ctrl_csr_rw":{"max_time":29.0,"sim_time":22.597202000000003,"passed":20,"total":20,"percent":100.0},"sram_ctrl_csr_aliasing":{"max_time":29.0,"sim_time":25.197568999999998,"passed":5,"total":5,"percent":100.0},"sram_ctrl_same_csr_outstanding":{"max_time":29.0,"sim_time":13.986197,"passed":20,"total":20,"percent":100.0}},"passed":50,"total":50,"percent":100.0}},"passed":190,"total":190,"percent":100.0},"V2S":{"testpoints":{"passthru_mem_tl_intg_err":{"tests":{"sram_ctrl_passthru_mem_tl_intg_err":{"max_time":31.0,"sim_time":2231.530949,"passed":20,"total":20,"percent":100.0}},"passed":20,"total":20,"percent":100.0},"tl_intg_err":{"tests":{"sram_ctrl_tl_intg_err":{"max_time":30.0,"sim_time":1037.118922,"passed":20,"total":20,"percent":100.0},"sram_ctrl_sec_cm":{"max_time":5.0,"sim_time":1153.472045,"passed":5,"total":5,"percent":100.0}},"passed":25,"total":25,"percent":100.0},"prim_count_check":{"tests":{"sram_ctrl_sec_cm":{"max_time":5.0,"sim_time":1153.472045,"passed":5,"total":5,"percent":100.0}},"passed":5,"total":5,"percent":100.0},"sec_cm_bus_integrity":{"tests":{"sram_ctrl_tl_intg_err":{"max_time":30.0,"sim_time":1037.118922,"passed":20,"total":20,"percent":100.0}},"passed":20,"total":20,"percent":100.0},"sec_cm_ctrl_config_regwen":{"tests":{"sram_ctrl_regwen":{"max_time":10.0,"sim_time":841.424694,"passed":5,"total":5,"percent":100.0}},"passed":5,"total":5,"percent":100.0},"sec_cm_readback_config_regwen":{"tests":{"sram_ctrl_regwen":{"max_time":10.0,"sim_time":841.424694,"passed":5,"total":5,"percent":100.0}},"passed":5,"total":5,"percent":100.0},"sec_cm_exec_config_regwen":{"tests":{"sram_ctrl_csr_rw":{"max_time":29.0,"sim_time":22.597202000000003,"passed":20,"total":20,"percent":100.0}},"passed":20,"total":20,"percent":100.0},"sec_cm_exec_config_mubi":{"tests":{"sram_ctrl_executable":{"max_time":17.0,"sim_time":1807.439099,"passed":5,"total":5,"percent":100.0}},"passed":5,"total":5,"percent":100.0},"sec_cm_exec_intersig_mubi":{"tests":{"sram_ctrl_executable":{"max_time":17.0,"sim_time":1807.439099,"passed":5,"total":5,"percent":100.0}},"passed":5,"total":5,"percent":100.0},"sec_cm_lc_hw_debug_en_intersig_mubi":{"tests":{"sram_ctrl_executable":{"max_time":17.0,"sim_time":1807.439099,"passed":5,"total":5,"percent":100.0}},"passed":5,"total":5,"percent":100.0},"sec_cm_lc_escalate_en_intersig_mubi":{"tests":{"sram_ctrl_lc_escalation":{"max_time":7.0,"sim_time":2213.4673199999997,"passed":5,"total":5,"percent":100.0}},"passed":5,"total":5,"percent":100.0},"sec_cm_prim_ram_ctrl_mubi":{"tests":{"sram_ctrl_mubi_enc_err":{"max_time":2.0,"sim_time":487.34310100000005,"passed":5,"total":5,"percent":100.0}},"passed":5,"total":5,"percent":100.0},"sec_cm_mem_integrity":{"tests":{"sram_ctrl_passthru_mem_tl_intg_err":{"max_time":31.0,"sim_time":2231.530949,"passed":20,"total":20,"percent":100.0}},"passed":20,"total":20,"percent":100.0},"sec_cm_mem_readback":{"tests":{"sram_ctrl_readback_err":{"max_time":2.0,"sim_time":40.737328999999995,"passed":5,"total":5,"percent":100.0}},"passed":5,"total":5,"percent":100.0},"sec_cm_mem_scramble":{"tests":{"sram_ctrl_smoke":{"max_time":2.0,"sim_time":84.342756,"passed":5,"total":5,"percent":100.0}},"passed":5,"total":5,"percent":100.0},"sec_cm_addr_scramble":{"tests":{"sram_ctrl_smoke":{"max_time":2.0,"sim_time":84.342756,"passed":5,"total":5,"percent":100.0}},"passed":5,"total":5,"percent":100.0},"sec_cm_instr_bus_lc_gated":{"tests":{"sram_ctrl_executable":{"max_time":17.0,"sim_time":1807.439099,"passed":5,"total":5,"percent":100.0}},"passed":5,"total":5,"percent":100.0},"sec_cm_ram_tl_lc_gate_fsm_sparse":{"tests":{"sram_ctrl_sec_cm":{"max_time":5.0,"sim_time":1153.472045,"passed":5,"total":5,"percent":100.0}},"passed":5,"total":5,"percent":100.0},"sec_cm_key_global_esc":{"tests":{"sram_ctrl_lc_escalation":{"max_time":7.0,"sim_time":2213.4673199999997,"passed":5,"total":5,"percent":100.0}},"passed":5,"total":5,"percent":100.0},"sec_cm_key_local_esc":{"tests":{"sram_ctrl_sec_cm":{"max_time":5.0,"sim_time":1153.472045,"passed":5,"total":5,"percent":100.0}},"passed":5,"total":5,"percent":100.0},"sec_cm_init_ctr_redun":{"tests":{"sram_ctrl_sec_cm":{"max_time":5.0,"sim_time":1153.472045,"passed":5,"total":5,"percent":100.0}},"passed":5,"total":5,"percent":100.0},"sec_cm_scramble_key_sideload":{"tests":{"sram_ctrl_smoke":{"max_time":2.0,"sim_time":84.342756,"passed":5,"total":5,"percent":100.0}},"passed":5,"total":5,"percent":100.0},"sec_cm_tlul_fifo_ctr_redun":{"tests":{"sram_ctrl_sec_cm":{"max_time":5.0,"sim_time":1153.472045,"passed":5,"total":5,"percent":100.0}},"passed":5,"total":5,"percent":100.0}},"passed":95,"total":95,"percent":100.0},"V3":{"testpoints":{"stress_all_with_rand_reset":{"tests":{"sram_ctrl_stress_all_with_rand_reset":{"max_time":36.0,"sim_time":1037.782616,"passed":5,"total":5,"percent":100.0}},"passed":5,"total":5,"percent":100.0}},"passed":5,"total":5,"percent":100.0}},"coverage":{"code":{"block":94.01,"line_statement":95.19,"branch":89.83,"condition_expression":null,"toggle":82.28,"fsm":66.67},"assertion":96.43,"functional":96.8},"cov_report_page":"/nightly/current_run/scratch/master/sram_ctrl_ret-sim-xcelium/cov_report/index.html","failed_jobs":{"buckets":{"UVM_ERROR (csr_utils_pkg.sv:458) [csr_utils_pkg::csr_rd_check.isolation_fork.unmblk1] Check failed obs == exp (* [*] vs * [*]) Regname: sram_ctrl_regs_reg_block.scr_key_rotated reset value: *":[{"name":"sram_ctrl_csr_mem_rw_with_rand_reset","qual_name":"4.sram_ctrl_csr_mem_rw_with_rand_reset.460850938484105116293439745332779949342897450995224418891817693479867510854","seed":460850938484105116293439745332779949342897450995224418891817693479867510854,"line":88,"log_path":"/nightly/current_run/scratch/master/sram_ctrl_ret-sim-xcelium/4.sram_ctrl_csr_mem_rw_with_rand_reset/latest/run.log","log_context":["UVM_ERROR @  99262754 ps: (csr_utils_pkg.sv:458) [csr_utils_pkg::csr_rd_check.isolation_fork.unmblk1] Check failed obs == exp (3 [0x3] vs 9 [0x9]) Regname: sram_ctrl_regs_reg_block.scr_key_rotated reset value: 0x9 \n","UVM_INFO @  99262754 ps: (uvm_report_catcher.svh:705) [UVM/REPORT/CATCHER] \n","--- UVM Report catcher Summary ---\n","\n","\n"]}],"UVM_ERROR (csr_utils_pkg.sv:458) [csr_utils_pkg::csr_rd_check.isolation_fork.unmblk1] Check failed obs == exp (* [*] vs * [*]) Regname: sram_ctrl_regs_reg_block.scr_key_rotated.success reset value: *":[{"name":"sram_ctrl_csr_mem_rw_with_rand_reset","qual_name":"5.sram_ctrl_csr_mem_rw_with_rand_reset.59482162719439185800970534861212313542803779625507703383509004595657549447347","seed":59482162719439185800970534861212313542803779625507703383509004595657549447347,"line":88,"log_path":"/nightly/current_run/scratch/master/sram_ctrl_ret-sim-xcelium/5.sram_ctrl_csr_mem_rw_with_rand_reset/latest/run.log","log_context":["UVM_ERROR @  24497326 ps: (csr_utils_pkg.sv:458) [csr_utils_pkg::csr_rd_check.isolation_fork.unmblk1] Check failed obs == exp (0 [0x0] vs 9 [0x9]) Regname: sram_ctrl_regs_reg_block.scr_key_rotated.success reset value: 0x9 \n","UVM_INFO @  24497326 ps: (uvm_report_catcher.svh:705) [UVM/REPORT/CATCHER] \n","--- UVM Report catcher Summary ---\n","\n","\n"]},{"name":"sram_ctrl_csr_mem_rw_with_rand_reset","qual_name":"7.sram_ctrl_csr_mem_rw_with_rand_reset.79415982525233301603698196757692663776242193439259476578312070941336949585484","seed":79415982525233301603698196757692663776242193439259476578312070941336949585484,"line":88,"log_path":"/nightly/current_run/scratch/master/sram_ctrl_ret-sim-xcelium/7.sram_ctrl_csr_mem_rw_with_rand_reset/latest/run.log","log_context":["UVM_ERROR @  98008995 ps: (csr_utils_pkg.sv:458) [csr_utils_pkg::csr_rd_check.isolation_fork.unmblk1] Check failed obs == exp (5 [0x5] vs 9 [0x9]) Regname: sram_ctrl_regs_reg_block.scr_key_rotated.success reset value: 0x9 \n","UVM_INFO @  98008995 ps: (uvm_report_catcher.svh:705) [UVM/REPORT/CATCHER] \n","--- UVM Report catcher Summary ---\n","\n","\n"]}],"UVM_ERROR (csr_utils_pkg.sv:458) [csr_utils_pkg::csr_rd_check.isolation_fork.unmblk1] Check failed obs == exp (* [*] vs * [*]) Regname: sram_ctrl_regs_reg_block.status reset value: *":[{"name":"sram_ctrl_csr_mem_rw_with_rand_reset","qual_name":"6.sram_ctrl_csr_mem_rw_with_rand_reset.103754726778793361910975748871377310175728480668521028958992355969266703024228","seed":103754726778793361910975748871377310175728480668521028958992355969266703024228,"line":88,"log_path":"/nightly/current_run/scratch/master/sram_ctrl_ret-sim-xcelium/6.sram_ctrl_csr_mem_rw_with_rand_reset/latest/run.log","log_context":["UVM_ERROR @  90687716 ps: (csr_utils_pkg.sv:458) [csr_utils_pkg::csr_rd_check.isolation_fork.unmblk1] Check failed obs == exp (56 [0x38] vs 0 [0x0]) Regname: sram_ctrl_regs_reg_block.status reset value: 0x0 \n","UVM_INFO @  90687716 ps: (uvm_report_catcher.svh:705) [UVM/REPORT/CATCHER] \n","--- UVM Report catcher Summary ---\n","\n","\n"]},{"name":"sram_ctrl_csr_mem_rw_with_rand_reset","qual_name":"19.sram_ctrl_csr_mem_rw_with_rand_reset.46471439497226385172111335525002847297199856540241531747528606487679373794329","seed":46471439497226385172111335525002847297199856540241531747528606487679373794329,"line":88,"log_path":"/nightly/current_run/scratch/master/sram_ctrl_ret-sim-xcelium/19.sram_ctrl_csr_mem_rw_with_rand_reset/latest/run.log","log_context":["UVM_ERROR @  94627174 ps: (csr_utils_pkg.sv:458) [csr_utils_pkg::csr_rd_check.isolation_fork.unmblk1] Check failed obs == exp (40 [0x28] vs 0 [0x0]) Regname: sram_ctrl_regs_reg_block.status reset value: 0x0 \n","UVM_INFO @  94627174 ps: (uvm_report_catcher.svh:705) [UVM/REPORT/CATCHER] \n","--- UVM Report catcher Summary ---\n","\n","\n"]}]}},"passed":285,"total":290,"percent":98.27586206896552}