|
scc 2025.09
SystemC components library
|
The TLM2 transaction recorder. More...
#include <tlc_recorder.h>


Public Types | |
| using | BASE = tlc_recorder<TYPES> |
| Public Types inherited from tilelink::scv::tlc_recorder< tilelink::tl_protocol_types > | |
| using | initiator_socket_type |
| using | target_socket_type |
| using | recording_types |
| using | mm |
| using | tlm_recording_payload |
Public Member Functions | |
| SC_HAS_PROCESS (axitlm_recorder_module) | |
| tlc_recorder_module (sc_core::sc_module_name name, bool recording_enabled=true, SCVNS scv_tr_db *tr_db=SCVNS scv_tr_db::get_default_db()) | |
| The constructor of the component. | |
| BASE::template target_socket_type< BUSWIDTH >::base_type::fw_interface_type * | get_fw_if () override |
| the port where fw accesses are forwarded to | |
| BASE::template target_socket_type< BUSWIDTH >::base_type::bw_interface_type * | get_bw_if () override |
| the port where bw accesses are forwarded to | |
| Public Member Functions inherited from tilelink::scv::tlc_recorder< tilelink::tl_protocol_types > | |
| SC_HAS_PROCESS (tlc_recorder< tilelink::tl_protocol_types >) | |
| tlc_recorder (const char *name, unsigned bus_width, bool recording_enabled=true, SCVNS scv_tr_db *tr_db=SCVNS scv_tr_db::get_default_db()) | |
| The constructor of the component. | |
| tlm::tlm_sync_enum | nb_transport_fw (typename tilelink::tl_protocol_types::tlm_payload_type &trans, typename tilelink::tl_protocol_types::tlm_phase_type &phase, sc_core::sc_time &delay) override |
| The non-blocking forward transport function. | |
| tlm::tlm_sync_enum | nb_transport_bw (typename tilelink::tl_protocol_types::tlm_payload_type &trans, typename tilelink::tl_protocol_types::tlm_phase_type &phase, sc_core::sc_time &delay) override |
| The non-blocking backward transport function. | |
| void | b_transport (typename tilelink::tl_protocol_types::tlm_payload_type &trans, sc_core::sc_time &delay) override |
| The blocking transport function. | |
| void | b_snoop (typename tilelink::tl_protocol_types::tlm_payload_type &trans, sc_core::sc_time &delay) override |
| The blocking snoop function. | |
| bool | get_direct_mem_ptr (typename tilelink::tl_protocol_types::tlm_payload_type &trans, tlm::tlm_dmi &dmi_data) override |
| The direct memory interface forward function. | |
| void | invalidate_direct_mem_ptr (sc_dt::uint64 start_addr, sc_dt::uint64 end_addr) override |
| The direct memory interface backward function. | |
| unsigned int | transport_dbg (typename tilelink::tl_protocol_types::tlm_payload_type &trans) override |
| The debug transportfunction. | |
| bool | isRecordingBlockingTxEnabled () const |
| get the current state of transaction recording | |
| bool | isRecordingNonBlockingTxEnabled () const |
| get the current state of transaction recording | |
| Public Member Functions inherited from tilelink::bw_blocking_transport_if< tilelink::tl_protocol_types::tlm_payload_type > | |
| virtual void | b_snoop (tilelink::tl_protocol_types::tlm_payload_type &trans, sc_core::sc_time &t)=0 |
| snoop access to a snooped master | |
Public Attributes | |
| BASE::template target_socket_type< BUSWIDTH > | ts {"ts"} |
| The target socket of the recorder to be bound to the initiator. | |
| BASE::template initiator_socket_type< BUSWIDTH > | is {"is"} |
| The initiator to be bound to the target socket. | |
| Public Attributes inherited from tilelink::scv::tlc_recorder< tilelink::tl_protocol_types > | |
| sc_core::sc_attribute< bool > | enableBlTracing |
| the attribute to selectively enable/disable recording of blocking protocol tx | |
| sc_core::sc_attribute< bool > | enableNbTracing |
| the attribute to selectively enable/disable recording of non-blocking protocol tx | |
| sc_core::sc_attribute< bool > | enableTimedTracing |
| the attribute to selectively enable/disable timed recording | |
| sc_core::sc_attribute< bool > | enableDmiTracing |
| the attribute to selectively enable/disable DMI recording | |
| sc_core::sc_attribute< bool > | enableTrDbgTracing |
| the attribute to selectively enable/disable transport dbg recording | |
| sc_core::sc_attribute< bool > | enableProtocolChecker |
| the attribute to enable/disable protocol checking | |
| sc_core::sc_attribute< unsigned > | rd_response_timeout |
| sc_core::sc_attribute< unsigned > | wr_response_timeout |
Additional Inherited Members | |
| Protected Member Functions inherited from tilelink::scv::tlc_recorder< tilelink::tl_protocol_types > | |
| void | initialize_streams () |
The TLM2 transaction recorder.
This module records all TLM transaction to a SCV transaction stream for further viewing and analysis. The handle of the created transaction is storee in an tlm_extension so that another instance of the scv_tlm2_recorder e.g. further down the opath can link to it. The transaction recorder is simply bound between an existing pair of initiator and target sockets
Definition at line 344 of file tlc_recorder.h.
| using tilelink::scv::tlc_recorder_module< BUSWIDTH, TYPES >::BASE = tlc_recorder<TYPES> |
Definition at line 346 of file tlc_recorder.h.
|
inline |
The constructor of the component.
| name | is the SystemC module name of the recorder |
| tr_db | is a pointer to a transaction recording database. If none is provided the default one is retrieved. If this database is not initialized (e.g. by not calling scv_tr_db::set_default_db() ) recording is disabled. |
Definition at line 361 of file tlc_recorder.h.
|
inline |
Definition at line 378 of file tlc_recorder.h.
|
inlineoverridevirtual |
the port where bw accesses are forwarded to
Implements tilelink::scv::tlc_recorder< tilelink::tl_protocol_types >.
Definition at line 384 of file tlc_recorder.h.
|
inlineoverridevirtual |
the port where fw accesses are forwarded to
Implements tilelink::scv::tlc_recorder< tilelink::tl_protocol_types >.
Definition at line 380 of file tlc_recorder.h.
| BASE::template initiator_socket_type<BUSWIDTH> tilelink::scv::tlc_recorder_module< BUSWIDTH, TYPES >::is {"is"} |
The initiator to be bound to the target socket.
Definition at line 351 of file tlc_recorder.h.
| BASE::template target_socket_type<BUSWIDTH> tilelink::scv::tlc_recorder_module< BUSWIDTH, TYPES >::ts {"ts"} |
The target socket of the recorder to be bound to the initiator.
Definition at line 349 of file tlc_recorder.h.