|
gem5
v21.2.1.1
|
#include <sc_fifo.hh>
Public Member Functions | |
| sc_fifo (int size=16) | |
| sc_fifo (const char *name, int size=16) | |
| virtual | ~sc_fifo () |
| virtual void | register_port (sc_port_base &port, const char *iface_type_name) |
| virtual void | read (T &t) |
| virtual T | read () |
| virtual bool | nb_read (T &t) |
| operator T () | |
| virtual void | write (const T &t) |
| virtual bool | nb_write (const T &t) |
| sc_fifo< T > & | operator= (const T &t) |
| virtual const sc_event & | data_written_event () const |
| virtual const sc_event & | data_read_event () const |
| virtual int | num_available () const |
| virtual int | num_free () const |
| virtual void | print (std::ostream &os=std::cout) const |
| virtual void | dump (std::ostream &os=std::cout) const |
| virtual const char * | kind () const |
Public Member Functions inherited from sc_core::sc_interface | |
| virtual const sc_event & | default_event () const |
| virtual | ~sc_interface () |
Public Member Functions inherited from sc_core::sc_object | |
| const char * | name () const |
| const char * | basename () const |
| virtual const std::vector< sc_object * > & | get_child_objects () const |
| virtual const std::vector< sc_event * > & | get_child_events () const |
| sc_object * | get_parent_object () const |
| bool | add_attribute (sc_attr_base &) |
| sc_attr_base * | get_attribute (const std::string &) |
| sc_attr_base * | remove_attribute (const std::string &) |
| void | remove_all_attributes () |
| int | num_attributes () const |
| sc_attr_cltn & | attr_cltn () |
| const sc_attr_cltn & | attr_cltn () const |
| sc_simcontext * | simcontext () const |
Private Member Functions | |
| sc_fifo (const sc_fifo< T > &) | |
| sc_fifo & | operator= (const sc_fifo< T > &) |
Private Attributes | |
| sc_gem5::InternalScEvent | _dataReadEvent |
| sc_gem5::InternalScEvent | _dataWriteEvent |
| sc_port_base * | _reader |
| sc_port_base * | _writer |
| int | _size |
| int | _num_free |
| int | _num_available |
| std::list< T > | _entries |
| bool | _readsHappened |
| bool | _writesHappened |
Definition at line 48 of file sc_fifo.hh.
|
inlineexplicit |
Definition at line 53 of file sc_fifo.hh.
|
inlineexplicit |
Definition at line 60 of file sc_fifo.hh.
|
inlinevirtual |
Definition at line 66 of file sc_fifo.hh.
|
inlineprivate |
Definition at line 197 of file sc_fifo.hh.
|
inlinevirtual |
Implements sc_core::sc_fifo_nonblocking_out_if< T >.
Definition at line 151 of file sc_fifo.hh.
References sc_core::sc_fifo< T >::_dataReadEvent.
|
inlinevirtual |
Implements sc_core::sc_fifo_nonblocking_in_if< T >.
Definition at line 146 of file sc_fifo.hh.
References sc_core::sc_fifo< T >::_dataWriteEvent.
|
inlinevirtual |
Reimplemented from sc_core::sc_object.
Definition at line 168 of file sc_fifo.hh.
References sc_core::sc_fifo< T >::_entries, sc_core::sc_object::name(), and gem5::X86ISA::os.
|
inlinevirtual |
Reimplemented from sc_core::sc_prim_channel.
Definition at line 177 of file sc_fifo.hh.
|
inlinevirtual |
Implements sc_core::sc_fifo_nonblocking_in_if< T >.
Definition at line 107 of file sc_fifo.hh.
References sc_core::sc_fifo< T >::num_available(), sc_core::sc_fifo< T >::read(), and gem5::ArmISA::t.
|
inlinevirtual |
Implements sc_core::sc_fifo_nonblocking_out_if< T >.
Definition at line 129 of file sc_fifo.hh.
References sc_core::sc_fifo< T >::num_free(), gem5::ArmISA::t, and sc_core::sc_fifo< T >::write().
|
inlinevirtual |
Implements sc_core::sc_fifo_in_if< T >.
Definition at line 156 of file sc_fifo.hh.
References sc_core::sc_fifo< T >::_num_available.
Referenced by sc_core::sc_fifo< T >::nb_read(), and sc_core::sc_fifo< T >::read().
|
inlinevirtual |
Implements sc_core::sc_fifo_out_if< T >.
Definition at line 157 of file sc_fifo.hh.
References sc_core::sc_fifo< T >::_num_free.
Referenced by sc_core::sc_fifo< T >::nb_write(), and sc_core::sc_fifo< T >::write().
|
inline |
Definition at line 116 of file sc_fifo.hh.
References sc_core::sc_fifo< T >::read().
|
inlineprivate |
Definition at line 199 of file sc_fifo.hh.
|
inline |
Definition at line 139 of file sc_fifo.hh.
References gem5::ArmISA::t, and sc_core::sc_fifo< T >::write().
|
inlinevirtual |
Reimplemented from sc_core::sc_object.
Definition at line 160 of file sc_fifo.hh.
References sc_core::sc_fifo< T >::_entries, and gem5::X86ISA::os.
|
inlinevirtual |
Implements sc_core::sc_fifo_blocking_in_if< T >.
Definition at line 100 of file sc_fifo.hh.
References gem5::ArmISA::t.
Referenced by sc_core::sc_fifo< T >::nb_read(), and sc_core::sc_fifo< T >::operator T().
|
inlinevirtual |
Implements sc_core::sc_fifo_blocking_in_if< T >.
Definition at line 89 of file sc_fifo.hh.
References sc_core::sc_fifo< T >::_dataWriteEvent, sc_core::sc_fifo< T >::_entries, sc_core::sc_fifo< T >::_num_available, sc_core::sc_fifo< T >::_readsHappened, sc_core::sc_fifo< T >::num_available(), sc_core::sc_prim_channel::request_update(), gem5::ArmISA::t, and sc_core::wait().
|
inlinevirtual |
Reimplemented from sc_core::sc_interface.
Definition at line 69 of file sc_fifo.hh.
References sc_core::sc_fifo< T >::_reader, sc_core::sc_fifo< T >::_writer, sc_core::sc_object::name(), sc_core::SC_ID_BIND_IF_TO_PORT_, sc_core::SC_ID_MORE_THAN_ONE_FIFO_READER_, sc_core::SC_ID_MORE_THAN_ONE_FIFO_WRITER_, and SC_REPORT_ERROR.
|
inlineprotectedvirtual |
Reimplemented from sc_core::sc_prim_channel.
Definition at line 181 of file sc_fifo.hh.
References sc_core::sc_fifo< T >::_dataReadEvent, sc_core::sc_fifo< T >::_dataWriteEvent, sc_core::sc_fifo< T >::_entries, sc_core::sc_fifo< T >::_num_available, sc_core::sc_fifo< T >::_num_free, sc_core::sc_fifo< T >::_readsHappened, sc_core::sc_fifo< T >::_size, sc_core::sc_fifo< T >::_writesHappened, sc_core::sc_event::notify(), and sc_core::SC_ZERO_TIME.
|
inlinevirtual |
Implements sc_core::sc_fifo_blocking_out_if< T >.
Definition at line 119 of file sc_fifo.hh.
References sc_core::sc_fifo< T >::_dataReadEvent, sc_core::sc_fifo< T >::_entries, sc_core::sc_fifo< T >::_num_free, sc_core::sc_fifo< T >::_writesHappened, sc_core::sc_fifo< T >::num_free(), sc_core::sc_prim_channel::request_update(), gem5::ArmISA::t, and sc_core::wait().
Referenced by sc_core::sc_fifo< T >::nb_write(), and sc_core::sc_fifo< T >::operator=().
|
private |
Definition at line 201 of file sc_fifo.hh.
Referenced by sc_core::sc_fifo< T >::data_read_event(), sc_core::sc_fifo< T >::update(), and sc_core::sc_fifo< T >::write().
|
private |
Definition at line 202 of file sc_fifo.hh.
Referenced by sc_core::sc_fifo< T >::data_written_event(), sc_core::sc_fifo< T >::read(), and sc_core::sc_fifo< T >::update().
|
mutableprivate |
Definition at line 210 of file sc_fifo.hh.
Referenced by sc_core::sc_fifo< T >::dump(), sc_core::sc_fifo< T >::print(), sc_core::sc_fifo< T >::read(), sc_core::sc_fifo< T >::update(), and sc_core::sc_fifo< T >::write().
|
private |
Definition at line 209 of file sc_fifo.hh.
Referenced by sc_core::sc_fifo< T >::num_available(), sc_core::sc_fifo< T >::read(), and sc_core::sc_fifo< T >::update().
|
private |
Definition at line 208 of file sc_fifo.hh.
Referenced by sc_core::sc_fifo< T >::num_free(), sc_core::sc_fifo< T >::update(), and sc_core::sc_fifo< T >::write().
|
private |
Definition at line 204 of file sc_fifo.hh.
Referenced by sc_core::sc_fifo< T >::register_port().
|
private |
Definition at line 211 of file sc_fifo.hh.
Referenced by sc_core::sc_fifo< T >::read(), and sc_core::sc_fifo< T >::update().
|
private |
Definition at line 207 of file sc_fifo.hh.
Referenced by sc_core::sc_fifo< T >::update().
|
private |
Definition at line 205 of file sc_fifo.hh.
Referenced by sc_core::sc_fifo< T >::register_port().
|
private |
Definition at line 212 of file sc_fifo.hh.
Referenced by sc_core::sc_fifo< T >::update(), and sc_core::sc_fifo< T >::write().