uvm中的begin_tr,end_tr实施问题

时间:2018-10-03 10:36:06

标签: uvm

我正在尝试在UVM中使用'begin_tr'和'end_tr'方法。 我指的是https://verificationacademy.com/verification-methodology-reference/uvm/docs_1.1a/html/files/base/uvm_transaction-svh.html

例如

task run_phase(uvm_phase phase);
//  uart_frame frame;
  forever begin
    // get item from the sequencer

    void'(begin_tr(req, "run_phase"));

    seq_item_port.get_next_item(req);
    frames_sent++;
    // send the item to the DUT
    send_to_dut(req);
    // call sequencer's item_done

    seq_item_port.item_done();

    end_tr(req); 

  end
endtask : run_phase

我们可以看到上面的示例,begin_tr和end_tr只是在task()中实现的。

一旦我在task()的外部实现了'begin_tr'和'end_tr',那么我遇到了错误消息。

我是否必须仅在'task()'函数中实现'begin_tr'和'end_tr'?

0 个答案:

没有答案