Jump to content


  • Content count

  • Joined

  • Last visited

  1. rezwan

    UVM print with array objects

    You can do something like as shown below. It works fine in Simvision waveform browser. For example, if you have packet class extended from uvm_sequence_item in which you declared a data item rand bit [9:0] payload[]; and then for this data item, you shall have a field automation macro with the following trick `uvm_field_array_int(payload, UVM_ALL_ON | UVM_NORECORD) // UVM_NORECORD will exclude the field in vendor-specific transaction recording. You need to define a function as shown below inside this class virtual function void do_record( uvm_recorder recorder ); super.do_record( recorder ); foreach (payload) recorder.record_field($sformatf("payload[%d]",i),payload,10,UVM_NORADIX); endfunction: do_record You will be able to see a transaction in which payload will have all of its elements. Hope this will help!