- create的几种方法
// create t2 with method trans::type_id::create(string name, uvm_component parent = null);
t2 = trans::type_id::create("t2",parent)
// create t3 with method uvm_factory method f.create_object_by_type(...) as below
void'($cast(t3,f.create_object_by_type(trans::get_type(),get_full_name(),"t3")))
// function
// uvm_object create_object_by_type (uvm_object_wrapper requested_type,
// string parent_inst_path="",
// string name="");
void'($cast(t4,create_object("trans","t4")))
// create t4 with method create_object(...) as below
// function uvm_object create_object (string requested_type_name,
// string name="");
- 类型覆盖
set_type_override_by_type(trans::get_type(), bad_trans::get_type());
// replace trans type with bad_trans type with method
// function void set_type_override_by_type
// (uvm_object_wrapper original_type,
// uvm_object_wrapper override_type,
// bit replace=1)
set_type_override("unit", "big_unit");
// replace unit type with big type with method
// function void set_type_override(string original_type_name,
// string override_type_name,
// bit replace=1);
- List item