set_name --- 设置此对象的实例名,覆盖先前给出的任何名称。 get_name --- 返回对象的名称,由new构造函数中的name参数或set_name方法提供。 get_full_name --- 返回此对象的完整层次名字。 get_type --- 返回此对象的类型代理(包装器)。 get_type_name --- 此函数返回这个对象的类型名字,这个类型名字通...
1.function void uvm_object::set_name (string name); //设置leaf_name 2.function string uvm_object::get_name ();//返回leaf_name(由new设置或者通过set_name更改) 3.function string uvm_object::get_full_name ();//调用2 1. 返回对象的全部层次名,The default implementation is the same as get...
1. function void uvm_object::set_name (string name); //设置leaf_name 2. function string uvm_object::get_name ();//返回leaf_name(由new设置或者通过set_name更改) 3. function string uvm_object::get_full_name ();//调用2 1. 返回对象的全部层次名,The default implementation is the same as...
代码清单3-3来源:UVM源代码36virtualclassuvm_scoreboardextendsuvm_component; …44functionnew(string name, uvm_component parent);45super.new(name, parent);46endfunction4748const static string type_name ="uvm_scoreboard";4950virtual function string get_type_name ();51returntype_name;52endfunction5354e...
ARG.set_name(local_data__.ARG.get_name()); \ end \ 创建了 uvm_object l_obj,而后注意执行了clone()函数:l_obj = local_data__.ARG.clone(),这说明了两点: 对于类对象在拷贝的时候也是执行的深拷贝,clone本身就分配了地址空间使拷贝双方彻底分离; ...
所以它的key-value就是uvm_object的类名(class name)和类的名称(string)。随着这个宏的展开,我们相当于给class额外定义了两个函数:get_type()和get_object_type()。由于uvm_object_registry #(T,“S”)是一个singletone的class,所以get_type()和get_object_type()的函数内容一样,区别在于返回值的句柄不同。
class uvm_object_registry #(type T=uvm_object, string Tname="<unknown>") extends uvm_object_wrapper; typedef uvm_object_registry #(T,Tname) this_type; local static this_type me = get(); // Function: get // // Returns the singleton instance of this type. Type-based factory operation...
functionbitcompare(uvm_object rhs,uvm_comparer comparer=null);functionvoidrecord(uvm_recorder recorder=null);...// These two functions have to be redefined by child classesvirtualfunctionuvm_object create(stringname="");returnnull;endfunctionvirtualfunctionstringget_type_name();return"";endfunction...
通过comp.get_parent(),可以返回comp的parent_comp 通过comp.get_child(name),name为child实例化的名字,可以返沪comp的child。(感觉没什么用,直接引用不香吗?) 3.3 field_automation机制 3.3.1field_automation机制的相关宏(如何注册) 将不同的类型进行域的自动化。就是将整数、实数、枚举类型等进行注册 ...
(get_name(),"In Packet::do_copy()",UVM_LOW)endfunctionfunctionnew(stringname="Packet");super.new(name);endfunctionendclassclassObjectextendsuvm_object;rande_bool m_bool;randbit[3:0]m_mode;randbytem_data[4];randshortintm_queue[$];stringm_name;randPacket m_pkt;constraintc_queue{m_...