Générateur de coprocesseur pour le traitement de données en flux (vidéo ou similaire) sur FPGA.
Auteur / Autrice : | Gwenhael Goavec-Merou |
Direction : | Michel Lenczner, Raphaël Couturier |
Type : | Thèse de doctorat |
Discipline(s) : | Sciences pour l'ingénieur |
Date : | Soutenance le 26/11/2014 |
Etablissement(s) : | Besançon |
Ecole(s) doctorale(s) : | École doctorale Sciences pour l'ingénieur et microtechniques (Besançon ; 1991-....) |
Partenaire(s) de recherche : | Laboratoire : FEMTO-ST : Franche-Comté Electronique Mécanique Thermique et Optique - Sciences et Technologies (Besançon) - Franche-Comté Électronique Mécanique, Thermique et Optique - Sciences et Technologies |
Jury : | Président / Présidente : Michel Paindavoine |
Examinateurs / Examinatrices : Michel Lenczner, Raphaël Couturier, Michel Paindavoine, Guy Gogniat, Serge Weber, Nicolas Colombain, Claudio Calosso, Jean-Michel Friedt | |
Rapporteurs / Rapporteuses : Guy Gogniat, Serge Weber |
Mots clés
Mots clés contrôlés
Résumé
L’utilisation de matrice de portes logiques reconfigurables (FPGA) est une des seules solutionspour traiter des flux de plusieurs 100 MÉchantillons/seconde en temps-réel. Toutefois, ce typede composant présente une grande difficulté de mise en oeuvre : au delà d’un type langage spécifique,c’est tout un environnement matériel et une certaine expérience qui sont requis pourobtenir les traitements les plus efficaces. Afin de contourner cette difficulté, de nombreux travauxont été réalisés dans le but de proposer des solutions qui, partant d’un code écrit dans unlangage de haut-niveau, vont produire un code dans un langage dédié aux FPGAs. Nos travaux,suivant l’approche d’assemblage de blocs et en suivant la méthode du skeleton, ont visé à mettreen place un logiciel, nommé CoGen, permettant, à partir de codes déjà développés et validés,de construire des chaînes de traitements en tenant compte des caractéristiques du FPGA cible,du débit entrant et sortant de chaque bloc pour garantir l’obtention d’une solution la plus adaptéepossible aux besoins et contraintes. Les implémentations des blocs de traitements sont soitgénérés automatiquement soit manuellement. Les entrées-sorties de chaque bloc doivent respecterune norme pour être exploitable dans l’outil. Le développeur doit fournir une descriptionconcernant les ressources nécessaires et les limitations du débit de données pouvant être traitées.CoGen fournit à l’utilisateur moins expérimenté une méthode d’assemblage de ces blocsgarantissant le synchronisme et cohérence des flux de données ainsi que la capacité à synthétiserle code sur les ressources matérielles accessibles. Cette méthodologie de travail est appliquéeà des traitements sur des flux vidéos (seuillage, détection de contours et analyse des modespropres d’un diapason) et sur des flux radio-fréquences (interrogation d’un capteur sans-fils parméthode RADAR, réception d’un flux modulé en fréquence, et finalement implémentation deblocs de bases pour déporter le maximum de traitements en numérique).