关于Log信息强度(severity)的概念:
Fatal: 功能错误(无法接受), TB故障 (Failure)
Error:功能错误(可以接受), 模型输出不符合预期 (Failure)
Warning:功能错误(可以接受) (Failure, Timing)
Normal:通常信息(Note)
Trace:高级仿真执行跟踪信息 (Debug)
Debug:细化的仿真跟踪信息(Debug)
Verbose:最详尽的跟踪信息(Debug)
使用make [severity]编译
尝试更换不同的severity
在case中的env.build();后加上
env.log.set_verbosity(vmm_log::WARNING_SEV, "/S./", "/./");
这样即使使用make note也会显示Warning级别的内容。
vmm_log::set_verbosity()函数:
void set_verbosity(int severity, string name = "", string inst = "", bit recursive = 0)
指定消息服务接口 ./正则表达式
在env中所有函数中加入super.[函数名],调用父类中相应的函数。
new()中加入this.router = router, 传入interface. reset_dut()中加入reset()任务
test.sv首加入`include "vmm.sv" `include "Enviroment.sv"
新建initial块
initial begin
Enviroment env = new(router);
env.run();
end
编写约束 大于小于等于:关系表达式, inside 总和:sum()方法
新建config对象,在环境new()中构造cfg
在gen_cfg()中随机cfg