In reply to Pratibhamd:
Why bother using the phasing mechanism if you are going to create explicit events to enforce a specific ordering?
You can just put the defaults at then beginning of the run_phase and then go into a loop
task run_phase(uvm_phase phase);
//Drive default values of the interface
...
// begin the driver sequencer mechanism and drive on the interface according to protocol
forever begin
...
end
endtask