HALDLS
haldls::vx::PhyConfigChip Class Reference

Container for individual configuration of chip-side PHYs. More...

#include <phy.h>

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

Public Types

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

Public Member Functions

 PhyConfigChip () SYMBOL_VISIBLE
 Default constructor. More...
 
void decode (std::array< fisch::vx::word_access_type::JTAGPhyRegister, read_config_size_in_words > const &data) SYMBOL_VISIBLE
 
std::array< fisch::vx::word_access_type::JTAGPhyRegister, write_config_size_in_wordsencode () const SYMBOL_VISIBLE
 
DebugOutputs get_debug_outputs () const SYMBOL_VISIBLE
 
bool get_enable_auto_init () const SYMBOL_VISIBLE
 
bool get_enable_ber_loopback () const SYMBOL_VISIBLE
 
bool get_enable_bit_slip () const SYMBOL_VISIBLE
 
bool get_enable_clock_pre_alignment () const SYMBOL_VISIBLE
 
bool get_enable_delay_cell_measurement () const SYMBOL_VISIBLE
 
bool get_enable_des_recal () const SYMBOL_VISIBLE
 
bool get_enable_force_lvds_power_up () const SYMBOL_VISIBLE
 
bool get_enable_force_start () const SYMBOL_VISIBLE
 
bool get_enable_initialization_master_mode () const SYMBOL_VISIBLE
 
bool get_enable_loopback_en () const SYMBOL_VISIBLE
 
bool get_enable_manual_training_mode () const SYMBOL_VISIBLE
 
bool get_enable_manual_tx_data_valid_for_init () const SYMBOL_VISIBLE
 
bool get_enable_transmission_without_idle_pattern () const SYMBOL_VISIBLE
 
ManualDelay get_manual_delay () const SYMBOL_VISIBLE
 
VBias get_vbias () const SYMBOL_VISIBLE
 
bool operator!= (PhyConfigBase const &other) const SYMBOL_VISIBLE
 
bool operator!= (PhyConfigChip const &other) const SYMBOL_VISIBLE
 
bool operator== (PhyConfigBase const &other) const SYMBOL_VISIBLE
 
bool operator== (PhyConfigChip const &other) const SYMBOL_VISIBLE
 
void set_debug_outputs (DebugOutputs value) SYMBOL_VISIBLE
 
void set_enable_auto_init (bool value) SYMBOL_VISIBLE
 
void set_enable_ber_loopback (bool value) SYMBOL_VISIBLE
 
void set_enable_bit_slip (bool value) SYMBOL_VISIBLE
 
void set_enable_clock_pre_alignment (bool value) SYMBOL_VISIBLE
 
void set_enable_delay_cell_measurement (bool value) SYMBOL_VISIBLE
 
void set_enable_des_recal (bool value) SYMBOL_VISIBLE
 
void set_enable_force_lvds_power_up (bool value) SYMBOL_VISIBLE
 
void set_enable_force_start (bool value) SYMBOL_VISIBLE
 
void set_enable_initialization_master_mode (bool value) SYMBOL_VISIBLE
 
void set_enable_loopback_en (bool value) SYMBOL_VISIBLE
 
void set_enable_manual_training_mode (bool value) SYMBOL_VISIBLE
 
void set_enable_manual_tx_data_valid_for_init (bool value) SYMBOL_VISIBLE
 
void set_enable_transmission_without_idle_pattern (bool value) SYMBOL_VISIBLE
 
void set_manual_delay (ManualDelay value) SYMBOL_VISIBLE
 
void set_vbias (VBias value) SYMBOL_VISIBLE
 

Static Public Member Functions

static std::array< halco::hicann_dls::vx::JTAGPhyRegisterOnDLS, read_config_size_in_wordsread_addresses (coordinate_type const &word) SYMBOL_VISIBLE
 
static std::array< halco::hicann_dls::vx::JTAGPhyRegisterOnDLS, write_config_size_in_wordswrite_addresses (coordinate_type const &word) SYMBOL_VISIBLE
 

