sPyNNaker neural_modelling 7.3.1
Loading...
Searching...
No Matches
Data Structures | Functions
connection_generator_fixed_pre.h File Reference

Fixed-Number-Pre (fan-in) Connection generator implementation. More...

#include <log.h>
#include <synapse_expander/rng.h>
#include <stdbool.h>

Go to the source code of this file.

Data Structures

struct  fixed_pre_params
 The parameters that can be copied from SDRAM. More...
 
struct  fixed_pre
 The data to be passed around. More...
 

Functions

static uint32_t pre_random_in_range (rng_t *rng, uint32_t range)
 Generates a uniformly-distributed random number.
 
static void * connection_generator_fixed_pre_initialise (void **region)
 Initialise the fixed-pre connection generator.
 
void connection_generator_fixed_pre_free (void *generator)
 Free the fixed-pre connection generator.
 
bool connection_generator_fixed_pre_generate (void *generator, uint32_t pre_lo, uint32_t pre_hi, uint32_t post_lo, uint32_t post_hi, uint32_t post_index, uint32_t post_slice_start, uint32_t post_slice_count, unsigned long accum weight_scale, accum timestep_per_delay, param_generator_t weight_generator, param_generator_t delay_generator, matrix_generator_t matrix_generator)
 Generate connections with the fixed-pre connection generator.
 

Detailed Description

Fixed-Number-Pre (fan-in) Connection generator implementation.

Each post-neuron is connected to exactly n pre-neurons (chosen at random).

Definition in file connection_generator_fixed_pre.h.


Data Structure Documentation

◆ fixed_pre_params

struct fixed_pre_params

The parameters that can be copied from SDRAM.

Definition at line 29 of file connection_generator_fixed_pre.h.

Data Fields
uint32_t allow_self_connections
uint32_t with_replacement
uint32_t n_pre

◆ fixed_pre

struct fixed_pre

The data to be passed around.

Definition at line 38 of file connection_generator_fixed_pre.h.

Data Fields
struct fixed_pre_params params

Function Documentation

◆ pre_random_in_range()

static uint32_t pre_random_in_range ( rng_t rng,
uint32_t  range 
)
static

Generates a uniformly-distributed random number.

Parameters
[in]rngthe RNG to generate with
[in]rangethe (upper, exclusive) limit of the range of random numbers that may be generated. Should be in range 0..65536
Returns
a random integer in the given input range.

Definition at line 49 of file connection_generator_fixed_pre.h.

◆ connection_generator_fixed_pre_initialise()

static void * connection_generator_fixed_pre_initialise ( void **  region)
static

Initialise the fixed-pre connection generator.

Parameters
[in,out]regionRegion to read parameters from. Should be updated to position just after parameters after calling.
Returns
A data item to be passed in to other functions later on

Definition at line 60 of file connection_generator_fixed_pre.h.

◆ connection_generator_fixed_pre_free()

void connection_generator_fixed_pre_free ( void *  generator)

Free the fixed-pre connection generator.

Parameters
[in]generatorThe generator to free

Definition at line 82 of file connection_generator_fixed_pre.h.

◆ connection_generator_fixed_pre_generate()

bool connection_generator_fixed_pre_generate ( void *  generator,
uint32_t  pre_lo,
uint32_t  pre_hi,
uint32_t  post_lo,
uint32_t  post_hi,
uint32_t  post_index,
uint32_t  post_slice_start,
uint32_t  post_slice_count,
unsigned long accum  weight_scale,
accum  timestep_per_delay,
param_generator_t  weight_generator,
param_generator_t  delay_generator,
matrix_generator_t  matrix_generator 
)

Generate connections with the fixed-pre connection generator.

Parameters
[in]generatorThe generator to use to generate connections
[in]pre_slice_startThe start of the slice of the pre-population being generated
[in]pre_slice_countThe number of neurons in the slice of the pre-population being generated
[in]pre_neuron_indexThe index of the neuron in the pre-population being generated
[in]post_slice_startThe start of the slice of the post-population being generated
[in]post_slice_countThe number of neurons in the slice of the post-population being generated
[in]max_row_lengthThe maximum number of connections to generate
[in,out]indicesAn array into which the core-relative post-indices should be placed. This will be initialised to be max_row_length in size
Returns
The number of connections generated

Definition at line 105 of file connection_generator_fixed_pre.h.