SpiNNakerManchester/vor_cerebellum

Extend neuron model to include a parameter to store a 'latest spike time’

ChiaraBartolozzi opened this issue · 2 comments

Extend neuron model to include a parameter to store a 'latest spike time’

For the implementation of the STDP, we need to update the weight between the Parallel Fibre (PF from GrC) and the Purkinje Cell (PC) every time a presynaptic spike arrives from the error signal from the Climbing Fibres (CF).

Differently from the standard STDP rule, therefore, we need to use only presynaptic spikes to calculate and trigger the weight update.

The weight the needs to be changes is the one between the PF and PC cells. So it has to be calculated at occurrence of the PF pre-synaptic spike. BUT it has to be aligned with the CF spike (that triggers effectively the learning).

So for each PF spike we

  • implement additive potentiation with a constant
  • check saturation
  • find the previous CF spike and apply the kernel to the PF spikes that happened before the CF spike in a window of 255ms: starting from the oldest PF spike, we multiply the LTU value corresponding to the time difference between the CF and PF spike and decrease the current weight of that amount.
  • for doing the above, we need to store the PF spike train in a sliding window (in the SDRAM, in the presynaptic event history), we also store the CF spike train in the local memory (DTCM)

TODO:
@ChiaraBartolozzi : check the logic for the MFVN plasticity rule
@oliverrhodes : implement the same windowing for the MFVN plasticity rule