Static Public Attributes

static constexpr size_t read_config_size_in_words = 0
 
static constexpr size_t write_config_size_in_words = 1
 

Protected Member Functions

template<typename Archive >
void cerealize_impl (Archive &ar) SYMBOL_VISIBLE
 
uint32_t pack () const SYMBOL_VISIBLE
 
void unpack (uint32_t value) SYMBOL_VISIBLE
 

Protected Attributes

DebugOutputs m_debug_outputs
 
bool m_enable_auto_init
 
bool m_enable_ber_loopback
 
bool m_enable_bit_slip
 
bool m_enable_clock_pre_alignment
 
bool m_enable_delay_cell_measurement
 
bool m_enable_des_recal
 
bool m_enable_force_lvds_power_up
 
bool m_enable_force_start
 
bool m_enable_initialization_master_mode
 
bool m_enable_loopback_en
 
bool m_enable_manual_training_mode
 
bool m_enable_manual_tx_data_valid_for_init
 
bool m_enable_transmission_without_idle_pattern
 
ManualDelay m_manual_delay
 
VBias m_vbias
 

Friends

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

Detailed Description

Container for individual configuration of chip-side PHYs.

Definition at line 216 of file phy.h.

Member Typedef Documentation

◆ coordinate_type

typedef halco::hicann_dls::vx::PhyConfigChipOnDLS haldls::vx::PhyConfigChip::coordinate_type

Definition at line 219 of file phy.h.

◆ is_leaf_node

typedef std::true_type haldls::vx::detail::PhyConfigBase::is_leaf_node
inherited

Definition at line 29 of file phy.h.

Constructor & Destructor Documentation

◆ PhyConfigChip()

haldls::vx::PhyConfigChip::PhyConfigChip ( )

Default constructor.

Member Function Documentation

◆ cerealize_impl()

template<typename Archive >
void haldls::vx::detail::PhyConfigBase::cerealize_impl ( Archive &  ar)
protectedinherited

◆ decode()

void haldls::vx::PhyConfigChip::decode ( std::array< fisch::vx::word_access_type::JTAGPhyRegister, read_config_size_in_words > const &  data)

◆ encode()

std::array<fisch::vx::word_access_type::JTAGPhyRegister, write_config_size_in_words> haldls::vx::PhyConfigChip::encode ( ) const

◆ get_debug_outputs()

DebugOutputs haldls::vx::detail::PhyConfigBase::get_debug_outputs ( ) const
inherited

◆ get_enable_auto_init()

bool haldls::vx::detail::PhyConfigBase::get_enable_auto_init ( ) const
inherited

◆ get_enable_ber_loopback()

bool haldls::vx::detail::PhyConfigBase::get_enable_ber_loopback ( ) const
inherited

◆ get_enable_bit_slip()

bool haldls::vx::detail::PhyConfigBase::get_enable_bit_slip ( ) const
inherited

◆ get_enable_clock_pre_alignment()

bool haldls::vx::detail::PhyConfigBase::get_enable_clock_pre_alignment ( ) const
inherited

◆ get_enable_delay_cell_measurement()

bool haldls::vx::detail::PhyConfigBase::get_enable_delay_cell_measurement ( ) const
inherited

◆ get_enable_des_recal()

bool haldls::vx::detail::PhyConfigBase::get_enable_des_recal ( ) const
inherited

◆ get_enable_force_lvds_power_up()

bool haldls::vx::detail::PhyConfigBase::get_enable_force_lvds_power_up ( ) const
inherited

◆ get_enable_force_start()

bool haldls::vx::detail::PhyConfigBase::get_enable_force_start ( ) const
inherited

◆ get_enable_initialization_master_mode()

bool haldls::vx::detail::PhyConfigBase::get_enable_initialization_master_mode ( ) const
inherited

◆ get_enable_loopback_en()

