Difference between the uvm_tlm_fifo and uvm_tlm_analysis_fifo

Hi All,

uvm_tlm_analysis_fifo is extended from the uvm_tlm_fifo.
From the source code of the uvm_tlm_analysis_fifo I understood that, this component will support the unbounded size of data. where uvm_tlm_fifo can not support.

Apart from the above difference is there any difference between the uvm_tlm_fifo and the uvm_analysis_tlm_fifo.

Thanks & Regards,
Shriramvaraprasad B.

In reply to SHRI12326:

The source code for the class
uvm_tlm_analysis_fifo
shows you precisely what the differences are.

The class
uvm_tlm_fifo
supports both bounded and unbounded fifos. But when the constructor of
uvm_tlm_analysis_fifo
calls super.new(), it fixes the size argument to unbounded, 0. It also constructs an analysis_export, which implements the necessary write() method, which calls the fifos try_put() method.

In reply to dave_59:

Thank you dave.