问题描述
我需要通过其中定义的 type_id 过滤所有 uvm_info 日志消息。例如,如果我只想显示来自驱动程序或监视器的 uvm_info 消息,我该如何有效地做到这一点?
解决方法
UVM 没有提供很容易做到这一点的机制。您必须从顶层向下将所有内容的详细程度设置为 UVM_NONE
,然后返回并仅打开来自驱动程序和监视器的消息。
除非您提供特定的组件名称,例如以“drv”和“mon”开头,否则查找所有驱动程序和监视器也可能很困难。然后您可以使用 uvm_root::find_all("drv*",comps);
并将 comps
中这些组件的详细程度设置回 UVM_FULL
。
使用 (sed/awk/perl/python) 脚本获取整个日志文件并过滤您想要的结果可能更容易
,自定义报告捕捉器怎么样?
你可以把它放在你的基础测试或顶部,然后使用 plusarg 控制它。一个基本的例子在这里: