Spike Toolbox for Matlab

14th February, 2008

As part of my work with the aVLSI group at the Institut für Neuroinformatik, I developed a Matlab toolbox for the generation, manipulation and analysis of digital spike trains. The toolbox supports supports stimulation of spike-based communications devices such as analog neuron simulation chips, via the PCI-AER system also under development at the INI.

About the Spike Toolbox

The Spike Toolbox is a custom Matlab toolbox for the generation, manipulation and analysis of digital spike trains. It allows arbitrary spike trains to be easily generated with sophisticated control over temporal structure, and allows the trains to be manipulated as an opaque object.

The toolbox also has links for stimulating external spike-based communications devices, using either the PCI-AER hardware or Matthias Oster's spike server. The toolbox can monitor spikes from devices such as spiking retinas directly from Matlab, and can be configured for arbitrary hardware addressing schemes.

Getting the toolbox

We currently license the toolbox to research groups only, but are moving towards an open-source license. The entire toolbox documentation is available online; before requesting a license, please look through the tutorial and see if the toolbox will be useful to you. Please note that the toolbox only manipulates digital spike trains, and does not perform spike sorting or manipulation of analogue membrane potential traces.

The toolbox is available from github.com/DylanMuir/SpikeToolbox.

Downloading the toolbox

Use a git client to clone the master branch of the repository from github.com/DylanMuir/SpikeToolbox.

Installing the toolbox

To begin using the toolbox with Matlab, add the toolbox directory to the Matlab path. There are several .mex files the toolbox needs to compile before you start; the STWelcome function will take care of that for you. Just type STWelcome from the Matlab command line and the function will check that Matlab is configured correctly for the toolbox.

The .mex links for stimulation with the PCI-AER system must be compiled against your version of the PCI-AER driver and libraries. To enable the compiler to find these files, you must define an environment variable PCIAER_DIR containing the full path to the pciaer directory. Note: This step is only required if you want to use the PCI-AER system with the toolbox.

The toolbox documentation is available online, and is also integrated with the Matlab help system. In addition, all functions have detailed help available from the command line with help <function_name>. The STWelcome function also provides access to the help system; this is especially important for Matlab release 13, which currently does not incorporate the toolbox documentation into the contents pane of the help browser.