Digital electronic design of a neuromorphic architecture for multimodal associations
- Creators
- Novac, Pierre-Emmanuel
- Others:
- Laboratoire d'Electronique, Antennes et Télécommunications (LEAT) ; Université Nice Sophia Antipolis (1965 - 2019) (UNS) ; COMUE Université Côte d'Azur (2015-2019) (COMUE UCA)-COMUE Université Côte d'Azur (2015-2019) (COMUE UCA)-Centre National de la Recherche Scientifique (CNRS)-Université Côte d'Azur (UCA)
- Universite Nice Sophia-Antipolis, Polytech
Description
This report is about my internship at the LEAT laboratory, Sophia Antipolis, France. This is my final internshipas a part of my engineering degree in Computer Science, from March 4, 2019 to August 30, 2019. Artificial Neural Networks are becoming more and more popular to achieve all sort of tasks such as classification of data. Neuromorphic engineering is also becoming a hot topic in electronics and computer science as we try to get inspiration from the brain and implement its properties onto machines. The brain is known for being able to adapt to its environment, to learn by iself, to self-organize and to solve complex problems using a small amount of energy. The SOMA (Self-Orgnazing Machine Architecture) tries to implement them onto electronics hardware.The work done as part of the internship is focused on designing and developing an hardware architecture that will be deployed onto the FPGA (Fiel Programmable Gate Array, a reconfigurable electronic component) of a hardware platform in order to create SOM networks (Self-Organizing Map, a type of neural network). This architecture is based on a neural processing core called NPU (Neural Processing unit). It involves designing an instruction set architecture specially crafted for those models, design the NPU architecture in order to prepare the hardware implementation using VHDL (hardware description language). A simulator whose purpose is to observe the behaviour of the models, validate their distribution (as in distributed computing) and help deploy them onto hardware is also developed. It is optionally able to run the programs targetting the NPU architecture inside a virtual machine.This report describes on the one hand the hardware architecture design and the toolchain developped for it, and on the other hand the simulation of some models relevant to the project, after doing an analysis of the context and available tools.
Abstract (French)
Ce rapport expose mes travaux lors de mon stage au LEAT situé à Sophia Antipolis en France et au laboratoire de systèmes numériques de l'HES-SO situé à Genève en Suisse. Ce stage qui s'est déroulé 4 mars 2019 au 30 août 2019 conclut mes cinq années d'études à Polytech Nice Sophia pour l'obtention du diplôme d'ingénieur en informatique.Les réseaux de neurones artificiels sont des outils devenus très populaires pour réaliser de la classification par exemple parmi une multitude d'autres applications. Par ailleurs les approches neuromorphiques sont de plus en plus prises en considération et approfondies dans les domaines de l'électronique et de l'informatique pour essayer d'appliquer les propriétés intéressantes du cerveau sur des machines. En particulier, on a observé que le cerveau est capable de s'adapter à son environnement, d'apprendre en autonomie, de s'auto-organiser et de résoudre des problèmes complexes en utilisant un minimum d'énergie. Nous essayons donc d'implémenter ces propriétés en électronique au travers du projet SOMA (Self-Organizing Machine Architecture).Le travail effectué dans le cadre de ce stage se concentre sur la conception et le développement d'une architecture matérielle à déployer sur un FPGA (Field Programmable Gate Array, un composant électronique reconfigurable) d'une plateforme matérielle afin de modéliser des réseaux SOM (Self-Organizing Map, un type de réseau de neurones). Cette architecture est basée sur un coeur de processeur neuronal programmable appelé NPU (Neural Processing Unit). Il s'agit donc de préparer le terrain à l'implémentation en VHDL (langage de description de matériel) en concevant un jeu d'instructions adapté aux modèles ainsi que l'architecture du NPU. Cela inclut aussi le développement d'un simulateur pour observer le comportement des modèles et valider leur distribution (en calcul réparti) ainsi que faciliter leur déploiement sur le matériel. Ce simulateur pourra faire usage d'une machine virtuelle qui permet d'exécuter les programmes à déployer sur le NPU.Ce rapport présente donc d'une part la conception de l'architecture et une chaîne d'outils développées dans ce but et d'autre part la simulation de certains modèles pertinents dans le cadre du projet, après avoir analysé le contexte et l'existant pour orienter le travail.
Abstract
Encadré par Benoît Miramond de l'équipe MCSOC
Additional details
- URL
- https://hal.archives-ouvertes.fr/hal-02288753
- URN
- urn:oai:HAL:hal-02288753v1
- Origin repository
- UNICA