{"block":{"name":"i2c","variant":null,"commit":"023bd59e048508f665bb4de133a8c6976066ca13","commit_short":"023bd59","dirty":true,"branch":"master","url":"https://github.com/lowRISC/opentitan/tree/023bd59e048508f665bb4de133a8c6976066ca13","revision_info":"GitHub Revision: [`023bd59`](https://github.com/lowrisc/opentitan/tree/023bd59e048508f665bb4de133a8c6976066ca13)"},"tool":{"name":"xcelium","version":"unknown"},"timestamp":"2026-08-05T19:49:27Z","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":33.0,"sim_time":4204.243818,"passed":1,"total":1,"percent":100.0}},"passed":1,"total":1,"percent":100.0},"target_smoke":{"tests":{"i2c_target_smoke":{"max_time":14.0,"sim_time":742.7731,"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":37.989166,"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":50.652741,"passed":1,"total":1,"percent":100.0}},"passed":1,"total":1,"percent":100.0},"csr_bit_bash":{"tests":{"i2c_csr_bit_bash":{"max_time":5.0,"sim_time":165.419726,"passed":1,"total":1,"percent":100.0}},"passed":1,"total":1,"percent":100.0},"csr_aliasing":{"tests":{"i2c_csr_aliasing":{"max_time":3.0,"sim_time":119.50341499999999,"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":2.0,"sim_time":213.289958,"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":50.652741,"passed":1,"total":1,"percent":100.0},"i2c_csr_aliasing":{"max_time":3.0,"sim_time":119.50341499999999,"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":54.613199,"passed":0,"total":1,"percent":0.0}},"passed":0,"total":1,"percent":0.0},"host_stress_all":{"tests":{"i2c_host_stress_all":{"max_time":98.0,"sim_time":12498.127282,"passed":0,"total":1,"percent":0.0}},"passed":0,"total":1,"percent":0.0},"host_maxperf":{"tests":{"i2c_host_perf":{"max_time":3.0,"sim_time":356.61219900000003,"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":24.334426999999998,"passed":1,"total":1,"percent":100.0}},"passed":1,"total":1,"percent":100.0},"host_fifo_watermark":{"tests":{"i2c_host_fifo_watermark":{"max_time":3600.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":1059.0,"sim_time":2030.166975,"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":3.0,"sim_time":137.267335,"passed":1,"total":1,"percent":100.0},"i2c_host_fifo_fmt_empty":{"max_time":40.0,"sim_time":2010.745172,"passed":1,"total":1,"percent":100.0},"i2c_host_fifo_reset_rx":{"max_time":4.0,"sim_time":796.138563,"passed":1,"total":1,"percent":100.0}},"passed":3,"total":3,"percent":100.0},"host_fifo_full":{"tests":{"i2c_host_fifo_full":{"max_time":1050.0,"sim_time":6503.900218999999,"passed":1,"total":1,"percent":100.0}},"passed":1,"total":1,"percent":100.0},"host_timeout":{"tests":{"i2c_host_stretch_timeout":{"max_time":31.0,"sim_time":3533.991367,"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":87.060559,"passed":0,"total":1,"percent":0.0}},"passed":0,"total":1,"percent":0.0},"target_glitch":{"tests":{"i2c_target_glitch":{"max_time":3.0,"sim_time":399.96881199999996,"passed":0,"total":1,"percent":0.0}},"passed":0,"total":1,"percent":0.0},"target_stress_all":{"tests":{"i2c_target_stress_all":{"max_time":3600.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":1050.688527,"passed":1,"total":1,"percent":100.0}},"passed":1,"total":1,"percent":100.0},"target_fifo_empty":{"tests":{"i2c_target_stress_rd":{"max_time":13.0,"sim_time":868.741806,"passed":1,"total":1,"percent":100.0},"i2c_target_intr_smoke":{"max_time":7.0,"sim_time":4133.888081,"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":3.0,"sim_time":337.875737,"passed":1,"total":1,"percent":100.0},"i2c_target_fifo_reset_tx":{"max_time":1.0,"sim_time":298.622537,"passed":1,"total":1,"percent":100.0}},"passed":2,"total":2,"percent":100.0},"target_fifo_full":{"tests":{"i2c_target_stress_wr":{"max_time":26.0,"sim_time":12387.230379,"passed":1,"total":1,"percent":100.0},"i2c_target_stress_rd":{"max_time":13.0,"sim_time":868.741806,"passed":1,"total":1,"percent":100.0},"i2c_target_intr_stress_wr":{"max_time":6.0,"sim_time":3772.091278,"passed":1,"total":1,"percent":100.0}},"passed":3,"total":3,"percent":100.0},"target_timeout":{"tests":{"i2c_target_timeout":{"max_time":8.0,"sim_time":1243.951299,"passed":1,"total":1,"percent":100.0}},"passed":1,"total":1,"percent":100.0},"target_clock_stretch":{"tests":{"i2c_target_stretch":{"max_time":6.0,"sim_time":1769.818966,"passed":1,"total":1,"percent":100.0}},"passed":1,"total":1,"percent":100.0},"bad_address":{"tests":{"i2c_target_bad_addr":{"max_time":3.0,"sim_time":2096.664331,"passed":1,"total":1,"percent":100.0}},"passed":1,"total":1,"percent":100.0},"target_mode_glitch":{"tests":{"i2c_target_hrst":{"max_time":16.0,"sim_time":10201.170939,"passed":0,"total":1,"percent":0.0}},"passed":0,"total":1,"percent":0.0},"target_fifo_watermark":{"tests":{"i2c_target_fifo_watermarks_acq":{"max_time":2.0,"sim_time":252.849217,"passed":1,"total":1,"percent":100.0},"i2c_target_fifo_watermarks_tx":{"max_time":2.0,"sim_time":121.91975,"passed":1,"total":1,"percent":100.0}},"passed":2,"total":2,"percent":100.0},"host_mode_config_perf":{"tests":{"i2c_host_perf":{"max_time":3.0,"sim_time":356.61219900000003,"passed":1,"total":1,"percent":100.0},"i2c_host_perf_precise":{"max_time":4.0,"sim_time":75.421678,"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":31.0,"sim_time":3533.991367,"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":37.915492,"passed":0,"total":1,"percent":0.0}},"passed":0,"total":1,"percent":0.0},"target_mode_nack_generation":{"tests":{"i2c_target_nack_acqfull":{"max_time":4.0,"sim_time":3386.874868,"passed":1,"total":1,"percent":100.0},"i2c_target_nack_acqfull_addr":{"max_time":3.0,"sim_time":549.075359,"passed":1,"total":1,"percent":100.0},"i2c_target_nack_txstretch":{"max_time":3.0,"sim_time":451.58040600000004,"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":5.0,"sim_time":320.67530200000004,"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":4.0,"sim_time":2546.409545,"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":65.747623,"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":54.29067,"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":412.57547,"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":412.57547,"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":37.989166,"passed":1,"total":1,"percent":100.0},"i2c_csr_rw":{"max_time":1.0,"sim_time":50.652741,"passed":1,"total":1,"percent":100.0},"i2c_csr_aliasing":{"max_time":3.0,"sim_time":119.50341499999999,"passed":1,"total":1,"percent":100.0},"i2c_same_csr_outstanding":{"max_time":2.0,"sim_time":33.56622,"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":37.989166,"passed":1,"total":1,"percent":100.0},"i2c_csr_rw":{"max_time":1.0,"sim_time":50.652741,"passed":1,"total":1,"percent":100.0},"i2c_csr_aliasing":{"max_time":3.0,"sim_time":119.50341499999999,"passed":1,"total":1,"percent":100.0},"i2c_same_csr_outstanding":{"max_time":2.0,"sim_time":33.56622,"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":263.78423599999996,"passed":1,"total":1,"percent":100.0},"i2c_sec_cm":{"max_time":2.0,"sim_time":76.50583,"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":263.78423599999996,"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":4.0,"sim_time":432.15103999999997,"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":391.592357,"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":5.0,"sim_time":1205.294924,"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.14,"line_statement":95.62,"branch":93.09,"condition_expression":null,"toggle":72.68,"fsm":84.17},"assertion":97.46,"functional":80.23},"cov_report_page":"/nightly/current_run/scratch/master/i2c-sim-xcelium/cov_report/index.html","vplan_report_page":null,"vplan_coverage":null,"failed_jobs":{"buckets":{"Job timed out after * minutes":[{"name":"i2c_host_fifo_watermark","qual_name":"0.i2c_host_fifo_watermark.23251246600899707082187467544426549519661096703107114862362563200513429934644","seed":23251246600899707082187467544426549519661096703107114862362563200513429934644,"line":null,"log_path":"/nightly/current_run/scratch/master/i2c-sim-xcelium/0.i2c_host_fifo_watermark/latest/run.log","log_context":[]},{"name":"i2c_target_stress_all","qual_name":"0.i2c_target_stress_all.103036174452423230881038358696836859569884721036693300720178336438636325387614","seed":103036174452423230881038358696836859569884721036693300720178336438636325387614,"line":null,"log_path":"/nightly/current_run/scratch/master/i2c-sim-xcelium/0.i2c_target_stress_all/latest/run.log","log_context":[]}],"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.5478526463968422802791709311337265301250494058683340886345747241450307754299","seed":5478526463968422802791709311337265301250494058683340886345747241450307754299,"line":89,"log_path":"/nightly/current_run/scratch/master/i2c-sim-xcelium/0.i2c_host_error_intr/latest/run.log","log_context":["UVM_INFO @  54613199 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.53490740491772969372280597787754557847487244907571295135160312825764708354872","seed":53490740491772969372280597787754557847487244907571295135160312825764708354872,"line":102,"log_path":"/nightly/current_run/scratch/master/i2c-sim-xcelium/0.i2c_host_stress_all/latest/run.log","log_context":["UVM_INFO @ 12498127282 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.102578741235135628851879614626931277848438153090590666377225211736788623847148","seed":102578741235135628851879614626931277848438153090590666377225211736788623847148,"line":97,"log_path":"/nightly/current_run/scratch/master/i2c-sim-xcelium/0.i2c_target_stress_all_with_rand_reset/latest/run.log","log_context":["UVM_INFO @ 1205294924 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.39083507621503176389688358136694872797317645022253477741961373029215716074805","seed":39083507621503176389688358136694872797317645022253477741961373029215716074805,"line":93,"log_path":"/nightly/current_run/scratch/master/i2c-sim-xcelium/0.i2c_target_glitch/latest/run.log","log_context":["UVM_INFO @ 399968812 ps: (uvm_report_catcher.svh:705) [UVM/REPORT/CATCHER] \n","--- UVM Report catcher Summary ---\n","\n","\n"]}],"UVM_ERROR (i2c_base_vseq.sv:1474) [i2c_target_ack_stop_vseq] Check failed obs_intr_state[intr] == exp_val (* [*] vs * [*])":[{"name":"i2c_target_unexp_stop","qual_name":"0.i2c_target_unexp_stop.48473904456425711638332274302773243585894899729753785430368706938215385860537","seed":48473904456425711638332274302773243585894899729753785430368706938215385860537,"line":87,"log_path":"/nightly/current_run/scratch/master/i2c-sim-xcelium/0.i2c_target_unexp_stop/latest/run.log","log_context":["UVM_INFO @ 391592357 ps: (uvm_report_catcher.svh:705) [UVM/REPORT/CATCHER] \n","--- UVM Report catcher Summary ---\n","\n","\n"]}],"UVM_FATAL (i2c_target_hrst_vseq.sv:107) [target_hrst_vseq] wait timeout occurred!":[{"name":"i2c_target_hrst","qual_name":"0.i2c_target_hrst.101578352813353464249315252747970471876355621155472934958009593206225115315462","seed":101578352813353464249315252747970471876355621155472934958009593206225115315462,"line":88,"log_path":"/nightly/current_run/scratch/master/i2c-sim-xcelium/0.i2c_target_hrst/latest/run.log","log_context":["UVM_INFO @ 10201170939 ps: (uvm_report_catcher.svh:705) [UVM/REPORT/CATCHER] \n","--- UVM Report catcher Summary ---\n","\n","\n"]}],"UVM_ERROR (cip_base_vseq.sv:1287) [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.46227737466443845644485781467695785732561146902839984600990613396143190203239","seed":46227737466443845644485781467695785732561146902839984600990613396143190203239,"line":93,"log_path":"/nightly/current_run/scratch/master/i2c-sim-xcelium/0.i2c_host_stress_all_with_rand_reset/latest/run.log","log_context":["UVM_INFO @ 432151040 ps: (uvm_report_catcher.svh:705) [UVM/REPORT/CATCHER] \n","--- UVM Report catcher Summary ---\n","\n","\n"]}],"UVM_ERROR (i2c_scoreboard.sv:629) scoreboard [scoreboard] Miscompare: DUT-Controller, dir:BusOpRead":[{"name":"i2c_host_mode_toggle","qual_name":"0.i2c_host_mode_toggle.85187423714572002034370607520236171139733232317863870092192533733276897075934","seed":85187423714572002034370607520236171139733232317863870092192533733276897075934,"line":96,"log_path":"/nightly/current_run/scratch/master/i2c-sim-xcelium/0.i2c_host_mode_toggle/latest/run.log","log_context":["--> EXP:\n","---------------------------------------------------\n","Name            Type                Size  Value    \n","---------------------------------------------------\n"]}],"UVM_FATAL (i2c_base_vseq.sv:882) [i2c_target_tx_stretch_ctrl_vseq] Check failed (std::randomize(transfer_lengths) with {transfer_lengths.size() == num_transfers; transfer_lengths.sum() == num_data_total; foreach (transfer_lengths[i]) { transfer_lengths[i] inside {[cfg.min_xfer_len : num_data_total]}; } transfer_lengths[*] > *; transfer_lengths[num_transfers - *] > *;}) Randomization failed!":[{"name":"i2c_target_tx_stretch_ctrl","qual_name":"0.i2c_target_tx_stretch_ctrl.71918137935356731195833111840164061582125204642036214767466481527083396025932","seed":71918137935356731195833111840164061582125204642036214767466481527083396025932,"line":112,"log_path":"/nightly/current_run/scratch/master/i2c-sim-xcelium/0.i2c_target_tx_stretch_ctrl/latest/run.log","log_context":["UVM_INFO @  37915492 ps: (uvm_report_catcher.svh:705) [UVM/REPORT/CATCHER] \n","--- UVM Report catcher Summary ---\n","\n","\n"]}]}},"passed":39,"total":50,"percent":78.0}