概述
UVM内的phase间除了自上向下执行,也可以通过jump函数实现phase间的跳转。jump函数原型为:
function void uvm_phase::jump(uvm_phase phase);
跳转可以向前跳转也可以向后跳转;
可以跳转的uvm_phase变量包含:
向前跳转
向前跳转只能跳转task_phase,不能跳转到function_phase和run_phase;
向后跳转
向后跳转可以跳转到function_phase和task_phase,但是不能跳转到run_phase;
phase跳转注意事项
跳转需要注意跳转前后的清理工作,包括:清理objection、清理scoreboard内的edxpect_queue;