UVM中的build_phase和main_phase问题
时间:10-02
整理:3721RD
点击:
各位大神,在学习UVM的时候经常遇到build_phase和main_phase的问题,我知道build是一个函数phase,main_phase 是一个任务phase,在driver和monitor中只能使用main_phase ,env中使用build_phase?我想请教一下各位什么时候build_phase什么时候使用main_phase?
在build_phase里面完成例化,build_phase不消耗时间。
信号的驱动、检测、比较就在main_phase中完成。
多谢,受教了~
build_phase和connect_phase、reset_phase等等一样,都是function,不消耗仿真时间,只进行仿真前的准备工作,例如set变量、get变量、创建对象实例等等,而仿真要做的事情都在main_phase中完成,main_phase在uvm的早期版本中叫run_phase,run即运行仿真嘛
main_phase是run_phase的一部分。
感谢您的解答
你的问题就完全提错了。任何component都有所有的pre-define的phase.
而且drive里面一般用run_phase,如果你只做main_phase,上层sequence想在reset_phase做事情怎么办?
学习了
个人比较同意该层层主概括出来的意思,自己虽然也知道 但就是不知道怎样好的表达出来。赞一个
懂了 谢谢
学习了