仅为 uvm 中的少数 /sequences/objects/interfaces 设置 Verbosity?

Vin*_* VS 2 system-verilog uvm

我如何控制某些组件的详细程度,以便我只能将详细程度设置为少数组件?

假设,例如在验证特定功能时,涉及测试、几组组件/序列/对象/接口等。我想将只有这些的冗长设置为UVM_HIGH. 我不想设置要设置的全局严重性,UVM_HIGH因为可能会出现许多不相关的调试消息,这可能会增加日志大小。

这样做的更清洁方法是什么?可以使用额外的 commandline-plusarg 来触发它。基本上,要求是特定功能验证所涉及的测试/组件/序列/对象/接口应采用全局严重性或特定于功能的严重性,具体取决于哪个更高。

请注意,不能使用内置的报告方法,uvm_component因为uvm_info语句可以在uvm_object扩展类和接口中。

Gre*_*reg 5

您可以从命令行控制组件的详细程度作为模拟参数。有两种选择:

  • +uvm_set_verbosity=<comp>,<id>,<verbosity>,<phase>
  • +uvm_set_verbosity=<comp>,<id>,<verbosity>,time,<phase> 这个允许您指定您希望应用详细程度开始的模拟时间

comp是组件的路径,*支持通配符。示例:uvm_test_top.env.agnt.*
id是消息标识符。您可以通过ID设置应用到组件范围内的所有消息_ALL_
verbosity是冗长例如UVM_LOWUVM_MEDIUMUVM_HIGHphase是你想要的详细程度将应用于阶段。

有关更多详细信息,我建议阅读: