TLM-2.0  2.0.3
Accellera TLM-2.0 proof-of-concept library
Classes | Enumerations | Functions | Variables
tlm Namespace Reference

Classes

class  tlm_analysis_fifo
 
class  tlm_analysis_if
 
class  tlm_delayed_analysis_if
 
class  tlm_analysis_port
 
struct  tlm_analysis_triple
 
class  tlm_write_if
 
class  tlm_delayed_write_if
 
class  tlm_transport_if
 
class  tlm_blocking_get_if
 
class  tlm_blocking_put_if
 
class  tlm_nonblocking_get_if
 
class  tlm_nonblocking_put_if
 
class  tlm_get_if
 
class  tlm_put_if
 
class  tlm_blocking_peek_if
 
class  tlm_nonblocking_peek_if
 
class  tlm_peek_if
 
class  tlm_blocking_get_peek_if
 
class  tlm_nonblocking_get_peek_if
 
class  tlm_get_peek_if
 
class  tlm_fifo_debug_if
 
class  tlm_fifo_put_if
 
class  tlm_fifo_get_if
 
class  tlm_fifo_config_size_if
 
class  tlm_blocking_master_if
 
class  tlm_blocking_slave_if
 
class  tlm_nonblocking_master_if
 
class  tlm_nonblocking_slave_if
 
class  tlm_master_if
 
class  tlm_slave_if
 
class  tlm_tag
 
class  tlm_transport_to_master
 
class  tlm_slave_to_transport
 
class  circular_buffer
 
class  tlm_fifo
 
class  tlm_put_get_imp
 
class  tlm_master_imp
 
class  tlm_slave_imp
 
class  tlm_req_rsp_channel
 
class  tlm_transport_channel
 
class  tlm_event_finder_t
 
class  tlm_nonblocking_get_port
 
class  tlm_nonblocking_peek_port
 
class  tlm_nonblocking_put_port
 
class  tlm_dmi
 
class  tlm_fw_nonblocking_transport_if
 
class  tlm_bw_nonblocking_transport_if
 
class  tlm_blocking_transport_if
 
class  tlm_fw_direct_mem_if
 
class  tlm_bw_direct_mem_if
 
class  tlm_transport_dbg_if
 
struct  tlm_base_protocol_types
 
class  tlm_fw_transport_if
 
class  tlm_bw_transport_if
 
class  tlm_array
 
class  tlm_endian_context_pool
 
class  tlm_endian_context
 
class  tlm_bool
 
class  tlm_mm_interface
 
class  tlm_extension_base
 
class  tlm_extension
 
class  tlm_generic_payload
 
class  tlm_phase
 
class  tlm_global_quantum
 
class  tlm_base_initiator_socket_b
 
class  tlm_base_target_socket_b
 
class  tlm_base_target_socket
 
class  tlm_base_initiator_socket
 
class  tlm_initiator_socket
 
class  tlm_target_socket
 

Enumerations

enum  tlm_sync_enum { TLM_ACCEPTED, TLM_UPDATED, TLM_COMPLETED }
 
enum  tlm_command { TLM_READ_COMMAND, TLM_WRITE_COMMAND, TLM_IGNORE_COMMAND }
 
enum  tlm_response_status {
  TLM_OK_RESPONSE = 1, TLM_INCOMPLETE_RESPONSE = 0, TLM_GENERIC_ERROR_RESPONSE = -1, TLM_ADDRESS_ERROR_RESPONSE = -2,
  TLM_COMMAND_ERROR_RESPONSE = -3, TLM_BURST_ERROR_RESPONSE = -4, TLM_BYTE_ENABLE_ERROR_RESPONSE = -5
}
 
enum  tlm_gp_option { TLM_MIN_PAYLOAD, TLM_FULL_PAYLOAD, TLM_FULL_PAYLOAD_ACCEPTED }
 
enum  tlm_endianness { TLM_UNKNOWN_ENDIAN, TLM_LITTLE_ENDIAN, TLM_BIG_ENDIAN }
 
enum  tlm_phase_enum {
  UNINITIALIZED_PHASE =0, BEGIN_REQ =1, END_REQ, BEGIN_RESP,
  END_RESP
}
 

Functions

tlm_endian_contextestablish_context (tlm_generic_payload *txn)
 
void copy_db0 (uchar *src1, uchar *src2, uchar *dest1, uchar *dest2)
 
void copy_dbtrue0 (uchar *src1, uchar *src2, uchar *dest1, uchar *dest2)
 
void copy_btrue0 (uchar *src1, uchar *src2, uchar *dest1, uchar *dest2)
 
void copy_b0 (uchar *src1, uchar *src2, uchar *dest1, uchar *dest2)
 
void copy_dbyb0 (uchar *src1, uchar *src2, uchar *dest1, uchar *dest2)
 
template<class D , void COPY>
void loop_generic0 (int new_len, int new_stream_width, int orig_stream_width, int sizeof_databus, sc_dt::uint64 orig_start_address, sc_dt::uint64 new_start_address, int be_length, uchar *ie_data, uchar *ie_be, uchar *he_data, uchar *he_be)
 
template<class DATAWORD >
void tlm_from_hostendian_generic (tlm_generic_payload *txn, unsigned int sizeof_databus)
 
template<class DATAWORD >
void tlm_to_hostendian_generic (tlm_generic_payload *txn, unsigned int sizeof_databus)
 
template<class D >
void copy_d1 (uchar *src1, uchar *src2, uchar *dest1, uchar *dest2)
 
template<class D >
void copy_db1 (uchar *src1, uchar *src2, uchar *dest1, uchar *dest2)
 
template<class D >
void true_b1 (uchar *src1, uchar *src2, uchar *dest1, uchar *dest2)
 
template<class D >
void copy_b1 (uchar *src1, uchar *src2, uchar *dest1, uchar *dest2)
 
template<class D >
void copy_dbyb1 (uchar *src1, uchar *src2, uchar *dest1, uchar *dest2)
 
template<class D >
void copy_dbytrue1 (uchar *src1, uchar *src2, uchar *dest1, uchar *dest2)
 
template<class D >
void false_b1 (uchar *dest1)
 
template<class D >
void no_b1 (uchar *dest1)
 
template<class D , void COPY, void COPYuchar, void FILLFALSE, void FILLFALSEuchar>
int loop_word1 (int bytes_left, int len0, int lenN, int sizeof_databus, uchar *start, uchar *end, uchar *src, uchar *bsrc, uchar *dest, uchar *bdest)
 
template<class DATAWORD >
void tlm_from_hostendian_word (tlm_generic_payload *txn, unsigned int sizeof_databus)
 
template<class DATAWORD >
void tlm_to_hostendian_word (tlm_generic_payload *txn, unsigned int sizeof_databus)
 
template<class D >
void copy_d2 (D *src1, D *src2, D *dest1, D *dest2)
 
template<class D >
void copy_db2 (D *src1, D *src2, D *dest1, D *dest2)
 
template<class D >
void copy_dbyb2 (D *src1, D *src2, D *dest1, D *dest2)
 
template<class D , void COPY>
void loop_aligned2 (D *src1, D *src2, D *dest1, D *dest2, int words, int words_per_bus)
 
template<class DATAWORD >
void tlm_from_hostendian_aligned (tlm_generic_payload *txn, unsigned int sizeof_databus)
 
template<class DATAWORD >
void tlm_to_hostendian_aligned (tlm_generic_payload *txn, unsigned int sizeof_databus)
 
template<class DATAWORD >
void tlm_from_hostendian_single (tlm_generic_payload *txn, unsigned int sizeof_databus)
 
template<class DATAWORD >
void tlm_to_hostendian_single (tlm_generic_payload *txn, unsigned int sizeof_databus)
 
void tlm_from_hostendian (tlm_generic_payload *txn)
 
unsigned int max_num_extensions (bool increment=false)
 
tlm_endianness get_host_endianness (void)
 
bool host_has_little_endianness (void)
 
bool has_host_endianness (tlm_endianness endianness)
 
unsigned int create_phase_number ()
 
std::vector< const char * > & get_phase_name_vec ()
 
std::ostream & operator<< (std::ostream &s, const tlm_phase &p)
 
const unsigned int tlm_version_major (TLM_VERSION_MAJOR)
 
const unsigned int tlm_version_minor (TLM_VERSION_MINOR)
 
const unsigned int tlm_version_patch (TLM_VERSION_PATCH)
 
const bool tlm_is_prerelease (TLM_IS_PRERELEASE)
 
const std::string tlm_version_string (TLM_VERSION_STRING)
 
const std::string tlm_version_originator (TLM_VERSION_ORIGINATOR)
 
const std::string tlm_version_prerelease (TLM_VERSION_PRERELEASE)
 
const std::string tlm_version_release_date (TLM_VERSION_STRING_RELEASE_DATE)
 
const std::string tlm_copyright_string (TLM_COPYRIGHT)
 
const std::string tlm_version_string_2 (TLM_VERSION_STRING_2)
 
const char * tlm_release (void)
 
const char * tlm_version (void)
 
const char * tlm_copyright (void)
 

Variables

static tlm_endian_context_pool global_tlm_endian_context_pool
 

Enumeration Type Documentation

Enumerator
TLM_READ_COMMAND 
TLM_WRITE_COMMAND 
TLM_IGNORE_COMMAND 

Definition at line 92 of file tlm_gp.h.

Enumerator
TLM_UNKNOWN_ENDIAN 
TLM_LITTLE_ENDIAN 
TLM_BIG_ENDIAN 

Definition at line 36 of file tlm_helpers.h.

Enumerator
TLM_MIN_PAYLOAD 
TLM_FULL_PAYLOAD 
TLM_FULL_PAYLOAD_ACCEPTED 

Definition at line 108 of file tlm_gp.h.

Enumerator
UNINITIALIZED_PHASE 
BEGIN_REQ 
END_REQ 
BEGIN_RESP 
END_RESP 

Definition at line 29 of file tlm_phase.h.

Enumerator
TLM_OK_RESPONSE 
TLM_INCOMPLETE_RESPONSE 
TLM_GENERIC_ERROR_RESPONSE 
TLM_ADDRESS_ERROR_RESPONSE 
TLM_COMMAND_ERROR_RESPONSE 
TLM_BURST_ERROR_RESPONSE 
TLM_BYTE_ENABLE_ERROR_RESPONSE 

Definition at line 98 of file tlm_gp.h.

Enumerator
TLM_ACCEPTED 
TLM_UPDATED 
TLM_COMPLETED 

Definition at line 27 of file tlm_fw_bw_ifs.h.

Function Documentation

void tlm::copy_b0 ( uchar src1,
uchar src2,
uchar dest1,
uchar dest2 
)
inline

Definition at line 300 of file tlm_endian_conv.h.

template<class D >
void tlm::copy_b1 ( uchar src1,
uchar src2,
uchar dest1,
uchar dest2 
)
inline

Definition at line 442 of file tlm_endian_conv.h.

void tlm::copy_btrue0 ( uchar src1,
uchar src2,
uchar dest1,
uchar dest2 
)
inline

Definition at line 296 of file tlm_endian_conv.h.

template<class D >
void tlm::copy_d1 ( uchar src1,
uchar src2,
uchar dest1,
uchar dest2 
)
inline

Definition at line 425 of file tlm_endian_conv.h.

template<class D >
void tlm::copy_d2 ( D *  src1,
D *  src2,
D *  dest1,
D *  dest2 
)
inline

Definition at line 628 of file tlm_endian_conv.h.

void tlm::copy_db0 ( uchar src1,
uchar src2,
uchar dest1,
uchar dest2 
)
inline

Definition at line 286 of file tlm_endian_conv.h.

template<class D >
void tlm::copy_db1 ( uchar src1,
uchar src2,
uchar dest1,
uchar dest2 
)
inline

Definition at line 431 of file tlm_endian_conv.h.

template<class D >
void tlm::copy_db2 ( D *  src1,
D *  src2,
D *  dest1,
D *  dest2 
)
inline

Definition at line 632 of file tlm_endian_conv.h.

void tlm::copy_dbtrue0 ( uchar src1,
uchar src2,
uchar dest1,
uchar dest2 
)
inline

Definition at line 291 of file tlm_endian_conv.h.

void tlm::copy_dbyb0 ( uchar src1,
uchar src2,
uchar dest1,
uchar dest2 
)
inline

Definition at line 304 of file tlm_endian_conv.h.

template<class D >
void tlm::copy_dbyb1 ( uchar src1,
uchar src2,
uchar dest1,
uchar dest2 
)
inline

Definition at line 447 of file tlm_endian_conv.h.

template<class D >
void tlm::copy_dbyb2 ( D *  src1,
D *  src2,
D *  dest1,
D *  dest2 
)
inline

Definition at line 638 of file tlm_endian_conv.h.

template<class D >
void tlm::copy_dbytrue1 ( uchar src1,
uchar src2,
uchar dest1,
uchar dest2 
)
inline

Definition at line 452 of file tlm_endian_conv.h.

unsigned int tlm::create_phase_number ( )
inline

Definition at line 31 of file tlm_phase.h.

tlm_endian_context* tlm::establish_context ( tlm_generic_payload *  txn)
inline

Definition at line 226 of file tlm_endian_conv.h.

template<class D >
void tlm::false_b1 ( uchar dest1)
inline

Definition at line 456 of file tlm_endian_conv.h.

tlm_endianness tlm::get_host_endianness ( void  )
inline

Definition at line 38 of file tlm_helpers.h.

std::vector<const char*>& tlm::get_phase_name_vec ( )
inline

Definition at line 36 of file tlm_phase.h.

bool tlm::has_host_endianness ( tlm_endianness  endianness)
inline

Definition at line 66 of file tlm_helpers.h.

bool tlm::host_has_little_endianness ( void  )
inline

Definition at line 51 of file tlm_helpers.h.

template<class D , void COPY>
void tlm::loop_aligned2 ( D *  src1,
D *  src2,
D *  dest1,
D *  dest2,
int  words,
int  words_per_bus 
)
inline

