ScEpTIC.emulator.custom_devices.FBTCLogicOnly package
Submodules
ScEpTIC.emulator.custom_devices.FBTCLogicOnly.changepoint_detector module
- class ScEpTIC.emulator.custom_devices.FBTCLogicOnly.changepoint_detector.ChangePointDetectorLogic(R1, R2, system_model)
Bases:
object
Base model of the FBTC Changepoint Detector.
- output(vreg_voltage)
Outputs the logical value of the Changepoint Detector :param vreg_voltage: voltage of the voltage regulator :return: a changepoint is reached
- class ScEpTIC.emulator.custom_devices.FBTCLogicOnly.changepoint_detector.ChangepointChargeDetectorLogic(R1, R2, system_model)
Bases:
ChangePointDetectorLogic
Model of the FBTC Changepoint Charge Detector. It consists in an OpAmp that outputs if the voltage of the energy buffer is higher than a certain threshold w.r.t. the voltage of the voltage regulator.
- output(vreg_voltage)
Outputs the logical value of the Changepoint Charge Detector :param vreg_voltage: voltage of the voltage regulator :return: a charge changepoint is reached
- class ScEpTIC.emulator.custom_devices.FBTCLogicOnly.changepoint_detector.ChangepointDischargeDetectorLogic(R1, R2, system_model)
Bases:
ChangePointDetectorLogic
Model of the FBTC Changepoint Discharge Detector. It consists in an OpAmp that outputs if the voltage of the energy buffer is lower than a certain threshold w.r.t. the voltage of the voltage regulator.
- output(vreg_voltage)
Outputs the logical value of the Changepoint Discharge Detector :param vreg_voltage: voltage of the voltage regulator :return: a discharge changepoint is reached
Module contents
- class ScEpTIC.emulator.custom_devices.FBTCLogicOnly.FBTCSystemModelLogicOnly
Bases:
CustomDevice
FBTC system model - Energy model included in lookup table (voltage regulator and FBTC components)
- get_signals()
- Returns:
a list with the signals collected from this device
- get_signals_strings()
- Returns:
a list with the names of the signals that may be collected from this device
- init(print_enabled=True)
Initializes the FBTC circuit :param print_enabled: enables/disables print messages :return: the number of clock cycles executed by the MCU during the initialization of custom device operations
- name = 'FBTC-real'
- op_mode_name = 'FBTC_ISR'
- operational_zones = {1.8: '1MHz', 2.2: '8MHz', 2.8: '12MHz', 3.3: '16MHz'}
- run_logic()
Runs the FBTC logic (detects if a changepoint is reached and changes voltage and frequency accordingly :return: the number of clock cycles executed by the MCU during custom device operations
- sensitivity = 0.005
- setup(system_model)
Setup the FBTC device. Note that this is a callback called by the system model :param system_model: the system model
- voltage_dividers = {'charge': {'R1': '2M', 'R2': '8M'}, 'discharge': {'R1': '150K', 'R2': '10M'}}