HALDLS
haldls::vx::ReadoutSourceSelection Class Reference

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_wordsencode () 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_wordsaddresses (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
 

Detailed Description

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!

Definition at line 242 of file readout.h.

Member Typedef Documentation

◆ coordinate_type

typedef halco::hicann_dls::vx::ReadoutSourceSelectionOnDLS haldls::vx::ReadoutSourceSelection::coordinate_type

Definition at line 245 of file readout.h.

◆ is_leaf_node

Definition at line 246 of file readout.h.

◆ source_multiplexer_type

typedef halco::common:: typed_array<bool, halco::hicann_dls::vx::SourceMultiplexerOnReadoutSourceSelection> haldls::vx::ReadoutSourceSelection::source_multiplexer_type

Definition at line 355 of file readout.h.

Constructor & Destructor Documentation

◆ ReadoutSourceSelection()

haldls::vx::ReadoutSourceSelection::ReadoutSourceSelection ( )

Default constructor with both buffers and muxes disabled.

Member Function Documentation

◆ addresses()

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

◆ decode()

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

◆ encode()

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

◆ get_buffer()

SourceMultiplexer haldls::vx::ReadoutSourceSelection::get_buffer ( halco::hicann_dls::vx::SourceMultiplexerOnReadoutSourceSelection const &  buffer) const

◆ operator!=()

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

◆ operator==()

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

◆ return_value_policy()

haldls::vx::ReadoutSourceSelection::return_value_policy ( reference_internal  ) const &

◆ set_buffer()

void haldls::vx::ReadoutSourceSelection::set_buffer ( halco::hicann_dls::vx::SourceMultiplexerOnReadoutSourceSelection const &  buffer,
SourceMultiplexer const &  value 
)

◆ set_enable_buffer_to_pad()

void haldls::vx::ReadoutSourceSelection::set_enable_buffer_to_pad ( source_multiplexer_type const &  value)

Friends And Related Function Documentation

◆ cereal::access

friend class cereal::access
friend

Definition at line 384 of file readout.h.

◆ operator<<

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

Member Data Documentation

◆ config_size_in_words

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

Definition at line 364 of file readout.h.


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