Definition at line 643 of file tlm_endian_conv.h.

template<class D , void COPY>
void tlm::loop_generic0 ( int  new_len,
int  new_stream_width,
int  orig_stream_width,
int  sizeof_databus,
sc_dt::uint64  orig_start_address,
sc_dt::uint64  new_start_address,
int  be_length,
uchar ie_data,
uchar ie_be,
uchar he_data,
uchar he_be 
)
inline

Definition at line 311 of file tlm_endian_conv.h.

template<class D , void COPY, void COPYuchar, void FILLFALSE, void FILLFALSEuchar>
int tlm::loop_word1 ( int  bytes_left,
int  len0,
int  lenN,
int  sizeof_databus,
uchar start,
uchar end,
uchar src,
uchar bsrc,
uchar dest,
uchar bdest 
)
inline

Definition at line 467 of file tlm_endian_conv.h.

unsigned int tlm::max_num_extensions ( bool  increment = false)
inline

Definition at line 46 of file tlm_gp.h.

template<class D >
void tlm::no_b1 ( uchar dest1)
inline

Definition at line 460 of file tlm_endian_conv.h.

std::ostream& tlm::operator<< ( std::ostream &  s,
const tlm_phase &  p 
)
inline

Definition at line 54 of file tlm_phase.h.

const char* tlm::tlm_copyright ( void  )
inline

Definition at line 170 of file tlm_version.h.

const std::string tlm::tlm_copyright_string ( TLM_COPYRIGHT  )
void tlm::tlm_from_hostendian ( tlm_generic_payload *  txn)
inline

Definition at line 776 of file tlm_endian_conv.h.

template<class DATAWORD >
void tlm::tlm_from_hostendian_aligned ( tlm_generic_payload *  txn,
unsigned int  sizeof_databus 
)
inline

Definition at line 667 of file tlm_endian_conv.h.

template<class DATAWORD >
void tlm::tlm_from_hostendian_generic ( tlm_generic_payload *  txn,
unsigned int  sizeof_databus 
)
inline

Definition at line 340 of file tlm_endian_conv.h.

template<class DATAWORD >
void tlm::tlm_from_hostendian_single ( tlm_generic_payload *  txn,
unsigned int  sizeof_databus 
)
inline

Definition at line 752 of file tlm_endian_conv.h.

template<class DATAWORD >
void tlm::tlm_from_hostendian_word ( tlm_generic_payload *  txn,
unsigned int  sizeof_databus 
)
inline

Definition at line 530 of file tlm_endian_conv.h.

const bool tlm::tlm_is_prerelease ( TLM_IS_PRERELEASE  )
const char* tlm::tlm_release ( void  )
inline

Definition at line 154 of file tlm_version.h.

template<class DATAWORD >
void tlm::tlm_to_hostendian_aligned ( tlm_generic_payload *  txn,
unsigned int  sizeof_databus 
)
inline

Definition at line 697 of file tlm_endian_conv.h.

template<class DATAWORD >
void tlm::tlm_to_hostendian_generic ( tlm_generic_payload *  txn,
unsigned int  sizeof_databus 
)
inline

Definition at line 354 of file tlm_endian_conv.h.

template<class DATAWORD >
void tlm::tlm_to_hostendian_single ( tlm_generic_payload *  txn,
unsigned int  sizeof_databus 
)
inline

Definition at line 760 of file tlm_endian_conv.h.

template<class DATAWORD >
void tlm::tlm_to_hostendian_word ( tlm_generic_payload *  txn,
unsigned int  sizeof_databus 
)
inline

Definition at line 561 of file tlm_endian_conv.h.

const char* tlm::tlm_version ( void  )
inline

Definition at line 162 of file tlm_version.h.

const unsigned int tlm::tlm_version_major ( TLM_VERSION_MAJOR  )
const unsigned int tlm::tlm_version_minor ( TLM_VERSION_MINOR  )
const std::string tlm::tlm_version_originator ( TLM_VERSION_ORIGINATOR  )
const unsigned int tlm::tlm_version_patch ( TLM_VERSION_PATCH  )
const std::string tlm::tlm_version_prerelease ( TLM_VERSION_PRERELEASE  )
const std::string tlm::tlm_version_release_date ( TLM_VERSION_STRING_RELEASE_DATE  )
const std::string tlm::tlm_version_string ( TLM_VERSION_STRING  )
const std::string tlm::tlm_version_string_2 ( TLM_VERSION_STRING_2  )
template<class D >
void tlm::true_b1 ( uchar src1,
uchar src2,
uchar dest1,
uchar dest2 
)
inline

Definition at line 437 of file tlm_endian_conv.h.

Variable Documentation

tlm_endian_context_pool tlm::global_tlm_endian_context_pool
static

Definition at line 163 of file tlm_endian_conv.h.