Flexible design methodology for spike encoding implementation on FPGA
Résumé
Spiking Neural Networks (SNNs) are promising candidates for low power and low latency embedded artificial intelligence, e.g., for edge computing. There is, however, a lack of naturally event-based sensors that could directly feed those networks, except for a few specialized flagship examples like neuromorphic retinas. Using conventional sensors in conjunction with SNNs requires to encode their outputs into spikes, which can be detrimental to energy consumption or latency when performed in software. Spike-encoding algorithms have been studied within specific contexts in the literature but are often limited to a software implementation. Here we introduce a flexible design methodology for implementing a generalized version of such a spike-encoder on Field Programmable Gate Array (FPGA). Our approach relies on High-Level Synthesis, which allows to quickly evaluate different hardware architectures to tailor the solution to the application needs. This work could accelerate the development of lower power and lower latency smart sensors by combining conventional, possibly off-the-shelf, sensors with hardware SNNs.