0

我发现几乎每个扩展的驱动程序uvm_driver都有如下任务get_and_drive。我检查了 uvm 源代码和 uvm_cookbook,但没有找到get_and_drive. 看来这不是 uvm 规则;它更有可能是一个约定。谁首先使用了任务命名get_and_drive(),为什么几乎所有人都get_and_drive在他们的驱动程序中使用这个名称?

task run_phase(uvm_phase phase);
     get_and_drive();
endtask : run_phase

task get_and_drive();
     forever begin
          seq_item_port.get_next_item(req);
          send_to_dut(req);
          seq_item_port.item_done();
     end
endtask : get_and_drive
4

1 回答 1

0

如果您查看example/integrated/ubus目录,ubus_master_driver您将看到一个名为get_and_drive(). 如果你回到 OVM,你会看到在 XBUS 示例中也定义了相同的方法xbus_master_driver

由于大多数人都是通过例子来学习的,我猜这个约定只是卡住了。我认为其他方法论网站(如Verification Academy)也推广相同的约定。

于 2014-11-27T10:46:06.250 回答