HALDLS
|
Configuration container for the two mux and buffer blocks for voltage readout. More...
#include <readout.h>
Classes | |
struct | SourceMultiplexer |
Public Types | |
typedef halco::hicann_dls::vx::ReadoutSourceSelectionOnDLS | coordinate_type |
typedef std::true_type | is_leaf_node |
typedef halco::common::typed_array< bool, halco::hicann_dls::vx::SourceMultiplexerOnReadoutSourceSelection > | source_multiplexer_type |
Public Member Functions | |
ReadoutSourceSelection () SYMBOL_VISIBLE | |
Default constructor with both buffers and muxes disabled. More... | |
template<typename WordT > | |
void | decode (std::array< WordT, config_size_in_words > const &data) |
template<typename WordT > | |
std::array< WordT, config_size_in_words > | encode () const |
SourceMultiplexer | get_buffer (halco::hicann_dls::vx::SourceMultiplexerOnReadoutSourceSelection const &buffer) const SYMBOL_VISIBLE |
bool | operator!= (ReadoutSourceSelection const &other) const SYMBOL_VISIBLE |
bool | operator== (ReadoutSourceSelection const &other) const SYMBOL_VISIBLE |
return_value_policy (reference_internal)) source_multiplexer_type const &get_enable_buffer_to_pad() const SYMBOL_VISIBLE | |
void | set_buffer (halco::hicann_dls::vx::SourceMultiplexerOnReadoutSourceSelection const &buffer, SourceMultiplexer const &value) SYMBOL_VISIBLE |
void | set_enable_buffer_to_pad (source_multiplexer_type const &value) SYMBOL_VISIBLE |
Static Public Member Functions | |
template<typename AddressT > | |
static std::array< AddressT, config_size_in_words > | addresses (coordinate_type const &block) |
Static Public Attributes | |
static constexpr size_t | config_size_in_words = 2 |
Friends | |
class | cereal::access |
std::ostream & | operator<< (std::ostream &os, ReadoutSourceSelection const &config) SYMBOL_VISIBLE |
Configuration container for the two mux and buffer blocks for voltage readout.
Allows selection of various signal sources on chip and drives the signals. To reach the pads, the buffer_to_pad option in the PadMultiplexerConfig needs to be set.
Some of the selectable voltages in this container can also be selected in the PadMultiplexerConfig directly. Note that there the connection is direct, not buffered, while here the signal is amplified. Do not enable both connections, as there will be feedback otherwise!
typedef halco::hicann_dls::vx::ReadoutSourceSelectionOnDLS haldls::vx::ReadoutSourceSelection::coordinate_type |
typedef std::true_type haldls::vx::ReadoutSourceSelection::is_leaf_node |
typedef halco::common:: typed_array<bool, halco::hicann_dls::vx::SourceMultiplexerOnReadoutSourceSelection> haldls::vx::ReadoutSourceSelection::source_multiplexer_type |
haldls::vx::ReadoutSourceSelection::ReadoutSourceSelection | ( | ) |
Default constructor with both buffers and muxes disabled.
|
static |
void haldls::vx::ReadoutSourceSelection::decode | ( | std::array< WordT, config_size_in_words > const & | data | ) |
std::array<WordT, config_size_in_words> haldls::vx::ReadoutSourceSelection::encode | ( | ) | const |
SourceMultiplexer haldls::vx::ReadoutSourceSelection::get_buffer | ( | halco::hicann_dls::vx::SourceMultiplexerOnReadoutSourceSelection const & | buffer | ) | const |
bool haldls::vx::ReadoutSourceSelection::operator!= | ( | ReadoutSourceSelection const & | other | ) | const |
bool haldls::vx::ReadoutSourceSelection::operator== | ( | ReadoutSourceSelection const & | other | ) | const |
haldls::vx::ReadoutSourceSelection::return_value_policy | ( | reference_internal | ) | const & |
void haldls::vx::ReadoutSourceSelection::set_buffer | ( | halco::hicann_dls::vx::SourceMultiplexerOnReadoutSourceSelection const & | buffer, |
SourceMultiplexer const & | value | ||
) |
void haldls::vx::ReadoutSourceSelection::set_enable_buffer_to_pad | ( | source_multiplexer_type const & | value | ) |
|
friend |
|
staticconstexpr |