我们通常会在top写下类似下面的代码
module top();
import uvm_pkg::*;
......
initial begin
run_test();
end
......
endmoudle
我们写的这个run_test()就是整个UVM验证平台最顶层的入口。这里的run_test()不是任何一个类的成员,而是一个global task,位于uvm_globals.svh中。如下:
在这个global的run_test task中,通过cs.get_root创建了uvm_root单例,然后调用了uvm_root的的run_test task。在uvm_root的run_test task中,根据plus args UVM_TESTNAME创建了uvm_test_top对象,如下:
然后,还是在uvm_root的run_test task中,调用了uvm_phase的一个static task m_run_phases, 开始了uvm phases的启动,如下:

最低0.47元/天 解锁文章
2051

被折叠的 条评论
为什么被折叠?



