可以通过设置set_report_serverity_action函数来把UVM_WARNING加入计数目标。 virtualfunctionvoidconnect_phase(uvm_phasephase);set_report_max_quit_count(5);env.i_agt.drv.set_report_severity_action(UVM_WARNING,UVM_DISPLAY|UVM_COUNT);endfunction set_report_severity_action:把其他严重性等级的信息加入计数目...
UVM的这些标志位本身其实是一个17bit的数字,bit0表示copy,bit1表示no_copy,bit2表示compare,bit3表示no_compare,bit4表示print,bit5表示no_print,bit6表示record,bit7表示no_record,bit8表示pack,bit9表示no_pack,UVM_ALL_ON的值是’b000000101010101,表示打开copy、compare、print、record、pack功能 3.3.4 field...
UVM从uvm_void扩展而来,因此所有的类都可以使用其函数。常用的函数有:print、sprint、copy、clone、compare、record、pack/unpack。 UVM_FIELD_*宏 例如,定义一个32位变量sa:verilog uvm_field_int(sa, UVM_ALL_ON | UVM_NOCOPY)这里,UVM_ALL_ON表示所有权限打开,UVM_NOCOPY表示不复制数据。
uvm_object类是所有UVM数据和层次化类的基类。它主要的角色是为像create/copy/compare/print/record这样的通用操作来定义一系列method。从uvm_object派生出来的类必须执行像create和get_type_name这样的纯虚函数。 uvm_object的methods介绍: a) new – 用给定的实例名字创建一个新的uvm_object。 b)种子: use_uvm_...
function bit compare(uvm_object rhs, uvm_compare comparer=null); 默认情况下,如果不对比较情况做出额外配置,用户调用compare()方法时,省略第二项参数,即采用默认的比较配置。 比较方法经常会在两个数据类中进行。例如从generator产生的一个transaction(数据类),和在设计输出捕捉的transaction(数据类),如果它们为同...
compare 函数: A.compare(B) or B.compare(A)。 pack_bytes 函数: 用于将所有字段打包成byte流。 unpack_bytes 函数: 用于将一个byte流逐一恢复到某个类的实例中。 pack 函数: 用于将所有的字段打包成bit流。 unpack 函数: 用于将一个bit流逐一恢复到某个类的实例中。
uvm_object中copy()被调用会自动执行do_copy(), compare()中的do_compare(), print()中的do_print(), pack()中的do_pack(), unpack()中的do_unpack()。 phase中的pre_xxx_phase, post_xxx_phase SV调用randomize()自动调用pre_randomize(), post_randomize()。
这个类包含了compare, printer等,一般默认使用uvm_object_globals.svh中的全局变量,uvm_default_comparer, uvm_default_table_printer。也可以自己配置compare, printer中的参数,并在调用compare(), print()时传入即可或者重写do_compare, do_print函数,实现自定义功能。
compare 函数: A.compare(B) or B.compare(A)。 pack_bytes 函数: 用于将所有字段打包成byte流。 unpack_bytes 函数: 用于将一个byte流逐一恢复到某个类的实例中。 pack 函数: 用于将所有的字段打包成bit流。 unpack 函数: 用于将一个bit流逐一恢复到某个类的实例中。 pack_ints 函数 unpack_int...
对field_automation最直观的感受是,他可以自动实现copy、compare、print等三个函数。当使用uvm_field系列相关宏注册之后,可以直接调用以上三个函数,而无需自己定义。这极大的简化了验证平台的搭建,尤其是简化了driver和monitor,提高了效率。 2.config_db机制