Transaction-Level Modeling Framework for Space Applications
#include <processor.hpp>
Public Member Functions | |
GC_HAS_CALLBACKS () | |
SC_HAS_PROCESS (Processor_leon3_funclt) | |
Processor_leon3_funclt (sc_module_name name, MemoryInterface *memory=NULL, sc_time latency=sc_time(10, sc_core::SC_NS), bool pow_mon=false) | |
void | mainLoop () |
void | resetOp () |
void | start_of_simulation () |
void | end_of_simulation () |
void | power_model () |
void | triggerException (unsigned int exception) |
gs::cnf::callback_return_type | sta_power_cb (gs::gs_param_base &changed_param, gs::cnf::callback_type reason) |
gs::cnf::callback_return_type | int_power_cb (gs::gs_param_base &changed_param, gs::cnf::callback_type reason) |
gs::cnf::callback_return_type | swi_power_cb (gs::gs_param_base &changed_param, gs::cnf::callback_type reason) |
void | end_of_elaboration () |
Instruction * | decode (unsigned int bitString) |
LEON3_ABIIf & | getInterface () |
void | setProfilingRange (unsigned int startAddr, unsigned int endAddr) |
~Processor_leon3_funclt () | |
leon3_funclt_trap::Processor_leon3_funclt::Processor_leon3_funclt | ( | sc_module_name | name, |
MemoryInterface * | memory = NULL , |
||
sc_time | latency = sc_time(10, sc_core::SC_NS) , |
||
bool | pow_mon = false |
||
) |
References abiIf, ASR, dataMem, ENTRY_POINT, FP, GLOBAL, historyEnabled, instrMem, int_power, int_power_cb(), IRQ_irqInstr, irqAck, LR, m_pow_mon, mainLoop(), MPROC_ID, NPC, numInstructions, PC, PCR, usi.cci.callback::pre_read, profTimeEnd, profTimeStart, PROGRAM_LIMIT, PROGRAM_START, PSR, quantKeeper, REGS, leon3_funclt_trap::RegisterBankClass::setNewRegister(), leon3_funclt_trap::RegisterBankClass::setSize(), SP, sta_power, sta_power_cb(), swi_power, swi_power_cb(), TBR, undumpedHistElems, leon3_funclt_trap::Alias::updateAlias(), WIM, WINREGS, and Y.
leon3_funclt_trap::Processor_leon3_funclt::~Processor_leon3_funclt | ( | ) |
References i.
Instruction * leon3_funclt_trap::Processor_leon3_funclt::decode | ( | unsigned int | bitString | ) |
References leon3_funclt_trap::Instruction::setParams().
Referenced by sc_main().
void leon3_funclt_trap::Processor_leon3_funclt::end_of_elaboration | ( | ) |
void leon3_funclt_trap::Processor_leon3_funclt::end_of_simulation | ( | ) |
References setup::name, and v::report.
leon3_funclt_trap::Processor_leon3_funclt::GC_HAS_CALLBACKS | ( | ) |
LEON3_ABIIf & leon3_funclt_trap::Processor_leon3_funclt::getInterface | ( | ) |
Referenced by sc_main().
gs::cnf::callback_return_type leon3_funclt_trap::Processor_leon3_funclt::int_power_cb | ( | gs::gs_param_base & | changed_param, |
gs::cnf::callback_type | reason | ||
) |
References GC_RETURN_OK.
Referenced by Processor_leon3_funclt().
void leon3_funclt_trap::Processor_leon3_funclt::mainLoop | ( | ) |
References v::info, key_ET, key_PIL, key_S, setup::name, srInfo, and pysc::api::systemc::wait().
Referenced by Processor_leon3_funclt().
void leon3_funclt_trap::Processor_leon3_funclt::power_model | ( | ) |
leon3_funclt_trap::Processor_leon3_funclt::SC_HAS_PROCESS | ( | Processor_leon3_funclt | ) |
void leon3_funclt_trap::Processor_leon3_funclt::setProfilingRange | ( | unsigned int | startAddr, |
unsigned int | endAddr | ||
) |
Referenced by sc_main().
gs::cnf::callback_return_type leon3_funclt_trap::Processor_leon3_funclt::sta_power_cb | ( | gs::gs_param_base & | changed_param, |
gs::cnf::callback_type | reason | ||
) |
References GC_RETURN_OK.
Referenced by Processor_leon3_funclt().
void leon3_funclt_trap::Processor_leon3_funclt::start_of_simulation | ( | ) |
gs::cnf::callback_return_type leon3_funclt_trap::Processor_leon3_funclt::swi_power_cb | ( | gs::gs_param_base & | changed_param, |
gs::cnf::callback_type | reason | ||
) |
References GC_RETURN_OK.
Referenced by Processor_leon3_funclt().
void leon3_funclt_trap::Processor_leon3_funclt::triggerException | ( | unsigned int | exception | ) |
Referenced by Leon3::trigger_exception().
LEON3_ABIIf* leon3_funclt_trap::Processor_leon3_funclt::abiIf |
Referenced by Leon3::g_gdb_callback(), Processor_leon3_funclt(), and sc_main().
Reg32_3 leon3_funclt_trap::Processor_leon3_funclt::ASR[32] |
Referenced by Processor_leon3_funclt().
unsigned int leon3_funclt_trap::Processor_leon3_funclt::curPC |
MemoryInterface& leon3_funclt_trap::Processor_leon3_funclt::dataMem |
Referenced by Processor_leon3_funclt(), and sc_main().
Number of instructions processed in time frame.
Average dynamic energy per instruction.
Normalized average instruction energy.
unsigned int leon3_funclt_trap::Processor_leon3_funclt::ENTRY_POINT |
Referenced by Leon3::Leon3(), Processor_leon3_funclt(), and sc_main().
Alias leon3_funclt_trap::Processor_leon3_funclt::FP |
Referenced by Processor_leon3_funclt().
RegisterBankClass leon3_funclt_trap::Processor_leon3_funclt::GLOBAL |
Referenced by Processor_leon3_funclt().
Referenced by Processor_leon3_funclt().
MemoryInterface& leon3_funclt_trap::Processor_leon3_funclt::instrMem |
Referenced by Processor_leon3_funclt(), and sc_main().
Dynamic power of module (activation independent)
Referenced by Processor_leon3_funclt().
Normalized internal power input (activation independent)
IRQ_IRQ_Instruction* leon3_funclt_trap::Processor_leon3_funclt::IRQ_irqInstr |
Referenced by Processor_leon3_funclt().
IntrTLMPort_32 leon3_funclt_trap::Processor_leon3_funclt::IRQ_port |
Referenced by sc_main().
PinTLM_out_32 leon3_funclt_trap::Processor_leon3_funclt::irqAck |
Referenced by Processor_leon3_funclt(), and sc_main().
sc_time leon3_funclt_trap::Processor_leon3_funclt::latency |
Referenced by Leon3::clkcng().
Alias leon3_funclt_trap::Processor_leon3_funclt::LR |
Referenced by Processor_leon3_funclt().
bool leon3_funclt_trap::Processor_leon3_funclt::m_pow_mon |
Referenced by Processor_leon3_funclt().
MemoryInterface* leon3_funclt_trap::Processor_leon3_funclt::mem |
unsigned int leon3_funclt_trap::Processor_leon3_funclt::MPROC_ID |
Referenced by Leon3::Leon3(), and Processor_leon3_funclt().
Reg32_3 leon3_funclt_trap::Processor_leon3_funclt::NPC |
Referenced by Processor_leon3_funclt().
Number of instructions processed.
Referenced by Processor_leon3_funclt(), and sc_main().
Reg32_3 leon3_funclt_trap::Processor_leon3_funclt::PC |
Referenced by Processor_leon3_funclt().
Alias leon3_funclt_trap::Processor_leon3_funclt::PCR |
Referenced by Processor_leon3_funclt().
gs::gs_param_array leon3_funclt_trap::Processor_leon3_funclt::power |
Parameter array for power data output.
sr_param<sc_core::sc_time> leon3_funclt_trap::Processor_leon3_funclt::power_frame_starting_time |
Power frame starting time.
sc_time leon3_funclt_trap::Processor_leon3_funclt::profTimeEnd |
Referenced by Processor_leon3_funclt(), and sc_main().
sc_time leon3_funclt_trap::Processor_leon3_funclt::profTimeStart |
Referenced by Processor_leon3_funclt(), and sc_main().
unsigned int leon3_funclt_trap::Processor_leon3_funclt::PROGRAM_LIMIT |
Referenced by Processor_leon3_funclt(), and sc_main().
unsigned int leon3_funclt_trap::Processor_leon3_funclt::PROGRAM_START |
Referenced by Processor_leon3_funclt(), and sc_main().
Reg32_0 leon3_funclt_trap::Processor_leon3_funclt::PSR |
Referenced by Processor_leon3_funclt().
tlm_utils::tlm_quantumkeeper leon3_funclt_trap::Processor_leon3_funclt::quantKeeper |
Referenced by Processor_leon3_funclt().
Alias leon3_funclt_trap::Processor_leon3_funclt::REGS[32] |
Referenced by Processor_leon3_funclt().
Alias leon3_funclt_trap::Processor_leon3_funclt::SP |
Referenced by Processor_leon3_funclt().
Static power of module.
Referenced by Processor_leon3_funclt().
Normalized static power input.
Power Modeling Parameters
Switching power of module.
Referenced by Processor_leon3_funclt().
Reg32_2 leon3_funclt_trap::Processor_leon3_funclt::TBR |
Referenced by Processor_leon3_funclt().
ToolsManager< unsigned int > leon3_funclt_trap::Processor_leon3_funclt::toolManager |
Referenced by Leon3::g_gdb_callback(), Leon3::Leon3(), and sc_main().
unsigned int leon3_funclt_trap::Processor_leon3_funclt::undumpedHistElems |
Referenced by Processor_leon3_funclt().
Reg32_1 leon3_funclt_trap::Processor_leon3_funclt::WIM |
Referenced by Processor_leon3_funclt().
Reg32_3 leon3_funclt_trap::Processor_leon3_funclt::WINREGS[128] |
Referenced by Processor_leon3_funclt().
Reg32_3 leon3_funclt_trap::Processor_leon3_funclt::Y |
Referenced by Processor_leon3_funclt().