Is this a right way to do pipeline access through driver

In reply to chandanc9:

My project experience with another protocol shows taht any implementation like you are doing with queues etc. are ending up in a fiasco.
I’m strongly recommending to follow the example mperyer is pointing to.
https://verificationacademy.com/uvm-ovm/Driver/Pipelined

But you have to investigate how many tasks ‘do_pipelined_transfer’ you are running in the fork-join. It depends on the number of clock cycles the protocol needs and might be more than 2.
Following these recommendations gives you all the flexibility for further options.