Update i2c/dv/env and i2c_agent
diff --git a/hw/dv/sv/i2c_agent/i2c_item.sv b/hw/dv/sv/i2c_agent/i2c_item.sv
index 97153b4..bca5c06 100644
--- a/hw/dv/sv/i2c_agent/i2c_item.sv
+++ b/hw/dv/sv/i2c_agent/i2c_item.sv
@@ -5,10 +5,28 @@
class i2c_item extends uvm_sequence_item;
// random variables
+ //rand i2c_bit_type_t bit_type = 1'b0;
+ rand bit sda_bit = 1'b1;
+ rand bit scl_bit = 1'b1;
+
+ rand bit stop_detected = 1'b0;
+ rand bit start_detected = 1'b0;
+
+ // dont override start_bit unless testing an error scenario
+ constraint sda_bit_c {
+ sda_bit == 1'b1;
+ }
+
+ // dont override stop_bit unless testing an error scenario
+ constraint scl_bit_c {
+ sda_bit == 1'b1;
+ }
`uvm_object_utils_begin(i2c_item)
+ `uvm_field_int(sda_bit, UVM_DEFAULT | UVM_NOCOMPARE | UVM_NOPRINT)
+ `uvm_field_int(scl_bit, UVM_DEFAULT)
`uvm_object_utils_end
`uvm_object_new
-endclass
+endclass : i2c_item