HALDLS
|
Read/write access to common neuron parameters. More...
#include <neuron.h>
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_words > | encode () 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_words > | addresses (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 |
typedef halco::hicann_dls::vx::CommonNeuronBackendConfigOnDLS haldls::vx::CommonNeuronBackendConfig::coordinate_type |
typedef std::true_type haldls::vx::CommonNeuronBackendConfig::is_leaf_node |
haldls::vx::CommonNeuronBackendConfig::CommonNeuronBackendConfig | ( | ) |
|
static |
void haldls::vx::CommonNeuronBackendConfig::decode | ( | std::array< WordT, config_size_in_words > const & | data | ) |
std::array<WordT, config_size_in_words> haldls::vx::CommonNeuronBackendConfig::encode | ( | ) | const |
ClockScale haldls::vx::CommonNeuronBackendConfig::get_clock_scale_adaptation_pulse | ( | ) | const |
ClockScale haldls::vx::CommonNeuronBackendConfig::get_clock_scale_fast | ( | ) | const |
ClockScale haldls::vx::CommonNeuronBackendConfig::get_clock_scale_post_pulse | ( | ) | const |
ClockScale haldls::vx::CommonNeuronBackendConfig::get_clock_scale_slow | ( | ) | const |
bool haldls::vx::CommonNeuronBackendConfig::get_enable_clocks | ( | ) | const |
bool haldls::vx::CommonNeuronBackendConfig::get_enable_event_registers | ( | ) | const |
bool haldls::vx::CommonNeuronBackendConfig::get_force_reset | ( | ) | const |
bool haldls::vx::CommonNeuronBackendConfig::get_sample_positive_edge | ( | halco::hicann_dls::vx::NeuronEventOutputOnNeuronBackendBlock | coord | ) | const |
WaitFireNeuron haldls::vx::CommonNeuronBackendConfig::get_wait_fire_neuron | ( | ) | const |
WaitGlobalPostPulse haldls::vx::CommonNeuronBackendConfig::get_wait_global_post_pulse | ( | ) | const |
WaitSpikeCounterRead haldls::vx::CommonNeuronBackendConfig::get_wait_spike_counter_read | ( | ) | const |
WaitSpikeCounterReset haldls::vx::CommonNeuronBackendConfig::get_wait_spike_counter_reset | ( | ) | const |
bool haldls::vx::CommonNeuronBackendConfig::operator!= | ( | CommonNeuronBackendConfig const & | other | ) | const |
bool haldls::vx::CommonNeuronBackendConfig::operator== | ( | CommonNeuronBackendConfig const & | other | ) | const |
void haldls::vx::CommonNeuronBackendConfig::set_clock_scale_adaptation_pulse | ( | ClockScale const | val | ) |
void haldls::vx::CommonNeuronBackendConfig::set_clock_scale_fast | ( | ClockScale const | val | ) |
void haldls::vx::CommonNeuronBackendConfig::set_clock_scale_post_pulse | ( | ClockScale const | val | ) |
void haldls::vx::CommonNeuronBackendConfig::set_clock_scale_slow | ( | ClockScale const | val | ) |
void haldls::vx::CommonNeuronBackendConfig::set_enable_clocks | ( | bool | val | ) |
void haldls::vx::CommonNeuronBackendConfig::set_enable_event_registers | ( | bool | val | ) |
void haldls::vx::CommonNeuronBackendConfig::set_force_reset | ( | bool | val | ) |
void haldls::vx::CommonNeuronBackendConfig::set_sample_positive_edge | ( | halco::hicann_dls::vx::NeuronEventOutputOnNeuronBackendBlock | coord, |
bool | val | ||
) |
void haldls::vx::CommonNeuronBackendConfig::set_wait_fire_neuron | ( | WaitFireNeuron const | val | ) |
void haldls::vx::CommonNeuronBackendConfig::set_wait_global_post_pulse | ( | WaitGlobalPostPulse const | val | ) |
void haldls::vx::CommonNeuronBackendConfig::set_wait_spike_counter_read | ( | WaitSpikeCounterRead const | val | ) |
void haldls::vx::CommonNeuronBackendConfig::set_wait_spike_counter_reset | ( | WaitSpikeCounterReset const | val | ) |
|
friend |
|
staticconstexpr |