20 #ifndef __SIMPLE_AT_TARGET1_H__ 21 #define __SIMPLE_AT_TARGET1_H__ 24 #include "tlm_utils/simple_target_socket.h" 80 assert(address < 400);
84 std::cout <<
name() <<
": Received write request: A = 0x" 85 << std::hex << (
unsigned int)address <<
", D = 0x" 89 *
reinterpret_cast<unsigned int*
>(&
mMem[address]) = data;
92 std::cout <<
name() <<
": Received read request: A = 0x" 93 << std::hex << (
unsigned int)address << std::dec
96 data = *
reinterpret_cast<unsigned int*
>(&
mMem[address]);
133 sync_enum_type
r = socket->nb_transport_bw(*trans, phase, t);
164 assert(address < 400);
165 *
reinterpret_cast<unsigned int*
>(trans->
get_data_ptr()) =
166 *reinterpret_cast<unsigned int*>(&
mMem[address]);
169 switch (socket->nb_transport_bw(*trans, phase, t)) {
void set_response_status(const tlm_response_status response_status)
const sc_core::sc_time ACCEPT_DELAY
sc_core::sc_event mBeginResponseEvent
const char * name() const
sc_dt::uint64 get_address() const
SimpleATTarget1(sc_core::sc_module_name name)
unsigned char * get_data_ptr() const
tlm::tlm_sync_enum sync_enum_type
std::queue< transaction_type * > mResponseQueue
std::queue< transaction_type * > mEndRequestQueue
sync_enum_type myNBTransport(transaction_type &trans, phase_type &phase, sc_core::sc_time &t)
const sc_time & sc_time_stamp()
const sc_time SC_ZERO_TIME
sc_core::sc_event mEndResponseEvent
void register_nb_transport_fw(MODULE *mod, sync_enum_type(MODULE::*cb)(transaction_type &, phase_type &, sc_core::sc_time &))
tlm_utils::simple_target_socket< SimpleATTarget1 > target_socket_type
tlm_command get_command() const
SC_HAS_PROCESS(SimpleATTarget1)
tlm::tlm_phase phase_type
sc_core::sc_event mEndRequestEvent
const sc_core::sc_time RESPONSE_DELAY
tlm::tlm_generic_payload transaction_type
target_socket_type socket