• Aucun résultat trouvé

N2S3, a Simulator for the Architecture Exploration of Neuromorphic Accelerators

N/A
N/A
Protected

Academic year: 2021

Partager "N2S3, a Simulator for the Architecture Exploration of Neuromorphic Accelerators"

Copied!
2
0
0

Texte intégral

(1)

HAL Id: hal-01240444

https://hal.archives-ouvertes.fr/hal-01240444

Submitted on 9 Dec 2015

HAL is a multi-disciplinary open access archive for the deposit and dissemination of sci- entific research documents, whether they are pub- lished or not. The documents may come from teaching and research institutions in France or abroad, or from public or private research centers.

L’archive ouverte pluridisciplinaire HAL, est destinée au dépôt et à la diffusion de documents scientifiques de niveau recherche, publiés ou non, émanant des établissements d’enseignement et de recherche français ou étrangers, des laboratoires publics ou privés.

Distributed under a Creative CommonsAttribution - NonCommercial - ShareAlike| 4.0 International License

N2S3, a Simulator for the Architecture Exploration of Neuromorphic Accelerators

Mahyar Shahsavari, Philippe Devienne, Pierre Boulet

To cite this version:

Mahyar Shahsavari, Philippe Devienne, Pierre Boulet. N2S3, a Simulator for the Architecture Ex- ploration of Neuromorphic Accelerators. NeuComp 2015, Mar 2015, Grenoble, France. 2015. �hal- 01240444�

(2)

N2S3, a Simulator for the Architecture Exploration of Neuromorphic Accelerators

Mahyar Shahsavari, Philippe Devienne, Pierre Boulet (Lille University)

Centre de Recherche en Informatique, Signal et Automatique de Lille (CRIStAL) Université de Lille 1, 

Cité Scientifique F­59655,

Villeneuve d’Ascq cedex, France  Phone: +33 (0)3 20 33 59 51

 Neuromorphic accelerator  

Simulator

Neural Network Scalable Spiking Simulator (N2S3) 

Parallel Computing/Big Data

Using Restricted Boltzmann Machine (RBM)

Reconfigurable/Flexible

Using Unsupervised Learning with STDP

Efficient in Speed/No Memory Bottleneck Using Arithmetic Unit (Neuron) besides

Memory (Synapse)

Low-Power

Using Event-driven Computing

Scalable

Using Memristor Nanodevice as a Synapse

NAU

Neuromorphic Accelerator Unit

Data training

STDP Simulator

RBM

Neuromorphic Accelerator Unit

Memristor As a Synapse

ANN

Model of Synapse

& Neuron

Spike coding &

decoding

 Model of Memristor as a Synapse

ID

VG

Spikes

Pentacene

Au Nanoparticles

p+ silicon

D S

G

Organic memristor fabricated at Lille University (F.Alibart et.al 2010)

TiO2

Spintronic

Organic (Polymeric)

Amorphous silicon (a-Si) Ferroelectric Memristor

Different Memristors:

a) the memristor structure, b) current versus voltage diagram, sinusoidal input with an

amplitude of 1.5v, different frequencies, RON=100Ω, ROFF=15kΩ, D=10nm, μv=10−10cm2s−1V −1. a :

b:

Centre de Recherche en Informatique, Signal et Automatique de Lille

Event-based Analytic Model Scalable

Extensible

Scala Language Using Address Event Representation (AER)

Using Scala programming language

Akka actor library for parallel processing and concurrency

A synapse/neuron is presented by an Actor

A spike is a message for the Actors

Flexibility of the synchronization

Neuron Model:

Leaky Integrate & fire

Synapse Model:

τneuron dv

dt +Gneuron(t)V =Iinput Gneuron(t)=Gleak+Gsyn(t)

Gsyn(t)=Gsyn(t0)exp−( tt0 τsyn )

c R R c

  LIF model for Neuron   

Pre-synaptic Neuron Post-synaptic Neuron

Synapse

override def processSpike(s: Spike) = s match {

case PreSynapticSpike(t, dest) =>

preSpikes += s

postSpikes retain (postS => t - postS.timestamp <= stdpWindow) postSpikes foreach { _ =>

decreaseWeight(t) }

fire(PostSynapticForwardSpike(t, post, g*v)) case PostSynapticBackwardSpike(t, _, _) =>

postSpikes += s

preSpikes retain (preS => t - preS.timestamp <= stdpWindow) preSpikes foreach { _ =>

increaseWeight(t) }

done()

case _ => super.processSpike(s) }

def increaseWeight(timestamp: Int) = {

var dg = alf_p * exp(-beta * ((g-g_min)/(g_max-g_min))) g = min(g_max,g+dg)

}

def decreaseWeight(timestamp: Int) = {

var dg = alf_m * exp(-beta * ((g_max-g)/(g_max-g_min))) g = max(g_min,g-dg)}

Références

Documents relatifs

Pour générer l’automate SYNC N , l’étape d’intersection partielle est basée sur l’algorithme itératif qui s’arrête lorsqu’aucune fenêtre d’intersection ne peut

Les généralistes enseignants : déclaration de conflits d’intérêts adaptée à leur pratique. ✓ document écrit actualisé pour les revenus financiers directs ou indirects

[r]

Théorème 1 : (cas hyperbolique) (1964).. locale, suite) Structure d’un flot en NON linéaire. Théorème 2 : (cas hyperbolique).. locale, suite) Structure d’un flot en

Théorème 1 : (cas hyperbolique) (1964).. locale, suite) Structure d’un flot en NON linéaire. Théorème 2 : (cas hyperbolique).. locale, suite) Structure d’un flot en

Le choix de Booking.com s'est finalement porté sur un site proche des gares mais pas dans Lille Centre (Tourcoing), ce qui était pourtant un critère de départ.. La zone

Il s'adresse donc à tous les chercheurs et formateurs, (quels que soient leur statut, leur lieu d'exercice, leur public, leurs disciplines d'origine) qui souhaitent approfondir

L’épreuve a été discriminante pour les candidats dont les trop faibles connaissances du système éducatif, souvent significatives d’une préparation insuffisante, l’attitude ou