sPyNNaker neural_modelling  7.4.2
synapse_types.h
Go to the documentation of this file.
1 /*
2  * Copyright (c) 2015 The University of Manchester
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  * https://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16 
22 #ifndef _SYNAPSE_TYPES_H_
23 #define _SYNAPSE_TYPES_H_
24 
25 #include <common/neuron-typedefs.h>
26 #include <neuron/synapse_row.h>
27 
28 // Forward declaration of params type
31 
32 // Forward declaration of real type
33 struct synapse_types_t;
34 typedef struct synapse_types_t synapse_types_t;
35 
41  uint32_t n_steps_per_time_step);
42 
48 
55 static void synapse_types_shape_input(synapse_types_t *parameters);
56 
64  index_t synapse_type_index, synapse_types_t *parameters,
65  input_t input);
66 
73  input_t *excitatory_response, synapse_types_t *parameters);
74 
81  input_t *inhibitory_response, synapse_types_t *parameters);
82 
89 static const char *synapse_types_get_type_char(index_t synapse_type_index);
90 
94 
99 static void synapse_types_print_input(synapse_types_t *parameters);
100 
101 #endif // _SYNAPSE_TYPES_H_
Data type definitions for SpiNNaker Neuron-modelling.
REAL input_t
The type of an input.
static stdp_params params
Configuration parameters.
implementation for handling the processing of synapse rows.
static void synapse_types_save_state(synapse_types_t *state, synapse_types_params_t *params)
save parameters and state back to SDRAM for reading by host and recovery on restart
static void synapse_types_initialise(synapse_types_t *state, synapse_types_params_t *params, uint32_t n_steps_per_time_step)
initialise the structure from the parameters
static const char * synapse_types_get_type_char(index_t synapse_type_index)
returns a human readable character for the type of synapse.
static void synapse_types_add_neuron_input(index_t synapse_type_index, synapse_types_t *parameters, input_t input)
adds the inputs for a give timer period to a given neuron that is being simulated by this model
static void synapse_types_print_input(synapse_types_t *parameters)
prints the input for a neuron ID given the available inputs currently only executed when the models a...
static input_t * synapse_types_get_excitatory_input(input_t *excitatory_response, synapse_types_t *parameters)
extracts the excitatory input buffers from the buffers available for a given neuron ID
static void synapse_types_print_parameters(synapse_types_t *parameters)
prints the parameters of the synapse type
static void synapse_types_shape_input(synapse_types_t *parameters)
decays the stuff thats sitting in the input buffers as these have not yet been processed and applied ...
static input_t * synapse_types_get_inhibitory_input(input_t *inhibitory_response, synapse_types_t *parameters)
extracts the inhibitory input buffers from the buffers available for a given neuron ID
Delta synapses support just a single excitatory and inhibitory input each.