微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 微电子和IC设计 > IC验证交流 > UVM中类的例化用new和create有什么不同?什么时候可以用new?什么时候该用create?

UVM中类的例化用new和create有什么不同?什么时候可以用new?什么时候该用create?

时间:10-02 整理:3721RD 点击:
UVM中类的例化用new和create有什么不同?什么时候可以用new?什么时候该用create?

create是用factory模式来construct对象,在factory中注册过的uvm_object扩展类或是uvm_component 扩展类都可以用create,这样做的好处是在testcase里面可以override.  new是什么时候都可以用的。

楼上正解

create是UVM的factory机制中的注册方式,就是说只有与UVM基本类相关的类才可以使用这个方法,使用了create后相当于在UVM这个大树上面挂了个号,具体号码就是通过static function type_id来分配的,UVM的其他地方可以通过号码来对使用create的这个类进行factory机制可以实现的有关功能,override是比较常用的一个功能;而new是一个class创建一个对象的方式,是在运行内存下面挂个号,分配空间,是sv的语法,与UVM无关。

小编好人...

如果内存够大,能用create 的就用create 就好了

4楼解释很清楚

如果不考虑使用override功能,那么new与create几乎是一样的。override的功能非常强大,如果使用UVM而不使用override,那并不能体会出UVM的强大。

学习了

受教了

刚入门,受教了

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top