calix.spiking.synapse_driver.STPOffsetCalib
-
class
calix.spiking.synapse_driver.
STPOffsetCalib
(v_stp: Union[int, numpy.ndarray] = 180, i_ramp: Union[int, numpy.ndarray] = 600) Bases:
calix.common.base.Calib
Calibrate synapse driver STP ramp offsets for usage in spiking mode.
Since the hagen-mode DAC is not involved now, the STP voltages can use a higher dynamic range determined by v_charge and v_recover. This usually means a different STP ramp current is used than in hagen mode.
Drivers connected to different CapMem instances are calibrated to different targets since deviations in STP voltages and ramp currents (which are set for each CapMem instance individually) have higher variations than can be compensated with the STP offset.
Note that this calibration measures synapse drivers’ outputs on the synaptic input lines, not on the neurons. The neurons are reconfigured for this purpose. If they were calibrated, you will need to re-apply their calibration after the STP offsets are calibrated.
Requirements: * CADCs and Synapse DAC biases are calibrated.
- Variables
v_stp – STP voltage to use during amplitude measurement, reached by setting v_charge and v_recover to this value. If an array of values is given, they are configured per quadrant.
i_ramp – STP ramp current. If an array of values is given, they are configured per quadrant.
measurement – Instance of measurement class, in order to measure the characteristic output amplitudes of each synapse driver.
-
__init__
(v_stp: Union[int, numpy.ndarray] = 180, i_ramp: Union[int, numpy.ndarray] = 600) Initialize self. See help(type(self)) for accurate signature.
Methods
__init__
([v_stp, i_ramp])Initialize self.
configure_parameters
(builder, parameters)Configure the synapse drivers to the given offsets.
measure_results
(connection, builder)Read output amplitudes of synapse drivers.
postlude
(connection)Log standard deviation of amplitudes after calibration.
prelude
(connection)Set up STP voltages and currents.
-
configure_parameters
(builder: calix.common.base.WriteRecordingPlaybackProgramBuilder, parameters: numpy.ndarray) → calix.common.base.WriteRecordingPlaybackProgramBuilder Configure the synapse drivers to the given offsets.
- Parameters
builder – Builder to append configuration to.
parameters – Synapse driver offset settings to configure.
- Returns
Builder with configuration instructions appended.
-
measure_results
(connection: pyhxcomm_vx.ConnectionHandle, builder: calix.common.base.WriteRecordingPlaybackProgramBuilder) → numpy.ndarray Read output amplitudes of synapse drivers.
- Parameters
connection – Connection to the chip to run on.
builder – Builder that is run before measuring.
- Returns
Array of synapse drivers’ output amplitudes.
-
postlude
(connection: pyhxcomm_vx.ConnectionHandle) → None Log standard deviation of amplitudes after calibration.
- Parameters
connection – Connection to the chip to run on.
-
prelude
(connection: pyhxcomm_vx.ConnectionHandle) Set up STP voltages and currents. Measure target values as median of drivers of a CapMem block.