如何只修改部分组件的打印级别

在保持全局打印阈值不变的情况下,如何只修改UVM环境中特定组件的打印级别。介绍了两种方法:1) 在环境中使用内建函数在connect_phase设置;2) 通过仿真命令行控制,在指定phase或时间开始修改。这些方法允许灵活调整组件的打印详细程度,以减少无用信息的输出。
摘要由CSDN通过智能技术生成

问题由来

  整个环境已经设置了全局的打印阈值,但是有个别组件的打印级别的比较低,因此打印出很多无用的信息,但是又不想修改全局的打印阈值。那有没有再不修改全局打印阈值的前提下,只修改某个组件的信息打印阈值呢?
  举例:如整个top_env的打印阈值是UVM_MEDIUM,但是top_env中例化usb_env中普遍使用的打印级别是UVM_LOW,因此top_env.usb_env中有很多冗余的信息打印,那么如果要单独将usb_subenv组件中的打印阈值调整为UVM_LOW,其他组件打印阈值为UVM_MEDIUM不变

问题解决

 其实UVM中给我们提供了两种现成的方案:

  1. 环境中使用内建函数 set_report_verbosity_level_hier()
top_env.usb_subenv.set_report_verbosity_level_hier(UVM_LOW)
  • 格式:<comp>.set_report_verbosity_level_hier(阈值级别)
  • 作用:将某个组件(及其内部所有组件)指定的阈值
  • 添加位置:建议connect_phase(build_phase之后 ,run_phase之前)
    • build_phase之后:因为build_phase之后,UVM树才能建立起来
    • run_phase之前:大多数的打印是在run_phase中执行,因此需要提前设置好
    <
  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值