首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >UVM阶段查询

UVM阶段查询
EN

Stack Overflow用户
提问于 2013-10-14 03:27:47
回答 1查看 3.2K关注 0票数 0

我有几个关于UVM阶段build()run()的问题。它们可能适用于其他验证方法以及a>,为什么build()阶段是按自顶向下的顺序执行的。这是否意味着我们需要更新build()阶段中的所有组件,然后继续执行类中实例化的其他子组件的build()?b>在run()阶段是类似于super.run()的吗?run()阶段的执行顺序是什么?

EN

回答 1

Stack Overflow用户

发布于 2013-10-14 16:31:49

是的,UVM的build_phase()是按自顶向下的顺序执行的,因为在父组件的build_phase()中构造这些子组件之前,它们是不存在的(并且UVM建议使用工厂create()方法而不是直接调用构造函数new() )。build_phase()也是自顶向下执行的,这样父程序就可以提供覆盖设置,子节点在执行build_phase()时将使用该设置。

每个组件的run_phase()都是并发执行的,没有您可以依赖的定义的顺序。

您只需要在扩展类时调用super.method() --需要基本方法的功能。一个run_phase()的uvm_component ()中没有任何东西,因此在从它扩展时不需要调用super.run_phase()。在从基类扩展类时,您可能需要调用它。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19353096

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档