|
sPyNNaker neural_modelling 7.4.2
|
This file contains the main functions for probabilistic synaptogenesis. More...
#include <neuron/structural_plasticity/synaptogenesis_dynamics.h>#include <neuron/population_table/population_table.h>#include <random.h>#include <spin1_api.h>#include <debug.h>#include <stdfix-full-iso.h>#include <circular_buffer.h>#include <recording.h>#include <neuron/synapse_row.h>#include <neuron/synapses.h>#include <common/maths-util.h>#include <simulation.h>#include "partner_selection/partner.h"#include "elimination/elimination.h"#include "formation/formation.h"Go to the source code of this file.
Data Structures | |
| struct | structural_recording_values_t |
| Struct for structural recording data. More... | |
Macros | |
| #define | ID_SHIFT 1 |
| How much to shift post-IDs by. | |
| #define | PRE_ID_SHIFT 9 |
| How much to shift pre-IDs by. | |
Enumerations | |
| enum | { ELIM_FLAG = 0 , FORM_FLAG = 1 } |
| values used in recording More... | |
Functions | |
| void | print_post_to_pre_entry (void) |
| Print a certain data object. | |
| bool | synaptogenesis_dynamics_initialise (address_t sdram_sp_address, uint32_t *recording_regions_used) |
| Initialisation of synaptic rewiring (synaptogenesis) parameters (random seed, spread of receptive field etc.) | |
| bool | synaptogenesis_dynamics_rewire (uint32_t time, spike_t *spike, pop_table_lookup_result_t *result) |
| Trigger the process of synaptic rewiring. | |
| static bool | do_formation (uint32_t time, synaptic_row_t restrict row, current_state_t *restrict current_state) |
| static bool | row_restructure (uint32_t time, synaptic_row_t restrict row, current_state_t *restrict current_state) |
| Performs the actual restructuring of a row. | |
| bool | synaptogenesis_row_restructure (uint32_t time, synaptic_row_t row) |
| Perform the actual restructuring of a row. | |
| void | synaptogenesis_spike_received (uint32_t time, spike_t spike) |
| Indicates that a spike has been received. | |
| uint32_t | synaptogenesis_n_updates (void) |
| Number of updates to do of synaptogenesis this time step. | |
Variables | |
| rewiring_data_t | rewiring_data |
| the instantiation of the rewiring data | |
| static post_to_pre_entry * | post_to_pre_table |
| inverse of synaptic matrix | |
| pre_pop_info_table_t | pre_info |
| pre-population information table | |
| static formation_params_t ** | formation_params |
| The formation parameters per pre-population. | |
| static elimination_params_t ** | elimination_params |
| The elimination parameters per pre-population. | |
| static circular_buffer | current_state_queue |
| Current states in use. | |
| static circular_buffer | free_states |
| Free current states. | |
| uint32_t | rewiring_recording_index |
| The recording region for the structural events. | |
| structural_recording_values_t | structural_recording_values |
| Working buffer for the recording of structural changes. | |
| static uint32_t | last_rewiring_time = 0 |
| Timer callbacks since last rewiring. | |
This file contains the main functions for probabilistic synaptogenesis.
Definition in file topographic_map_impl.c.
| struct structural_recording_values_t |
Struct for structural recording data.
Definition at line 91 of file topographic_map_impl.c.
| Data Fields | ||
|---|---|---|
| uint32_t | time | |
| uint32_t | value | |
| #define ID_SHIFT 1 |
How much to shift post-IDs by.
Definition at line 53 of file topographic_map_impl.c.
| #define PRE_ID_SHIFT 9 |
How much to shift pre-IDs by.
Definition at line 55 of file topographic_map_impl.c.
| anonymous enum |
values used in recording
| Enumerator | |
|---|---|
| ELIM_FLAG | Elimination flag. |
| FORM_FLAG | Formation flag. |
Definition at line 46 of file topographic_map_impl.c.
| void print_post_to_pre_entry | ( | void | ) |
Print a certain data object.
Definition at line 102 of file topographic_map_impl.c.
| bool synaptogenesis_dynamics_initialise | ( | address_t | sdram_sp_address, |
| uint32_t * | recording_regions_used | ||
| ) |
Initialisation of synaptic rewiring (synaptogenesis) parameters (random seed, spread of receptive field etc.)
| [in] | sdram_sp_address | Address of the start of the SDRAM region which contains synaptic rewiring params. |
| [in,out] | recording_regions_used | Variable used to track what recording regions have been used |
Definition at line 158 of file topographic_map_impl.c.
| bool synaptogenesis_dynamics_rewire | ( | uint32_t | time, |
| spike_t * | spike, | ||
| pop_table_lookup_result_t * | result | ||
| ) |
Trigger the process of synaptic rewiring.
Usually called on a timer registered in c_main()
| [in] | time | the current timestep |
| [out] | spike | variable to hold the spike |
| [out] | result | The result of the population table lookup |
Definition at line 220 of file topographic_map_impl.c.
|
static |
Definition at line 290 of file topographic_map_impl.c.
|
inlinestatic |
Performs the actual restructuring of a row.
Supporting function for synaptogenesis_row_restructure()
| [in] | time | The time of the restructure |
| [in] | row | The row to restructure |
| [in] | current_state | The current state of the world |
Definition at line 317 of file topographic_map_impl.c.
| bool synaptogenesis_row_restructure | ( | uint32_t | time, |
| synaptic_row_t | row | ||
| ) |
Perform the actual restructuring of a row.
| [in] | time | The time of the restructure |
| [in] | row | The row to restructure |
Definition at line 376 of file topographic_map_impl.c.
| void synaptogenesis_spike_received | ( | uint32_t | time, |
| spike_t | spike | ||
| ) |
Indicates that a spike has been received.
| [in] | time | The time that the spike was received at |
| [in] | spike | The received spike |
Definition at line 383 of file topographic_map_impl.c.
| uint32_t synaptogenesis_n_updates | ( | void | ) |
Number of updates to do of synaptogenesis this time step.
Definition at line 387 of file topographic_map_impl.c.
| rewiring_data_t rewiring_data |
the instantiation of the rewiring data
Definition at line 62 of file topographic_map_impl.c.
|
static |
inverse of synaptic matrix
Definition at line 65 of file topographic_map_impl.c.
| pre_pop_info_table_t pre_info |
pre-population information table
Definition at line 68 of file topographic_map_impl.c.
|
static |
The formation parameters per pre-population.
Definition at line 71 of file topographic_map_impl.c.
|
static |
The elimination parameters per pre-population.
Definition at line 74 of file topographic_map_impl.c.
|
static |
Current states in use.
synaptogenesis_row_restructure() moves states from here to free_states
Definition at line 79 of file topographic_map_impl.c.
|
static |
Free current states.
synaptogenesis_dynamics_rewire() moves states from here to current_state_queue
Definition at line 85 of file topographic_map_impl.c.
| uint32_t rewiring_recording_index |
The recording region for the structural events.
Definition at line 88 of file topographic_map_impl.c.
| structural_recording_values_t structural_recording_values |
Working buffer for the recording of structural changes.
Definition at line 97 of file topographic_map_impl.c.
|
static |
Timer callbacks since last rewiring.
Definition at line 100 of file topographic_map_impl.c.