微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 微电子和IC设计 > IC验证交流 > 为什么两个等价的agent执行时竟然会后先后顺序,请大侠指教!万分感谢!

为什么两个等价的agent执行时竟然会后先后顺序,请大侠指教!万分感谢!

时间:10-02 整理:3721RD 点击:




验证平台结构如上图所示,自己定义的一个是 i_agent 用来驱动数据r_agent 用来送DUT的复位信号(送1个低电平,15个高电平后复位成功)。







如上图所示,i_agentr_agent 的run_phase 并没有什么区别。
运行结果:i_agent 的drv与r_agent的drv同时进入了run_phase。然后r_agent的drv开始工作,一直等r_agent drv工作完毕,i_agent drv才开始发送数据。
问题是:
按理说这两个自己定义的agent在UVM中应该是等价的地位,那为什么r_agent执行完毕后,i_agent才开始驱动数据? 请指教,万分感谢~

这个实验就是论坛里ces_uvm-1.0_2011.03-3中的 Lab4。 大家在做的时候 没有遇到问题吗?请了解这方面的高手指教~谢谢

每个phase的运行时同步的,不同在phase内部代码的安排!
究竟那部分先执行,根据你的验证功能要求有sqr来安排。
这个例子我没有,你看看指南吧

谢谢你,刚对照着看了下,终于解决了。

这个你要看看,你的seq什么时候开始工作啊,跟agnent有个什么关系?
如果是同时调用,你可以看看这两个agent的工作的时间戳。

是的,开始没注意在env的定义啊,一个定义在reset_phase一个在main_phase 运行。thank you

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top