HALDLS
haldls::vx::CommonNeuronBackendConfig Class Reference

Read/write access to common neuron parameters. More...

#include <neuron.h>

+ Inheritance diagram for haldls::vx::CommonNeuronBackendConfig:
+ Collaboration diagram for haldls::vx::CommonNeuronBackendConfig:

Classes

struct  ClockScale
 The ClockScale determines the range of the clock and at its precision It's an exponential power-of-two clock scaling factor: For a given reference clock of f_clk = 250MHz, the resulting frequency is f_clk / (2 ^ (clock_scale + 1)). More...
 
struct  WaitFireNeuron
 Duration of pulse triggering the artificial neuron spikes. More...
 
struct  WaitGlobalPostPulse
 Duration of the pulse triggering global post pulses for all neurons connected to that backend block. More...
 
struct  WaitSpikeCounterRead
 Wait time for letting the neuron backend circuits drive the counter content to the controller logic. More...
 
struct  WaitSpikeCounterReset
 Duration of the pulse triggering spike counter resets. More...
 

Public Types

typedef halco::hicann_dls::vx::CommonNeuronBackendConfigOnDLS coordinate_type
 
typedef std::true_type is_leaf_node
 

Public Member Functions

 CommonNeuronBackendConfig () SYMBOL_VISIBLE
 
template<typename WordT >
void decode (std::array< WordT, config_size_in_words > const &data) SYMBOL_VISIBLE
 
template<typename WordT >
std::array< WordT, config_size_in_wordsencode () const SYMBOL_VISIBLE
 
ClockScale get_clock_scale_adaptation_pulse () const SYMBOL_VISIBLE
 
ClockScale get_clock_scale_fast () const SYMBOL_VISIBLE
 
ClockScale get_clock_scale_post_pulse () const SYMBOL_VISIBLE
 
ClockScale get_clock_scale_slow () const SYMBOL_VISIBLE
 
bool get_enable_clocks () const SYMBOL_VISIBLE
 
bool get_enable_event_registers () const SYMBOL_VISIBLE
 
bool get_force_reset () const SYMBOL_VISIBLE
 
bool get_sample_positive_edge (halco::hicann_dls::vx::NeuronEventOutputOnNeuronBackendBlock coord) const SYMBOL_VISIBLE
 
WaitFireNeuron get_wait_fire_neuron () const SYMBOL_VISIBLE
 
WaitGlobalPostPulse get_wait_global_post_pulse () const SYMBOL_VISIBLE
 
WaitSpikeCounterRead get_wait_spike_counter_read () const SYMBOL_VISIBLE
 
WaitSpikeCounterReset get_wait_spike_counter_reset () const SYMBOL_VISIBLE
 
bool operator!= (CommonNeuronBackendConfig const &other) const SYMBOL_VISIBLE
 
bool operator== (CommonNeuronBackendConfig const &other) const SYMBOL_VISIBLE
 
void set_clock_scale_adaptation_pulse (ClockScale const val) SYMBOL_VISIBLE
 
void set_clock_scale_fast (ClockScale const val) SYMBOL_VISIBLE
 
void set_clock_scale_post_pulse (ClockScale const val) SYMBOL_VISIBLE
 
void set_clock_scale_slow (ClockScale const val) SYMBOL_VISIBLE
 
void set_enable_clocks (bool val) SYMBOL_VISIBLE
 
void set_enable_event_registers (bool val) SYMBOL_VISIBLE
 
void set_force_reset (bool val) SYMBOL_VISIBLE
 
void set_sample_positive_edge (halco::hicann_dls::vx::NeuronEventOutputOnNeuronBackendBlock coord, bool val) SYMBOL_VISIBLE
 
void set_wait_fire_neuron (WaitFireNeuron const val) SYMBOL_VISIBLE
 
void set_wait_global_post_pulse (WaitGlobalPostPulse const val) SYMBOL_VISIBLE
 
void set_wait_spike_counter_read (WaitSpikeCounterRead const val) SYMBOL_VISIBLE
 
void set_wait_spike_counter_reset (WaitSpikeCounterReset const val) SYMBOL_VISIBLE
 

Static Public Member Functions

template<typename AddressT >
static std::array< AddressT, config_size_in_wordsaddresses (coordinate_type const &neuron) SYMBOL_VISIBLE
 

Static Public Attributes

static constexpr size_t config_size_in_words = 2
 

Friends

class cereal::access
 
std::ostream & operator<< (std::ostream &os, CommonNeuronBackendConfig const &config) SYMBOL_VISIBLE
 

Detailed Description

Read/write access to common neuron parameters.

Definition at line 30 of file neuron.h.

Member Typedef Documentation

◆ coordinate_type

typedef halco::hicann_dls::vx::CommonNeuronBackendConfigOnDLS haldls::vx::CommonNeuronBackendConfig::coordinate_type

Definition at line 33 of file neuron.h.

◆ is_leaf_node

Definition at line 34 of file neuron.h.

Constructor & Destructor Documentation

◆ CommonNeuronBackendConfig()

haldls::vx::CommonNeuronBackendConfig::CommonNeuronBackendConfig ( )

Member Function Documentation

