scc
2022.4.0
SystemC components library
|
#include <axi_tlm.h>
Public Member Functions | |
axi3_extension ()=default | |
the default constructor | |
axi3_extension (const axi3_extension *o) | |
the copy constructor More... | |
tlm::tlm_extension_base * | clone () const override |
the clone function to create deep copies of More... | |
void | copy_from (tlm::tlm_extension_base const &ext) override |
deep copy all values from ext More... | |
Public Member Functions inherited from axi::axi_extension< axi3 > | |
axi_extension ()=default | |
the default constructor | |
axi_extension (const axi_extension< axi3, response > *) | |
the copy constructor More... | |
virtual | ~axi_extension () |
void | reset () |
reset all data member to their default | |
void | reset (const axi3 *) |
reset the common and response part, reset response using the given reset value More... | |
void | add_to_response_array (response &) |
add a read response to the response array More... | |
const std::vector< response > & | get_response_array () const |
return the read response array for constant instances More... | |
std::vector< response > & | get_response_array () |
return the read response array More... | |
void | set_response_array_complete (bool=true) |
set the flag indicating the all read responses are collected More... | |
bool | is_response_array_complete () |
Public Member Functions inherited from axi::common | |
common ()=default | |
the constructor | |
void | reset () |
reset all data member to their default | |
common & | operator= (const common &o) |
copy assignment operator More... | |
void | set_id (unsigned int value) |
unsigned int | get_id () const |
void | set_user (id_type chnl, unsigned int value) |
unsigned int | get_user (id_type chnl) const |
Public Member Functions inherited from axi::axi3 | |
axi3 & | operator= (const axi3 &o) |
void | set_exclusive (bool=true) |
get the exclusive bit of AxLOCK (AxLOCK[0]) More... | |
bool | is_exclusive () const |
get the exclusive bit of AxLOCK (AxLOCK[0]) return the exclusive bit | |
void | set_locked (bool=true) |
get the locked bit of AxLOCK (AxLOCK[1]) More... | |
bool | is_locked () const |
get the locked bit of AxLOCK (AxLOCK[1]) return the locked bit | |
void | set_bufferable (bool=true) |
set the bufferable bit of AxCACHE (AxCACHE[0]) More... | |
bool | is_bufferable () const |
get the bufferable bit of AxCACHE (AxCACHE[0]) return the bufferable bit | |
void | set_cacheable (bool=true) |
set the cacheable bit of AxCACHE (AxCACHE[1]) More... | |
bool | is_cacheable () const |
get the cacheable bit of AxCACHE (AxCACHE[1]) return the cacheable bit | |
void | set_write_allocate (bool=true) |
set the write_allocate bit of AxCACHE (AxCACHE[2]) More... | |
bool | is_write_allocate () const |
get the write_allocate bit of AxCACHE (AxCACHE[2]) return the write_allocate bit | |
void | set_read_allocate (bool=true) |
set the read_allocate bit of AxCACHE (AxCACHE[3]) More... | |
bool | is_read_allocate () const |
get the read_allocate bit of AxCACHE (AxCACHE[3]) return the read_allocate bit | |
Public Member Functions inherited from axi::request | |
request ()=default | |
the default constructor | |
void | reset () |
reset all data member to their default | |
void | set_length (uint8_t) |
set the AxLEN value of the transaction, the value denotes the burst length - 1 More... | |
uint8_t | get_length () const |
get the AxLEN value of the transaction, the value denotes the burst length - 1 More... | |
void | set_size (uint8_t) |
get the AxSIZE value of the transaction, the length is 2^size. It needs to be less than 10 (512 bit width) More... | |
uint8_t | get_size () const |
set the AxSIZE value of the transaction More... | |
void | set_burst (burst_e) |
set the AxBURST value, More... | |
burst_e | get_burst () const |
get the AxBURST value, More... | |
void | set_prot (uint8_t) |
set the AxPROT value as POD, only values from 0...7 are allowed More... | |
uint8_t | get_prot () const |
set the AxPROT value as POD, only values from 0...7 are allowed More... | |
void | set_privileged (bool=true) |
set the privileged bit of the AxPROT (AxPROT[0]) More... | |
bool | is_privileged () const |
get the privileged bit of the AxPROT (AxPROT[0]) More... | |
void | set_non_secure (bool=true) |
set the non-secure bit of the AxPROT (AxPROT[1]) More... | |
bool | is_non_secure () const |
set the non-secure bit of the AxPROT (AxPROT[1]) More... | |
void | set_instruction (bool=true) |
set the instruction bit of the AxPROT (AxPROT[2]) More... | |
bool | is_instruction () const |
set the instruction bit of the AxPROT (AxPROT[2]) More... | |
void | set_cache (uint8_t) |
set the AxCACHE value as POD, only value from 0..15 are allowed More... | |
uint8_t | get_cache () const |
get the AxCACHE value as POD More... | |
void | set_qos (uint8_t) |
set the AxQOS (quality of service) value More... | |
uint8_t | get_qos () const |
get the AxQOS (quality of service) value More... | |
void | set_region (uint8_t) |
set the AxREGION value More... | |
uint8_t | get_region () const |
get the AxREGION value More... | |
void | set_atop (uint8_t) |
set the raw AWATOP value More... | |
uint8_t | get_atop () const |
get the raw AWATOP value return the unique value | |
void | set_stash_nid (uint8_t) |
set the raw AWSTASHNID value More... | |
uint8_t | get_stash_nid () const |
get the raw AWSTASHNID value return the unique value | |
bool | is_stash_nid_en () const |
check if AWSTASHNID is valid return the valid value | |
void | set_stash_lpid (uint8_t) |
set the raw AWSTASHLPID value More... | |
uint8_t | get_stash_lpid () const |
get the raw AWSTASHLPID value return the unique value | |
bool | is_stash_lpid_en () const |
check if AWSTASHLPID is valid return the valid value | |
Public Member Functions inherited from axi::response | |
response & | operator= (const response &o) |
assignment operator More... | |
void | reset () |
reset all data member to their default | |
void | set_resp (resp_e) |
set the response status as POD More... | |
resp_e | get_resp () const |
get the response status as POD More... | |
bool | is_okay () const |
check if the response status is OKAY More... | |
void | set_okay () |
set the response status to OKAY | |
bool | is_exokay () const |
check if the response status is EXOKAY More... | |
void | set_exokay () |
set the response status to EXOKAY | |
bool | is_slverr () const |
check if the response status is SLVERR More... | |
void | set_slverr () |
set the response status to SLVERR | |
bool | is_decerr () const |
check if the response status is DECERR More... | |
void | set_decerr () |
set the response status to DECERR | |
Additional Inherited Members | |
Public Types inherited from axi::common | |
enum class | id_type { CTRL , DATA , RESP } |
Static Public Member Functions inherited from axi::response | |
static resp_e | from_tlm_response_status (tlm::tlm_response_status) |
converts the response status of a generic payload to a More... | |
static tlm::tlm_response_status | to_tlm_response_status (resp_e) |
converts a More... | |
Protected Types inherited from axi::request | |
enum | { BUFFERABLE = 1 , CACHEABLE = 2 , RA = 4 , WA = 8 , EXCL = 1 , LOCKED = 2 , PRIVILEGED = 1 , SECURE = 2 , INSTRUCTION = 4 } |
Protected Types inherited from axi::response | |
enum | { DATATRANSFER = 1 , SNOOPEERROR = 2 , PASSDIRTY = 4 , ISSHARED = 8 , WASUNIQUE = 16 } |
Protected Member Functions inherited from axi::request | |
request & | operator= (const request &o) |
Protected Attributes inherited from axi::common | |
unsigned | id {0} |
std::array< unsigned, 3 > | user {{0, 0, 0}} |
Protected Attributes inherited from axi::request | |
bool | unique {false} |
uint8_t | length {0} |
uint8_t | size {0} |
burst_e | burst {burst_e::FIXED} |
uint8_t | prot {0} |
uint8_t | qos {0} |
uint8_t | region {0} |
domain_e | domain {domain_e::NON_SHAREABLE} |
snoop_e | snoop {snoop_e::READ_NO_SNOOP} |
bar_e | barrier {bar_e::RESPECT_BARRIER} |
lock_e | lock {lock_e::NORMAL} |
uint8_t | cache {0} |
uint8_t | atop {0} |
uint16_t | stash_nid {std::numeric_limits<uint16_t>::max()} |
uint8_t | stash_lpid {std::numeric_limits<uint8_t>::max()} |
Protected Attributes inherited from axi::response | |
uint8_t | resp {static_cast<uint8_t>(resp_e::OKAY)} |
|
inline |
|
inlineoverride |
|
inlineoverride |