bool haldls::vx::detail::PhyConfigBase::get_enable_loopback_en ( ) const
inherited

◆ get_enable_manual_training_mode()

bool haldls::vx::detail::PhyConfigBase::get_enable_manual_training_mode ( ) const
inherited

◆ get_enable_manual_tx_data_valid_for_init()

bool haldls::vx::detail::PhyConfigBase::get_enable_manual_tx_data_valid_for_init ( ) const
inherited

◆ get_enable_transmission_without_idle_pattern()

bool haldls::vx::detail::PhyConfigBase::get_enable_transmission_without_idle_pattern ( ) const
inherited

◆ get_manual_delay()

ManualDelay haldls::vx::detail::PhyConfigBase::get_manual_delay ( ) const
inherited

◆ get_vbias()

VBias haldls::vx::detail::PhyConfigBase::get_vbias ( ) const
inherited

◆ operator!=() [1/2]

bool haldls::vx::detail::PhyConfigBase::operator!= ( PhyConfigBase const &  other) const
inherited

◆ operator!=() [2/2]

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

◆ operator==() [1/2]

bool haldls::vx::detail::PhyConfigBase::operator== ( PhyConfigBase const &  other) const
inherited

◆ operator==() [2/2]

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

◆ pack()

uint32_t haldls::vx::detail::PhyConfigBase::pack ( ) const
protectedinherited

◆ read_addresses()

static std::array<halco::hicann_dls::vx::JTAGPhyRegisterOnDLS, read_config_size_in_words> haldls::vx::PhyConfigChip::read_addresses ( coordinate_type const &  word)
static

◆ set_debug_outputs()

void haldls::vx::detail::PhyConfigBase::set_debug_outputs ( DebugOutputs  value)
inherited

◆ set_enable_auto_init()

void haldls::vx::detail::PhyConfigBase::set_enable_auto_init ( bool  value)
inherited

◆ set_enable_ber_loopback()

void haldls::vx::detail::PhyConfigBase::set_enable_ber_loopback ( bool  value)
inherited

◆ set_enable_bit_slip()

void haldls::vx::detail::PhyConfigBase::set_enable_bit_slip ( bool  value)
inherited

◆ set_enable_clock_pre_alignment()

void haldls::vx::detail::PhyConfigBase::set_enable_clock_pre_alignment ( bool  value)
inherited

◆ set_enable_delay_cell_measurement()

void haldls::vx::detail::PhyConfigBase::set_enable_delay_cell_measurement ( bool  value)
inherited

◆ set_enable_des_recal()

void haldls::vx::detail::PhyConfigBase::set_enable_des_recal ( bool  value)
inherited

◆ set_enable_force_lvds_power_up()

void haldls::vx::detail::PhyConfigBase::set_enable_force_lvds_power_up ( bool  value)
inherited

◆ set_enable_force_start()

void haldls::vx::detail::PhyConfigBase::set_enable_force_start ( bool  value)
inherited

◆ set_enable_initialization_master_mode()

void haldls::vx::detail::PhyConfigBase::set_enable_initialization_master_mode ( bool  value)
inherited

◆ set_enable_loopback_en()

void haldls::vx::detail::PhyConfigBase::set_enable_loopback_en ( bool  value)
inherited

◆ set_enable_manual_training_mode()

void haldls::vx::detail::PhyConfigBase::set_enable_manual_training_mode ( bool  value)
inherited

◆ set_enable_manual_tx_data_valid_for_init()

void haldls::vx::detail::PhyConfigBase::set_enable_manual_tx_data_valid_for_init ( bool  value)
inherited

◆ set_enable_transmission_without_idle_pattern()

void haldls::vx::detail::PhyConfigBase::set_enable_transmission_without_idle_pattern ( bool  value)
inherited

◆ set_manual_delay()

void haldls::vx::detail::PhyConfigBase::set_manual_delay ( ManualDelay  value)
inherited

◆ set_vbias()

