{"block":{"name":"i2c","variant":null,"commit":"ae672c65f22255851c1b45fde094ba1961b68c74","commit_short":"ae672c6","branch":"master","url":"https://github.com/lowRISC/opentitan/tree/ae672c65f22255851c1b45fde094ba1961b68c74","revision_info":"GitHub Revision: [`ae672c6`](https://github.com/lowrisc/opentitan/tree/ae672c65f22255851c1b45fde094ba1961b68c74)"},"tool":{"name":"xcelium","version":"unknown"},"timestamp":"2026-04-07T16:08:41Z","build_seed":null,"testplan_ref":"https://opentitan.org/book/hw/ip/i2c/data/i2c_testplan.html","stages":{"V1":{"testpoints":{"host_smoke":{"tests":{"i2c_host_smoke":{"max_time":20.0,"sim_time":2389.437583,"passed":1,"total":1,"percent":100.0}},"passed":1,"total":1,"percent":100.0},"target_smoke":{"tests":{"i2c_target_smoke":{"max_time":20.0,"sim_time":1243.1208179999999,"passed":1,"total":1,"percent":100.0}},"passed":1,"total":1,"percent":100.0},"csr_hw_reset":{"tests":{"i2c_csr_hw_reset":{"max_time":1.0,"sim_time":22.722903,"passed":1,"total":1,"percent":100.0}},"passed":1,"total":1,"percent":100.0},"csr_rw":{"tests":{"i2c_csr_rw":{"max_time":1.0,"sim_time":47.022344,"passed":1,"total":1,"percent":100.0}},"passed":1,"total":1,"percent":100.0},"csr_bit_bash":{"tests":{"i2c_csr_bit_bash":{"max_time":4.0,"sim_time":114.465772,"passed":1,"total":1,"percent":100.0}},"passed":1,"total":1,"percent":100.0},"csr_aliasing":{"tests":{"i2c_csr_aliasing":{"max_time":2.0,"sim_time":426.635186,"passed":1,"total":1,"percent":100.0}},"passed":1,"total":1,"percent":100.0},"csr_mem_rw_with_rand_reset":{"tests":{"i2c_csr_mem_rw_with_rand_reset":{"max_time":1.0,"sim_time":26.368439,"passed":1,"total":1,"percent":100.0}},"passed":1,"total":1,"percent":100.0},"regwen_csr_and_corresponding_lockable_csr":{"tests":{"i2c_csr_rw":{"max_time":1.0,"sim_time":47.022344,"passed":1,"total":1,"percent":100.0},"i2c_csr_aliasing":{"max_time":2.0,"sim_time":426.635186,"passed":1,"total":1,"percent":100.0}},"passed":2,"total":2,"percent":100.0}},"passed":7,"total":7,"percent":100.0},"V2":{"testpoints":{"host_error_intr":{"tests":{"i2c_host_error_intr":{"max_time":1.0,"sim_time":57.138756,"passed":0,"total":1,"percent":0.0}},"passed":0,"total":1,"percent":0.0},"host_stress_all":{"tests":{"i2c_host_stress_all":{"max_time":0.0,"sim_time":0.0,"passed":0,"total":1,"percent":0.0}},"passed":0,"total":1,"percent":0.0},"host_maxperf":{"tests":{"i2c_host_perf":{"max_time":811.0,"sim_time":5478.501642,"passed":1,"total":1,"percent":100.0}},"passed":1,"total":1,"percent":100.0},"host_override":{"tests":{"i2c_host_override":{"max_time":2.0,"sim_time":18.838485000000002,"passed":1,"total":1,"percent":100.0}},"passed":1,"total":1,"percent":100.0},"host_fifo_watermark":{"tests":{"i2c_host_fifo_watermark":{"max_time":0.0,"sim_time":0.0,"passed":0,"total":1,"percent":0.0}},"passed":0,"total":1,"percent":0.0},"host_fifo_overflow":{"tests":{"i2c_host_fifo_overflow":{"max_time":257.0,"sim_time":5467.736173,"passed":1,"total":1,"percent":100.0}},"passed":1,"total":1,"percent":100.0},"host_fifo_reset":{"tests":{"i2c_host_fifo_reset_fmt":{"max_time":2.0,"sim_time":104.918228,"passed":1,"total":1,"percent":100.0},"i2c_host_fifo_fmt_empty":{"max_time":29.0,"sim_time":1036.300602,"passed":1,"total":1,"percent":100.0},"i2c_host_fifo_reset_rx":{"max_time":4.0,"sim_time":732.060189,"passed":1,"total":1,"percent":100.0}},"passed":3,"total":3,"percent":100.0},"host_fifo_full":{"tests":{"i2c_host_fifo_full":{"max_time":39.0,"sim_time":3381.639599,"passed":1,"total":1,"percent":100.0}},"passed":1,"total":1,"percent":100.0},"host_timeout":{"tests":{"i2c_host_stretch_timeout":{"max_time":15.0,"sim_time":2786.744807,"passed":1,"total":1,"percent":100.0}},"passed":1,"total":1,"percent":100.0},"i2c_host_mode_toggle":{"tests":{"i2c_host_mode_toggle":{"max_time":2.0,"sim_time":352.01587800000004,"passed":0,"total":1,"percent":0.0}},"passed":0,"total":1,"percent":0.0},"target_glitch":{"tests":{"i2c_target_glitch":{"max_time":4.0,"sim_time":4372.087001,"passed":0,"total":1,"percent":0.0}},"passed":0,"total":1,"percent":0.0},"target_stress_all":{"tests":{"i2c_target_stress_all":{"max_time":3544.0,"sim_time":122876.177787,"passed":1,"total":1,"percent":100.0}},"passed":1,"total":1,"percent":100.0},"target_maxperf":{"tests":{"i2c_target_perf":{"max_time":4.0,"sim_time":563.107766,"passed":1,"total":1,"percent":100.0}},"passed":1,"total":1,"percent":100.0},"target_fifo_empty":{"tests":{"i2c_target_stress_rd":{"max_time":11.0,"sim_time":378.814937,"passed":1,"total":1,"percent":100.0},"i2c_target_intr_smoke":{"max_time":4.0,"sim_time":6740.305555,"passed":1,"total":1,"percent":100.0}},"passed":2,"total":2,"percent":100.0},"target_fifo_reset":{"tests":{"i2c_target_fifo_reset_acq":{"max_time":2.0,"sim_time":632.770818,"passed":1,"total":1,"percent":100.0},"i2c_target_fifo_reset_tx":{"max_time":2.0,"sim_time":766.6381409999999,"passed":1,"total":1,"percent":100.0}},"passed":2,"total":2,"percent":100.0},"target_fifo_full":{"tests":{"i2c_target_stress_wr":{"max_time":0.0,"sim_time":0.0,"passed":0,"total":1,"percent":0.0},"i2c_target_stress_rd":{"max_time":11.0,"sim_time":378.814937,"passed":1,"total":1,"percent":100.0},"i2c_target_intr_stress_wr":{"max_time":0.0,"sim_time":0.0,"passed":0,"total":1,"percent":0.0}},"passed":1,"total":3,"percent":33.333333333333336},"target_timeout":{"tests":{"i2c_target_timeout":{"max_time":8.0,"sim_time":4280.056504,"passed":1,"total":1,"percent":100.0}},"passed":1,"total":1,"percent":100.0},"target_clock_stretch":{"tests":{"i2c_target_stretch":{"max_time":45.0,"sim_time":1396.25975,"passed":1,"total":1,"percent":100.0}},"passed":1,"total":1,"percent":100.0},"bad_address":{"tests":{"i2c_target_bad_addr":{"max_time":5.0,"sim_time":2127.651345,"passed":1,"total":1,"percent":100.0}},"passed":1,"total":1,"percent":100.0},"target_mode_glitch":{"tests":{"i2c_target_hrst":{"max_time":2.0,"sim_time":3282.700588,"passed":1,"total":1,"percent":100.0}},"passed":1,"total":1,"percent":100.0},"target_fifo_watermark":{"tests":{"i2c_target_fifo_watermarks_acq":{"max_time":4.0,"sim_time":2579.998025,"passed":1,"total":1,"percent":100.0},"i2c_target_fifo_watermarks_tx":{"max_time":2.0,"sim_time":663.649553,"passed":1,"total":1,"percent":100.0}},"passed":2,"total":2,"percent":100.0},"host_mode_config_perf":{"tests":{"i2c_host_perf":{"max_time":811.0,"sim_time":5478.501642,"passed":1,"total":1,"percent":100.0},"i2c_host_perf_precise":{"max_time":2.0,"sim_time":41.576812,"passed":1,"total":1,"percent":100.0}},"passed":2,"total":2,"percent":100.0},"host_mode_clock_stretching":{"tests":{"i2c_host_stretch_timeout":{"max_time":15.0,"sim_time":2786.744807,"passed":1,"total":1,"percent":100.0}},"passed":1,"total":1,"percent":100.0},"target_mode_tx_stretch_ctrl":{"tests":{"i2c_target_tx_stretch_ctrl":{"max_time":3.0,"sim_time":123.155591,"passed":1,"total":1,"percent":100.0}},"passed":1,"total":1,"percent":100.0},"target_mode_nack_generation":{"tests":{"i2c_target_nack_acqfull":{"max_time":3.0,"sim_time":2065.916769,"passed":1,"total":1,"percent":100.0},"i2c_target_nack_acqfull_addr":{"max_time":3.0,"sim_time":491.037597,"passed":1,"total":1,"percent":100.0},"i2c_target_nack_txstretch":{"max_time":3.0,"sim_time":466.645558,"passed":1,"total":1,"percent":100.0}},"passed":3,"total":3,"percent":100.0},"host_mode_halt_on_nak":{"tests":{"i2c_host_may_nack":{"max_time":14.0,"sim_time":866.693998,"passed":1,"total":1,"percent":100.0}},"passed":1,"total":1,"percent":100.0},"target_mode_smbus_maxlen":{"tests":{"i2c_target_smbus_maxlen":{"max_time":3.0,"sim_time":2121.1640610000004,"passed":1,"total":1,"percent":100.0}},"passed":1,"total":1,"percent":100.0},"alert_test":{"tests":{"i2c_alert_test":{"max_time":2.0,"sim_time":17.643231,"passed":1,"total":1,"percent":100.0}},"passed":1,"total":1,"percent":100.0},"intr_test":{"tests":{"i2c_intr_test":{"max_time":2.0,"sim_time":28.261027,"passed":1,"total":1,"percent":100.0}},"passed":1,"total":1,"percent":100.0},"tl_d_oob_addr_access":{"tests":{"i2c_tl_errors":{"max_time":2.0,"sim_time":45.839605999999996,"passed":1,"total":1,"percent":100.0}},"passed":1,"total":1,"percent":100.0},"tl_d_illegal_access":{"tests":{"i2c_tl_errors":{"max_time":2.0,"sim_time":45.839605999999996,"passed":1,"total":1,"percent":100.0}},"passed":1,"total":1,"percent":100.0},"tl_d_outstanding_access":{"tests":{"i2c_csr_hw_reset":{"max_time":1.0,"sim_time":22.722903,"passed":1,"total":1,"percent":100.0},"i2c_csr_rw":{"max_time":1.0,"sim_time":47.022344,"passed":1,"total":1,"percent":100.0},"i2c_csr_aliasing":{"max_time":2.0,"sim_time":426.635186,"passed":1,"total":1,"percent":100.0},"i2c_same_csr_outstanding":{"max_time":2.0,"sim_time":34.883545,"passed":1,"total":1,"percent":100.0}},"passed":4,"total":4,"percent":100.0},"tl_d_partial_access":{"tests":{"i2c_csr_hw_reset":{"max_time":1.0,"sim_time":22.722903,"passed":1,"total":1,"percent":100.0},"i2c_csr_rw":{"max_time":1.0,"sim_time":47.022344,"passed":1,"total":1,"percent":100.0},"i2c_csr_aliasing":{"max_time":2.0,"sim_time":426.635186,"passed":1,"total":1,"percent":100.0},"i2c_same_csr_outstanding":{"max_time":2.0,"sim_time":34.883545,"passed":1,"total":1,"percent":100.0}},"passed":4,"total":4,"percent":100.0}},"passed":34,"total":41,"percent":82.92682926829268},"V2S":{"testpoints":{"tl_intg_err":{"tests":{"i2c_sec_cm":{"max_time":2.0,"sim_time":165.740422,"passed":1,"total":1,"percent":100.0},"i2c_tl_intg_err":{"max_time":2.0,"sim_time":312.26456800000005,"passed":1,"total":1,"percent":100.0}},"passed":2,"total":2,"percent":100.0},"sec_cm_bus_integrity":{"tests":{"i2c_tl_intg_err":{"max_time":2.0,"sim_time":312.26456800000005,"passed":1,"total":1,"percent":100.0}},"passed":1,"total":1,"percent":100.0}},"passed":2,"total":2,"percent":100.0},"V3":{"testpoints":{"host_stress_all_with_rand_reset":{"tests":{"i2c_host_stress_all_with_rand_reset":{"max_time":16.0,"sim_time":2127.350576,"passed":0,"total":1,"percent":0.0}},"passed":0,"total":1,"percent":0.0},"target_error_intr":{"tests":{"i2c_target_unexp_stop":{"max_time":2.0,"sim_time":15.943859,"passed":0,"total":1,"percent":0.0}},"passed":0,"total":1,"percent":0.0},"target_stress_all_with_rand_reset":{"tests":{"i2c_target_stress_all_with_rand_reset":{"max_time":9.0,"sim_time":556.6228930000001,"passed":0,"total":1,"percent":0.0}},"passed":0,"total":1,"percent":0.0}},"passed":0,"total":3,"percent":0.0}},"coverage":{"code":{"block":95.93,"line_statement":95.26,"branch":92.69,"condition_expression":null,"toggle":86.9,"fsm":82.01},"assertion":96.19,"functional":80.07},"cov_report_page":"/nightly/current_run/scratch/master/i2c-sim-xcelium/cov_report/index.html","failed_jobs":{"buckets":{"Job timed out after * minutes":[{"name":"i2c_host_fifo_watermark","qual_name":"0.i2c_host_fifo_watermark.43176848170215361774821065614075603881746012265590877497152097021765689874785","seed":43176848170215361774821065614075603881746012265590877497152097021765689874785,"line":null,"log_path":"/nightly/current_run/scratch/master/i2c-sim-xcelium/0.i2c_host_fifo_watermark/latest/run.log","log_context":["Job timed out after 60 minutes"]},{"name":"i2c_host_stress_all","qual_name":"0.i2c_host_stress_all.18348761288243241764991081213600169470998823112438361933434985772395554158399","seed":18348761288243241764991081213600169470998823112438361933434985772395554158399,"line":null,"log_path":"/nightly/current_run/scratch/master/i2c-sim-xcelium/0.i2c_host_stress_all/latest/run.log","log_context":["Job timed out after 60 minutes"]},{"name":"i2c_target_stress_wr","qual_name":"0.i2c_target_stress_wr.103774063967334201117230359036805204118038124286764834760696202842304096559760","seed":103774063967334201117230359036805204118038124286764834760696202842304096559760,"line":null,"log_path":"/nightly/current_run/scratch/master/i2c-sim-xcelium/0.i2c_target_stress_wr/latest/run.log","log_context":["Job timed out after 60 minutes"]},{"name":"i2c_target_intr_stress_wr","qual_name":"0.i2c_target_intr_stress_wr.56135153292949945757567979172925519888610466237006283337411889104963595543246","seed":56135153292949945757567979172925519888610466237006283337411889104963595543246,"line":null,"log_path":"/nightly/current_run/scratch/master/i2c-sim-xcelium/0.i2c_target_intr_stress_wr/latest/run.log","log_context":["Job timed out after 60 minutes"]}],"UVM_ERROR sequencer [sequencer] Get_next_item called twice without item_done or get in between":[{"name":"i2c_host_error_intr","qual_name":"0.i2c_host_error_intr.13369660099970454663005004466229423198570275462963027947691833249508391695718","seed":13369660099970454663005004466229423198570275462963027947691833249508391695718,"line":92,"log_path":"/nightly/current_run/scratch/master/i2c-sim-xcelium/0.i2c_host_error_intr/latest/run.log","log_context":["UVM_ERROR @  57138756 ps: uvm_test_top.env.m_i2c_agent.sequencer [uvm_test_top.env.m_i2c_agent.sequencer] Get_next_item called twice without item_done or get in between\n","UVM_INFO @  57138756 ps: (uvm_report_catcher.svh:705) [UVM/REPORT/CATCHER] \n","--- UVM Report catcher Summary ---\n","\n","\n"]}],"UVM_ERROR sequencer [sequencer] get_next_item/try_next_item called twice without item_done or get in between":[{"name":"i2c_target_glitch","qual_name":"0.i2c_target_glitch.88062050232534745056294125173663307903055463674078566110576181843119930516911","seed":88062050232534745056294125173663307903055463674078566110576181843119930516911,"line":93,"log_path":"/nightly/current_run/scratch/master/i2c-sim-xcelium/0.i2c_target_glitch/latest/run.log","log_context":["UVM_ERROR @ 4372087001 ps: uvm_test_top.env.m_i2c_agent.sequencer [uvm_test_top.env.m_i2c_agent.sequencer] get_next_item/try_next_item called twice without item_done or get in between\n","UVM_INFO @ 4372087001 ps: (uvm_report_catcher.svh:705) [UVM/REPORT/CATCHER] \n","--- UVM Report catcher Summary ---\n","\n","\n"]}],"UVM_ERROR (i2c_scoreboard.sv:682) [scoreboard] Check failed obs.data_q[i] == exp.data_q[i] (* [*] vs * [*])":[{"name":"i2c_target_unexp_stop","qual_name":"0.i2c_target_unexp_stop.112844907329104927344478858321482974859901251863206519584614508933348683978741","seed":112844907329104927344478858321482974859901251863206519584614508933348683978741,"line":87,"log_path":"/nightly/current_run/scratch/master/i2c-sim-xcelium/0.i2c_target_unexp_stop/latest/run.log","log_context":["UVM_ERROR @  15943859 ps: (i2c_scoreboard.sv:682) [uvm_test_top.env.scoreboard] Check failed obs.data_q[i] == exp.data_q[i] (255 [0xff] vs 161 [0xa1]) \n","UVM_INFO @  15943859 ps: (uvm_report_catcher.svh:705) [UVM/REPORT/CATCHER] \n","--- UVM Report catcher Summary ---\n","\n","\n"]}],"UVM_ERROR (cip_base_vseq.sv:1237) [i2c_common_vseq] Check failed (!has_outstanding_access()) Waited * cycles to issue a reset with no outstanding accesses.":[{"name":"i2c_host_stress_all_with_rand_reset","qual_name":"0.i2c_host_stress_all_with_rand_reset.109878108465775455864505070895694068694128471178639800806841261673650757258830","seed":109878108465775455864505070895694068694128471178639800806841261673650757258830,"line":108,"log_path":"/nightly/current_run/scratch/master/i2c-sim-xcelium/0.i2c_host_stress_all_with_rand_reset/latest/run.log","log_context":["UVM_ERROR @ 2127350576 ps: (cip_base_vseq.sv:1237) [uvm_test_top.env.virtual_sequencer.i2c_common_vseq] Check failed (!has_outstanding_access()) Waited 10000 cycles to issue a reset with no outstanding accesses. \n","UVM_INFO @ 2127350576 ps: (uvm_report_catcher.svh:705) [UVM/REPORT/CATCHER] \n","--- UVM Report catcher Summary ---\n","\n","\n"]}],"UVM_ERROR (cip_base_vseq.sv:1150) [i2c_common_vseq] Check failed (cfg.can_reset_with_csr_accesses || !has_outstanding_access()) Trying to trigger a reset with outstanding CSR items.":[{"name":"i2c_target_stress_all_with_rand_reset","qual_name":"0.i2c_target_stress_all_with_rand_reset.40228664182638492943696500577578742220102838599986061040023073414521907969421","seed":40228664182638492943696500577578742220102838599986061040023073414521907969421,"line":94,"log_path":"/nightly/current_run/scratch/master/i2c-sim-xcelium/0.i2c_target_stress_all_with_rand_reset/latest/run.log","log_context":["UVM_ERROR @ 556622893 ps: (cip_base_vseq.sv:1150) [uvm_test_top.env.virtual_sequencer.i2c_common_vseq] Check failed (cfg.can_reset_with_csr_accesses || !has_outstanding_access()) Trying to trigger a reset with outstanding CSR items. \n","UVM_INFO @ 556622893 ps: (uvm_report_catcher.svh:705) [UVM/REPORT/CATCHER] \n","--- UVM Report catcher Summary ---\n","\n","\n"]}],"UVM_ERROR (i2c_scoreboard.sv:716) [scoreboard] controller_mode_rd_obs_fifo item uncompared:":[{"name":"i2c_host_mode_toggle","qual_name":"0.i2c_host_mode_toggle.111843509358649262606180302260630003715200726821823881139420779285298059621962","seed":111843509358649262606180302260630003715200726821823881139420779285298059621962,"line":94,"log_path":"/nightly/current_run/scratch/master/i2c-sim-xcelium/0.i2c_host_mode_toggle/latest/run.log","log_context":["UVM_ERROR @ 352015878 ps: (i2c_scoreboard.sv:716) [uvm_test_top.env.scoreboard] controller_mode_rd_obs_fifo item uncompared:\n","----------------------------------------------------\n","Name            Type                Size  Value     \n","----------------------------------------------------\n","mon_dut_item    i2c_item            -     @16494    \n"]}]}},"passed":40,"total":50,"percent":80.0}