Models (sanafe.models)

This page documents every pipeline model available in SANA-FE. It begins with the framework attributes shared by all models, followed by a section for each model listing its model-specific attributes.

Framework attributes

These attributes are accepted by every pipeline model in SANA-FE. They control shared behavior such as energy/latency reporting, hardware unit selection, and update scheduling, and apply equally to built-in and plugin models.

Attribute

Description

connections_out

(int) Connections outgoing from a neuron (deprecated)

dendrite_hw_name

(str) Unique name of the dendrite H/W unit.

energy_access_neuron

(float) Energy cost for a soma to access a neuron (J).

energy_message_in

(float) Energy cost of receiving a spike message (J).

energy_message_out

(float) Energy cost of sending a spike message (J)

energy_process_spike

(float) Energy cost for one synapse look-up/access (J).

energy_spike_out

(float) Energy cost for a soma to spike (J).

energy_update

(float) Energy cost of updating a dendrite (s)

energy_update_neuron

(float) Energy cost for a soma to update (J).

force_update

(bool) Force updates every time-step.

latency_access_neuron

(float) Latency cost for a soma to access a neuron (s).

latency_message_in

(float) Latency cost of receiving a spike message (s).

latency_message_out

(float) Latency cost of sending a spike message (s)

latency_process_spike

(float) Latency cost for one synapse look-up/access (s).

latency_spike_out

(float) Latency cost for a soma to spike (s).

latency_update

(float) Latency cost of updating a dendrite (s)

latency_update_neuron

(float) Energy cost for a soma to update (s).

model

(str) Unique model name, either built-in or plugin.

plugin

(str) Plug-in library path.

soma_hw_name

(str) Unique name of the soma H/W unit.

synapse_hw_name

(str) Unique name of the synapse H/W unit.

accumulator

(none)

accumulator_with_delay

(none)

current_based

Attribute

Description

d

(float) Time-steps that a spike is delayed.

delay

(float) Time-steps that a spike is delayed.

w

(float) Synaptic weight associated with connection.

weight

(float) Synaptic weight associated with connection.

input

Attribute

Description

poisson

(float) Randomized Poisson input encoding, i.e., random > poisson: spike, else no spike.

rate

(float) Rate-based input encoding.

spikes

(list[bool]) A per-time-step spike-train.

leaky_integrate_and_fire

Attribute

Description

bias

Bias current applied every step: v[t+1] = bias + v[t]*leak_decay + u[t]

force_potential

(no description)

force_update

(bool) Force soma to update every step, regardless of inputs.

force_update_every_timestep

(bool) Force soma to update every step, regardless of inputs.

leak_decay

(float) Decay term applied every step: v[t+1] = bias + v[t]*leak_decay + u[t]

log_u

(bool) Record input current (u) for Loihi soma.

noise

(str) Noise source. Only file-based noise stream supported

noise_bits

(int) The number of noise bits simulated.

refractory_delay

(int) The number of refractory steps after a spike, default=0.

reset

(float) The potential to reset to after a spike. Default=0.0

reset_mode

(str) The type of reset to apply on spikes [none/soft/hard/saturate]. Default=hard

reverse_reset

(float) The potential to reset to after a reverse spike.

reverse_reset_mode

(str) The type of reset to apply on negative/reverse spikes [none/soft/hard/saturate]. Default=None

reverse_threshold

(float) Fires when V < reverse_threshold, then V <- f(reverse_reset_mode, reverse_reset).

threshold

(float) Fires when V > threshold, then V <- f(reset_mode, reset).

taps

Attribute

Description

space_constants

(list[float]) List of RC line space constants, N-1 in total.

taps

(int) Number of N dendritic ‘taps’ or compartments.

time_constants

(list[float]) List of RC line time constants, one per tap.

truenorth

Attribute

Description

bias

Additive bias current applied every step.

leak

(float) Subtractive leak term applied every step

leak_towards_zero

(bool) Leak towards zero if true, leak away otherwise.

random_mask

(int) Positive mask to apply to randomly generated noise.

reset

(float) The potential to reset to after a spike. Default=0.0

reset_mode

(str) The type of reset to apply on spikes [none/soft/hard/saturate]. Default=hard

reverse_reset

(float) The potential to reset to after a reverse spike.

reverse_reset_mode

(str) The type of reset to apply on negative/reverse spikes [none/soft/hard/saturate]. Default=None

reverse_threshold

(float) The potential at which a reverse spike is triggered.

threshold

(float) The potential at which a spike is triggered.