System verilog 获取所有OVM组件句柄的API

System verilog 获取所有OVM组件句柄的API,system-verilog,methodology,uvm,System Verilog,Methodology,Uvm,在验证环境中是否有获取所有OVM组件句柄的API?我询问的原因是,我需要使用OVM报告处理程序将OVM_FATAL转换为OVM_NOPRINT。此报表处理程序是每个ovm_组件中实例化的对象。目前,我已经设置了从基本测试调用的\u报告\u严重性\u操作\u hier(OVM\u致命,OVM\u无操作),它只适用于测试。我需要让它影响所有的组件,比如显示器和驱动程序 提前感谢有一个ovm_组件::find_all()方法,但它与set_report_severity_action_hier()有相

在验证环境中是否有获取所有OVM组件句柄的API?我询问的原因是,我需要使用OVM报告处理程序将OVM_FATAL转换为OVM_NOPRINT。此报表处理程序是每个ovm_组件中实例化的对象。目前,我已经设置了从基本测试调用的\u报告\u严重性\u操作\u hier(OVM\u致命,OVM\u无操作),它只适用于测试。我需要让它影响所有的组件,比如显示器和驱动程序


提前感谢

有一个ovm_组件::find_all()方法,但它与set_report_severity_action_hier()有相同的问题;您需要在构建完所有组件后调用它。OVM没有“阶段准备就绪”到“结束”的回调函数,因此您需要在基本测试中生成后的任何阶段调用“设置报告”、“严重性”和“操作”\u hier()。

谢谢Dave。find_all不是一个静态函数,它是ovm_根的一部分。所以我不应该使用ovm_top.find_all吗?你能告诉我它的用途吗?我试着在我的基本测试用例中这样做。ovm_top.find_all(get_name(),components)。它刚刚还给了我ovm_测试_顶部组件手柄明白了。我使用了ovm_is_match支持正则表达式这一事实。所以我使用了ovm_root.find_all(“*”,components)。谢谢你的解决方案