Utilities for working with the Xylo HDK.

Ideally you should not need to use these utility functions. You should try using XyloSamna and XyloSim for high-level interfaces to Xylo.



Take a single manual time-step on a Xylo HDK

apply_configuration(hdk, config, ...)

Apply a configuration to the Xylo HDK

blocking_read(read_buffer[, ...])

Perform a blocking read on a buffer, optionally waiting for a certain count, a target timestamp, or imposing a timeout

configure_accel_time_mode(config, ...[, ...])

Switch on accelerated-time mode on a Xylo hdk, and configure network monitoring


Switch on single-step model on a Xylo hdk

decode_accel_mode_data(events[, Nhidden, Nout])

Decode events from accelerated-time operation of the Xylo HDK

decode_memory_read_events(events, start_address)

Decode a list of events containing memory reads from a Xylo HDK

export_allram_state(path, config, inp_spks, ...)

Export the all RAM state of a Xylo network over time, for debugging purposes

export_config(path, config, dt)

Export a network configuration to a set of text files, for debugging purposes

export_frozen_state(path, config, state)

Export a single time-step frozen state of a Xylo network

export_last_state(path, config, inp_spks, state)

Export the final state of a Xylo network, evolved over an input

export_registers(read_buffer, write_buffer, file)

Print register contents for debugging purposes

export_temporal_state(path, config, ...)

Export the state of a Xylo network over time, for debugging purposes


Search for and return a list of Xylo HDK

generate_read_memory_events(start_address[, ...])

Build a list of events that cause Xylo memory to be read

get_current_timestamp(read_buffer, write_buffer)

Retrieve the current timestamp on a Xylo HDK


Initialise the Xylo HDK

is_xylo_ready(read_buffer, write_buffer)

Query a Xylo HDK to see if it is ready for a time-step


Create and connect a new buffer to read from a Xylo HDK


Create a new buffer for monitoring neuron and synapse state and connect it


Create a new buffer for writing events to a Xylo HDK


Number of buffer neurons required for this network on Xylo 1

print_debug_ram(read_buffer, write_buffer[, ...])

Print memory contents for debugging purposes

print_debug_registers(read_buffer, write_buffer)

Print register contents of a Xylo HDK for debugging purposes

read_accel_mode_data(monitor_buffer, Nin, ...)

Read accelerated simulation mode data from a Xylo HDK

read_allram_state(read_buffer, write_buffer)

Read and return the all ram in each step as a state

read_memory(read_buffer, write_buffer, ...)

Read a block of memory from a Xylo HDK

read_neuron_synapse_state(read_buffer, ...)

Read and return the current neuron and synaptic state of neurons

read_output_events(read_buffer, write_buffer)

Read the spike flags from the output neurons on a Xylo HDK

read_register(read_buffer, write_buffer, address)

Read the contents of a register


Reset the input spike registers on a Xylo HDK

reset_neuron_synapse_state(hdk, read_buffer, ...)

Reset the neuron and synapse state on a Xylo HDK

send_immediate_input_spikes(write_buffer, ...)

Send input events with no timestamp to a Xylo HDK

to_hex(n, digits)

Output a consistent-length hex string encoding a number

verify_xylo_version(read_buffer, write_buffer)

Verify that the provided daughterbaord returns the correct version ID for Xylo

write_memory(write_buffer, start_address[, ...])

Write data to Xylo memory

write_register(write_buffer, register[, data])

Write data to a register on a Xylo HDK


Clear all Xylo memory


XyloAllRam(Nin, Nhidden, Nout, V_mem_hid, ...)

NamedTuple that encapsulates a recorded Xylo HDK state

XyloState(Nin, Nhidden, Nout, V_mem_hid, ...)

NamedTuple that encapsulates a recorded Xylo HDK state