$display(“%0s”,u_tr.get_type_name()); … endclass 还是老规矩,先猜猜这几句打印什么? 然后再看下面的解释: u_tr.get_name() 会打印出: “jerry_is_good”。 uvm_sequence_item中的get_name函数与uvm_component一样,是打印“new()”时候传入的字符串! u_tr.get_full_name()会打印出: “jer...
virtual function string get_name () 返回此对象的名字,此名字有new构造函数的name参数提供或set_name方法提供。 get_full_name virtual function string get_full_name () 返回此对象的完整层次结构名称。默认实现与get_name相同,因为uvm_objects本身不具有层次结构。 拥有层次结构的对象,比如uvm_components,会覆盖...
m_sequencer可作为媒介,用于从sequence中访问组件层次结构中的配置信息和其他资源。可以通过调用m_sequencer.get_full_name() 来获取sequencer的完整层次名称。 使用case0_sequence默认的m_sequencer这个媒介获取dmac和smac,代码如下,但是编译错误? class case0_sequence extends uvm_sequence #(my_transaction); my_tras...
这些路径,之后在map中会被集成起来。 形成一个full_name。 uvm_reg_frontdoor,从uvm_reg_sequence继承而来,本身是一个sequence。 uvm_reg_backdoor,从uvm_object继承而来,本身就是一个object,其中定义了read、write的原型函数。 uvm_reg_map,auto-predict的设置,影响所有的读写操作,自动更新mirror和desired value。
uvm_report_error(get_full_name(), "Response queue overflow,response was dropped",UVM_NONE); end endfunction virtual function void put_response (uvm_sequence_itemresponse_item); put_base_response(response_item); // noerror-checking ...
get_full_name(); uvm_test_top.env.i_agt.drv create时引号中的名字; 获取的是所在组件的名字; get_name(); drv create时引号中的名字; 获取的是所在组件的名字; get_type_name(); 类型名字:my_driver get_type(); 句柄名字:apb_drv uvm_top中config_db中传递interface的路径用的也是这个路径名字。