I tried to create a scoreboard and declared the analysis ports using `define and started write functions out of phases in the scoreboard. Now I want to define a checker function to compare and want this function to execute at last after all write functions of analysis ports have executed and pushed the data into the queue.
Declaring a checker function in run_phases executes before all the write functions defined out of phases. Can I declare it in report phase or call from report phase ?
In reply to verific_engi:
yes you can do that.
function void debug();
<your logic to check>
endfunction
function void check_phase (uvm_phase phase);
super.check_phase(phase);
debug();
endfunction
In reply to rag123:
Will try it . So this will run after all functions (write implementation of analysis port) ?
In reply to verific_engi:
The check_phasse will be executed after run_phase has ended. The run_phasse is where the simulation happens. It is a task and consumes time. check_phase is a function and does not consume time.