Driving txn data to monitor from sequencer (No driver in the agent)

Is it possible to drive data directly from sequencer to monitor???
If yes, Could someone explain with a small code snippet ??
No virtual sequencer involved!!

In reply to DK2894erappa:

How do you stimulate your design?
Of couse you can make a direct connection from the sequencer to a monitor using an analysis port. You are writing the req directly to your analysis port and you’ll get it in the monitor if you have a direct connection established.

I dont have any DUT. There was requirement to bring up an Agent of this kind.
Could you please explain with the code snippet for monitor and sequencer?

In reply to Visheshanagu@276:

This needs a lot more details bout the interface attached to the agent. Typically a driver is a bus-functional model representing the part of the design NOT under test and not part of the testbench. It converts transactions into pin wiggles in the interface The monitor is a passive component that observes pin wiggles in the interface and coverts them back to transactions. The monitor words the same regardless of the interface being driven by the driver, or driven by another part of the larger DUT.

For some designs, like a MODEM or SERDES, it’s easy to be put into a “loopback” mode where the data you send on one interface is immediately sent back through another interface. But even that requires a small amount of code and knowledge of the interfaces involved.

Thanks for the replies!!
I just need to create an agent with seqr, monitor and coverage.
And then connect seqr to monitor.
And then connect monitor to coverage.

I Used a TLM analysis FIFO to connect monitor and seqr but still not able to get txn items.

More detailed explaination with monitor and sequencer code snippets on this would be helpful.

In reply to Visheshanagu@276:

The main problem is that in the default sequencer implementation the sequencer itself cannot initiate anything. Any activity comes from the driver.
The UVM base class library ha a push sequencer and puash driver. The push sequencer is sending transaction to the push driver. Extending your sequencer from the uvm_push_sequencer and your monitor ftom the uvm_push_driver would be a solution.
Please give me a few hours to make an example.

In reply to chr_sue:

Okay Thank you!!

In reply to Visheshanagu@276:
Please find here the example:

Note the sequencer is explicitly putting a seq_item to the monitor. The monitor writes this seq_item to its analysis prt whichj is connected to the coverage collector.

In reply to chr_sue:

Thank you !!