post_configure_phase(); pre_main_phase(); main_phase(); post_main_phase(); pre_shutdown_phase(); shutdown_phase(); post_shutdown_phase(); end join UVM提供了如此多的phase,在一般的应用中,无论是function phase还是task phase都不会将它们全部用上。使用频率最高的是build_phase、connect_phase...
build_phase是按照自上而下的顺序执行的,在下图中,先执行uvm_test_top的build_phase,再执行env的build_phase。 除了build_phase,所有不耗费仿真时间的phase都是自下而上执行的,对于connect_phase即先执行driver和monitor的connect_phase,再执行agent的connect_phase。 image-20240228151306612 看到这里,很多同学可能就有...
1)创建UVM默认的所有phases,即我们熟知的build phase、connect phase、run phase、main phase等等,并将...
post_configure_phase(); pre_main_phase(); main_phase(); post_main_phase(); pre_shutdown_phase(); shutdown_phase(); post_shutdown_phase(); end join 稍微解释一下上述代码含义,fork-join 表示两个 begin-end 是同时开始运行的,当 run_phase() 和 pre_reset_phase() 同时存在时,run_phase()...
run_phase 运行机制 fork beginrun_phase(); end beginpre_reset_phase();reset_phase();post_reset_phase();pre_configure_phase();configure_phase();post_configure_phase();pre_main_phase();main_phase();post_main_phase();pre_shutdown_phase();shutdown_phase();post_shutdown_phase(); ...
分成小的phase是为了实现更加精细化的控制。 reset、configure、main、shutdown四个phase是核心,这四个phase通常模拟DUT的正常工作方式, 在reset_phase对DUT进行复位、初始化等操作, 在configure_phase则进行DUT的配置, DUT的运行主要在main_phase完成, shutdown_phase则是做一些与DUT断电相关的操作。
• post_configure_phase • pre_ main _phase • main_phase • post_ main _phase • pre_ shutdown _phase • shutdown_pbase • post_ shutdown _phase 实际上run_phase任务和上面细分的12个phase是并行的,即在start_of_simulation_phase任务执行以后,run_phase和 reset_phase开始执行,而在 ...
另一类是run-time phases,也就是run phase下面的几个sub-phase,包括reset、configure、main和shutdown。如果想将新定义的phase插入到此类phase之间的话,需要通过get_uvm_domain()来得到对应handle。 uvm_domain dm=umv_domain::get_uvm_domain(); 1.2.2 获得你想将新定义phase插入其后的phase句柄 ...
post_configure_phase(); pre_main_phase(); main_phase(); post_main_phase(); pre_shutdown_phase(); shutdown_phase(); post_shutdown_phase(); end join UVM提供了如此多的phase,在一般的应用中,无论是function phase还是task phase都不会将它们全部用上。使用频率最高的是build_phase、connect_phase...
configure_phase post_configure_phase pre_main_phase main_phase post_main_phase pre_shutdown_phase shutdown_phase post_shutdown_phase 从全局来看run phase和run-time的执行顺序按以下代码中顺序执行。 有几点需要说明: run_phase和12个run-time phase是并行执行。