Accelerated Analog Neuromorphic Hardware Johannes Schemmel
Kirchhoff Institute for Physics Chair of Prof. Karlheinz Meier Ruprecht-Karls University Heidelberg, Germany Ruprecht-Karls-Universität Heidelberg
Johannes Schemmel
Kirchhoff Institute for Physics
1
Motivation future computing based on biological information processing
understanding biological information processing
need model system to test ideas modeling possibilities:
•
numerical model represents model parameters as binary numbers
•
physical model : analog Neuromorphic Hardware represents model parameters as physical quantities :
can be combined to form a hybrid system
→ voltage, current, charge Ruprecht-Karls-Universität Heidelberg
Johannes Schemmel
Kirchhoff Institute for Physics
2
Physical Model Example : Continuous Time Integrating Membrane Model
Consider a simple physical model for the neuron’s cell membrane potential V: V(t)
R = 1/gleak Eleak
dV Cm g leak (Eleak V dt DV [V]
gleak [S]
Cm [F]
(gV)/C [V/s]
Biology(*)
10-2
10-8
10-10
100
VLSI
10-1
10-6
10-13
106
Cm
Inherent speed gap: 106 Volt/second →
accelerated neuron model
(*) from Brette/Gerstner, J. Neurophysiology, 2005 Ruprecht-Karls-Universität Heidelberg
Johannes Schemmel
Kirchhoff Institute for Physics
3
Measured Example Membrane Voltage Traces
# of Synaptic inputs : 1 2 4
Ruprecht-Karls-Universität Heidelberg
Johannes Schemmel
Kirchhoff Institute for Physics
4
More Neuronal Diversity : Adaptive-Exponential Integrate-and-Fire • 180 nm CMOS • 24 calibration parameters stored on analog floating gates
Ruprecht-Karls-Universität Heidelberg
Johannes Schemmel
Kirchhoff Institute for Physics
5
Single Spike Firing Modes of the AdEx VLSI Neuron
tonic spiking
transient spiking
Ruprecht-Karls-Universität Heidelberg
adaptation
Johannes Schemmel
Kirchhoff Institute for Physics
6
Burst Firing Modes of the AdEx VLSI Neuron
regular bursting
initial burst
Ruprecht-Karls-Universität Heidelberg
Johannes Schemmel
Kirchhoff Institute for Physics
7
Spike-Time Comparison with Poisson Input
Ruprecht-Karls-Universität Heidelberg
Johannes Schemmel
Kirchhoff Institute for Physics
8
Six Groups of Neurons Firing in a Chain
Ruprecht-Karls-Universität Heidelberg
Johannes Schemmel
Kirchhoff Institute for Physics
9
Attractor Network
Ruprecht-Karls-Universität Heidelberg
Johannes Schemmel
Kirchhoff Institute for Physics
10
Boltzman Machine with Neural Sampling
𝜈𝑘 = 𝑝 𝑧𝑘 = 1 =
1 1 + exp(−𝑢𝑘 )
Büsing et al. (2011)
Petrovici & Bill et al. (2013) Petrovici et al. (2015) Ruprecht-Karls-Universität Heidelberg
Johannes Schemmel
Kirchhoff Institute for Physics
11
Boltzman Machine with Neural Sampling Using hardware-in-the-loop training to match target distribution:
𝜈𝑘 = 𝑝 𝑧𝑘 = 1 =
1 1 + exp(−𝑢𝑘 )
Büsing et al. (2011)
Petrovici & Bill et al. (2013) Petrovici et al. (2015) Ruprecht-Karls-Universität Heidelberg
Johannes Schemmel
Kirchhoff Institute for Physics
12
Boltzman Machine with Neural Sampling Using hardware-in-the-loop training to match target distribution:
𝜈𝑘 = 𝑝 𝑧𝑘 = 1 =
1 1 + exp(−𝑢𝑘 )
Büsing et al. (2011)
Petrovici & Bill et al. (2013) Petrovici et al. (2015) Ruprecht-Karls-Universität Heidelberg
Johannes Schemmel
Kirchhoff Institute for Physics
13
Aspects of Modelling Neurobiology : Diversity and Connectivity Biology:
CMOS based analog Neuromorphic hardware :
Diversity :
a multitude of neuron morphologies and electorphysiologies
• heavily parameterized circuits necessary • need calibration for quantitative matching Also implemented in Heidelberg: multi-compartment back-propagating action potential dentridic spikes gap junctions between neighboring neurons Planned: • NMDA plateau potentials • calcium spikes Not yet clear how to do it: • gap junctions beween distant neurons
Connectivity :
1011 neurons, 1015 synapses in Human Brain
physical model of synapse is about 100 µm2 approx. 400 million synapses fit on a silicon wafer → 2.5 million wafer needed simple simulator model needs O(1016) bytes
10.000 synapses per neuron on average
14k inputs per neuron demonstrated
Ruprecht-Karls-Universität Heidelberg
Johannes Schemmel
Kirchhoff Institute for Physics
14
114.000 dynamic synapses
512 neurons (up to 14k inputs)
chip-to-chip communication network
Wafer-Scale Neuromorphic HW
Wafer Module Neuromorphic chip
48 FPGA wafer communication beneath PCBs heatsink
power supplies
host links Ruprecht-Karls-Universität Heidelberg
Johannes Schemmel
Kirchhoff Institute for Physics
16
Machine Room
3/22/2016 neuromorphic.eu
Aspects of Modelling Neurobiology : Time and Plasticity
Time :
Plasticity :
Biology:
Analog Neuromorphic Hardware :
continuous time operation
physical model
relevant timescales range from ms to years
accelerated model compresses years to hours and hours to seconds
precisely controlled delays
programmable delay circuits needed → even more memory
grows from single precursor cell
programmable topology, large amounts of memory
genome codes for complex and diverse plasticity rules
flexible synaptic plasticity has to be integrated into synapse model area is limited → hybrid model necessary
Ruprecht-Karls-Universität Heidelberg
Johannes Schemmel
Kirchhoff Institute for Physics
18
Complexity of Synaptic Plasticity is Key to Biological Intelligence Protein complex organization in the postsynaptic density (PSD) “Organization and dynamics of PDZ-domainrelated supramodules in the postsynaptic density” W. Feng and M. Zhang, Nature Reviews NS, 10/2009
Protein-protein interaction map (…) of post-synaptic density “Towards a quantitative model of the post-synaptic proteome” O Sorokina et.al., Mol. BioSyst., 2011,7, 2813–2823 Ruprecht-Karls-Universität Heidelberg
Johannes Schemmel
Kirchhoff Institute for Physics
19
Start with Simple Model : Spike Time Dependent Plasticity presynaptic membrane potential postsynaptic membrane potential
Dt = tpost – tpre time Dt > 0 |Dt| < tcorrelated Dt < 0 synapse strength decreases synapse strength increases long term depression long term potentiation
Biological Evidence
extracellular stimulation intracellular stimulation long-term depression long-term potentiation
change in excitatory postsynaptic potential
Graphs taken from: Theoretical Neuroscience by P. Dayan and L. Abbott, 2001
Ruprecht-Karls-Universität Heidelberg
Johannes Schemmel
Kirchhoff Institute for Physics
20
An Example Using Spike-Time-Dependent-Plasticity
Spikey USB based neuromorphic system
T. Pfeil, A.-C. Scherzer, J. Schemmel and K. Meier, Neuromorphic Learning towards Nano Second Precision, Proceedings of the 2013 International Joint Conference on Neural Networks (IJCNN). Dallas, TX, USA: IEEE Press, 2013, pp. 869-873. Ruprecht-Karls-Universität Heidelberg
Johannes Schemmel
Kirchhoff Institute for Physics
21
Using Neuromorphic Hardware : From Networks to Experiments Mapping
PyNN script
(reordered connection matrix)
import pyNN.stage2 as pynn pynn.setup() neuronParams = { 'v_init' : -70.6, 'w_init' : 0.0, [...] } pool0 = pynn.create(pynn.EIF_[...]) pool1 = pynn.create(pynn.EIF_[...]) [...] pynn.connect(pool0, pool0, p=0.26, weight=0.5) pynn.connect(pool1, pool0, p=0.16, weight=0.5) [...] pynn.run() [...]
Configuration/Evaluation
Routing
(comparing connection matrix)
Ruprecht-Karls-Universität Heidelberg
Johannes Schemmel
Kirchhoff Institute for Physics
22
Hybrid Plasticity Problem : millions of parameters • network topology • neuron sizes and parameters • synaptic strengths Current status : everything is pre-computed on host-computer • requires precise calibration of hardware • takes long time (much longer than running the experiment on the accelerated system) Integrate flexible plasticity mechanisms : “Hybrid Plasticity” • no calibration of synapses necessary • plastic topology and delays • learning replaces calibration • combination of analog correlation measurement and digital Plasticity Processing Unit (PPU) Ruprecht-Karls-Universität Heidelberg
Johannes Schemmel
Kirchhoff Institute for Physics
23
Second Generation Neuromorphic ASIC : HICANN-DLS analog outputs
output amplifier RX data
synapse tl, tr, bl, br
SERDES channel 0
RX clk
SERDES channel 1
TX dat data
SERDES channel 2
TX clk
top ppu
L1 top
digital core logic
analog network core
SERDES channel 3
main PLL
extclk JTAG and reset
fast ADC
bottom ppu
vertical layer1 repeaters
L1 bot
L1 left
horizontal layer1 repeaters
L1 right
synthesized RTL mixed full custom
new component : digital plasticity processing units (ppu) Ruprecht-Karls-Universität Heidelberg
Johannes Schemmel
Kirchhoff Institute for Physics
24
2nd 65nm Hybrid Plasticity Prototype FPGA based controller board
plasticity processor
neuron circuits Ruprecht-Karls-Universität Heidelberg
Johannes Schemmel
synapse array Kirchhoff Institute for Physics
25
Plasticity : Hybrid Scheme Provides Flexibility SIMD Plasticity Processing Unit
ADC array parallel conversion of STDP readout
• analog correlation measurement in synapses • A/D conversion by parallel ADC • digital Plasticity Processing Units → full access to synapse weights → full access to configuration data Ruprecht-Karls-Universität Heidelberg
Johannes Schemmel
Kirchhoff Institute for Physics
26
Concept of Hybrid Plasticity Operation
Ruprecht-Karls-Universität Heidelberg
Johannes Schemmel
Kirchhoff Institute for Physics
27
Measurement Results for Multiplicative STDP Rule
′ 𝜔+
Δ𝑡 = 𝜔 + 𝑏+ 𝜔max − 𝜔 exp − 𝑐+
Ruprecht-Karls-Universität Heidelberg
Johannes Schemmel
𝜔′
−
∆𝑡 = 𝜔 − 𝑏− 𝜔 exp − 𝑐− Kirchhoff Institute for Physics
28
Measurements Demonstrating Possible STDP Rules Hebbian :
AntiHebbian :
• very early results using •
Asymmetric Sensitivity :
Bistable learning :
only variations of the STDP PPU code PPU also supports : • supervised plasticity • reinforcement learning • including neuron firing rates in plasticity rules • adding additional digital synaptic state variables • anything you can code …
Publication currently under review: S. Friedmann, J. Schemmel et.al.:
“Demonstrating Hybrid Learning in a Flexible Neuromorphic Hardware System” Ruprecht-Karls-Universität Heidelberg
Johannes Schemmel
Kirchhoff Institute for Physics
29
This endeavor would not have been possible without the tireless commitment of all the involved students and colleagues, which unfortunately are too many to name them all here individually.
Thank You!
The research leading to these results has received funding from the EU FP7 Framework Programme under grant agreement nos. 269921 (BrainScaleS), 243914 (Brain-i-Nets) and 604102 (HBP).