scc  2022.4.0
SystemC components library
ahb Namespace Reference

TLM2.0 components modeling AHB. More...

Namespaces

 pe
 protocol engine implementations
 
 pin
 pin level adapters
 

Classes

struct  enable_for_enum
 
struct  ahb_extension
 

Enumerations

enum class  lock_e : uint8_t { NORMAL = 0x0 , EXLUSIVE = 0x1 , LOCKED = 0x2 }
 
enum class  resp_e : uint8_t { OKAY = 0x0 , EXOKAY = 0x1 , SLVERR = 0x2 , DECERR = 0x3 }
 
enum class  trans_e : uint8_t { IDLE = 0x0 , BUSY = 0x1 , NONSEQ = 0x2 , SEQ = 0x3 }
 
enum class  burst_e : uint8_t {
  SINGLE = 0x0 , INCR = 0x1 , WRAP4 = 0x2 , INCR4 = 0x3 ,
  WRAP8 = 0x4 , INCR8 = 0x5 , WRAP16 = 0x6 , INCR16 = 0x7
}
 

Functions

template<>
const char * to_char< burst_e > (burst_e v)
 
template<>
const char * to_char< resp_e > (resp_e v)
 
std::ostream & operator<< (std::ostream &os, const tlm::tlm_generic_payload &t)
 
template<typename E >
into (typename std::underlying_type< E >::type t)
 
template<typename E , typename ULT = typename std::underlying_type<E>::type, typename X = typename std::enable_if<std::is_enum<E>::value && !std::is_convertible<E, ULT>::value, bool>::type>
constexpr ULT to_int (E t)
 
template<typename E >
const char * to_char (E t)
 
template<typename E , typename std::enable_if< enable_for_enum< E >::value, bool >::type >
std::ostream & operator<< (std::ostream &os, E e)
 

Detailed Description

TLM2.0 components modeling AHB.

Function Documentation

◆ into()

template<typename E >
E ahb::into ( typename std::underlying_type< E >::type  t)
inline

helper function to convert integer into class enums

Parameters
t
Returns

◆ operator<<()

template<typename E , typename std::enable_if< enable_for_enum< E >::value, bool >::type >
std::ostream& ahb::operator<< ( std::ostream &  os,
e 
)
inline
Parameters
os
e
Returns

Definition at line 60 of file ahb_tlm.h.

◆ to_char()

template<typename E >
const char* ahb::to_char ( t)

helper function to convert class enums into char string

Parameters
t
Returns

◆ to_int()

template<typename E , typename ULT = typename std::underlying_type<E>::type, typename X = typename std::enable_if<std::is_enum<E>::value && !std::is_convertible<E, ULT>::value, bool>::type>
constexpr ULT ahb::to_int ( t)
inlineconstexpr

helper function to convert class enums into integer

Parameters
t
Returns

Definition at line 44 of file ahb_tlm.h.