1.create_object_by_name,根据类名字创建object,原型:

UVM:8.4.3 用factory 机制创建实例的接口_父节点

一般只用第一个:

UVM:8.4.3 用factory 机制创建实例的接口_父节点_02


2.create_object_by_type,根据类型创建一个object,原型:

UVM:8.4.3 用factory 机制创建实例的接口_父节点_03

一般只用第一个:

UVM:8.4.3 用factory 机制创建实例的接口_类名_04


3.create_component_by_name,根据类名创建一个component,原型:

UVM:8.4.3 用factory 机制创建实例的接口_父节点_05

1)第一个类名。

2)第二个父节点全名。

3)第三个新的component名字。

4)第四个父节点指针。

4个都要用:

UVM:8.4.3 用factory 机制创建实例的接口_父节点_06

一般在component 的new 或者build_phase 中使用。如果在object 中,很难确认parent;如果在connect_phase 之后调用,由于UVM 要求component 在build_phase 及之前例化完毕,所以会失败。

5)uvm_component 内部有一个函数是create_component,就是调用此:

UVM:8.4.3 用factory 机制创建实例的接口_父节点_07

只有两个参数。


4.create_component_by_type,根据类型创建一个component,原型为:

UVM:8.4.3 用factory 机制创建实例的接口_父节点_08

4个参数全用:

UVM:8.4.3 用factory 机制创建实例的接口_类名_09