void haldls::vx::detail::PhyConfigBase::set_vbias ( VBias  value)
inherited

◆ unpack()

void haldls::vx::detail::PhyConfigBase::unpack ( uint32_t  value)
protectedinherited

◆ write_addresses()

static std::array<halco::hicann_dls::vx::JTAGPhyRegisterOnDLS, write_config_size_in_words> haldls::vx::PhyConfigChip::write_addresses ( coordinate_type const &  word)
static

Friends And Related Function Documentation

◆ cereal::access

friend class cereal::access
friend

Definition at line 243 of file phy.h.

◆ operator<<

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

Member Data Documentation

◆ m_debug_outputs

DebugOutputs haldls::vx::detail::PhyConfigBase::m_debug_outputs
protectedinherited

Definition at line 155 of file phy.h.

◆ m_enable_auto_init

bool haldls::vx::detail::PhyConfigBase::m_enable_auto_init
protectedinherited

Definition at line 160 of file phy.h.

◆ m_enable_ber_loopback

bool haldls::vx::detail::PhyConfigBase::m_enable_ber_loopback
protectedinherited

Definition at line 153 of file phy.h.

◆ m_enable_bit_slip

bool haldls::vx::detail::PhyConfigBase::m_enable_bit_slip
protectedinherited

Definition at line 145 of file phy.h.

◆ m_enable_clock_pre_alignment

bool haldls::vx::detail::PhyConfigBase::m_enable_clock_pre_alignment
protectedinherited

Definition at line 157 of file phy.h.

◆ m_enable_delay_cell_measurement

bool haldls::vx::detail::PhyConfigBase::m_enable_delay_cell_measurement
protectedinherited

Definition at line 147 of file phy.h.

◆ m_enable_des_recal

bool haldls::vx::detail::PhyConfigBase::m_enable_des_recal
protectedinherited

Definition at line 158 of file phy.h.

◆ m_enable_force_lvds_power_up

bool haldls::vx::detail::PhyConfigBase::m_enable_force_lvds_power_up
protectedinherited

Definition at line 150 of file phy.h.

◆ m_enable_force_start

bool haldls::vx::detail::PhyConfigBase::m_enable_force_start
protectedinherited

Definition at line 151 of file phy.h.

◆ m_enable_initialization_master_mode

bool haldls::vx::detail::PhyConfigBase::m_enable_initialization_master_mode
protectedinherited

Definition at line 148 of file phy.h.

◆ m_enable_loopback_en

bool haldls::vx::detail::PhyConfigBase::m_enable_loopback_en
protectedinherited

Definition at line 159 of file phy.h.

◆ m_enable_manual_training_mode

bool haldls::vx::detail::PhyConfigBase::m_enable_manual_training_mode
protectedinherited

Definition at line 152 of file phy.h.

◆ m_enable_manual_tx_data_valid_for_init

bool haldls::vx::detail::PhyConfigBase::m_enable_manual_tx_data_valid_for_init
protectedinherited

Definition at line 149 of file phy.h.

◆ m_enable_transmission_without_idle_pattern

bool haldls::vx::detail::PhyConfigBase::m_enable_transmission_without_idle_pattern
protectedinherited

Definition at line 156 of file phy.h.

◆ m_manual_delay

ManualDelay haldls::vx::detail::PhyConfigBase::m_manual_delay
protectedinherited

Definition at line 146 of file phy.h.

◆ m_vbias

VBias haldls::vx::detail::PhyConfigBase::m_vbias
protectedinherited

Definition at line 154 of file phy.h.

◆ read_config_size_in_words

constexpr size_t haldls::vx::PhyConfigChip::read_config_size_in_words = 0
staticconstexpr

Definition at line 231 of file phy.h.

◆ write_config_size_in_words

constexpr size_t haldls::vx::PhyConfigChip::write_config_size_in_words = 1
staticconstexpr

Definition at line 230 of file phy.h.


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