Class uvm_tlm_fifo_base
Name |
Default value |
Description |
---|---|---|
T |
int |
Name |
Type |
Description |
---|---|---|
put_export |
The put_export provides both the blocking and non-blocking put interface methods to any attached port: task put (input T t)
function bit can_put ()
function bit try_put (input T t)
Any put port variant can connect and send transactions to the FIFO via this export, provided the transaction types match. See <uvm_tlm_if_base #(T1,T2)> for more information on each of the above interface methods. |
|
get_peek_export |
The get_peek_export provides all the blocking and non-blocking get and peek interface methods: task get (output T t)
function bit can_get ()
function bit try_get (output T t)
task peek (output T t)
function bit can_peek ()
function bit try_peek (output T t)
Any get or peek port variant can connect to and retrieve transactions from the FIFO via this export, provided the transaction types match. See <uvm_tlm_if_base #(T1,T2)> for more information on each of the above interface methods. |
|
put_ap |
Transactions passed via put or try_put (via any port connected to the put_export) are sent out this port via its write method. function void write (T t)
All connected analysis exports and imps will receive put transactions. See <uvm_tlm_if_base #(T1,T2)> for more information on the write interface method. |
|
get_ap |
Transactions passed via get , try_get , peek , or try_peek (via any port connected to the get_peek_export) are sent out this port via its write method. function void write (T t)
All connected analysis exports and imps will receive get transactions. See <uvm_tlm_if_base #(T1,T2)> for more information on the write method. |
|
blocking_put_export |
The following are aliases to the above put_export. |
|
nonblocking_put_export |
||
blocking_get_export |
The following are all aliased to the above get_peek_export, which provides the superset of these interfaces. |
|
nonblocking_get_export |
||
get_export |
||
blocking_peek_export |
||
nonblocking_peek_export |
||
peek_export |
||
blocking_get_peek_export |
||
nonblocking_get_peek_export |
Name |
Actual Type |
Description |
---|---|---|
this_type |
Constructors
- function new ( string name, uvm_component parent ) [source]
The name and parent are the normal uvm_component constructor arguments. The parent should be null if the uvm_tlm_fifo 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.
Functions
- virtual function uvm_tlm_event ok_to_put ( ) [source]
- virtual function uvm_tlm_event ok_to_get ( ) [source]
- virtual function uvm_tlm_event ok_to_peek ( ) [source]
CLASS
uvm_tlm_fifo_base #(T)
This class is the base for <uvm_tlm_fifo#(T)>. It defines the TLM exports through which all transaction-based FIFO operations occur. It also defines default implementations for each interface method provided by these exports.
The interface methods provided by the put_export and the get_peek_export are defined and described by <uvm_tlm_if_base #(T1,T2)>. See the TLM Overview section for a general discussion of TLM interface definition and usage.
Parameter type
T
The type of transactions to be stored by this FIFO.