类对象在系统verilog中打印

时间:2013-12-02 10:44:41

标签: verilog system-verilog

在SystemVerilog中,是否可以使用属性打印整个对象? (这里我不知道在我的父类中声明了多少变量。)

1 个答案:

答案 0 :(得分:6)

虽然LRM没有提到它,但是一些模拟器允许你使用$display("%p", object_handle);

这很可能是对象的浅色打印,这意味着它不会打印对象包含的任何类对象。它也不允许您格式化单个属性,例如radix。出于这些原因,您应该只使用它来进行快速调试。

大多数方法,如UVM,都要求您在所有类中提供一组虚拟方法,例如convert2string()或print()。这样,您可以在类的print()方法中调用super.print()来打印基类中的所有属性,并且可以通过类property_handle.print()来打印包含类的所有成员。