Problem
Currently, both Dispatch and Stream source modes require the processor to specify the charge applied to input neurons as part of the spike call. This resolution can consume a fair amount of input bandwidth and may not reflect the actual application's need, specifically for event-based or rate-encoded inputs.
Proposed Solution
It may be advantageous for a network to maintain high precision for internal charge but allow "binary" or "fire" overrides which inject input neurons with maximum charge or none at all.
Hurdles
Networks using this abbreviated input spiking method will need to be trained with spike encoders that operate in this binary fashion. In order to ensure there's no mismatch between user expectations and behavior, the fpga.Processor should check that apply_spike calls do not specify anything less than a full charge when this source method is active.
Expected API Impact
This will create a non-breaking API change in fpga.Processor.__init__ and will change the underlying behavior of fpga.Processor.apply_spikes for processors using this new input mode.
Problem
Currently, both Dispatch and Stream source modes require the processor to specify the charge applied to input neurons as part of the spike call. This resolution can consume a fair amount of input bandwidth and may not reflect the actual application's need, specifically for event-based or rate-encoded inputs.
Proposed Solution
It may be advantageous for a network to maintain high precision for internal charge but allow "binary" or "fire" overrides which inject input neurons with maximum charge or none at all.
Hurdles
Networks using this abbreviated input spiking method will need to be trained with spike encoders that operate in this binary fashion. In order to ensure there's no mismatch between user expectations and behavior, the
fpga.Processorshould check thatapply_spikecalls do not specify anything less than a full charge when this source method is active.Expected API Impact
This will create a non-breaking API change in
fpga.Processor.__init__and will change the underlying behavior offpga.Processor.apply_spikesfor processors using this new input mode.