Abstract
Spiking activity of individual neurons can be separated from the acquired multi-unit activity with spike sorting methods. Processing the recorded high-dimensional neural data can take a large amount of time when performed on general-purpose computers. In this paper, an FPGA-based real-time spike sorting system is presented which takes into account the spatial correlation between the electrical signals recorded with closely-packed recording sites to cluster multi-channel neural data. The system uses a spatial window-based version of the Online Sorting algorithm, which uses unsupervised template-matching for clustering. The test results show that the proposed system can reach an average accuracy of 86% using simulated data (16-32 neurons, 4-10dB Signal-to-Noise Ratio), while the single-channel clustering version achieves only 74% average accuracy in the same cases on a 128-channel electrode array. The developed system was also tested on in vivo cortical recordings obtained from an anesthetized rat. The proposed FPGA-based spike sorting system can process more than 11000 spikes/second, so it can be used during in vivo experiments providing real-time feedback on the location and electrophysiological properties of well-separable single units. The proposed spike sorting system could be used to reduce the positioning error of the closely-packed recording site during a neural measurement.
Highlights
T HE brain is one of the most complex biological systems containing quadrillions of synapses and billions of neurons
The Processing block was implemented on a Xilinx ZCU106 SoC FieldProgrammable Gate Arrays (FPGAs) board, which contains a Zynq UltraScale+ XCZU7EV FPGA as Programmable Logic (PL) and a quad-core ARM Cortex-A53 processor as Processing System (PS)
By obtaining various firing properties and the waveform of the single units extracted in real-time, neural activity in brain areas under examination could be surveyed in a short time, which presumably would be a useful aid for neuroscientists
Summary
T HE brain is one of the most complex biological systems containing quadrillions of synapses and billions of neurons. During a typical in vivo electrophysiological experiment a single or multiple neural implants comprising dozens of small electrodes are inserted into the brain tissue for recording short, electrical impulses (usually referred to as action potentials or spikes) generated by neurons located close to the implanted devices [1]–[3]. A typical spike sorting algorithm may contain several computationally demanding steps (e.g. spike detection, feature extraction or clustering), which makes real-time processing of multi-channel neural data challenging and can greatly reduce the efficiency of clinical applications designed to provide rapid feedback
Talk to us
Join us for a 30 min session where you can share your feedback and ask us any queries you have