1.1. class_name::type_id::create(name, parent)

(1) factory机制下独特的实例化方法;

篇3-factory机制创建实例_实例化

(2) 用type_id进行实例化的原理如下图所示

(2.1) `uvm_object_utils

篇3-factory机制创建实例_实例化_02

 篇3-factory机制创建实例_实例化_03

 篇3-factory机制创建实例_实例化_04

(2.2) type_id与type_id::create

篇3-factory机制创建实例_IT_05

 篇3-factory机制创建实例_IT_06

 篇3-factory机制创建实例_IT_07

(2.3) uvm_factory::create_object_by_type

 篇3-factory机制创建实例_实例化_08

 篇3-factory机制创建实例_实例化_09

1.2. create_object_by_name

function uvm_object uvm_factory::create_object_by_name(string requested_type_name, string parent_inst_path=””, string name=””);

篇3-factory机制创建实例_实例化_10

1.3. create_object_by_type

function uvm_object uvm_factory::create_object_by_type(uvm_object_wrapper requested_type, string parent_inst_path=””, string name=””);

篇3-factory机制创建实例_实例化_11

1.4. create_component_by_name

function uvm_component uvm_factory::create_component_by_name(string requested_type_name, string parent_inst_path=””, string name, uvm_component parent);

篇3-factory机制创建实例_实例化_12

1.5. create_component_by_type

function uvm_component uvm_factory::create_component_by_type (uvm_object_wrapper requested_type, string parent_inst_path=””, string name, uvm_component parent);

篇3-factory机制创建实例_实例化_13