Software
The biological brain does not require engineered software to function. It rather self-organises in a learning process through continuous interaction with the physical world.
In contrast, neuromorphic or brain-inspired computing systems require substantial and very complex software for various aspects of their operation :
- Neural network architectures including the parameters of neurons and synapses are described in a platform-independent description language (PyNN), that has been pioneered in previous research projects (FACETS and BrainScaleS). It is now further developed to include recent neuroscience findings like learning mechanisms and complex neuronal structures.
- The SpiNNaker system is a massively parallel many-core system in which the neural elements like neurons, synapses and the network architecture are simulated in software running locally on individual processor cores.
- The BrainScaleS physical system has a huge configuration space corresponding to 40MB per wafer module. Configuration data describing neuron, synapse and network architecture is uploaded to the distributed on-wafer memory before or during the actual experiments.
- The mapping and routing of biological networks to hardware is carried out with complex optimisation algorithms.
- Many experiments with neuromorphic systems are carried out in a hybrid mode with neuromorphic „hardware-in-the-loop“ controlled by a conventional computer running software for learning, calibration or simulating physical environments.
- Neuromorphic system produce massive volumes of output data that needs to be visualised and analysed.