[source]

Class uvm_pkg::uvm_tlm_fifo

uvm_pkg::uvm_tlm_fifo <T> + type_name : string + can_get(): bit + can_peek(): bit + can_put(): bit + flush(): void + get() + get_type_name(): string + is_empty(): bit + is_full(): bit + peek() + put() + size(): int + try_get(): bit + try_peek(): bit + try_put(): bit + used(): int uvm_pkg::uvm_tlm_analysis_fifo <T> uvm_pkg::uvm_sequencer_analysis_fifo <RSP> <T : T> <T : RSP>

Inheritance Diagram of uvm_tlm_fifo

Class

uvm_tlm_fifo#(T)

This class provides storage of transactions between two independently running processes. Transactions are put into the FIFO via the put_export . transactions are fetched from the FIFO in the order they arrived via the get_peek_export . The put_export and get_peek_export are inherited from the <uvm_tlm_fifo_base #(T)> super class, and the interface methods provided by these exports are defined by the <uvm_tlm_if_base #(T1,T2)> class.

Parameters

Name

Default value

Description

T

int

Variables

Name

Type

Description

type_name

string

Constructors

new(string name, uvm_component parent = null, int size = 1)

Function

new

The name and parent are the normal uvm_component constructor arguments. The parent should be null if the <uvm_tlm_fifo#(T)> is going to be used in a statically elaborated construct (e.g., a module). The size indicates the maximum size of the FIFO; a value of zero indicates no upper bound.

Parameters:

Functions

get_type_name()
size()

Function

size

Returns the capacity of the FIFO-- that is, the number of entries the FIFO is capable of holding. A return value of 0 indicates the FIFO capacity has no limit.

used()

Function

used

Returns the number of entries put into the FIFO.

is_empty()

Function

is_empty

Returns 1 when there are no entries in the FIFO, 0 otherwise.

is_full()

Function

is_full

Returns 1 when the number of entries in the FIFO is equal to its size, 0 otherwise.

try_get(int t)
Parameters:

t (int)

try_peek(int t)
Parameters:

t (int)

try_put(int t)
Parameters:

t (int)

can_put()
can_get()
can_peek()
flush()

Function

flush

Removes all entries from the FIFO, after which used returns 0 and is_empty returns 1.

Tasks

put(int t)
Parameters:

t (int)

get(int t)
Parameters:

t (int)

peek(int t)
Parameters:

t (int)