Jump to content

janick

Members
  • Content Count

    176
  • Joined

  • Last visited


Reputation Activity

  1. Like
    janick got a reaction from Logger in Of begin_event, end_event, transaction recording, and pipelined interfaces   
    Excellent description!
     
    This has indeed been fixed and will be in the next release of UVM.
     
    See http://www.eda.org/svdb/view.php?id=3586
     
    The default transaction recording will be maintain since it works for the simple, in-order protocols, but a more complex protocol driver will be able to turn it off AT RUNTIME and then explicitly mark the transaction execution time points:
     
     
      task run_phase(uvm_phase phase);     seq_item_port.disable_auto_item_recording();     while(1) begin       uvm_sequence_base pseq;       seq_item_port.get_next_item(req);       `uvm_info("Driver", "Received item :", UVM_MEDIUM)       req.print();       pseq = req.get_parent_sequence();       accept_tr(req);       #2;       begin_child_tr(req, (pseq == null) ? 0 : pseq.get_tr_handle(),                      req.get_root_sequence_name());       #3;       fork         automatic simple_item tr = req;         begin           #12;           `uvm_info("Driver", "Completed item :", UVM_MEDIUM)           tr.print();           end_tr(tr);         end       join_none       seq_item_port.item_done();     end   endtask: run_phase    
×
×
  • Create New...