Faculté informatique et communications IC, Section d'informatique, Institut des systèmes informatiques et multimédias ISIM (Groupe Sanchez GR-SAN)

Dynamically reconfigurable bio-inspired hardware

Upegui Posada, Andres Emilio ; Sanchez, Eduardo (Dir.)

Thèse sciences Ecole polytechnique fédérale de Lausanne EPFL : 2006 ; no 3632.

Add to personal list
    Summary
    During the last several years, reconfigurable computing devices have experienced an impressive development in their resource availability, speed, and configurability. Currently, commercial FPGAs offer the possibility of self-reconfiguring by partially modifying their configuration bitstream, providing high architectural flexibility, while guaranteeing high performance. These configurability features have received special interest from computer architects: one can find several reconfigurable coprocessor architectures for cryptographic algorithms, image processing, automotive applications, and different general purpose functions. On the other hand we have bio-inspired hardware, a large research field taking inspiration from living beings in order to design hardware systems, which includes diverse topics: evolvable hardware, neural hardware, cellular automata, and fuzzy hardware, among others. Living beings are well known for their high adaptability to environmental changes, featuring very flexible adaptations at several levels. Bio-inspired hardware systems require such flexibility to be provided by the hardware platform on which the system is implemented. In general, bio-inspired hardware has been implemented on both custom and commercial hardware platforms. These custom platforms are specifically designed for supporting bio-inspired hardware systems, typically featuring special cellular architectures and enhanced reconfigurability capabilities; an example is their partial and dynamic reconfigurability. These aspects are very well appreciated for providing the performance and the high architectural flexibility required by bio-inspired systems. However, the availability and the very high costs of such custom devices make them only accessible to a very few research groups. Even though some commercial FPGAs provide enhanced reconfigurability features such as partial and dynamic reconfiguration, their utilization is still in its early stages and they are not well supported by FPGA vendors, thus making their use difficult to include in existing bio-inspired systems. In this thesis, I present a set of architectures, techniques, and methodologies for benefiting from the configurability advantages of current commercial FPGAs in the design of bio-inspired hardware systems. Among the presented architectures there are neural networks, spiking neuron models, fuzzy systems, cellular automata and random boolean networks. For these architectures, I propose several adaptation techniques for parametric and topological adaptation, such as hebbian learning, evolutionary and co-evolutionary algorithms, and particle swarm optimization. Finally, as case study I consider the implementation of bio-inspired hardware systems in two platforms: YaMoR (Yet another Modular Robot) and ROPES (Reconfigurable Object for Pervasive Systems); the development of both platforms having been co-supervised in the framework of this thesis.
    Résumé
    Depuis quelques années, la quantité de ressources, la vitesse et les capacités de reconfiguration des dispositifs de calcul programmables ont augmenté de manière importante. Actuellement, certains FPGAs commerciaux offrent la possibilité de se reconfigurer en modifiant partiellement les données de leur configuration, ils fournissent ainsi une grande flexibilité architecturale tout en garantissant de bonnes performances. Ces caractéristiques de configurabilité ont attiré l'attention des concepteurs de matériel électronique: on peut trouver plusieurs architectures de coprocesseurs reconfigurables, certaines très spécifiques utilisées par exemple dans les applications cryptographiques, le traitement d'images ou dans le domaine automobile, mais aussi des architectures moins spécialisées pouvant être mises à profit dans de nombreuses applications générales. D'autre part, il existe ce qu'on appelle le hardware bio-inspiré, un large domaine de recherche incluant plusieurs sous-catégories: hardware évolutif, hardware neuronal, automates cellulaires, hardware à logique floue, entre autres. Les êtres vivants sont remarquables par leur capacité d'adaptation aux changements environnementaux et leur très haute flexibilité à plusieurs niveaux. Les systèmes matériels bio-inspirés ont besoin qu'une telle flexibilité soit fournie par la plateforme hardware sur laquelle ils sont implémentés. En général, les systèmes hardware bio-inspirés ont été implémentés sur des plateformes hardware commerciales ou faites sur mesure. Ces dernières ont été conçues pour supporter des systèmes hardware bio-inspirés en fournissant des capacités de reconfiguration augmentées et des architectures modulaires spécialisées. Ces aspects sont très appréciés pour fournir les performances et la flexibilité nécessaires aux systèmes bio-inspirés. Même si quelques FPGAs commerciaux offrent certaines possibilités de configurabilité évoluée comme la reconfiguration partielle et dynamique, leur utilisation n'est pas encore très bien prise en charge par les fabricants de FPGAs, ce qui les rend difficiles à utiliser pour l'implémentation des systèmes bio-inspirés existants. Dans cette thèse, j'expose un ensemble d'architectures, de techniques et de méthodologies permettant de bénéficier des avantages de configurabilité offerts par les FPGAs commerciaux actuels pour la conception de systèmes hardware bio-inspirés. Parmi ces architectures je présente des réseaux neuronaux, des modèles de neurones à impulsion, des systèmes flous, des automates cellulaires et des réseaux booléens aléatoires. Je propose aussi, dans le cadre de l'adaptation paramétrique et topologique de ces architectures, plusieurs techniques d'adaptabilité comme une forme d'apprentissage Hebbien, des algorithmes évolutifs et coévolutifs, ainsi que des algorithmes d'optimisation par essaim de particules. Finalement, comme exemples d'application, je présente quelques implémentations de ces techniques bio-inspirées sur deux plateformes dont le développement a été co-supervisé dans le cadre de cette thèse: YaMoR (Yet another Modular Robot) et ROPES (Reconfigurable Object for Pervasive Systems).