UVM验证平台phase机制

phase机制简介

phase机制主要目的是使UVM的运行仿真层次化,让各种例化先后次序正确。UVM的phase机制主要有9个,外加12个动态phase。除了run_phase是task,要消耗仿真时间,其余都是function。build_phase和final_phase是自顶向下运行,其余都是自底向上运行。run_phase和12个动态phase是并行运行的,有这12个动态phase主要是进一步将run_phase中的事务划分到不同的phase中进行,简化代码。注意,run_phase和12个动态phase最好不要同时使用。

*从运行上看,9个phase顺序执行,不同组件的同一个phase全部执行完之后才能进入下一个phase,此外,不同组件中同一个phase执行也有顺序,build_phase自顶向下,connect_phase自底向上等。

phase机制执行顺序(扩展)

无论是自上而下还是自下而上,都只适用于UVM树中有直系关系的component,对于同一层次,具有兄弟关系的component,例如agent中的driver和monitor,它们是谁先被例化的呢?实际上,无论是在自上而下的build_phase还是自下而上的connect_phase,其执行顺序都与代码顺序无关,而是严格按照实例化时指定名字的字典序(abcdefg....),如aaa先例化,ddd再例化。

除了兄弟关系的component(driver和monito

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值