可以看到这个时间是通过$time(注意:这里与UVM-1.1不同)获取的,而$time获取的时间是一个整型数据,并且此时显示的时间也受$timeformat设置的默认值的影响,即此时显示的时间单位是该语句执行时所在域的时间精度,所以此时我们看到`uvm_info调用时在log中显示的时间是一个五位数并且只保留了对应时间单位的整数部分数字,显...
$display(“the full name of current component is: %s”, get_full_name()); [my_driver]:方括号中显示的信息即调用uvm_info宏时传递的第一个参数。 data is drived:表明宏最终打印的信息。 可见,uvm_info宏非常强大,它包含了打印信息的物理文件来源、逻辑结点信息(在UVM树中的路径索引)、打印时间、对信...
uvm_report_server.svh中的626行通过调用compose_report_message产生了composed_message这么个字符串,通过查看compose_report_message这个函数我们显而易见的就发现了这就是我们看到`uvm_info所打印的格式的排版处。 于是我们得出这么一个结论:要想定制一款个性化的打印格式,我们只需要从uvm_report_server继承一个我们自定...
uvm_info宏非常强大,它包含了打印信息的物理文件来源、逻辑节点信息(在UVM树种的路径索引)、打印时间、对信息的分类组织及打印的信息。因此在搭建验证平台时应该尽量使用uvm_info宏取代display语句。 定义了my_driver类后还需要将其实例化。类的定义和类的实例化是存在区别的,类的定义是class-end块,定义一个类,告诉...
taskmy_driver::main_phase(uvm_phasephase);`uvm_info("driver","main phase",UVM_LOW)forkwhile(...
()==UVM_INFO && get_id()=="SLAVE_DRIVER")19set_severity(UVM_ERROR);20return THROW;21endfunction22endclass2324class wb_conmax_alter_verbosity_specific_component_test extends wb_conmax_base_test;25`uvm_component_utils(wb_conmax_alter_verbosity_specific_component_test)26measage_promoter ...
24 `uvm_info("my_driver", "data is drived", UVM_LOW);5225 end 26 @(posedge top_tb.clk)...
driver里面两个UVM_HIGH 的info。 base_test里设置为UVM_HIGH。仿真,两条都打印。改成UVM_MEDIUM,两条都不打印。 1)由于牵涉到层次引用,要在connect_phase即以后的phase才能调用。 2)如果不牵涉层次引用,如设置当前component的冗余度,可以在connect_phase之前调用 ...
`uvm_info(get_type_name(), $sformatf("get var from env"), UVM_LOW) end 那么在log中 可以找到以下打印信息: UVM_INFO …/uvm-1.2/src/base/uvm_resource_db.svh(121) @0.000ns: reporter// db类型 匹配字符串 数据类型 路径 数据值[CFGDB/SET] Configuration'uvm_test_top.env.*.var'(typeint...