 SoCRocket
            SoCRocket
          Transaction-Level Modeling Framework for Space Applications
| Files | |
| file | ahbmem.cpp | 
| file | ahbmem.h | 
| Classes | |
| class | AHBMem | 
| Functions | |
| SR_HAS_MODULE (AHBMem) | |
| AHBMem::AHBMem (const ModuleName nm, uint16_t haddr_=0, uint16_t hmask_=0, AbstractionLayer ambaLayer=amba::amba_LT, uint32_t slave_id=0, bool cacheable=1, uint32_t wait_states=0, bool pow_mon=false) | |
| Constructor for the test bench memory class.  More... | |
| AHBMem::~AHBMem () | |
| Destructor.  More... | |
| void | AHBMem::init_generics () | 
| Initialize generics.  More... | |
| void | AHBMem::dorst () | 
| Reset callback.  More... | |
| uint32_t | AHBMem::exec_func (tlm::tlm_generic_payload &gp, sc_time &delay, bool debug=false) | 
| Encapsulated functionality.  More... | |
| sc_core::sc_time | AHBMem::get_clock () | 
| Returns clock cycle time from child.  More... | |
| bool | AHBMem::get_direct_mem_ptr (tlm::tlm_generic_payload &trans, tlm::tlm_dmi &dmi_data) | 
| void | AHBMem::writeByteDBG (const uint32_t addr, const uint8_t byte) | 
| Method to write a byte into the memory.  More... | |
| void | AHBMem::before_end_of_elaboration () | 
| Creates the memory backend.  More... | |
| void | AHBMem::start_of_simulation () | 
| Called by scheduler at start of simulation.  More... | |
| void | AHBMem::power_model () | 
| Calculate power/energy values from normalized input data.  More... | |
| gs::cnf::callback_return_type | AHBMem::sta_power_cb (gs::gs_param_base &changed_param, gs::cnf::callback_type reason) | 
| Static power callback.  More... | |
| gs::cnf::callback_return_type | AHBMem::int_power_cb (gs::gs_param_base &changed_param, gs::cnf::callback_type reason) | 
| Dynamic/Internal power callback.  More... | |
| gs::cnf::callback_return_type | AHBMem::swi_power_cb (gs::gs_param_base &changed_param, gs::cnf::callback_type reason) | 
| Dynamic/Switching power callback.  More... | |
| void | AHBMem::end_of_simulation () | 
| Generates execution statistic at end of simulation.  More... | |
| AHBMem::AHBMem | ( | const ModuleName | nm, | 
| uint16_t | haddr_ = 0, | ||
| uint16_t | hmask_ = 0, | ||
| AbstractionLayer | ambaLayer = amba::amba_LT, | ||
| uint32_t | slave_id = 0, | ||
| bool | cacheable = 1, | ||
| uint32_t | wait_states = 0, | ||
| bool | pow_mon = false | ||
| ) | 
Constructor for the test bench memory class.
Constructor.
Constructor
| haddr | AHB address of the AHB slave socket (12 bit) | 
| hmask | AHB address mask (12 bit) | 
| ambaLayer | Abstraction layer used (AT/LT) | 
| infile | File name of a text file to initialize the memory from | 
| addr | Start address for memory initilization | 
References AHBSlave<>::ahb, AHBDevice< BaseModule< DefaultBase > >::get_ahb_base_addr(), AHBDevice< BaseModule< DefaultBase > >::get_ahb_size(), AHBMem::get_direct_mem_ptr(), AHBMem::init_generics(), AHBMem::int_power, AHBMem::int_power_cb(), usi.cci.callback::pre_read, srInfo, AHBMem::sta_power, AHBMem::sta_power_cb(), AHBMem::swi_power, and AHBMem::swi_power_cb().
| void AHBMem::before_end_of_elaboration | ( | ) | 
Creates the memory backend.
References AHBDevice< BaseModule< DefaultBase > >::get_ahb_bar_size(), and BaseMemory::set_storage().
| 
 | virtual | 
Reset callback.
Reimplemented from CLKDevice.
References BaseMemory::erase(), and AHBDevice< BaseModule< DefaultBase > >::get_ahb_size().
| void AHBMem::end_of_simulation | ( | ) | 
Generates execution statistic at end of simulation.
References setup::name, AHBSlave<>::print_transport_statistics(), and v::report.
| 
 | virtual | 
Encapsulated functionality.
Implements AHBSlave<>.
References AHBSlave<>::ahb, Storage::allow_dmi_rw(), CLKDevice::clock_cycle, AHBMem::dyn_reads, AHBMem::dyn_writes, AHBDevice< BaseModule< DefaultBase > >::get_ahb_bar_relative_addr(), BaseMemory::m_storage, setup::name, BaseMemory::read_block(), srDebug, srError, srWarn, trans, and BaseMemory::write_block().
| 
 | virtual | 
| bool AHBMem::get_direct_mem_ptr | ( | tlm::tlm_generic_payload & | trans, | 
| tlm::tlm_dmi & | dmi_data | ||
| ) | 
References Storage::allow_dmi_rw(), AHBDevice< BaseModule< DefaultBase > >::get_ahb_bar_size(), Storage::get_dmi_ptr(), v::info, BaseMemory::m_storage, setup::name, and v::uint32.
Referenced by AHBMem::AHBMem().
| 
 | virtual | 
Initialize generics.
Reimplemented from BaseModule< DefaultBase >.
References sr_param_base::add_properties().
Referenced by AHBMem::AHBMem().
| gs::cnf::callback_return_type AHBMem::int_power_cb | ( | gs::gs_param_base & | changed_param, | 
| gs::cnf::callback_type | reason | ||
| ) | 
| void AHBMem::power_model | ( | ) | 
Calculate power/energy values from normalized input data.
References CLKDevice::clock_cycle, AHBMem::dyn_read_energy, AHBMem::dyn_read_energy_norm, AHBMem::dyn_write_energy, AHBMem::dyn_write_energy_norm, AHBDevice< BaseModule< DefaultBase > >::get_ahb_size(), AHBMem::int_power, AHBMem::int_power_norm, AHBMem::sta_power, and AHBMem::sta_power_norm.
Referenced by AHBMem::start_of_simulation().
| SR_HAS_MODULE | ( | AHBMem | ) | 
| gs::cnf::callback_return_type AHBMem::sta_power_cb | ( | gs::gs_param_base & | changed_param, | 
| gs::cnf::callback_type | reason | ||
| ) | 
| void AHBMem::start_of_simulation | ( | ) | 
Called by scheduler at start of simulation.
References AHBMem::power_model().
| gs::cnf::callback_return_type AHBMem::swi_power_cb | ( | gs::gs_param_base & | changed_param, | 
| gs::cnf::callback_type | reason | ||
| ) | 
Dynamic/Switching power callback.
References AHBMem::dyn_read_energy, AHBMem::dyn_reads, AHBMem::dyn_write_energy, AHBMem::dyn_writes, GC_RETURN_OK, AHBMem::power_frame_starting_time, and AHBMem::swi_power.
Referenced by AHBMem::AHBMem().
Method to write a byte into the memory.
| addr | Write address | 
| byte | Write data | 
References BaseMemory::write_dbg().
| AHBMem::~AHBMem | ( | ) | 
Destructor.