{"block":{"name":"i2c","variant":null,"commit":"16a992aba38040125bd103a9932d99c6a0951474","commit_short":"16a992a","branch":"master","url":"https://github.com/lowRISC/opentitan/tree/16a992aba38040125bd103a9932d99c6a0951474","revision_info":"GitHub Revision: [`16a992a`](https://github.com/lowrisc/opentitan/tree/16a992aba38040125bd103a9932d99c6a0951474)"},"tool":{"name":"xcelium","version":"unknown"},"timestamp":"2026-03-31T16:09:15Z","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":241.0,"sim_time":7809.124261,"passed":1,"total":1,"percent":100.0}},"passed":1,"total":1,"percent":100.0},"target_smoke":{"tests":{"i2c_target_smoke":{"max_time":8.0,"sim_time":1230.579962,"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":17.819614,"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":20.670161,"passed":1,"total":1,"percent":100.0}},"passed":1,"total":1,"percent":100.0},"csr_bit_bash":{"tests":{"i2c_csr_bit_bash":{"max_time":3.0,"sim_time":516.402563,"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":48.181966,"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":84.08409900000001,"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":20.670161,"passed":1,"total":1,"percent":100.0},"i2c_csr_aliasing":{"max_time":2.0,"sim_time":48.181966,"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":27.022475,"passed":0,"total":1,"percent":0.0}},"passed":0,"total":1,"percent":0.0},"host_stress_all":{"tests":{"i2c_host_stress_all":{"max_time":2.0,"sim_time":37.065313,"passed":0,"total":1,"percent":0.0}},"passed":0,"total":1,"percent":0.0},"host_maxperf":{"tests":{"i2c_host_perf":{"max_time":57.0,"sim_time":28443.828217,"passed":1,"total":1,"percent":100.0}},"passed":1,"total":1,"percent":100.0},"host_override":{"tests":{"i2c_host_override":{"max_time":1.0,"sim_time":44.298871,"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":1433.0,"sim_time":1989.3308279999999,"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":84.136869,"passed":1,"total":1,"percent":100.0},"i2c_host_fifo_fmt_empty":{"max_time":14.0,"sim_time":1343.142721,"passed":1,"total":1,"percent":100.0},"i2c_host_fifo_reset_rx":{"max_time":3.0,"sim_time":543.9476920000001,"passed":1,"total":1,"percent":100.0}},"passed":3,"total":3,"percent":100.0},"host_fifo_full":{"tests":{"i2c_host_fifo_full":{"max_time":786.0,"sim_time":7156.80254,"passed":1,"total":1,"percent":100.0}},"passed":1,"total":1,"percent":100.0},"host_timeout":{"tests":{"i2c_host_stretch_timeout":{"max_time":14.0,"sim_time":872.598767,"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":3.0,"sim_time":150.857598,"passed":1,"total":1,"percent":100.0}},"passed":1,"total":1,"percent":100.0},"target_glitch":{"tests":{"i2c_target_glitch":{"max_time":3.0,"sim_time":547.968055,"passed":0,"total":1,"percent":0.0}},"passed":0,"total":1,"percent":0.0},"target_stress_all":{"tests":{"i2c_target_stress_all":{"max_time":0.0,"sim_time":0.0,"passed":0,"total":1,"percent":0.0}},"passed":0,"total":1,"percent":0.0},"target_maxperf":{"tests":{"i2c_target_perf":{"max_time":6.0,"sim_time":1525.159452,"passed":1,"total":1,"percent":100.0}},"passed":1,"total":1,"percent":100.0},"target_fifo_empty":{"tests":{"i2c_target_stress_rd":{"max_time":18.0,"sim_time":1608.877361,"passed":1,"total":1,"percent":100.0},"i2c_target_intr_smoke":{"max_time":5.0,"sim_time":2845.382716,"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":1.0,"sim_time":407.182405,"passed":1,"total":1,"percent":100.0},"i2c_target_fifo_reset_tx":{"max_time":2.0,"sim_time":237.159,"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":18.0,"sim_time":1608.877361,"passed":1,"total":1,"percent":100.0},"i2c_target_intr_stress_wr":{"max_time":1746.0,"sim_time":13220.828676000001,"passed":1,"total":1,"percent":100.0}},"passed":2,"total":3,"percent":66.66666666666667},"target_timeout":{"tests":{"i2c_target_timeout":{"max_time":6.0,"sim_time":4102.748002,"passed":1,"total":1,"percent":100.0}},"passed":1,"total":1,"percent":100.0},"target_clock_stretch":{"tests":{"i2c_target_stretch":{"max_time":0.0,"sim_time":0.0,"passed":0,"total":1,"percent":0.0}},"passed":0,"total":1,"percent":0.0},"bad_address":{"tests":{"i2c_target_bad_addr":{"max_time":5.0,"sim_time":852.474042,"passed":1,"total":1,"percent":100.0}},"passed":1,"total":1,"percent":100.0},"target_mode_glitch":{"tests":{"i2c_target_hrst":{"max_time":3.0,"sim_time":707.943151,"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":3.0,"sim_time":1974.0250409999999,"passed":1,"total":1,"percent":100.0},"i2c_target_fifo_watermarks_tx":{"max_time":1.0,"sim_time":11.017616,"passed":0,"total":1,"percent":0.0}},"passed":1,"total":2,"percent":50.0},"host_mode_config_perf":{"tests":{"i2c_host_perf":{"max_time":57.0,"sim_time":28443.828217,"passed":1,"total":1,"percent":100.0},"i2c_host_perf_precise":{"max_time":2560.0,"sim_time":6058.789031,"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":14.0,"sim_time":872.598767,"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":2.0,"sim_time":109.99846400000001,"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":5.0,"sim_time":1095.414262,"passed":1,"total":1,"percent":100.0},"i2c_target_nack_acqfull_addr":{"max_time":4.0,"sim_time":498.623846,"passed":1,"total":1,"percent":100.0},"i2c_target_nack_txstretch":{"max_time":3.0,"sim_time":244.021774,"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":8.0,"sim_time":2297.506391,"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":420.448902,"passed":1,"total":1,"percent":100.0}},"passed":1,"total":1,"percent":100.0},"alert_test":{"tests":{"i2c_alert_test":{"max_time":1.0,"sim_time":44.793869,"passed":1,"total":1,"percent":100.0}},"passed":1,"total":1,"percent":100.0},"intr_test":{"tests":{"i2c_intr_test":{"max_time":1.0,"sim_time":61.224866999999996,"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":128.707415,"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":128.707415,"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":17.819614,"passed":1,"total":1,"percent":100.0},"i2c_csr_rw":{"max_time":1.0,"sim_time":20.670161,"passed":1,"total":1,"percent":100.0},"i2c_csr_aliasing":{"max_time":2.0,"sim_time":48.181966,"passed":1,"total":1,"percent":100.0},"i2c_same_csr_outstanding":{"max_time":2.0,"sim_time":47.73008,"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":17.819614,"passed":1,"total":1,"percent":100.0},"i2c_csr_rw":{"max_time":1.0,"sim_time":20.670161,"passed":1,"total":1,"percent":100.0},"i2c_csr_aliasing":{"max_time":2.0,"sim_time":48.181966,"passed":1,"total":1,"percent":100.0},"i2c_same_csr_outstanding":{"max_time":2.0,"sim_time":47.73008,"passed":1,"total":1,"percent":100.0}},"passed":4,"total":4,"percent":100.0}},"passed":33,"total":41,"percent":80.48780487804878},"V2S":{"testpoints":{"tl_intg_err":{"tests":{"i2c_tl_intg_err":{"max_time":2.0,"sim_time":589.092299,"passed":1,"total":1,"percent":100.0},"i2c_sec_cm":{"max_time":2.0,"sim_time":110.477233,"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":589.092299,"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":7.0,"sim_time":1759.930741,"passed":0,"total":1,"percent":0.0}},"passed":0,"total":1,"percent":0.0},"target_error_intr":{"tests":{"i2c_target_unexp_stop":{"max_time":3.0,"sim_time":346.954677,"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":1022.1571140000001,"passed":0,"total":1,"percent":0.0}},"passed":0,"total":1,"percent":0.0}},"passed":0,"total":3,"percent":0.0}},"coverage":{"code":{"block":96.3,"line_statement":95.73,"branch":93.4,"condition_expression":null,"toggle":87.1,"fsm":84.17},"assertion":96.41,"functional":80.89},"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.101150971080828584056246027829200761667187575161266676671760738399146378630304","seed":101150971080828584056246027829200761667187575161266676671760738399146378630304,"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_target_stress_wr","qual_name":"0.i2c_target_stress_wr.47481841331683518628684811192062972018169029337773830864630297814801414937052","seed":47481841331683518628684811192062972018169029337773830864630297814801414937052,"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_stretch","qual_name":"0.i2c_target_stretch.61750951075165092172720471771138113123467608434630742222791342842382047186164","seed":61750951075165092172720471771138113123467608434630742222791342842382047186164,"line":null,"log_path":"/nightly/current_run/scratch/master/i2c-sim-xcelium/0.i2c_target_stretch/latest/run.log","log_context":["Job timed out after 60 minutes"]},{"name":"i2c_target_stress_all","qual_name":"0.i2c_target_stress_all.110135442859497219140378025701719350663975863622814821371432061235140714752440","seed":110135442859497219140378025701719350663975863622814821371432061235140714752440,"line":null,"log_path":"/nightly/current_run/scratch/master/i2c-sim-xcelium/0.i2c_target_stress_all/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.6196621864439170946490240109676044764365488530025546048891840237149327992080","seed":6196621864439170946490240109676044764365488530025546048891840237149327992080,"line":92,"log_path":"/nightly/current_run/scratch/master/i2c-sim-xcelium/0.i2c_host_error_intr/latest/run.log","log_context":["UVM_ERROR @  27022475 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 @  27022475 ps: (uvm_report_catcher.svh:705) [UVM/REPORT/CATCHER] \n","--- UVM Report catcher Summary ---\n","\n","\n"]},{"name":"i2c_host_stress_all","qual_name":"0.i2c_host_stress_all.7407082923314220025543144443281222753653906610559285208271600603979780905811","seed":7407082923314220025543144443281222753653906610559285208271600603979780905811,"line":96,"log_path":"/nightly/current_run/scratch/master/i2c-sim-xcelium/0.i2c_host_stress_all/latest/run.log","log_context":["UVM_ERROR @  37065313 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 @  37065313 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.27276074426586359918326706520335144499673866333649576062081158920175326733923","seed":27276074426586359918326706520335144499673866333649576062081158920175326733923,"line":93,"log_path":"/nightly/current_run/scratch/master/i2c-sim-xcelium/0.i2c_target_glitch/latest/run.log","log_context":["UVM_ERROR @ 547968055 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 @ 547968055 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.40665729305702705400964359857035681107064122054046036781204029728603172957953","seed":40665729305702705400964359857035681107064122054046036781204029728603172957953,"line":87,"log_path":"/nightly/current_run/scratch/master/i2c-sim-xcelium/0.i2c_target_unexp_stop/latest/run.log","log_context":["UVM_ERROR @ 346954677 ps: (i2c_scoreboard.sv:682) [uvm_test_top.env.scoreboard] Check failed obs.data_q[i] == exp.data_q[i] (255 [0xff] vs 48 [0x30]) \n","UVM_INFO @ 346954677 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.11417958579417159223810063603784087101547764284370255262482142016444119649549","seed":11417958579417159223810063603784087101547764284370255262482142016444119649549,"line":125,"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 @ 1759930741 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 @ 1759930741 ps: (uvm_report_catcher.svh:705) [UVM/REPORT/CATCHER] \n","--- UVM Report catcher Summary ---\n","\n","\n"]},{"name":"i2c_target_stress_all_with_rand_reset","qual_name":"0.i2c_target_stress_all_with_rand_reset.95218222775190871462550614761719804156187905191313041444888739524354096684091","seed":95218222775190871462550614761719804156187905191313041444888739524354096684091,"line":95,"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 @ 1022157114 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 @ 1022157114 ps: (uvm_report_catcher.svh:705) [UVM/REPORT/CATCHER] \n","--- UVM Report catcher Summary ---\n","\n","\n"]}],"UVM_FATAL (i2c_base_vseq.sv:847) [i2c_target_fifo_watermarks_tx_vseq] Check failed (std::randomize(num_data_total) with {num_data_total inside {[cfg.min_data : cfg.max_data]};}) Randomization failed!":[{"name":"i2c_target_fifo_watermarks_tx","qual_name":"0.i2c_target_fifo_watermarks_tx.76635969677817597929650962115503379775636509185509760868166308370358777273885","seed":76635969677817597929650962115503379775636509185509760868166308370358777273885,"line":110,"log_path":"/nightly/current_run/scratch/master/i2c-sim-xcelium/0.i2c_target_fifo_watermarks_tx/latest/run.log","log_context":["UVM_FATAL @  11017616 ps: (i2c_base_vseq.sv:847) [uvm_test_top.env.virtual_sequencer.i2c_target_fifo_watermarks_tx_vseq] Check failed (std::randomize(num_data_total) with {num_data_total inside {[cfg.min_data : cfg.max_data]};}) Randomization failed! \n","UVM_INFO @  11017616 ps: (uvm_report_catcher.svh:705) [UVM/REPORT/CATCHER] \n","--- UVM Report catcher Summary ---\n","\n","\n"]}]}},"passed":39,"total":50,"percent":78.0}