2 research outputs found

    SNAVA鈥擜 real-time multi-FPGA multi-model spiking neural network simulation architecture

    Get PDF
    漏 . This manuscript version is made available under the CC-BY-NC-ND 4.0 license http://creativecommons.org/licenses/by-nc-nd/4.0/Spiking Neural Networks (SNN) for Versatile Applications (SNAVA) simulation platform is a scalable and programmable parallel architecture that supports real-time, large-scale, multi-model SNN computation. This parallel architecture is implemented in modern Field-Programmable Gate Arrays (FPGAs) devices to provide high performance execution and flexibility to support large-scale SNN models. Flexibility is defined in terms of programmability, which allows easy synapse and neuron implementation. This has been achieved by using a special-purpose Processing Elements (PEs) for computing SNNs, and analyzing and customizing the instruction set according to the processing needs to achieve maximum performance with minimum resources. The parallel architecture is interfaced with customized Graphical User Interfaces (GUIs) to configure the SNN's connectivity, to compile the neuron-synapse model and to monitor SNN's activity. Our contribution intends to provide a tool that allows to prototype SNNs faster than on CPU/GPU architectures but significantly cheaper than fabricating a customized neuromorphic chip. This could be potentially valuable to the computational neuroscience and neuromorphic engineering communities.Peer ReviewedPostprint (author's final draft

    Arquitectura escalable SIMD con conectividad jer谩rquica y reconfigurable para la emulaci贸n de SNN

    Get PDF
    A biological neural system consists of millions of highly integrated neurons with multiple dynamic functions operating in coordination with each other. Its structural organization is characterized by highly hierarchical assemblies. These assemblies are distinguished by locally dense and globally ispersed connections communicated by spikes traveling through the axon to the target neuron. In the last century, approaching the biological complexity of the cortex by means of hardware architectures has continued to be a challenge still unattainable. This is not only due to the massively parallel processing with support for the communication between neurons in large-scale networks, but also for the need of mechanisms that allow the evolution of the neural network efficiently. In this context, this thesis contributes to the development of an architecture called HEENS (Hardware Emulator of Evolved Neural System), which supports inter-chip connectivity with a ring topology between a Master Chip (MC) controlling one or more Neuromorphic Chips (NCs). The MC is implemented in a PSoC device that integrates a CPU ARM Dual Core together with programmable logic. The ARM is responsible for setting up the communication ring and executing the software application that controls the data configuration transmission from the algorithm and the neural parameters to all NCs in the network. Besides, the MC is in charge of activating the evolution mode of the network, as well as managing the dispatching of reconfiguration data to any of the nodes during the execution. Each NC, in turn, consists of a configurable 2D array of Processing Elements (PEs) with a SIMD-like processing scheme implemented on a Kintex7 FPGA. NCs are SNN multiprocessors that support the execution of any neural algorithm based on spikes. A set of custom instructions was designed specifically for this architecture. The NCs support a hierarchical scheme of local and global spikes to mimic the brain structural configuration. Local spikes establish inter-neuronal connectivity within a single chip and the global ones allow inter-modular communication between different chips. The NCs have fixed hub neurons that process local and global spikes, thus allowing inter-modular and intra-modular connectivity. This definition of local and global spikes allows the development of multi-level hierarchical architectures inspired by the brain topologies, and offers excellent scalability. The spike propagation through the multi-chip network is supported by an Aurora / AER-SRT protocol stack. The Aurora protocol encapsulates and de-capsulates the packets transmitted through a high-speed serial link that communicates the platform, while the Synchronous Address Event representation (AER-SRT) protocol manages the data (address events) and controls packets that allow synchronization of the operation of the neural network. Each event encapsulates the address neuron that fires a spike as result of the neural algorithm execution. The definition of local and global synaptic topology is implemented using on-chip RAM blocks, which reduces the combinational logic requirements and, in addition to allowing the dynamic connectivity configuration, permits the development of evolutionary applications by supporting the on-line reconfiguration of both the neural algorithm or the neural and synaptic parameters. HEENS also supports axon programmable delays, which incorporates dynamic features to the network.Un sistema neuronal biol贸gico consiste de millones de neuronas altamente integradas con m煤ltiples funciones din谩micas operando en coordinaci贸n entre s铆. Su organizaci贸n estructural se caracteriza por contener agrupaciones altamente jer谩rquicas. Dichas agrupaciones se distinguen por conexiones localmente densas y globalmente dispersas comunicadas a trav茅s de pulsos transitorios (spikes) que viajan por el ax贸n hasta la neurona destino. En el 煤ltimo siglo, aproximarse a la complejidad biol贸gica del cortex mediante arquitecturas de hardware contin煤a siendo un desaf铆o todav铆a inalcanzable. Esto se debe, no s贸lo al masivo procesamiento paralelo con soporte para la comunicaci贸n entre neuronas en redes de gran escala, sin贸 tambi茅n a la necesidad de mecanismos que permitan la evoluci贸n de la red neuronal de forma eficiente. En este marco, esta tesis contribuye al desarrollo de una arquitectura denominada HEENS (Emulador de Hardware para Sistemas Neuronales Evolutivos, Hardware Emulator of Evolved Neural System) que soporta conectividad inter-chip con una topolog铆a de anillo entre un chip que act煤a de master (MC) y uno o m谩s Chips Neurom贸rficos (NCs). El MC est谩 implementado en un dispositivo PSoC que integra un CPU ARM Dual Core junto con l贸gica programable. El ARM se encarga de configurar el anillo de comunicaci贸n y de ejecutar la aplicaci贸n de software que controla el env铆o de informaci贸n de configuraci贸n del algoritmo y los par谩metros neuronales a todos los NCs de la red. Adem谩s, el MC es el encargado de activar el modo de evoluci贸n de la red, as铆 como de gestionar el env铆o de datos de reconfiguraci贸n a cualquiera de los nodos durante la ejecuci贸n. Cada NC a su vez, est谩 compuesto por un arreglo 2D parametrizable de Elementos de Procesamiento (Processing Elements, PEs) con un esquema de procesamiento tipo SIMD implementado sobre una FPGA Kintex7. Los NCs son multiprocesadores SNN que soportan la ejecuci贸n de cualquier algoritmo neuronal basado en spikes. Se cuenta con un set de instrucciones personalizadas dise帽adas espec铆ficamente para esta arquitectura. Imitando la configuraci贸n estructural del cerebro los NC soportan un esquema jer谩rquico con spikes locales y globales. Los spikes locales establecen la conectividad inter-neuronal dentro de un mismo chip, y los globales la comunicaci贸n inter-modular entre diferentes chips. Los NC cuentan con neuronas fijas tipo hub que procesan spikes locales y globales que permiten la conectividad inter e intra modulos. La definici贸n de spikes locales y globales permite desarrollar arquitecturas jer谩rquicas multi-nivel que se inspiran en las topolog铆as del cerebro y ofrecen una escalabilidad excelente. La propagaci贸n de spikes a trav茅s de la red multi-chip es soportada por una pila de protocolos Aurora/AER-SRT. El protocolo Aurora encapsula y desencapsula los paquetes transmitidos a trav茅s del enlace serial de alta velocidad que comunica la plataforma. Mientras que el protocolo S铆ncrono de Representaci贸n de Eventos de Direcci贸n (AER-SRT) gestiona los datos (eventos de direcci贸n) y los paquetes de control que permiten sincronizar la operaci贸n de la red neuronal. Cada evento encapsula la direcci贸n de la neurona que genera un spike como resultado del procesamiento del algoritmo neuronal. La definici贸n de topolog铆a sin谩ptica local y global es implementada usando bloques de memoria RAM on-chip, lo que reduce los requerimientos de l贸gica combinacional y, adem谩s de facilitar la configuraci贸n del conexionado sin modificar el hardware, permite el desarrollo de aplicaciones evolutivas al soportar la reconfiguraci贸n on-line tanto del algoritmo neuronal como de los par谩metros neuronales y sin谩pticos. HEENS tambi茅n admite retardos programables de ax贸n, lo cual incorpora caracter铆sticas din谩micas a la red
    corecore