Title
PyNCS: a microkernel for high-level definition and configuration of neuromorphic electronic systems.
Abstract
Neuromorphic hardware offers an electronic substrate for the realization of asynchronous event-based sensory-motor systems and large-scale spiking neural network architectures. In order to characterize these systems, configure them, and carry out modeling experiments, it is often necessary to interface them to workstations. The software used for this purpose typically consists of a large monolithic block of code which is highly specific to the hardware setup used. While this approach can lead to highly integrated hardware/software systems, it hampers the development of modular and reconfigurable infrastructures thus preventing a rapid evolution of such systems. To alleviate this problem, we propose PyNCS, an open-source front-end for the definition of neural network models that is interfaced to the hardware through a set of Python Application Programming Interfaces (APIs). The design of PyNCS promotes modularity, portability and expandability and separates implementation from hardware description. The high-level front-end that comes with PyNCS includes tools to define neural network models as well as to create, monitor and analyze spiking data. Here we report the design philosophy behind the PyNCS framework and describe its implementation. We demonstrate its functionality with two representative case studies, one using an event-based neuromorphic vision sensor, and one using a set of multi-neuron devices for carrying out a cognitive decision-making task involving state-dependent computation. PyNCS, already applicable to a wide range of existing spike-based neuromorphic setups, will accelerate the development of hybrid software/hardware neuromorphic systems, thanks to its code flexibility. The code is open-source and available online at https://github.com/inincs/pyNCS.
Year
DOI
Venue
2014
10.3389/fninf.2014.00073
FRONTIERS IN NEUROINFORMATICS
Keywords
Field
DocType
neuromorphic systems,spiking neural network,AER,NHML,VLSI,Python
Computer science,Microkernel,Neuromorphic engineering,Software system,Artificial intelligence,Application programming interface,Software portability,Modular design,Spiking neural network,Machine learning,Python (programming language)
Journal
Volume
ISSN
Citations 
8
1662-5196
4
PageRank 
References 
Authors
0.43
35
4
Name
Order
Citations
PageRank
Fabio Stefanini1914.41
Emre Neftci218317.52
S Sheik3305.20
Giacomo Indiveri41460148.21