ScEpTIC.emulator.energy.state_retention package
Submodules
ScEpTIC.emulator.energy.state_retention.external_checkpoint module
- class ScEpTIC.emulator.energy.state_retention.external_checkpoint.ExternalNVMCheckpointEnergyModel
Bases:
StateRetentionEnergyModel
- Energy model of a generic checkpoint-based technique that:
Places checkpoints or trigger-calls inside the program
Relies on an external NVM space connected to the MCU
- execute_probe_energy_buffer()
Probes the energy buffer to identify if a checkpoint is required :return: the number of executed clock cycles
- execute_restore_state()
Calculate the cost of restoring the state :return: the number of executed clock cycles
- execute_save_state(save_only_pc, n_registers, n_memory_cells)
Calculate the cost of saving the state :param save_only_pc: if the checkpoint saves only the program counter :param n_registers: number of general purpose registers saved :param n_memory_cells: number of memory cells saved :return: number of executed clock cycles
- reset()
Resets statistics
ScEpTIC.emulator.energy.state_retention.internal_checkpoint module
- class ScEpTIC.emulator.energy.state_retention.internal_checkpoint.InternalNVMCheckpointEnergyModel
Bases:
StateRetentionEnergyModel
- Energy model of a generic checkpoint-based technique that:
Places checkpoints or trigger-calls inside the program
Relies on an NVM space internal and directly-addressable from the MCU
- execute_probe_energy_buffer()
Probes the energy buffer to identify if a checkpoint is required :return: the number of executed clock cycles
- execute_restore_state()
Calculate the cost of restoring the state :return: the number of executed clock cycles
- execute_save_state(save_only_pc, n_registers, n_memory_cells)
Calculate the cost of saving the state :param save_only_pc: if the checkpoint saves only the program counter :param n_registers: number of general purpose registers saved :param n_memory_cells: number of memory cells saved :return: number of executed clock cycles
- reset()
Resets statistics
- use_physical_memory(val)
Module contents
- class ScEpTIC.emulator.energy.state_retention.StateRetentionEnergyModel
Bases:
object
Energy model of a state retention technique.
- attach_system_model(system_model)
Attaches the system model to the state retention technique :param system_model: the system model
- execute_probe_energy_buffer()
Probes the energy buffer to identify if the state needs to be saved :return: the number of executed clock cycles
- execute_restore_state()
Calculate the cost of restoring the state :return: the number of executed clock cycles
- execute_save_state(save_only_pc, n_registers, n_memory_cells)
Calculate the cost of saving the state :param save_only_pc: if the checkpoint saves only the program counter :param n_registers: number of general purpose registers saved :param n_memory_cells: number of memory cells saved :return: number of executed clock cycles
- reset()
Resets statistics
- set_max_memory_cells(n_memory_cells)
Update the statistic on maximum number of memory cells saved :param n_regs: the number of registers saved
- set_max_regs(n_regs)
Update the statistic on maximum number of register saved :param n_regs: the number of registers saved