rst_uvc

作者: Poisson_Lee | 来源:发表于2020-06-19 17:15 被阅读0次

rst_drvr中的uvm_event rst_ev没用。实际上是通过monr中的uvm_event rst_ev来同步的。
monr中通过reset_name(get_full_name())来命名rst_ev。
其中get_full_name() 返回的是全路径,比如uvm_test_top.env.rst.monr, 所以reset_name()的作用是获取倒数第二级的名字,即uvc_agent的实例化名,这里是rst,注意rst是 rst_uvc在env中的例化的。

rst = rst_agnt::type_id::create("rst", this);
name是从create里的参数“rst”来的。

注意:如果这个name名词参数改了,比如改成了rstxxx,
rst = rst_agnt::type_id::create("rstxxx", this);
所有uvm_config_db涉及到的路径都需要改,比如:
uvm_config_db#(virtual rst_io)::set(this, "rstxxx", "bus", rst_bus);
uvm_config_db#(uvm_object_wrapper)::set(this, "rstxxx.seqr.run_phase", "default_sequence", rst_seq::type_id::get());

对应的,get到这个rst_ev
rst_ev = uvm_event_pool::get_global("rst_ev");
rst_ev = uvm_event_pool::get_global("rstxxx_ev");

rst/rstxxx是create的rst_agnt的名字

相关文章

  • rst_uvc

    rst_drvr中的uvm_event rst_ev没用。实际上是通过monr中的uvm_event rst...

网友评论

      本文标题:rst_uvc

      本文链接:https://www.haomeiwen.com/subject/necbxktx.html