Transaction-Level Modeling Framework for Space Applications
Local Scratchpad RAM. More...
#include <localram.h>
Public Member Functions | |
GC_HAS_CALLBACKS () | |
virtual bool | mem_read (unsigned int address, unsigned int asi, unsigned char *data, unsigned int len, sc_core::sc_time *t, unsigned int *debug, bool is_dbg, bool &cacheable) |
Read from scratchpad. More... | |
virtual void | mem_write (unsigned int address, unsigned int asi, unsigned char *data, unsigned int len, sc_core::sc_time *t, unsigned int *debug, bool is_dbg, bool &cacheable) |
Write to scratchpad. More... | |
void | clkcng (sc_core::sc_time &clk) |
Helper functions for definition of clock cycle. More... | |
void | start_of_simulation () |
Automatically called at the beginning of the simulation. More... | |
void | power_model () |
gs::cnf::callback_return_type | sta_power_cb (gs::gs_param_base &changed_param, gs::cnf::callback_type reason) |
Static power callback. More... | |
gs::cnf::callback_return_type | int_power_cb (gs::gs_param_base &changed_param, gs::cnf::callback_type reason) |
Dynamic/Internal power callback. More... | |
gs::cnf::callback_return_type | swi_power_cb (gs::gs_param_base &changed_param, gs::cnf::callback_type reason) |
Dynamic/Switching power callback. More... | |
void | end_of_simulation () |
Hook up for showing statistics. More... | |
localram (ModuleName name, unsigned int lrsize, unsigned int lrstart, bool pow_mon=false) | |
Constructor of scratchpad RAM implementation (localram) More... | |
~localram () | |
Destructor. More... | |
Public Member Functions inherited from mem_if | |
virtual void | mem_write (unsigned int addr, unsigned int asi, unsigned char *data, unsigned int length, sc_core::sc_time *t, unsigned int *debug, bool is_dbg, bool &cacheable, bool is_lock=false) |
virtual bool | mem_read (unsigned int addr, unsigned int asi, unsigned char *data, unsigned int length, sc_core::sc_time *t, unsigned int *debug, bool is_dbg, bool &cacheable, bool is_lock=false) |
virtual | ~mem_if () |
Public Attributes | |
t_cache_data * | scratchpad |
t_cache_data | m_default_entry |
unsigned int | m_lrsize |
Size of the local ram in words. More... | |
unsigned int | m_lrstart |
Start address of the local ram. More... | |
bool | m_pow_mon |
Power monitoring enabled or not. More... | |
gs::cnf::cnf_api * | m_api |
GreenControl API container. More... | |
gs::gs_param_array | m_performance_counters |
Open a namespace for performance counting in the greencontrol realm. More... | |
sr_param< uint64_t > | sreads |
Number of read accesses. More... | |
sr_param< uint64_t > | swrites |
Number of write accesses. More... | |
sr_param< uint64_t > | sreads_byte |
Volume of total reads (bytes) More... | |
sr_param< uint64_t > | swrites_byte |
Volume of total writes (bytes) More... | |
sr_param< double > | sta_power_norm |
Normalized static power input. More... | |
sr_param< double > | int_power_norm |
Normalized internal power input (activation independent) More... | |
sr_param< double > | dyn_read_energy_norm |
Normalized read access energy. More... | |
sr_param< double > | dyn_write_energy_norm |
Normalized write access energy. More... | |
gs::gs_param_array | power |
Parameter array for power data output. More... | |
sr_param< double > | sta_power |
Static power of module. More... | |
sr_param< double > | int_power |
Internal power of module (activation independent) More... | |
sr_param< double > | swi_power |
Swiching power of module. More... | |
sr_param< sc_core::sc_time > | power_frame_starting_time |
Power frame starting time. More... | |
sr_param< double > | dyn_read_energy |
Dynamic energy per read access. More... | |
sr_param< double > | dyn_write_energy |
Dynamic energy per write access. More... | |
sr_param< uint64_t > | dyn_reads |
Number of reads from memory (read & reset by monitor) More... | |
sr_param< uint64_t > | dyn_writes |
Number of writes to memory (read & reset by monitor) More... | |
sc_core::sc_time | clockcycle |
Clock cycle time. More... | |
Local Scratchpad RAM.
localram::GC_HAS_CALLBACKS | ( | ) |
sc_core::sc_time localram::clockcycle |
Clock cycle time.
Referenced by clkcng(), mem_read(), mem_write(), and power_model().
Dynamic energy per read access.
Referenced by power_model(), and swi_power_cb().
Normalized read access energy.
Referenced by power_model().
Number of reads from memory (read & reset by monitor)
Referenced by swi_power_cb().
Dynamic energy per write access.
Referenced by power_model(), and swi_power_cb().
Normalized write access energy.
Referenced by power_model().
Number of writes to memory (read & reset by monitor)
Referenced by swi_power_cb().
Internal power of module (activation independent)
Referenced by localram(), and power_model().
Normalized internal power input (activation independent)
Referenced by power_model().
gs::cnf::cnf_api* localram::m_api |
t_cache_data localram::m_default_entry |
Referenced by localram().
unsigned int localram::m_lrsize |
Size of the local ram in words.
Referenced by localram(), mem_read(), mem_write(), and power_model().
unsigned int localram::m_lrstart |
Start address of the local ram.
Referenced by localram(), mem_read(), and mem_write().
gs::gs_param_array localram::m_performance_counters |
Open a namespace for performance counting in the greencontrol realm.
bool localram::m_pow_mon |
Power monitoring enabled or not.
Referenced by localram(), and start_of_simulation().
gs::gs_param_array localram::power |
Parameter array for power data output.
sr_param<sc_core::sc_time> localram::power_frame_starting_time |
Power frame starting time.
Referenced by swi_power_cb().
t_cache_data* localram::scratchpad |
Referenced by localram(), mem_read(), mem_write(), and ~localram().
Number of read accesses.
Referenced by end_of_simulation(), and mem_read().
Volume of total reads (bytes)
Referenced by end_of_simulation(), and mem_read().
Static power of module.
Referenced by localram(), and power_model().
Swiching power of module.
Referenced by localram(), and swi_power_cb().
Number of write accesses.
Referenced by end_of_simulation(), and mem_write().
Volume of total writes (bytes)
Referenced by end_of_simulation(), and mem_write().