Jump to content


  • Content Count

  • Joined

  • Last visited

  1. Hi All, I am seeing following error when I try to assign array values using inline constraints Array size's and dimensions are same and array slicing is not there ,but still I see below error. Can somebody please through light on this error? Also suggest best practices class A_seq extends uvm_sequence #(id_nfc_tx_transfer); `uvm_object_utils(A_seq) `uvm_declare_p_sequencer(tx_sequencer) bit [7:0] data_byte[`MAX_DATA:0] ; function new(string name="A_seq"); super.new(name); endfunction virtual task body(); ///Array Initialization for (int i=0;i<
  2. Its working perfectly with the Workarounds. Your Suggestions are greatly Appreciated. Thank you Tudor and Dave
  3. Hi Tudor, Thanks for the reply. Exactly, I would like to know what is the limitation of Queue usage in sequences. With Dynamic Array I need to have additional parameter to configure the size and also assigning bytes is not straight forward Following is the sample code with dyamaic array rand byte tx_err_bytes[ ] ; // Dynamic array contains byte positions to be corrupted rand int error_byte_count ; // size of the dynamic array `uvm_do_with( req, { tx_data_byte[0]=='h00; tx_data_byte[1]=='h11; tx_da
  4. Hi All, I have a scenario where i need to send n random bytes and out of n bytes i should able to corrupt few selected bytes. I have used Queue for selecting error bytes list. Transaction : rand bit [7:0] tx_data_byte[`MAX_DATA:0] ; // data byte array rand int unsigned tx_no_of_bytes_to_send ; // number of data bytes to send rand byte tx_err_bytes[$] ; //queue contains byte positions to be corrupted Example : consider i am sending 5 data bytes and I have to corrupt 2,4,5 bytes (corrupting data bytes is handled in driver) Sequence : `u
  • Create New...