◆ addresses()

template<typename AddressT >
static std::array<AddressT, config_size_in_words> haldls::vx::CommonNeuronBackendConfig::addresses ( coordinate_type const &  neuron)
static

◆ decode()

template<typename WordT >
void haldls::vx::CommonNeuronBackendConfig::decode ( std::array< WordT, config_size_in_words > const &  data)

◆ encode()

template<typename WordT >
std::array<WordT, config_size_in_words> haldls::vx::CommonNeuronBackendConfig::encode ( ) const

◆ get_clock_scale_adaptation_pulse()

ClockScale haldls::vx::CommonNeuronBackendConfig::get_clock_scale_adaptation_pulse ( ) const

◆ get_clock_scale_fast()

ClockScale haldls::vx::CommonNeuronBackendConfig::get_clock_scale_fast ( ) const

◆ get_clock_scale_post_pulse()

ClockScale haldls::vx::CommonNeuronBackendConfig::get_clock_scale_post_pulse ( ) const

◆ get_clock_scale_slow()

ClockScale haldls::vx::CommonNeuronBackendConfig::get_clock_scale_slow ( ) const

◆ get_enable_clocks()

bool haldls::vx::CommonNeuronBackendConfig::get_enable_clocks ( ) const

◆ get_enable_event_registers()

bool haldls::vx::CommonNeuronBackendConfig::get_enable_event_registers ( ) const

◆ get_force_reset()

bool haldls::vx::CommonNeuronBackendConfig::get_force_reset ( ) const

◆ get_sample_positive_edge()

bool haldls::vx::CommonNeuronBackendConfig::get_sample_positive_edge ( halco::hicann_dls::vx::NeuronEventOutputOnNeuronBackendBlock  coord) const

◆ get_wait_fire_neuron()

WaitFireNeuron haldls::vx::CommonNeuronBackendConfig::get_wait_fire_neuron ( ) const

◆ get_wait_global_post_pulse()

WaitGlobalPostPulse haldls::vx::CommonNeuronBackendConfig::get_wait_global_post_pulse ( ) const

◆ get_wait_spike_counter_read()

WaitSpikeCounterRead haldls::vx::CommonNeuronBackendConfig::get_wait_spike_counter_read ( ) const

◆ get_wait_spike_counter_reset()

WaitSpikeCounterReset haldls::vx::CommonNeuronBackendConfig::get_wait_spike_counter_reset ( ) const

◆ operator!=()

bool haldls::vx::CommonNeuronBackendConfig::operator!= ( CommonNeuronBackendConfig const &  other) const

◆ operator==()

bool haldls::vx::CommonNeuronBackendConfig::operator== ( CommonNeuronBackendConfig const &  other) const

◆ set_clock_scale_adaptation_pulse()

void haldls::vx::CommonNeuronBackendConfig::set_clock_scale_adaptation_pulse ( ClockScale const  val)

◆ set_clock_scale_fast()

void haldls::vx::CommonNeuronBackendConfig::set_clock_scale_fast ( ClockScale const  val)

◆ set_clock_scale_post_pulse()

void haldls::vx::CommonNeuronBackendConfig::set_clock_scale_post_pulse ( ClockScale const  val)

◆ set_clock_scale_slow()

void haldls::vx::CommonNeuronBackendConfig::set_clock_scale_slow ( ClockScale const  val)

◆ set_enable_clocks()

void haldls::vx::CommonNeuronBackendConfig::set_enable_clocks ( bool  val)

◆ set_enable_event_registers()

void haldls::vx::CommonNeuronBackendConfig::set_enable_event_registers ( bool  val)

◆ set_force_reset()

void haldls::vx::CommonNeuronBackendConfig::set_force_reset ( bool  val)

◆ set_sample_positive_edge()

void haldls::vx::CommonNeuronBackendConfig::set_sample_positive_edge ( halco::hicann_dls::vx::NeuronEventOutputOnNeuronBackendBlock  coord,
bool  val 
)

◆ set_wait_fire_neuron()

void haldls::vx::CommonNeuronBackendConfig::set_wait_fire_neuron ( WaitFireNeuron const  val)

◆ set_wait_global_post_pulse()

void haldls::vx::CommonNeuronBackendConfig::set_wait_global_post_pulse ( WaitGlobalPostPulse const  val)

◆ set_wait_spike_counter_read()

void haldls::vx::CommonNeuronBackendConfig::set_wait_spike_counter_read ( WaitSpikeCounterRead const  val)

◆ set_wait_spike_counter_reset()

void haldls::vx::CommonNeuronBackendConfig::set_wait_spike_counter_reset ( WaitSpikeCounterReset const  val)

Friends And Related Function Documentation

◆ cereal::access

friend class cereal::access
friend

Definition at line 182 of file neuron.h.

◆ operator<<

std::ostream& operator<< ( std::ostream &  os,
CommonNeuronBackendConfig const &  config 
)
friend

Member Data Documentation

◆ config_size_in_words

constexpr size_t haldls::vx::CommonNeuronBackendConfig::config_size_in_words = 2
staticconstexpr

Definition at line 167 of file neuron.h.


The documentation for this class was generated from the following file: