API Reference: stadls¶
-
template<typename
T
>
classstadls::vx::PlaybackProgram
::
ContainerTicket
¶ - #include <playback_program.h>
Ticket for to-be-available container data corresponding to a read instruction.
- tparam T
Container type
Public Functions
-
T get () const SYMBOL_VISIBLE
Get container data if available.
- Throws
std::runtime_error – On container data not available yet
- Returns
Container data
-
coordinate_type get_coordinate () const SYMBOL_VISIBLE
Get coordinate corresponding to location of (to-be) read container data.
- Returns
Coordinate value
-
fpga_time_type get_fpga_time () const SYMBOL_VISIBLE
Get FPGA executor timestamp of last container response if time annotation is enabled.
If time annotation is not enabled, get message count since last time annotation or from the beginning of the response stream.
- Returns
FPGATime value
-
bool valid () const SYMBOL_VISIBLE
Get whether container data is available.
- Returns
Boolean value
Private Types
-
typedef detail::to_ticket_variant<typename haldls::vx::detail::BackendContainerTrait<T>::container_list>::type
ticket_impl_type
¶
Private Functions
-
inline
ContainerTicket
(coordinate_type const &coord, ticket_impl_type ticket_impl)¶
Friends
- friend class detail::PlaybackProgramBuilderAdapterImpl
-
template<typename
CoordinateT
>
structstadls::vx::v2
::
CoordinateToContainer
¶ - #include <coordinate_to_container.h>
Given a coordinate type, resolves the corresponding unique container type.
- tparam CoordinateT
Coordinate type to resolve container type for
Public Types
-
typedef hate::index_type_list_by_integer<hate::index_type_list_by_type<CoordinateT, coordinate_list>::value, container_list>::type
type
¶
-
template<typename
CoordinateT
>
structstadls::vx::v3
::
CoordinateToContainer
¶ - #include <coordinate_to_container.h>
Given a coordinate type, resolves the corresponding unique container type.
- tparam CoordinateT
Coordinate type to resolve container type for
Public Types
-
typedef hate::index_type_list_by_integer<hate::index_type_list_by_type<CoordinateT, coordinate_list>::value, container_list>::type
type
¶
-
template<typename
T
>
classstadls
::
DecodeVisitor
¶ - #include <visitors.h>
Fill the visited containers by decoding the specified configuration data.
Each container should implement a
decode
member function that accepts an array of words read from the hardware. The first argument to the function can optionally be the coordinate of the container, should it be required to correctly decode the data. Containers that do not themselves contain data (i.e. containers of containers) can alternatively be tagged viatypedef std::false_type has_local_data;
- See
ReadAddressVisitor, which is used to extract the addresses to read the configuration data from.
Public Functions
-
template<typename
CoordinateT
, typenameContainerT
>
inline autooperator()
(CoordinateT const&, ContainerT const&) -> typename std::enable_if<!ContainerT::has_local_data::value>::type¶
-
template<typename
CoordinateT
, typenameContainerT
>
inline autooperator()
(CoordinateT const &coord, ContainerT &container) -> decltype(&ContainerT::decode, void())¶
-
template<typename
CoordinateT
, typenameContainerT
>
inline autooperator()
(CoordinateT const &coord, ContainerT &container) -> decltype(&ContainerT::template decode<value_type>, void())¶
Private Functions
-
template<typename
CoordinateT
, typenameContainerT
, typenameDecodeContainerT
, size_tN
>
inline voiddecode
(CoordinateT const&, ContainerT &container, void (DecodeContainerT::* decode)(std::array<value_type, N> const&))¶
-
template<typename
CoordinateT
, typenameContainerT
, typenameDecodeContainerT
, size_tN
>
inline voiddecode
(CoordinateT const &coord, ContainerT &container, void (DecodeContainerT::* decode)(CoordinateT const&, std::array<value_type, N> const&))¶
-
inline size_t
remaining
() const¶
-
template<size_t
N
>
inline autoslice
() -> std::array<value_type, N>¶
-
class
stadls::vx::v2
::
DigitalInit
: public stadls::vx::v2::detail::InitGenerator¶ - #include <init_generator.h>
Generator for initialization of the chip up to digital communication.
Uses the default InitGenerator() to establish digital communication to the chip.
Public Types
-
typedef halco::common::typed_array<haldls::vx::ADPLL, halco::hicann_dls::vx::v2::ADPLLOnDLS>
adplls_type
¶ ADPLL setting.
-
typedef v2::PlaybackProgramBuilder
Builder
¶ Builder typedef (e.g.
for usage in generators).
-
typedef halco::common::typed_array<haldls::vx::v2::CapMemBlockConfig, halco::hicann_dls::vx::v2::CapMemBlockConfigOnDLS>
capmem_block_config_type
¶ Initialize the CapMem with usable default values.
Public Functions
-
DigitalInit () SYMBOL_VISIBLE
Default constructor.
Public Members
-
adplls_type
adplls
¶
-
capmem_block_config_type
capmem_block_config
¶
-
capmem_block_type
capmem_config
¶
-
lola::vx::DACChannelBlock
dac_channel_block
¶ DAC channel configs on xBoard.
-
lola::vx::DACControlBlock
dac_control_block
¶ DAC control config on xBoard.
-
bool
enable_capmem
¶ Select whether the CapMem should be enabled.
Note
The CapMem initialization requires highspeed access.
-
bool
enable_highspeed_link
¶ Enable Highspeed connection.
Note
Disabling this discards all highspeed related configuration.
-
bool
enable_xboard
¶ Enable xBoard DAC and shift register configuration.
Disabling this allows to discard unnecessary configuration when simulating.
Note
Disabling this discards all xBoard configuration
-
struct stadls::vx::v2::detail::InitGenerator::HighspeedLink
highspeed_link
¶
-
haldls::vx::JTAGClockScaler
jtag_clock_scaler
¶ JTAG clock scaler setting.
-
lola::vx::v2::MemoryTiming
memory_timing
¶ Memory timing settings.
-
haldls::vx::v2::PLLClockOutputBlock
pll_clock_output_block
¶ PLL clock output block setting.
-
haldls::vx::v2::ReferenceGeneratorConfig
reference_generator_config
¶ Generate usable reference current for the CapMem.
-
haldls::vx::ShiftRegister
shift_register
¶ Shift register on xBoard config.
-
haldls::vx::SynapseBiasSelection
synapse_bias_selection
¶ Select internal bias currents for synapses.
Protected Functions
-
PlaybackGeneratorReturn< Result > generate () const SYMBOL_VISIBLE
Generate PlaybackProgramBuilder.
- Returns
PlaybackGeneratorReturn instance with sequence embodied and specified Result value
Friends
-
friend auto
generate
(DigitalInit const&)¶
-
typedef halco::common::typed_array<haldls::vx::ADPLL, halco::hicann_dls::vx::v2::ADPLLOnDLS>
-
class
stadls::vx::v3
::
DigitalInit
: public stadls::vx::v3::detail::InitGenerator¶ - #include <init_generator.h>
Generator for initialization of the chip up to digital communication.
Uses the default InitGenerator() to establish digital communication to the chip.
Public Types
-
typedef halco::common::typed_array<haldls::vx::ADPLL, halco::hicann_dls::vx::v3::ADPLLOnDLS>
adplls_type
¶ ADPLL setting.
-
typedef v3::PlaybackProgramBuilder
Builder
¶ Builder typedef (e.g.
for usage in generators).
-
typedef halco::common::typed_array<haldls::vx::v3::CapMemBlockConfig, halco::hicann_dls::vx::v3::CapMemBlockConfigOnDLS>
capmem_block_config_type
¶ Initialize the CapMem with usable default values.
Public Functions
-
DigitalInit () SYMBOL_VISIBLE
Default constructor.
Public Members
-
adplls_type
adplls
¶
-
capmem_block_config_type
capmem_block_config
¶
-
capmem_block_type
capmem_config
¶
-
lola::vx::DACChannelBlock
dac_channel_block
¶ DAC channel configs on xBoard.
-
lola::vx::DACControlBlock
dac_control_block
¶ DAC control config on xBoard.
-
bool
enable_capmem
¶ Select whether the CapMem should be enabled.
Note
The CapMem initialization requires highspeed access.
-
bool
enable_highspeed_link
¶ Enable Highspeed connection.
Note
Disabling this discards all highspeed related configuration.
-
bool
enable_xboard
¶ Enable xBoard DAC and shift register configuration.
Disabling this allows to discard unnecessary configuration when simulating.
Note
Disabling this discards all xBoard configuration
-
struct stadls::vx::v3::detail::InitGenerator::HighspeedLink
highspeed_link
¶
-
haldls::vx::JTAGClockScaler
jtag_clock_scaler
¶ JTAG clock scaler setting.
-
lola::vx::v3::MemoryTiming
memory_timing
¶ Memory timing settings.
-
haldls::vx::v3::PLLClockOutputBlock
pll_clock_output_block
¶ PLL clock output block setting.
-
haldls::vx::v3::ReferenceGeneratorConfig
reference_generator_config
¶ Generate usable reference current for the CapMem.
-
haldls::vx::ShiftRegister
shift_register
¶ Shift register on xBoard config.
-
haldls::vx::SynapseBiasSelection
synapse_bias_selection
¶ Select internal bias currents for synapses.
Protected Functions
-
PlaybackGeneratorReturn< Result > generate () const SYMBOL_VISIBLE
Generate PlaybackProgramBuilder.
- Returns
PlaybackGeneratorReturn instance with sequence embodied and specified Result value
Friends
-
friend auto
generate
(DigitalInit const&)¶
-
typedef halco::common::typed_array<haldls::vx::ADPLL, halco::hicann_dls::vx::v3::ADPLLOnDLS>
-
template<typename
DoneType
>
classstadls::vx::detail
::
Dumper
¶ - #include <dumper.h>
Dumper implements an interface derived from fisch::vx::PlaybackProgramBuilder.
However, it does work on haldls container/halco coordinate pairs instead of fisch containers. Reads are not supported as there is currently no application; writes are collected into a std container holding coordinate/container pairs. The std container is returned by done().
Public Functions
-
Dumper
() = default¶ Default constructor.
-
~Dumper
() = default¶ Destructor.
-
void
block_until
(halco::hicann_dls::vx::BarrierOnFPGA const &coord, haldls::vx::Barrier barrier)¶ Add instruction to block execution until specified barrier is completed.
- Parameters
coord – Barrier synchronization coordinate for which to block
barrier – Barrier synchronization value for to block execution
-
void
block_until
(halco::hicann_dls::vx::PollingOmnibusBlockOnFPGA const &coord, haldls::vx::PollingOmnibusBlock barrier)¶ Add instruction to block execution until specified barrier is completed.
- Parameters
coord – PollingOmnibusBlock synchronization coordinate for which to block
barrier – PollingOmnibusBlock synchronization value for to block execution
-
void
block_until
(typename haldls::vx::Timer::coordinate_type const &coord, haldls::vx::Timer::Value time)¶ Add instruction to block execution until specified timer has reached specified value.
- Parameters
coord – Timer coordinate for which to block
time – Timer value until which to block execution
-
void
copy_back
(Dumper const &other)¶ Copy other Dumper to the end of this instance.
The copied-from builder is untouched during the process.
- Throws
std::runtime_error – On other builder not being write only
- Parameters
other – Builder to copy to this instance at the back
-
done_type
done
()¶ Return ordered list of write coordinate-container pairs.
- Returns
Ordered list of writes of coordinate-container pairs.
-
bool
empty
() const¶ Get whether builder is empty, i.e.
no instructions are embodied.
- Returns
Boolean value
-
void
merge_back
(Dumper &other)¶ Merge other Dumper to the end of this instance.
The moved-from builder is emptied during the process.
- Parameters
other – Builder to move to this instance at the back
-
void
merge_front
(Dumper &other)¶ Merge other PlaybackProgramBuilder to the beginning of this builder instance.
The moved-from builder is emptied during the process.
- Parameters
other – Builder to move to this instance at the front
-
template<typename
ContainerT
>
PlaybackProgram::ContainerTicket<ContainerT>read
(typename ContainerT::coordinate_type const &coord)¶ We do not support read and throw at runtime.
-
template<typename
ContainerT
>
voidwrite
(typename ContainerT::coordinate_type const &coord, ContainerT const &config)¶ Add write instruction for container.
- Template Parameters
ContainerT – Container type
- Parameters
coord – Container coordinate
config – Container data
-
-
struct
stadls::vx::v2
::
DumperDone
¶ - #include <dumperdone.h>
Public Types
-
std::variant<#define PLAYBACK_CONTAINER(Name, Type) # 33 "/jenkins/jenlib_workspaces_f9/doc_gerrit_documentation-brainscales2.ZG9jX2dlcnJpdF9kb2N1bWVudGF0aW9uLWJyYWluc2NhbGVzMiMzNzk.x/haldls/include/stadls/vx/v2/dumperdone.h" 2# 35 "/jenkins/jenlib_workspaces_f9/doc_gerrit_documentation-brainscales2.ZG9jX2dlcnJpdF9kb2N1bWVudGF0aW9uLWJyYWluc2NhbGVzMiMzNzk.x/haldls/include/stadls/vx/v2/dumperdone.h" 2 std::pair< typename haldls::vx::Timer::coordinate_type, haldls::vx::Timer::Value >, std::pair< halco::hicann_dls::vx::BarrierOnFPGA, haldls::vx::Barrier >, std::pair< halco::hicann_dls::vx::PollingOmnibusBlockOnFPGA, haldls::vx::PollingOmnibusBlock > > coco_type
Variant over all coordinate/container pairs.
Public Functions
-
DumperDone
() = default¶
-
def ("tolist", [](GENPYBIND_PARENT_TYPE const &v) { py::list ret;for(auto const &vv :v.values) { py::object item;std::visit([&item](auto const &vvv) { item=py::make_tuple(std::get< 0 >(vvv), std::get< 1 >(vvv));}, vv);ret.append(item);} return ret;})
-
bool operator!= (DumperDone const &other) const SYMBOL_VISIBLE
-
bool operator== (DumperDone const &other) const SYMBOL_VISIBLE
Public Members
-
values_type
values
= {}¶
-
-
struct
stadls::vx::v3
::
DumperDone
¶ - #include <dumperdone.h>
Public Types
-
std::variant<#define PLAYBACK_CONTAINER(Name, Type) # 33 "/jenkins/jenlib_workspaces_f9/doc_gerrit_documentation-brainscales2.ZG9jX2dlcnJpdF9kb2N1bWVudGF0aW9uLWJyYWluc2NhbGVzMiMzNzk.x/haldls/include/stadls/vx/v3/dumperdone.h" 2# 35 "/jenkins/jenlib_workspaces_f9/doc_gerrit_documentation-brainscales2.ZG9jX2dlcnJpdF9kb2N1bWVudGF0aW9uLWJyYWluc2NhbGVzMiMzNzk.x/haldls/include/stadls/vx/v3/dumperdone.h" 2 std::pair< typename haldls::vx::Timer::coordinate_type, haldls::vx::Timer::Value >, std::pair< halco::hicann_dls::vx::BarrierOnFPGA, haldls::vx::Barrier >, std::pair< halco::hicann_dls::vx::PollingOmnibusBlockOnFPGA, haldls::vx::PollingOmnibusBlock > > coco_type
Variant over all coordinate/container pairs.
Public Functions
-
DumperDone
() = default¶
-
def ("tolist", [](GENPYBIND_PARENT_TYPE const &v) { py::list ret;for(auto const &vv :v.values) { py::object item;std::visit([&item](auto const &vvv) { item=py::make_tuple(std::get< 0 >(vvv), std::get< 1 >(vvv));}, vv);ret.append(item);} return ret;})
-
bool operator!= (DumperDone const &other) const SYMBOL_VISIBLE
-
bool operator== (DumperDone const &other) const SYMBOL_VISIBLE
Public Members
-
values_type
values
= {}¶
-
-
template<typename
T
>
classstadls
::
EncodeVisitor
¶ - #include <visitors.h>
Extract hardware configuration data for the visited containers.
Each container should implement an
encode
member function that returns an array of words to be written to the hardware. The first argument to the function can optionally be the coordinate of the container, should it be required to correctly encode the data. Containers that do not themselves contain data (i.e. containers of containers) can alternatively be tagged viatypedef std::false_type has_local_data;
- See
WriteAddressVisitor, which is used to extract the addresses to write the configuration data to.
Public Functions
-
template<typename
CoordinateT
, typenameContainerT
>
inline autooperator()
(CoordinateT const&, ContainerT const&) -> typename std::enable_if<!ContainerT::has_local_data::value>::type¶
-
template<typename
CoordinateT
, typenameContainerT
>
inline autooperator()
(CoordinateT const &coord, ContainerT const &container) -> decltype(&ContainerT::encode, void())¶
-
template<typename
CoordinateT
, typenameContainerT
>
inline autooperator()
(CoordinateT const &coord, ContainerT const &container) -> decltype(&ContainerT::template encode<value_type>, void())¶
Private Functions
-
template<typename CoordinateT, typename ContainerT> inline void encode (CoordinateT const &, ContainerT const &container, decltype(container.template encode< value_type >())(ContainerT::*encode)() const)
-
template<typename
CoordinateT
, typenameContainerT
, size_tN
>
inline voidencode
(CoordinateT const&, ContainerT const &container, std::array<value_type, N> (ContainerT::* encode)() const)¶
-
template<typename CoordinateT, typename ContainerT> inline void encode (CoordinateT const &coord, ContainerT const &container, decltype(container.template encode< value_type >(coord))(ContainerT::*encode)(CoordinateT const &) const)
-
template<typename
CoordinateT
, typenameContainerT
, size_tN
>
inline voidencode
(CoordinateT const &coord, ContainerT const &container, std::array<value_type, N> (ContainerT::* encode)(CoordinateT const&) const)¶
-
class
stadls::vx::v2
::
ExperimentInit
: public stadls::vx::v2::detail::InitGenerator¶ - #include <init_generator.h>
Generator for initialization required for typical experiments.
Uses the InitGenerator() to establish digital communication to the chip, and further initializes the CapMem in a working state and selects internal bias currents for synapses.
Public Types
-
typedef halco::common::typed_array<haldls::vx::ADPLL, halco::hicann_dls::vx::v2::ADPLLOnDLS>
adplls_type
¶ ADPLL setting.
-
typedef PlaybackProgramBuilder
Builder
¶ Builder typedef (e.g.
for usage in generators).
-
typedef halco::common::typed_array<haldls::vx::v2::CapMemBlockConfig, halco::hicann_dls::vx::v2::CapMemBlockConfigOnDLS>
capmem_block_config_type
¶ Initialize the CapMem with usable default values.
-
typedef halco::common::typed_array<haldls::vx::v2::CapMemBlock, halco::hicann_dls::vx::v2::CapMemBlockOnDLS>
capmem_block_type
¶ Set initial CapMem config.
By default, a value of zero is written to all cells.
-
typedef halco::common::typed_array<haldls::vx::v2::ColumnCorrelationQuad, halco::hicann_dls::vx::v2::ColumnCorrelationQuadOnDLS>
column_correlation_quad_type
¶ Set ColumnCorrelationQuad/Switch connections.
-
typedef halco::common::typed_array<haldls::vx::v2::ColumnCurrentQuad, halco::hicann_dls::vx::v2::ColumnCurrentQuadOnDLS>
column_current_quad_type
¶ Set ColumnCurrentQuad/Switch connections.
-
typedef halco::common::typed_array<haldls::vx::v2::CommonCorrelationConfig, halco::hicann_dls::vx::v2::CommonCorrelationConfigOnDLS>
common_correlation_config_type
¶ Set common correlation config.
-
typedef halco::common::typed_array<haldls::vx::CommonNeuronBackendConfig, halco::hicann_dls::vx::v2::CommonNeuronBackendConfigOnDLS>
common_neuron_backend_config_type
¶ Set common neuron backend with clocks enabled.
If clocks are disabled, it may behave strangely.
-
typedef detail::InitGenerator::Result
Result
¶
Public Functions
-
ExperimentInit () SYMBOL_VISIBLE
Default constructor.
Public Members
-
adplls_type
adplls
¶
-
capmem_block_config_type
capmem_block_config
¶
-
capmem_block_type
capmem_config
¶
-
column_correlation_quad_type
column_correlation_quad_config
¶
-
column_current_quad_type
column_current_quad_config
¶
-
common_correlation_config_type
common_correlation_config
¶
-
common_neuron_backend_config_type
common_neuron_backend_config
¶
-
lola::vx::DACChannelBlock
dac_channel_block
¶ DAC channel configs on xBoard.
-
lola::vx::DACControlBlock
dac_control_block
¶ DAC control config on xBoard.
-
bool
enable_capmem
¶ Select whether the CapMem should be enabled.
Note
The CapMem initialization requires highspeed access.
-
bool
enable_highspeed_link
¶ Enable Highspeed connection.
Note
Disabling this discards all highspeed related configuration.
-
bool
enable_xboard
¶ Enable xBoard DAC and shift register configuration.
Disabling this allows to discard unnecessary configuration when simulating.
Note
Disabling this discards all xBoard configuration
-
struct stadls::vx::v2::detail::InitGenerator::HighspeedLink
highspeed_link
¶
-
haldls::vx::JTAGClockScaler
jtag_clock_scaler
¶ JTAG clock scaler setting.
-
lola::vx::v2::MemoryTiming
memory_timing
¶ Memory timing settings.
-
haldls::vx::v2::PLLClockOutputBlock
pll_clock_output_block
¶ PLL clock output block setting.
-
haldls::vx::v2::ReferenceGeneratorConfig
reference_generator_config
¶ Generate usable reference current for the CapMem.
-
haldls::vx::ShiftRegister
shift_register
¶ Shift register on xBoard config.
-
haldls::vx::SynapseBiasSelection
synapse_bias_selection
¶ Select internal bias currents for synapses.
Private Functions
-
PlaybackGeneratorReturn< Result > generate () const SYMBOL_VISIBLE
Generate PlaybackProgramBuilder.
- Returns
PlaybackGeneratorReturn instance with sequence embodied and specified Result value
Friends
-
friend auto
generate
(ExperimentInit const&)¶
-
typedef halco::common::typed_array<haldls::vx::ADPLL, halco::hicann_dls::vx::v2::ADPLLOnDLS>
-
class
stadls::vx::v3
::
ExperimentInit
: public stadls::vx::v3::detail::InitGenerator¶ - #include <init_generator.h>
Generator for initialization required for typical experiments.
Uses the InitGenerator() to establish digital communication to the chip, and further initializes the CapMem in a working state and selects internal bias currents for synapses.
Public Types
-
typedef halco::common::typed_array<haldls::vx::ADPLL, halco::hicann_dls::vx::v3::ADPLLOnDLS>
adplls_type
¶ ADPLL setting.
-
typedef PlaybackProgramBuilder
Builder
¶ Builder typedef (e.g.
for usage in generators).
-
typedef halco::common::typed_array<haldls::vx::v3::CapMemBlockConfig, halco::hicann_dls::vx::v3::CapMemBlockConfigOnDLS>
capmem_block_config_type
¶ Initialize the CapMem with usable default values.
-
typedef halco::common::typed_array<haldls::vx::v3::CapMemBlock, halco::hicann_dls::vx::v3::CapMemBlockOnDLS>
capmem_block_type
¶ Set initial CapMem config.
By default, a value of zero is written to all cells.
-
typedef halco::common::typed_array<haldls::vx::v3::ColumnCorrelationQuad, halco::hicann_dls::vx::v3::ColumnCorrelationQuadOnDLS>
column_correlation_quad_type
¶ Set ColumnCorrelationQuad/Switch connections.
-
typedef halco::common::typed_array<haldls::vx::v3::ColumnCurrentQuad, halco::hicann_dls::vx::v3::ColumnCurrentQuadOnDLS>
column_current_quad_type
¶ Set ColumnCurrentQuad/Switch connections.
-
typedef halco::common::typed_array<haldls::vx::v3::CommonCorrelationConfig, halco::hicann_dls::vx::v3::CommonCorrelationConfigOnDLS>
common_correlation_config_type
¶ Set common correlation config.
-
typedef halco::common::typed_array<haldls::vx::CommonNeuronBackendConfig, halco::hicann_dls::vx::v3::CommonNeuronBackendConfigOnDLS>
common_neuron_backend_config_type
¶ Set common neuron backend with clocks enabled.
If clocks are disabled, it may behave strangely.
-
typedef detail::InitGenerator::Result
Result
¶
Public Functions
-
ExperimentInit () SYMBOL_VISIBLE
Default constructor.
Public Members
-
adplls_type
adplls
¶
-
capmem_block_config_type
capmem_block_config
¶
-
capmem_block_type
capmem_config
¶
-
column_correlation_quad_type
column_correlation_quad_config
¶
-
column_current_quad_type
column_current_quad_config
¶
-
common_correlation_config_type
common_correlation_config
¶
-
common_neuron_backend_config_type
common_neuron_backend_config
¶
-
lola::vx::DACChannelBlock
dac_channel_block
¶ DAC channel configs on xBoard.
-
lola::vx::DACControlBlock
dac_control_block
¶ DAC control config on xBoard.
-
bool
enable_capmem
¶ Select whether the CapMem should be enabled.
Note
The CapMem initialization requires highspeed access.
-
bool
enable_highspeed_link
¶ Enable Highspeed connection.
Note
Disabling this discards all highspeed related configuration.
-
bool
enable_xboard
¶ Enable xBoard DAC and shift register configuration.
Disabling this allows to discard unnecessary configuration when simulating.
Note
Disabling this discards all xBoard configuration
-
struct stadls::vx::v3::detail::InitGenerator::HighspeedLink
highspeed_link
¶
-
haldls::vx::JTAGClockScaler
jtag_clock_scaler
¶ JTAG clock scaler setting.
-
lola::vx::v3::MemoryTiming
memory_timing
¶ Memory timing settings.
-
haldls::vx::v3::PLLClockOutputBlock
pll_clock_output_block
¶ PLL clock output block setting.
-
haldls::vx::v3::ReferenceGeneratorConfig
reference_generator_config
¶ Generate usable reference current for the CapMem.
-
haldls::vx::ShiftRegister
shift_register
¶ Shift register on xBoard config.
-
haldls::vx::SynapseBiasSelection
synapse_bias_selection
¶ Select internal bias currents for synapses.
Private Functions
-
PlaybackGeneratorReturn< Result > generate () const SYMBOL_VISIBLE
Generate PlaybackProgramBuilder.
- Returns
PlaybackGeneratorReturn instance with sequence embodied and specified Result value
Friends
-
friend auto
generate
(ExperimentInit const&)¶
-
typedef halco::common::typed_array<haldls::vx::ADPLL, halco::hicann_dls::vx::v3::ADPLLOnDLS>
-
struct
stadls::vx::v2::detail::InitGenerator
::
HighspeedLink
¶ - #include <init_generator.h>
Public Types
-
typedef halco::common::typed_array<haldls::vx::PhyConfigChip, halco::hicann_dls::vx::v2::PhyConfigChipOnDLS>
phy_configs_chip_type
¶ Highspeed-link PHY settings for the chip side.
-
typedef halco::common::typed_array<haldls::vx::PhyConfigFPGA, halco::hicann_dls::vx::v2::PhyConfigFPGAOnDLS>
phy_configs_fpga_type
¶ Highspeed-link PHY settings for the FPGA side.
Public Functions
-
HighspeedLink () SYMBOL_VISIBLE
Default constructor.
Public Members
-
haldls::vx::CommonPhyConfigChip
common_phy_config_chip
¶ Highspeed-link PHY enable values for the chip side.
-
haldls::vx::CommonPhyConfigFPGA
common_phy_config_fpga
¶ Highspeed-link PHY enable values for the FPGA side.
-
bool
enable_systime
¶ Enable systime synchronization.
Note
Disabling this discards all systime related configuration, i.e. setting the SystimeSyncBase and initiating the time hand-shake between the chip and the FPGA. This leads to no time annotation being present in the response stream.
-
phy_configs_chip_type
phy_configs_chip
¶
-
phy_configs_fpga_type
phy_configs_fpga
¶
-
haldls::vx::SystimeSyncBase
systime_sync_base
¶ Systime synchronization base value.
-
typedef halco::common::typed_array<haldls::vx::PhyConfigChip, halco::hicann_dls::vx::v2::PhyConfigChipOnDLS>
-
struct
stadls::vx::v3::detail::InitGenerator
::
HighspeedLink
¶ - #include <init_generator.h>
Public Types
-
typedef halco::common::typed_array<haldls::vx::PhyConfigChip, halco::hicann_dls::vx::v3::PhyConfigChipOnDLS>
phy_configs_chip_type
¶ Highspeed-link PHY settings for the chip side.
-
typedef halco::common::typed_array<haldls::vx::PhyConfigFPGA, halco::hicann_dls::vx::v3::PhyConfigFPGAOnDLS>
phy_configs_fpga_type
¶ Highspeed-link PHY settings for the FPGA side.
Public Functions
-
HighspeedLink () SYMBOL_VISIBLE
Default constructor.
Public Members
-
haldls::vx::CommonPhyConfigChip
common_phy_config_chip
¶ Highspeed-link PHY enable values for the chip side.
-
haldls::vx::CommonPhyConfigFPGA
common_phy_config_fpga
¶ Highspeed-link PHY enable values for the FPGA side.
-
bool
enable_systime
¶ Enable systime synchronization.
Note
Disabling this discards all systime related configuration, i.e. setting the SystimeSyncBase and initiating the time hand-shake between the chip and the FPGA. This leads to no time annotation being present in the response stream.
-
phy_configs_chip_type
phy_configs_chip
¶
-
phy_configs_fpga_type
phy_configs_fpga
¶
-
haldls::vx::SystimeSyncBase
systime_sync_base
¶ Systime synchronization base value.
-
typedef halco::common::typed_array<haldls::vx::PhyConfigChip, halco::hicann_dls::vx::v3::PhyConfigChipOnDLS>
-
class
stadls::vx::v2::detail
::
InitGenerator
¶ - #include <init_generator.h>
Subclassed by stadls::vx::v2::DigitalInit, stadls::vx::v2::ExperimentInit
Public Types
-
typedef halco::common::typed_array<haldls::vx::ADPLL, halco::hicann_dls::vx::v2::ADPLLOnDLS>
adplls_type
¶ ADPLL setting.
-
typedef v2::PlaybackProgramBuilder
Builder
¶ Builder typedef (e.g.
for usage in generators).
-
typedef halco::common::typed_array<haldls::vx::v2::CapMemBlockConfig, halco::hicann_dls::vx::v2::CapMemBlockConfigOnDLS>
capmem_block_config_type
¶ Initialize the CapMem with usable default values.
Public Functions
-
InitGenerator () SYMBOL_VISIBLE
Default constructor.
Public Members
-
adplls_type
adplls
¶
-
capmem_block_config_type
capmem_block_config
¶
-
capmem_block_type
capmem_config
¶
-
lola::vx::DACChannelBlock
dac_channel_block
¶ DAC channel configs on xBoard.
-
lola::vx::DACControlBlock
dac_control_block
¶ DAC control config on xBoard.
-
bool
enable_capmem
¶ Select whether the CapMem should be enabled.
Note
The CapMem initialization requires highspeed access.
-
bool
enable_highspeed_link
¶ Enable Highspeed connection.
Note
Disabling this discards all highspeed related configuration.
-
bool
enable_xboard
¶ Enable xBoard DAC and shift register configuration.
Disabling this allows to discard unnecessary configuration when simulating.
Note
Disabling this discards all xBoard configuration
-
struct stadls::vx::v2::detail::InitGenerator::HighspeedLink
highspeed_link
¶
-
haldls::vx::JTAGClockScaler
jtag_clock_scaler
¶ JTAG clock scaler setting.
-
lola::vx::v2::MemoryTiming
memory_timing
¶ Memory timing settings.
-
haldls::vx::v2::PLLClockOutputBlock
pll_clock_output_block
¶ PLL clock output block setting.
-
haldls::vx::v2::ReferenceGeneratorConfig
reference_generator_config
¶ Generate usable reference current for the CapMem.
-
haldls::vx::ShiftRegister
shift_register
¶ Shift register on xBoard config.
-
haldls::vx::SynapseBiasSelection
synapse_bias_selection
¶ Select internal bias currents for synapses.
Protected Functions
-
PlaybackGeneratorReturn< Result > generate () const SYMBOL_VISIBLE
Generate PlaybackProgramBuilder.
- Returns
PlaybackGeneratorReturn instance with sequence embodied and specified Result value
Friends
-
friend std::ostream & operator<< (std::ostream &os, InitGenerator const &sequence) SYMBOL_VISIBLE
-
friend auto
generate
(InitGenerator const&)¶
-
typedef halco::common::typed_array<haldls::vx::ADPLL, halco::hicann_dls::vx::v2::ADPLLOnDLS>
-
class
stadls::vx::v3::detail
::
InitGenerator
¶ - #include <init_generator.h>
Subclassed by stadls::vx::v3::DigitalInit, stadls::vx::v3::ExperimentInit
Public Types
-
typedef halco::common::typed_array<haldls::vx::ADPLL, halco::hicann_dls::vx::v3::ADPLLOnDLS>
adplls_type
¶ ADPLL setting.
-
typedef v3::PlaybackProgramBuilder
Builder
¶ Builder typedef (e.g.
for usage in generators).
-
typedef halco::common::typed_array<haldls::vx::v3::CapMemBlockConfig, halco::hicann_dls::vx::v3::CapMemBlockConfigOnDLS>
capmem_block_config_type
¶ Initialize the CapMem with usable default values.
Public Functions
-
InitGenerator () SYMBOL_VISIBLE
Default constructor.
Public Members
-
adplls_type
adplls
¶
-
capmem_block_config_type
capmem_block_config
¶
-
capmem_block_type
capmem_config
¶
-
lola::vx::DACChannelBlock
dac_channel_block
¶ DAC channel configs on xBoard.
-
lola::vx::DACControlBlock
dac_control_block
¶ DAC control config on xBoard.
-
bool
enable_capmem
¶ Select whether the CapMem should be enabled.
Note
The CapMem initialization requires highspeed access.
-
bool
enable_highspeed_link
¶ Enable Highspeed connection.
Note
Disabling this discards all highspeed related configuration.
-
bool
enable_xboard
¶ Enable xBoard DAC and shift register configuration.
Disabling this allows to discard unnecessary configuration when simulating.
Note
Disabling this discards all xBoard configuration
-
struct stadls::vx::v3::detail::InitGenerator::HighspeedLink
highspeed_link
¶
-
haldls::vx::JTAGClockScaler
jtag_clock_scaler
¶ JTAG clock scaler setting.
-
lola::vx::v3::MemoryTiming
memory_timing
¶ Memory timing settings.
-
haldls::vx::v3::PLLClockOutputBlock
pll_clock_output_block
¶ PLL clock output block setting.
-
haldls::vx::v3::ReferenceGeneratorConfig
reference_generator_config
¶ Generate usable reference current for the CapMem.
-
haldls::vx::ShiftRegister
shift_register
¶ Shift register on xBoard config.
-
haldls::vx::SynapseBiasSelection
synapse_bias_selection
¶ Select internal bias currents for synapses.
Protected Functions
-
PlaybackGeneratorReturn< Result > generate () const SYMBOL_VISIBLE
Generate PlaybackProgramBuilder.
- Returns
PlaybackGeneratorReturn instance with sequence embodied and specified Result value
Friends
-
friend std::ostream & operator<< (std::ostream &os, InitGenerator const &sequence) SYMBOL_VISIBLE
-
friend auto
generate
(InitGenerator const&)¶
-
typedef halco::common::typed_array<haldls::vx::ADPLL, halco::hicann_dls::vx::v3::ADPLLOnDLS>
-
template<typename
Builder
, typenameResult
>
structstadls::vx
::
PlaybackGeneratorReturn
¶ - #include <playback_generator.h>
Return type of generate() call on playback sequence.
Allows named access to generated PlaybackProgramBuilder and to be specified Result value.
- tparam Result
Result data structure, e.g. read-ticket data
-
class
stadls::vx
::
PlaybackProgram
¶ - #include <playback_program.h>
Sequential stream of executable instructions for the executor and result-container for event response data during execution.Get MADC samples as 2D matrix, i.e.
numpy array(s).
Note
We expose the data as a flat numpy DTYPE with the same data layout as the underlying MADCSampleFromChipDType type.
Public Types
-
typedef ::stadls::vx::PlaybackProgram::spikes_type
_values_type
¶ This version exposes with 3 columns: * chip time, neuron label, and spl1 address
-
typedef std::vector<haldls::vx::HighspeedLinkNotification>
highspeed_link_notifications_type
¶
-
typedef fisch::vx::PlaybackProgram::madc_sample_pack_counts_type
madc_sample_pack_counts_type
¶
-
typedef std::vector<haldls::vx::MADCSampleFromChip>
madc_samples_type
¶
-
typedef fisch::vx::PlaybackProgram::spike_pack_counts_type
spike_pack_counts_type
¶
-
typedef std::vector<haldls::vx::SpikeFromChip>
spikes_type
¶
Public Functions
-
PlaybackProgram () SYMBOL_VISIBLE
Default constructor.
-
attr attr ("to_numpy")
-
bool empty () const SYMBOL_VISIBLE
Get whether program is empty, i.e.
does not feature any commands to be sent.
- Returns
Boolean value
-
highspeed_link_notifications_type get_highspeed_link_notifications () const SYMBOL_VISIBLE
Get vector of time-annotated highspeed-link notifications.
- Returns
Vector of notifications
-
madc_samples_type get_madc_samples () const SYMBOL_VISIBLE
Get vector of time-annotated MADC sample events.
- Returns
Vector of sample events
-
madc_sample_pack_counts_type const & get_madc_samples_pack_counts () const SYMBOL_VISIBLE
Get number of occurences of MADC sample packing from chip.
- Returns
Array of packing occurences
-
spikes_type get_spikes () const SYMBOL_VISIBLE
Get vector of time-annotated spike events.
- Returns
Vector of spike events
-
spike_pack_counts_type const & get_spikes_pack_counts () const SYMBOL_VISIBLE
Get number of occurences of spike packing from chip.
- Returns
Array of packing occurences
-
std::unordered_set< hxcomm::vx::Target > const & get_unsupported_targets () const SYMBOL_VISIBLE
Get set of unsupported targets.
- Returns
Set of target restictions
-
bool operator!= (PlaybackProgram const &other) const SYMBOL_VISIBLE
-
bool operator== (PlaybackProgram const &other) const SYMBOL_VISIBLE
-
pybind11::bind_vector (parent, "spikes_type")
Get spikes as 2D matrix, i.e.
numpy array(s).
Note
We expose the data as a flat numpy DTYPE with the same data layout as the underlying SpikeFromChipDType type.
Friends
-
friend std::ostream & operator<< (std::ostream &os, PlaybackProgram const &program) SYMBOL_VISIBLE
-
typedef ::stadls::vx::PlaybackProgram::spikes_type
-
template<typename
BuilderStorage
, typenameDoneType
, template<typename> classCoordinateToContainer
>
classstadls::vx::detail
::
PlaybackProgramBuilderAdapter
¶ - #include <playback_program_builder.h>
Sequential PlaybackProgram builder.
Public Types
-
typedef BuilderStorage
Builder
¶
Public Functions
-
PlaybackProgramBuilderAdapter
()¶ Construct builder.
-
PlaybackProgramBuilderAdapter
(PlaybackProgramBuilderAdapter &&other)¶
-
PlaybackProgramBuilderAdapter
(PlaybackProgramBuilderAdapter const&) = delete¶
-
~PlaybackProgramBuilderAdapter
()¶
-
void
block_until
(halco::hicann_dls::vx::BarrierOnFPGA const &coord, haldls::vx::Barrier sync)¶ Add instruction to block execution until specified barrier is completed.
- Parameters
coord – Barrier coordinate for which to block
sync – Barrier value for which to block execution
-
void
block_until
(halco::hicann_dls::vx::PollingOmnibusBlockOnFPGA const &coord, haldls::vx::PollingOmnibusBlock sync)¶
-
void
block_until
(typename haldls::vx::Timer::coordinate_type const &coord, haldls::vx::Timer::Value time)¶ Add instruction to block execution until specified timer has reached specified value.
- Parameters
coord – Timer coordinate for which to block
time – Timer value until which to block execution
-
void
copy_back
(BuilderStorage const &other)¶ Copy BuilderStorage to the end of this builder instance.
The copied-from storage is untouched during the process.
- Throws
std::runtime_error – On other builder not being write only
- Parameters
other – BuilderStorage to copy to this instance at the back
-
void
copy_back
(PlaybackProgramBuilderAdapter const &other)¶ Copy other PlaybackProgramBuilderAdapter to the end of this builder instance.
The copied-from builder is untouched during the process.
- Throws
std::runtime_error – On other builder not being write only
- Parameters
other – Builder to copy to this instance at the back
-
parent def ("__str__", [](GENPYBIND_PARENT_TYPE const &p) { std::stringstream ss;ss<< p;return ss.str();})
-
DoneType
done
()¶ Close PlaybackProgram build process and return executable program.
- Returns
Executable PlaybackProgram
-
inline constexpr if (hate::is_in_type_list< typename std::decay< decltype(p)>::type::Builder, dumper_types >::value)
-
void
merge_back
(BuilderStorage &&other)¶ Merge BuilderStorage to the end of this builder instance.
The moved-from storage is emptied during the process.
- Parameters
other – BuilderStorage to move to this instance at the back
-
void
merge_back
(BuilderStorage &other)¶ Merge BuilderStorage to the end of this builder instance.
The moved-from storage is emptied during the process.
- Parameters
other – BuilderStorage to move to this instance at the back
-
void
merge_back
(PlaybackProgramBuilderAdapter &&other)¶ Merge other PlaybackProgramBuilderAdapter to the end of this builder instance.
The moved-from builder is emptied during the process.
- Parameters
other – Builder to move to this instance at the back
-
void
merge_back
(PlaybackProgramBuilderAdapter &other)¶ Merge other PlaybackProgramBuilderAdapter to the end of this builder instance.
The moved-from builder is emptied during the process.
- Parameters
other – Builder to move to this instance at the back
-
PlaybackProgramBuilderAdapter &
operator=
(PlaybackProgramBuilderAdapter &&other)¶
-
template<typename
CoordinateType
>
PlaybackProgram::ContainerTicket<typename CoordinateToContainer<CoordinateType>::type>read
(CoordinateType const &coord)¶ Add instructions to read container data from given location.
The container’s default backend is used.
Note
This function without backend parameter is needed due to python wrapping not being able to handle templated default arguments.
- Parameters
coord – Coordinate value selecting location
-
template<typename
CoordinateType
>
PlaybackProgram::ContainerTicket<typename CoordinateToContainer<CoordinateType>::type>read
(CoordinateType const &coord, haldls::vx::Backend backend)¶ Add instructions to read container data from given location.
- Parameters
coord – Coordinate value selecting location
backend – Backend selection
-
return ss str ()
-
void
wait_until
(typename haldls::vx::Timer::coordinate_type const &coord, haldls::vx::Timer::Value time)¶ Add instruction to block execution until specified timer has reached specified value.
- Deprecated:
In favor of block_until
- Parameters
coord – Timer coordinate for which to wait
time – Timer value until which to block execution
-
template<typename
Type
>
voidwrite
(typename Type::coordinate_type const &coord, Type const &config)¶ Add instructions to write given container to given location.
The container’s default backend is used.
Note
This function without backend parameter is needed due to python wrapping not being able to handle templated default arguments.
- Parameters
coord – Coordinate value selecting location
config – Container configuration data
-
template<typename
Type
>
voidwrite
(typename Type::coordinate_type const &coord, Type const &config, haldls::vx::Backend backend)¶ Add instructions to write given container to given location.
- Parameters
coord – Coordinate value selecting location
config – Container configuration data
backend – Backend selection
-
template<typename
Type
>
voidwrite
(typename Type::coordinate_type const &coord, Type const &config, Type const &config_reference)¶ Add instructions to write given container to given location.
The container’s default backend is used.
Note
This function without backend parameter is needed due to python wrapping not being able to handle templated default arguments.
- Parameters
coord – Coordinate value selecting location
config – Container configuration data
config_reference – Reference configuration for differential write
-
template<typename
Type
>
voidwrite
(typename Type::coordinate_type const &coord, Type const &config, Type const &config_reference, haldls::vx::Backend backend)¶ Add instructions to write given container to given location.
- Parameters
coord – Coordinate value selecting location
config – Container configuration data
config_reference – Reference configuration for differential write
backend – Backend selection
Public Members
-
else = { ss << "PlaybackProgramBuilder(to FPGA size: " << p.size_to_fpga() << ", is write only: " << std::boolalpha << p.is_write_only() << ")"
-
typedef BuilderStorage
-
template<typename, typename, template<typename> class>
classPlaybackProgramBuilderAdapterImpl
¶
-
template<typename
T
>
structstadls
::
ReadAddressVisitor
¶ - #include <visitors.h>
Extract addresses for reading from hardware for the visited containers.
Each container can provide addresses via a
read_addresses
member function or via aaddresses
member function in case the addresses for reading and writing are the same. Containers that do not themselves contain data to be read from the hardware (i.e. containers of containers) can alternatively be tagged viatypedef std::false_type has_local_data;
Public Functions
-
template<typename
CoordinateT
, typenameContainerT
>
inline autooperator()
(CoordinateT const&, ContainerT const&) -> typename std::enable_if<!ContainerT::has_local_data::value>::type¶
-
template<typename
CoordinateT
, typenameContainerT
>
inline autooperator()
(CoordinateT const &coord, ContainerT const &container) -> decltype(container.addresses(coord), void())¶
-
template<typename
CoordinateT
, typenameContainerT
>
inline autooperator()
(CoordinateT const &coord, ContainerT const &container) -> decltype(container.read_addresses(coord), void())¶
-
template<typename CoordinateT, typename ContainerT> inline auto operator() (CoordinateT const &coord, ContainerT const &container) -> decltype(container.template addresses< typename T::value_type >(coord), void())
-
template<typename CoordinateT, typename ContainerT> inline auto operator() (CoordinateT const &coord, ContainerT const &container) -> decltype(container.template read_addresses< typename T::value_type >(coord), void())
-
template<typename
-
class
stadls::vx
::
ReinitStackEntry
¶ - #include <reinit_stack_entry.h>
Public Functions
-
ReinitStackEntry
() = delete¶
-
template<typename
Connection
>ReinitStackEntry
(Connection &connection)¶
-
ReinitStackEntry
(ReinitStackEntry&&) = default¶
-
ReinitStackEntry
(ReinitStackEntry const&) = delete¶
-
~ReinitStackEntry () SYMBOL_VISIBLE
-
void enforce () SYMBOL_VISIBLE
-
ReinitStackEntry &
operator=
(ReinitStackEntry&&) = default¶
-
void pop () SYMBOL_VISIBLE
-
void set (PlaybackProgram const &pbmem_request, std::optional< PlaybackProgram > const &pbmem_snapshot=std::nullopt, bool enforce=true) SYMBOL_VISIBLE
Set and maybe enforce reinit stack entry value.
- Parameters
pbmem_request – Playback program to be executed once a reinit is required.
pbmem_snapshot – Playback program to be executed once the exclusive access to the hardware is relinquished. All read commands within this program are translated to writes and replace the pbmem_request for future reinit operations. This is to be used to snapshot (parts of) the current state of the hardware prior to releasing the exclusive access to other users and be able to reapply this state at the next reinit operation without need for client-side synchronisation and transform of the read-out data. Currently only Omnibus read -> write operations are supported.
enforce – Whether to directly apply the pbmem_request or only apply it during the next reinit.
-
-
template<typename
BackendContainerTypeList
>
structto_ticket_variant
¶
-
template<typename ...
BackendContainer
>
structstadls::vx::detail
::
to_ticket_variant
<hate::type_list<BackendContainer...>>¶ - #include <playback_program.h>
Public Types
-
boost::variant< fisch::vx::ContainerTicket< decltype(fisch::vx::container_cast(std::declval< BackendContainer >)))>... > type
-
-
template<typename
T
>
structstadls
::
WriteAddressVisitor
¶ - #include <visitors.h>
Extract addresses for writing to hardware for the visited containers.
Each container can provide addresses via a
write_addresses
member function or via aaddresses
member function in case the addresses for reading and writing are the same. Containers that do not themselves contain data to be written to the hardware (i.e. containers of containers) can alternatively be tagged viatypedef std::false_type has_local_data;
Public Functions
-
template<typename
CoordinateT
, typenameContainerT
>
inline autooperator()
(CoordinateT const&, ContainerT const&) -> typename std::enable_if<!ContainerT::has_local_data::value>::type¶
-
template<typename
CoordinateT
, typenameContainerT
>
inline autooperator()
(CoordinateT const &coord, ContainerT const &container) -> decltype(container.addresses(coord), void())¶
-
template<typename CoordinateT, typename ContainerT> inline auto operator() (CoordinateT const &coord, ContainerT const &container) -> decltype(container.template addresses< typename T::value_type >(coord), void())
-
template<typename CoordinateT, typename ContainerT> inline auto operator() (CoordinateT const &coord, ContainerT const &container) -> decltype(container.template write_addresses< typename T::value_type >(coord), void())
-
template<typename
CoordinateT
, typenameContainerT
>
inline autooperator()
(CoordinateT const &coord, ContainerT const &container) -> decltype(container.write_addresses(coord), void())¶
-
template<typename
-
namespace
fisch
-
namespace
vx
-
namespace
stadls
-
namespace
stadls
::
vx
Typedefs
-
typedef fisch::vx::RunTimeInfo
RunTimeInfo
¶
Functions
-
attr attr ("to_numpy")
-
lola::vx::v2::Chip convert_to_chip (DumperDone const &dumperdone) SYMBOL_VISIBLE
Convert the dumper result to a Chip config.
This conversion is not bijective.
- Parameters
dumperdone – Dumper result
-
lola::vx::v2::Chip convert_to_chip (DumperDone const &dumperdone, lola::vx::v2::Chip const &previous) SYMBOL_VISIBLE
Convert the dumper result to a Chip config.
This conversion is not bijective.
- Parameters
dumperdone – Dumper result
previous – Optional previous ChipConfig to apply changes to
-
lola::vx::v3::Chip convert_to_chip (DumperDone const &dumperdone, lola::vx::v3::Chip const &previous) SYMBOL_VISIBLE
Convert the dumper result to a Chip config.
This conversion is not bijective.
- Parameters
dumperdone – Dumper result
previous – Optional previous ChipConfig to apply changes to
-
template<class
T
>
inline voiddecode_ones
(T &config)¶ Decode data with all bits set to one into a container.
- Template Parameters
T – Container type
- Returns
Filled container
-
template<>
inline voiddecode_random
(std::mt19937 &gen, haldls::vx::CHIP_REVISION_STR::CapMemBlockConfig &config)¶
-
template<>
inline voiddecode_random
(std::mt19937 &gen, haldls::vx::JTAGIdCode &config)¶
-
template<>
inline voiddecode_random
(std::mt19937 &gen, lola::vx::CHIP_REVISION_STR::CapMem &config)¶
-
template<class
T
>
inline voiddecode_random
(std::mt19937 &gen, T &config)¶ Decode random data into a container.
- Template Parameters
T – Container type
- Parameters
gen – RNG
- Returns
randomly filled container
-
template<typename
Seq
>
autogenerate
(Seq const &seq)¶ Generate function to be called on an object implementing the PlaybackGenerator concept.
The PlaybackGenerator concept for a type Generator is comprised of having a nested Result type and a constant function with signature
PlaybackGeneratorReturn<Generator::Result> generate() const;
.
-
pybind11::bind_vector< stadls::vx::PlaybackProgram::madc_samples_type > (parent, "madc_samples_type")
-
template<typename
Connection
>
RunTimeInforun
(Connection &connection, PlaybackProgram &&program)¶ Transfer and execute the given playback program and fetch results.
- Template Parameters
Connection – Connection type to be used for running the program
- Parameters
connection – Connection instance to be used for running the program
program – PlaybackProgram to run
- Returns
Run time information
-
template<typename
Connection
>
RunTimeInforun
(Connection &connection, PlaybackProgram &program)¶ Transfer and execute the given playback program and fetch results.
- Template Parameters
Connection – Connection type to be used for running the program
- Parameters
connection – Connection instance to be used for running the program
program – PlaybackProgram to run
- Returns
Run time information
Transfer and execute the given fisch playback program and fetch results.
- Template Parameters
Connection – Connection type to be used for running the program
- Parameters
connection – Connection instance to be used for running the program
program – PlaybackProgram to run
- Returns
Run time information
Variables
-
auto
attr
= parent.attr("madc_samples_type")¶
-
constexpr size_t
playback_memory_size_to_fpga
= fisch::vx::playback_memory_size_to_fpga¶ Playback memory FIFO size on FPGA in instructions for playback execution.
-
auto const
to_numpy
= [](_values_type const& self) { pybind11::array_t<haldls::vx::MADCSampleFromChip::MADCSampleFromChipDType> ret( {static_cast<pybind11::ssize_t>(self.size())}, reinterpret_cast< haldls::vx::MADCSampleFromChip::MADCSampleFromChipDType const*>( self.data())); return ret; }¶
-
typedef fisch::vx::RunTimeInfo
-
namespace
stadls::vx
::
detail
¶ Typedefs
-
typedef detail::PlaybackProgramBuilderAdapterImpl<BuilderStorage, DoneType, CoordinateToContainer>
Impl
¶
Functions
-
template<typename
T
>
size_tcount_decoding_words
(T const &config)¶ Get number of words expected for decoding.
- Template Parameters
T – Container type
- Parameters
Container –
- Returns
Number of words for default backend
-
template<typename BuilderStorage, typename DoneType, template< typename > class CoordinateToContainer> class SYMBOL_VISIBLE stadls::vx::detail::PlaybackProgramBuilderAdapter empty () const
Get whether builder is empty, i.e.
no instructions are embodied.
- Returns
Boolean value
-
template<typename
T
>
T::coordinate_typeget_coord
(T const &config)¶ Get coordinate matching container, e.g.
with respect to size.
- Template Parameters
T – Container type
- Parameters
Container –
- Returns
Coordinate
-
bool
is_write_only
() const¶ Get whether builder only stores write instructions.
- Returns
Boolean value
-
template SYMBOL_VISIBLE std::ostream & operator<< (std::ostream &, PlaybackProgramBuilderAdapter< fisch::vx::PlaybackProgramBuilder, stadls::vx::PlaybackProgram, stadls::vx::v2::CoordinateToContainer > const &)
-
template SYMBOL_VISIBLE std::ostream & operator<< (std::ostream &, PlaybackProgramBuilderAdapter< fisch::vx::PlaybackProgramBuilder, stadls::vx::PlaybackProgram, stadls::vx::v3::CoordinateToContainer > const &)
-
template SYMBOL_VISIBLE std::ostream & operator<< (std::ostream &, PlaybackProgramBuilderAdapter< stadls::vx::v2::Dumper, stadls::vx::v2::Dumper::done_type, stadls::vx::v2::CoordinateToContainer > const &)
-
template SYMBOL_VISIBLE std::ostream & operator<< (std::ostream &, PlaybackProgramBuilderAdapter< stadls::vx::v3::Dumper, stadls::vx::v3::Dumper::done_type, stadls::vx::v3::CoordinateToContainer > const &)
-
template<typename T> std::ostream & operator<< (std::ostream &os, Dumper< T > const &builder) SYMBOL_VISIBLE
- Returns
Altered ostream
-
template<typename T, typename U, template< typename > class C> std::ostream & operator<< (std::ostream &os, PlaybackProgramBuilderAdapter< T, U, C > const &builder) SYMBOL_VISIBLE
-
size_t
size_to_fpga
() const¶ Get number of UT messages to FPGA.
- Returns
Size
-
typedef detail::PlaybackProgramBuilderAdapterImpl<BuilderStorage, DoneType, CoordinateToContainer>
-
namespace
stadls::vx
::
v2
¶ Typedefs
-
hate::type_list<#define PLAYBACK_CONTAINER(Name, Type) # 13 "/jenkins/jenlib_workspaces_f9/doc_gerrit_documentation-brainscales2.ZG9jX2dlcnJpdF9kb2N1bWVudGF0aW9uLWJyYWluc2NhbGVzMiMzNzk.x/haldls/include/stadls/vx/v2/coordinate_to_container.h" 2#define LAST_PLAYBACK_CONTAINER(Name, Type) #define PLAYBACK_CONTAINER(Name, Type) # 16 "/jenkins/jenlib_workspaces_f9/doc_gerrit_documentation-brainscales2.ZG9jX2dlcnJpdF9kb2N1bWVudGF0aW9uLWJyYWluc2NhbGVzMiMzNzk.x/haldls/include/stadls/vx/v2/coordinate_to_container.h" 2 > container_list
List of container types used to resolve a container type from a coordinate type.
-
hate::type_list<#define PLAYBACK_CONTAINER(Name, Type) # 25 "/jenkins/jenlib_workspaces_f9/doc_gerrit_documentation-brainscales2.ZG9jX2dlcnJpdF9kb2N1bWVudGF0aW9uLWJyYWluc2NhbGVzMiMzNzk.x/haldls/include/stadls/vx/v2/coordinate_to_container.h" 2#define LAST_PLAYBACK_CONTAINER(Name, Type) #define PLAYBACK_CONTAINER(Name, Type) # 28 "/jenkins/jenlib_workspaces_f9/doc_gerrit_documentation-brainscales2.ZG9jX2dlcnJpdF9kb2N1bWVudGF0aW9uLWJyYWluc2NhbGVzMiMzNzk.x/haldls/include/stadls/vx/v2/coordinate_to_container.h" 2 > coordinate_list
List of coordinate types sorted the same way as the container list.
-
template<typename
Result
>
usingPlaybackGeneratorReturn
= stadls::vx::PlaybackGeneratorReturn<PlaybackProgramBuilder, Result>¶
-
using
PlaybackProgram
= stadls::vx::PlaybackProgram¶
-
using
PlaybackProgramBuilder
= detail::PlaybackProgramBuilderAdapter<fisch::vx::PlaybackProgramBuilder, PlaybackProgram, CoordinateToContainer>¶
-
using
PlaybackProgramBuilderDumper
= detail::PlaybackProgramBuilderAdapter<Dumper, Dumper::done_type, CoordinateToContainer>¶
-
typedef stadls::vx::ReinitStackEntry
ReinitStackEntry
¶
Functions
-
PlaybackProgramBuilder convert_to_builder (Dumper::done_type const &cocos) SYMBOL_VISIBLE
Convert a sequence of coordinate container pairs to a PlaybackProgramBuilder.
- Parameters
cocos – Coordinate-Container pair sequence
-
PlaybackProgramBuilder convert_to_builder (PlaybackProgramBuilderDumper &&dumper) SYMBOL_VISIBLE
Convert a PlaybackProgramBuilderDumper to a PlaybackProgramBuilder (rvalue reference overload).
The dumper is emptied during the process.
- Parameters
dumper – Dumper to convert
-
PlaybackProgramBuilder convert_to_builder (PlaybackProgramBuilderDumper &dumper) SYMBOL_VISIBLE
Convert a PlaybackProgramBuilderDumper to a PlaybackProgramBuilder.
The dumper is emptied during the process.
- Parameters
dumper – Dumper to convert
-
wrapped def ("pop", &ReinitStackEntry::pop)
-
wrapped def ("set", &ReinitStackEntry::set, pybind11::arg("pbmem_request"), pybind11::arg("pbmem_snapshot")=std::nullopt, pybind11::arg("enforce")=true)
-
template<typename ...
Ts
>
autogenerate
(Ts&&... args) -> decltype(stadls::vx::generate(std::forward<Ts>(args)...))¶
-
-
namespace
detail
¶
-
namespace
stadls::vx
::
v3
¶ Typedefs
-
hate::type_list<#define PLAYBACK_CONTAINER(Name, Type) # 13 "/jenkins/jenlib_workspaces_f9/doc_gerrit_documentation-brainscales2.ZG9jX2dlcnJpdF9kb2N1bWVudGF0aW9uLWJyYWluc2NhbGVzMiMzNzk.x/haldls/include/stadls/vx/v3/coordinate_to_container.h" 2#define LAST_PLAYBACK_CONTAINER(Name, Type) #define PLAYBACK_CONTAINER(Name, Type) # 16 "/jenkins/jenlib_workspaces_f9/doc_gerrit_documentation-brainscales2.ZG9jX2dlcnJpdF9kb2N1bWVudGF0aW9uLWJyYWluc2NhbGVzMiMzNzk.x/haldls/include/stadls/vx/v3/coordinate_to_container.h" 2 > container_list
List of container types used to resolve a container type from a coordinate type.
-
hate::type_list<#define PLAYBACK_CONTAINER(Name, Type) # 25 "/jenkins/jenlib_workspaces_f9/doc_gerrit_documentation-brainscales2.ZG9jX2dlcnJpdF9kb2N1bWVudGF0aW9uLWJyYWluc2NhbGVzMiMzNzk.x/haldls/include/stadls/vx/v3/coordinate_to_container.h" 2#define LAST_PLAYBACK_CONTAINER(Name, Type) #define PLAYBACK_CONTAINER(Name, Type) # 28 "/jenkins/jenlib_workspaces_f9/doc_gerrit_documentation-brainscales2.ZG9jX2dlcnJpdF9kb2N1bWVudGF0aW9uLWJyYWluc2NhbGVzMiMzNzk.x/haldls/include/stadls/vx/v3/coordinate_to_container.h" 2 > coordinate_list
List of coordinate types sorted the same way as the container list.
-
template<typename
Result
>
usingPlaybackGeneratorReturn
= stadls::vx::PlaybackGeneratorReturn<PlaybackProgramBuilder, Result>¶
-
using
PlaybackProgram
= stadls::vx::PlaybackProgram¶
-
using
PlaybackProgramBuilder
= detail::PlaybackProgramBuilderAdapter<fisch::vx::PlaybackProgramBuilder, PlaybackProgram, CoordinateToContainer>¶
-
using
PlaybackProgramBuilderDumper
= detail::PlaybackProgramBuilderAdapter<Dumper, Dumper::done_type, CoordinateToContainer>¶
-
typedef stadls::vx::ReinitStackEntry
ReinitStackEntry
¶
Functions
-
PlaybackProgramBuilder convert_to_builder (Dumper::done_type const &cocos) SYMBOL_VISIBLE
Convert a sequence of coordinate container pairs to a PlaybackProgramBuilder.
- Parameters
cocos – Coordinate-Container pair sequence
-
PlaybackProgramBuilder convert_to_builder (PlaybackProgramBuilderDumper &&dumper) SYMBOL_VISIBLE
Convert a PlaybackProgramBuilderDumper to a PlaybackProgramBuilder (rvalue reference overload).
The dumper is emptied during the process.
- Parameters
dumper – Dumper to convert
-
PlaybackProgramBuilder convert_to_builder (PlaybackProgramBuilderDumper &dumper) SYMBOL_VISIBLE
Convert a PlaybackProgramBuilderDumper to a PlaybackProgramBuilder.
The dumper is emptied during the process.
- Parameters
dumper – Dumper to convert
-
wrapped def ("pop", &ReinitStackEntry::pop)
-
wrapped def ("set", &ReinitStackEntry::set, pybind11::arg("pbmem_request"), pybind11::arg("pbmem_snapshot")=std::nullopt, pybind11::arg("enforce")=true)
-
template<typename ...
Ts
>
autogenerate
(Ts&&... args) -> decltype(stadls::vx::generate(std::forward<Ts>(args)...))¶
-
-
namespace
detail
¶
-
namespace
std
STL namespace.
-
file
visitors.h
- #include <algorithm>#include <array>#include <iterator>#include <stdexcept>#include <utility>
-
file
constants.h
- #include “fisch/vx/constants.h”
-
file
decode.h
- #include <limits>#include <random>#include “fisch/vx/container.h”#include “fisch/vx/container_cast.h”#include “fisch/vx/fill.h”#include “halco/hicann-dls/vx/capmem.h”#include “halco/hicann-dls/vx/ppu.h”#include “haldls/vx/common.h”#include “haldls/vx/jtag.h”#include “haldls/vx/traits.h”#include “lola/vx/capmem.h”#include “stadls/visitors.h”#include “haldlsID(/)vxID(/)vID(CHIP_REVISION)/capmem.h”
Defines
-
CONCAT
(w, x, y, z)
-
ID
(x)
-
STR
(x)
-
XSTR
(x)
-
-
file
decode.h
- #include “stadls/vx/decode.h”#include “lola/vx/v2/chip.h”
Defines
-
CHIP_REVISION
-
-
file
decode.h
- #include “stadls/vx/decode.h”#include “lola/vx/v3/chip.h”
Defines
-
CHIP_REVISION
-
-
file
dumper.h
- #include “halco/hicann-dls/vx/barrier.h”#include “halco/hicann-dls/vx/omnibus.h”#include “haldls/vx/barrier.h”#include “haldls/vx/block.h”#include “haldls/vx/timer.h”#include “hate/visibility.h”#include “stadls/vx/playback_program.h”
-
file
dumper.h
- #include “haldls/cerealization.h”#include “haldls/vx/v2/container.h”#include “lola/vx/v2/container.h”#include “stadls/vx/dumper.h”#include “stadls/vx/genpybind.h”#include “stadls/vx/playback_program_builder.h”#include “stadls/vx/v2/coordinate_to_container.h”#include “stadls/vx/v2/dumperdone.h”#include “haldls/vx/v2/container.def”#include “lola/vx/v2/container.def”
Defines
-
PLAYBACK_CONTAINER
(_Name, Type)
-
PLAYBACK_CONTAINER
(_Name, Type)
-
-
file
dumper.h
- #include “haldls/cerealization.h”#include “haldls/vx/v3/container.h”#include “lola/vx/v3/container.h”#include “stadls/vx/dumper.h”#include “stadls/vx/genpybind.h”#include “stadls/vx/playback_program_builder.h”#include “stadls/vx/v3/coordinate_to_container.h”#include “stadls/vx/v3/dumperdone.h”#include “haldls/vx/v3/container.def”#include “lola/vx/v3/container.def”
Defines
-
PLAYBACK_CONTAINER
(_Name, Type)
-
PLAYBACK_CONTAINER
(_Name, Type)
-
-
file
genpybind.h
- #include <genpybind.h>
-
file
playback_generator.h
- #include “hate/nil.h”#include “hate/type_traits.h”#include “hate/visibility.h”#include “stadls/vx/genpybind.h”
-
file
playback_generator.h
- #include “stadls/vx/genpybind.h”#include “stadls/vx/playback_generator.h”#include “stadls/vx/v2/playback_program_builder.h”
Functions
-
parent py::template class_<::stadls::vx::PlaybackGenerator, PyPlaybackGenerator > (parent, "PlaybackGenerator") .def(parent -> py::template init<>()) .def("generate", &::stadls::vx::PlaybackGenerator::generate)
-
parent def ("generate", [](::stadls::vx::PlaybackGenerator const &self) { return self.generate();}, pybind11::return_value_policy::move)
-
-
file
playback_generator.h
- #include “stadls/vx/genpybind.h”#include “stadls/vx/playback_generator.h”#include “stadls/vx/v3/playback_program_builder.h”
Functions
-
parent py::template class_<::stadls::vx::PlaybackGenerator, PyPlaybackGenerator > (parent, "PlaybackGenerator") .def(parent -> py::template init<>()) .def("generate", &::stadls::vx::PlaybackGenerator::generate)
-
parent def ("generate", [](::stadls::vx::PlaybackGenerator const &self) { return self.generate();}, pybind11::return_value_policy::move)
-
-
file
playback_program.h
- #include <cstdint>#include <memory>#include <optional>#include <string>#include <vector>#include <boost/variant.hpp>#include “fisch/vx/container_cast.h”#include “fisch/vx/container_ticket.h”#include “fisch/vx/playback_program.h”#include “haldls/cerealization.h”#include “haldls/vx/common.h”#include “haldls/vx/event.h”#include “hate/type_list.h”#include “hate/visibility.h”#include “hxcomm/vx/target.h”#include “stadls/vx/genpybind.h”#include “stadls/vx/run_time_info.h”
Functions
-
PlaybackProgram (std::shared_ptr< fisch::vx::PlaybackProgram > const &program_impl, std::unordered_set< hxcomm::vx::Target > unsupported_targets) SYMBOL_VISIBLE
Construct PlaybackProgram from implementation.
Used in PlaybackProgramBuilderAdapter
- Parameters
program_impl – Implementation playback program
unsupported_targets – Build-imposed restrictions on targets
-
template<typename
Connection
>
RunTimeInforun
(Connection&, PlaybackProgram&)¶
-
-
file
playback_program.h
- #include “haldls/vx/v2/container.h”#include “lola/vx/v2/container.h”#include “stadls/vx/genpybind.h”#include “stadls/vx/playback_program.h”#include “haldls/vx/v2/container.def”#include “lola/vx/v2/container.def”
Defines
-
PLAYBACK_CONTAINER
(_Name, Type)
-
-
file
playback_program.h
- #include “haldls/vx/v3/container.h”#include “lola/vx/v3/container.h”#include “stadls/vx/genpybind.h”#include “stadls/vx/playback_program.h”#include “haldls/vx/v3/container.def”#include “lola/vx/v3/container.def”
Defines
-
PLAYBACK_CONTAINER
(_Name, Type)
-
-
file
playback_program_builder.h
- #include <iosfwd>#include <memory>#include <unordered_set>#include “halco/hicann-dls/vx/barrier.h”#include “haldls/vx/barrier.h”#include “haldls/vx/common.h”#include “hate/visibility.h”#include “hxcomm/vx/target.h”#include “stadls/vx/dumper.h”#include “stadls/vx/genpybind.h”#include “stadls/vx/playback_program.h”
Typedefs
-
typedef BuilderStorage
Builder
¶
Functions
-
~PlaybackProgramBuilderAdapter
()¶
-
void
block_until
(halco::hicann_dls::vx::BarrierOnFPGA const &coord, haldls::vx::Barrier sync)¶ Add instruction to block execution until specified barrier is completed.
- Parameters
coord – Barrier coordinate for which to block
sync – Barrier value for which to block execution
-
void
block_until
(halco::hicann_dls::vx::PollingOmnibusBlockOnFPGA const &coord, haldls::vx::PollingOmnibusBlock sync)¶
-
void
block_until
(typename haldls::vx::Timer::coordinate_type const &coord, haldls::vx::Timer::Value time)¶ Add instruction to block execution until specified timer has reached specified value.
- Parameters
coord – Timer coordinate for which to block
time – Timer value until which to block execution
-
void
copy_back
(BuilderStorage const &other)¶ Copy BuilderStorage to the end of this builder instance.
The copied-from storage is untouched during the process.
- Throws
std::runtime_error – On other builder not being write only
- Parameters
other – BuilderStorage to copy to this instance at the back
-
void
copy_back
(PlaybackProgramBuilderAdapter const &other)¶ Copy other PlaybackProgramBuilderAdapter to the end of this builder instance.
The copied-from builder is untouched during the process.
- Throws
std::runtime_error – On other builder not being write only
- Parameters
other – Builder to copy to this instance at the back
-
parent def ("__str__", [](GENPYBIND_PARENT_TYPE const &p) { std::stringstream ss;ss<< p;return ss.str();})
-
DoneType
done
()¶ Close PlaybackProgram build process and return executable program.
- Returns
Executable PlaybackProgram
-
constexpr if (hate::is_in_type_list< typename std::decay< decltype(p)>::type::Builder, dumper_types >::value)
-
void
merge_back
(BuilderStorage &&other)¶ Merge BuilderStorage to the end of this builder instance.
The moved-from storage is emptied during the process.
- Parameters
other – BuilderStorage to move to this instance at the back
-
void
merge_back
(BuilderStorage &other)¶ Merge BuilderStorage to the end of this builder instance.
The moved-from storage is emptied during the process.
- Parameters
other – BuilderStorage to move to this instance at the back
-
void
merge_back
(PlaybackProgramBuilderAdapter &&other)¶ Merge other PlaybackProgramBuilderAdapter to the end of this builder instance.
The moved-from builder is emptied during the process.
- Parameters
other – Builder to move to this instance at the back
-
void
merge_back
(PlaybackProgramBuilderAdapter &other)¶ Merge other PlaybackProgramBuilderAdapter to the end of this builder instance.
The moved-from builder is emptied during the process.
- Parameters
other – Builder to move to this instance at the back
-
template<typename
T
, typenameU
, template<typename> classC
>
std::ostream &operator<<
(std::ostream &os, PlaybackProgramBuilderAdapter<T, U, C> const &builder)¶
-
PlaybackProgramBuilderAdapter &
operator=
(PlaybackProgramBuilderAdapter &&other)¶
-
PlaybackProgramBuilderAdapter
()¶ Construct builder.
-
PlaybackProgramBuilderAdapter
(PlaybackProgramBuilderAdapter &&other)¶
-
PlaybackProgramBuilderAdapter
(PlaybackProgramBuilderAdapter const&) = delete¶
-
template<typename
CoordinateType
>
PlaybackProgram::ContainerTicket<typename CoordinateToContainer<CoordinateType>::type>read
(CoordinateType const &coord)¶ Add instructions to read container data from given location.
The container’s default backend is used.
Note
This function without backend parameter is needed due to python wrapping not being able to handle templated default arguments.
- Parameters
coord – Coordinate value selecting location
-
template<typename
CoordinateType
>
PlaybackProgram::ContainerTicket<typename CoordinateToContainer<CoordinateType>::type>read
(CoordinateType const &coord, haldls::vx::Backend backend)¶ Add instructions to read container data from given location.
- Parameters
coord – Coordinate value selecting location
backend – Backend selection
-
return ss str ()
-
void
wait_until
(typename haldls::vx::Timer::coordinate_type const &coord, haldls::vx::Timer::Value time)¶ Add instruction to block execution until specified timer has reached specified value.
- Deprecated:
In favor of block_until
- Parameters
coord – Timer coordinate for which to wait
time – Timer value until which to block execution
-
template<typename
Type
>
voidwrite
(typename Type::coordinate_type const &coord, Type const &config)¶ Add instructions to write given container to given location.
The container’s default backend is used.
Note
This function without backend parameter is needed due to python wrapping not being able to handle templated default arguments.
- Parameters
coord – Coordinate value selecting location
config – Container configuration data
-
template<typename
Type
>
voidwrite
(typename Type::coordinate_type const &coord, Type const &config, haldls::vx::Backend backend)¶ Add instructions to write given container to given location.
- Parameters
coord – Coordinate value selecting location
config – Container configuration data
backend – Backend selection
-
template<typename
Type
>
voidwrite
(typename Type::coordinate_type const &coord, Type const &config, Type const &config_reference)¶ Add instructions to write given container to given location.
The container’s default backend is used.
Note
This function without backend parameter is needed due to python wrapping not being able to handle templated default arguments.
- Parameters
coord – Coordinate value selecting location
config – Container configuration data
config_reference – Reference configuration for differential write
-
template<typename
Type
>
voidwrite
(typename Type::coordinate_type const &coord, Type const &config, Type const &config_reference, haldls::vx::Backend backend)¶ Add instructions to write given container to given location.
- Parameters
coord – Coordinate value selecting location
config – Container configuration data
config_reference – Reference configuration for differential write
backend – Backend selection
Variables
-
else = { ss << "PlaybackProgramBuilder(to FPGA size: " << p.size_to_fpga() << ", is write only: " << std::boolalpha << p.is_write_only() << ")"
-
typedef BuilderStorage
-
file
playback_program_builder.h
- #include “haldls/cerealization.h”#include “haldls/vx/v2/container.h”#include “lola/vx/v2/container.h”#include “stadls/vx/genpybind.h”#include “stadls/vx/playback_program_builder.h”#include “stadls/vx/v2/coordinate_to_container.h”#include “stadls/vx/v2/dumper.h”#include “haldls/vx/v2/container.def”#include “lola/vx/v2/container.def”
Defines
-
PLAYBACK_CONTAINER
(_Name, Type)
-
-
file
playback_program_builder.h
- #include “haldls/cerealization.h”#include “haldls/vx/v3/container.h”#include “lola/vx/v3/container.h”#include “stadls/vx/genpybind.h”#include “stadls/vx/playback_program_builder.h”#include “stadls/vx/v3/coordinate_to_container.h”#include “stadls/vx/v3/dumper.h”#include “haldls/vx/v3/container.def”#include “lola/vx/v3/container.def”
Defines
-
PLAYBACK_CONTAINER
(_Name, Type)
-
-
file
reinit_stack_entry.h
- #include “hate/visibility.h”#include “stadls/vx/genpybind.h”#include “stadls/vx/playback_program.h”#include <memory>#include <optional>#include “stadls/vx/reinit_stack_entry.tcc”
-
file
reinit_stack_entry.h
- #include “stadls/vx/genpybind.h”#include “stadls/vx/reinit_stack_entry.h”
-
file
reinit_stack_entry.h
- #include “stadls/vx/genpybind.h”#include “stadls/vx/reinit_stack_entry.h”
-
file
run.h
- #include “stadls/vx/genpybind.h”#include “stadls/vx/run_time_info.h”#include “stadls/vx/run.tcc”
-
file
run.h
- #include “stadls/vx/genpybind.h”#include “stadls/vx/run.h”
-
file
run.h
- #include “stadls/vx/genpybind.h”#include “stadls/vx/run.h”
-
file
run_time_info.h
- #include “fisch/vx/run_time_info.h”#include “stadls/vx/genpybind.h”
-
file
stadls.h
- #include “stadls/vx/constants.h”#include “stadls/vx/init_generator.h”#include “stadls/vx/playback_generator.h”#include “stadls/vx/playback_program.h”#include “stadls/vx/playback_program_builder.h”#include “stadls/vx/reinit_stack_entry.h”#include “stadls/vx/run.h”
-
file
stadls.h
- #include “stadls/vx/v2/dumper.h”#include “stadls/vx/v2/init_generator.h”#include “stadls/vx/v2/playback_generator.h”#include “stadls/vx/v2/playback_program.h”#include “stadls/vx/v2/playback_program_builder.h”#include “stadls/vx/v2/reinit_stack_entry.h”#include “stadls/vx/v2/run.h”
-
file
stadls.h
- #include “stadls/vx/v3/dumper.h”#include “stadls/vx/v3/init_generator.h”#include “stadls/vx/v3/playback_generator.h”#include “stadls/vx/v3/playback_program.h”#include “stadls/vx/v3/playback_program_builder.h”#include “stadls/vx/v3/reinit_stack_entry.h”#include “stadls/vx/v3/run.h”
-
file
coordinate_to_container.h
- #include “haldls/vx/v2/container.h”#include “hate/type_list.h”#include “lola/vx/v2/container.h”#include “haldls/vx/v2/container.def”#include “lola/vx/v2/container.def”
Defines
-
LAST_PLAYBACK_CONTAINER
(Name, Type)
-
LAST_PLAYBACK_CONTAINER
(Name, Type)
-
PLAYBACK_CONTAINER
(Name, Type)
-
PLAYBACK_CONTAINER
(Name, Type)
-
PLAYBACK_CONTAINER
(Name, Type)
-
PLAYBACK_CONTAINER
(Name, Type)
-
-
file
coordinate_to_container.h
- #include “haldls/vx/v3/container.h”#include “hate/type_list.h”#include “lola/vx/v3/container.h”#include “haldls/vx/v3/container.def”#include “lola/vx/v3/container.def”
Defines
-
LAST_PLAYBACK_CONTAINER
(Name, Type)
-
LAST_PLAYBACK_CONTAINER
(Name, Type)
-
PLAYBACK_CONTAINER
(Name, Type)
-
PLAYBACK_CONTAINER
(Name, Type)
-
PLAYBACK_CONTAINER
(Name, Type)
-
PLAYBACK_CONTAINER
(Name, Type)
-
-
file
dumperdone.h
- #include “halco/hicann-dls/vx/barrier.h”#include “haldls/cerealization.h”#include “haldls/vx/barrier.h”#include “haldls/vx/timer.h”#include “haldls/vx/v2/container.h”#include “hate/visibility.h”#include “lola/vx/v2/container.h”#include “stadls/vx/genpybind.h”#include <utility>#include <variant>#include <vector>#include “haldls/vx/v2/container.def”#include “lola/vx/v2/container.def”
Defines
-
PLAYBACK_CONTAINER
(Name, Type)
-
-
file
dumperdone.h
- #include “halco/hicann-dls/vx/barrier.h”#include “haldls/cerealization.h”#include “haldls/vx/barrier.h”#include “haldls/vx/timer.h”#include “haldls/vx/v3/container.h”#include “hate/visibility.h”#include “lola/vx/v3/container.h”#include “stadls/vx/genpybind.h”#include <utility>#include <variant>#include <vector>#include “haldls/vx/v3/container.def”#include “lola/vx/v3/container.def”
Defines
-
PLAYBACK_CONTAINER
(Name, Type)
-
-
file
init_generator.h
- #include “hate/visibility.h”#include “stadls/vx/v2/playback_generator.h”#include “stadls/vx/v2/playback_program_builder.h”
-
file
init_generator.h
- #include “hate/visibility.h”#include “stadls/vx/v3/playback_generator.h”#include “stadls/vx/v3/playback_program_builder.h”
-
file
pystadls.h
- #include <pybind11/pybind11.h>#include “stadls/vx/genpybind.h”#include “stadls/vx/v2/stadls.h”
-
file
pystadls.h
- #include <pybind11/pybind11.h>#include “stadls/vx/genpybind.h”#include “stadls/vx/v3/stadls.h”
-
page
deprecated
- Member stadls::vx::detail::PlaybackProgramBuilderAdapter< BuilderStorage, DoneType, CoordinateToContainer >::wait_until (typename haldls::vx::Timer::coordinate_type const &coord, haldls::vx::Timer::Value time)
In favor of block_until
- Member wait_until (typename haldls::vx::Timer::coordinate_type const &coord, haldls::vx::Timer::Value time)
In favor of block_until
-
dir
/jenkins/jenlib_workspaces_f9/doc_gerrit_documentation-brainscales2.ZG9jX2dlcnJpdF9kb2N1bWVudGF0aW9uLWJyYWluc2NhbGVzMiMzNzk.x/haldls
-
dir
/jenkins/jenlib_workspaces_f9/doc_gerrit_documentation-brainscales2.ZG9jX2dlcnJpdF9kb2N1bWVudGF0aW9uLWJyYWluc2NhbGVzMiMzNzk.x/haldls/include
-
dir
/jenkins/jenlib_workspaces_f9/doc_gerrit_documentation-brainscales2.ZG9jX2dlcnJpdF9kb2N1bWVudGF0aW9uLWJyYWluc2NhbGVzMiMzNzk.x/haldls/include/stadls
-
dir
/jenkins/jenlib_workspaces_f9/doc_gerrit_documentation-brainscales2.ZG9jX2dlcnJpdF9kb2N1bWVudGF0aW9uLWJyYWluc2NhbGVzMiMzNzk.x/haldls/include/stadls/vx/v2
-
dir
/jenkins/jenlib_workspaces_f9/doc_gerrit_documentation-brainscales2.ZG9jX2dlcnJpdF9kb2N1bWVudGF0aW9uLWJyYWluc2NhbGVzMiMzNzk.x/haldls/include/stadls/vx/v3
-
dir
/jenkins/jenlib_workspaces_f9/doc_gerrit_documentation-brainscales2.ZG9jX2dlcnJpdF9kb2N1bWVudGF0aW9uLWJyYWluc2NhbGVzMiMzNzk.x/haldls/include/stadls/vx