UVM内phase的执行顺序

phase间的执行顺序

UVM内所有的phase如下图所示,不同phase间的执行顺序从时间上讲是从上往下执行,而run_phase和下图最右边的12个phase是并行执行的。
UVM中的phase
所有conponent的相应phase结束了,验证平台才会进入下一个phase。只有所有componennt的run_phase和post_shutdown_phase结束才会进入下一个phase。

phase内部执行顺序:

build_phase的执行顺序是从上往下执行的,先执行my_case的build_phase、在执行env、agent等;一层一层往下执行。bulid_phase自上向下执行是因为低层次组件需要在高层次组件build里面建立,且低层次组件需要受高层次的配置控制。
connect_phase的执行顺序是从下往上执行的,先执行driver和monitor的connect_phase,再执行agent的connnect_phase。
兄弟关系的component的相同phase之间是按照字典顺序来执行的。
Task_phase消耗时间,也是通过fork_join_none的方式自下向上启动执行的。

多个component phase异步

同一个domain内的componnent
如上图所示,同一个domain内的多个component的phase是同步的,起一个phase执行完才能进入下一个phase。
位于不同domain内的component
如上图所示,位于不同domain内的component的phase是异步的,不用等到不同domain内的componenet的前一个phase执行完就能进入下一个phase。

  • 8
    点赞
  • 44
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值