Cours informatique embarquées 2 - Chapitre 3. Les FPGA (PDF)

Summary

This document provides an overview of Field Programmable Gate Array (FPGA) technology, including its structure, components, and applications in modern electronics. It explains the core concepts and design principles in detail.

Full Transcript

Cours informatique embarquées 2 Dr. DAOUD.H Chapitre 3. Les FPGA (Field Programmable Gate Array) 1 - Technologie et densité Les systèmes électroniques modernes sont de plus en plus complexes, e...

Cours informatique embarquées 2 Dr. DAOUD.H Chapitre 3. Les FPGA (Field Programmable Gate Array) 1 - Technologie et densité Les systèmes électroniques modernes sont de plus en plus complexes, et les contraintes de taille, de puissance dissipée et de performances sont de plus en plus sévères (téléphonie mobile, ordinateurs, traitement du signal, de l'image, etc...). L’accroissement spectaculaire des densités est aussi devenu plus complexe et c’est pour cela il existe deux techniques des circuits imprimés :  Les techniques des circuits imprimés à trous traversants  Les techniques des circuits imprimés à montage en surface Les contraintes physiques, technologiques et commerciales imposent aujourd'hui la conception de systèmes de plus en plus : - compacts, - économes en énergie, - rapides à concevoir, - fiables et peu coûteux. La contrainte de « time to market » devient la plus importante et rend inefficace désormais les cycles classiques de développement / vérification / réalisation physique. => besoin d'une technologie fiable, abordable et souple... 1 Cours informatique embarquées 2 Dr. DAOUD.H Le choix d’un PLD dépendra dont : La densité d’intégration. De la rapidité de fonctionnement. De la facilité de mise en œuvre (programmation, reprogrammation…). De la possibilité de maintien de l’information. 1.1. Classification des composants logiques Les circuits Programmable : les fonctions simples Les circuits les microprocesseurs standards les mémoires les prédiffusés Les circuits Les circuits numérique spécifiques à des les circuits à la demande applications les précaractérisés PLD simple ( PAL,GAL, PLA) Les circuits CPLD (complexe programmables Programmable Logic Divice) FPGA PSoC 1.2. Les différentes techniques de réalisation d’une fonction logique S(A.B) + C 1.1.1 - La logique standard Utilisation de circuits TTL / CMOS... 2 Cours informatique embarquées 2 Dr. DAOUD.H 1.2.2 - La logique à mémoire : LUT à partir d’’une table de vérité 1.2.3. Les connexions programmables : Les circuits PAL Qu’est-ce qu’un composant logique reconfigurable ? Ensemble de portes logiques et fonctions de traitement du signal liées par des réseaux d’intercon- nexions configurables : - Somme de produits de termes (ET puis OU) - Mémoire de base (bascule , D, RS, T, JK) - RAM double d’accès ( on parle pas de méga on parle d’octet) - Multiplicateurs, additionneurs… 3 Cours informatique embarquées 2 Dr. DAOUD.H Configurable - Une seule fois : technologie anti-fusible (exemple pour spatiale afin de garantir la péren- nité du code) - Plusieurs fois : technologie Flash, EEPROM (non volatile) et SRAM (volatile) Structure de basse : Diagramme de logique fonctionnelle À quoi ça sert ?  Traitement numérique du signal (analyse Haute Fréquence, filtrage, détection …)  Logique de systèmes de communication et datacenter.  Instrumentation de test totalement reconfigurable (avec labview par exemple)  Imagerie médicale  Système de contrôle d’énergie grâce aux fonctionnalités DSP inclus dans les FPGA (exemples : onduleur, variateur…) Au remplacement d’ASIC (Full Custom) numériques dans certains cas  Petites et moyennes séries 4 Cours informatique embarquées 2 Dr. DAOUD.H  Fortes contraintes de Time To Market  Besoins en structures évolutives Glue  Interconnexion d’ASIC entre eux (exemple : carte vidéo) A la mise en point fonctionnelle d’ASIC (Full Custom)  Développement de cœur de processeur spécifique 2. Structure des FPGA Les FPGA à la différence des CPLD sont assimilables à des ASIC programmables par l’utilisateur. La puissance de ces circuits est telle qu’ils peuvent être composés de plusieurs milliers voire des millions de portes logiques et de bascules. Les dernières générations de FPGA intègrent même de la mémoire vive (RAM). Les deux plus grands constructeurs de FPGA sont XILINX et ALTERA. Ils sont composés de blocs logiques élémentaires (plusieurs milliers de portes) qui peuvent être interconnectés. Critère de choix : vitesse de fonctionnement plus élevées pour les CPLD. Figure 1 : Structure d’un circuit FPGA 5 Cours informatique embarquées 2 Dr. DAOUD.H La structure des LUT est caractérisée par une table de vérité ainsi qu’une mémoire pour router les différentes interconnexions entre les entrées et sorties des circuits FPGA. Dans la figure suivante nous allons voir deux types de circuit FPGA à deux dimensions et à mer de porte. Figure 2 : Architecture en 2 dimension et à Mer de porte Le FPGA est présenté pour la 1ère fois par XILINX avec des structures : blocs logiques configurables. blocs d’I/O configurables. des interconnexions entre bloc configurables. La figure 3, Nous montre un exemple d’un circuit FPGA créé par la société XILINX Figure 3 : circuit FPGA Xilinx virtex II 6 Cours informatique embarquées 2 Dr. DAOUD.H 2.1. Architecture des circuits FPGA Un FPGA est un réseau (matrice) de blocs combinatoires et séquentiels (CLB). Des blocs d’entrée/sortie (IOB) sont associés aux broches du circuit. Les CLB et IOB sont interconnectés entre eux par des dispositifs variés. Les matrices s’organisent de 8x8 à 128x120. Figure 4 : Architecture générale d’un FPGA  Les Interconnexions Il existe trois type d’interconnections entre les différents blocs des circuits FPGA o Interconnexion directe : entre les différents blocs logiques.  Interconnexions par le biais d’une matrice.  Interconnexion par les grandes lignes relient tous les CLB dans les extrémités des circuits FPGA. La figure 5 nous donne un récapitulatif des trois méthodes de connexion. Figure 5 : Les différentes méthodes d’interconnexions entres blocs logiques 7 Cours informatique embarquées 2 Dr. DAOUD.H  Structure des CLB (CONFIGURABLE LOGIC BLOCS) Une table de transcodage combinatoire (LUT) pouvant implanter : – Deux fonctions indépendantes à 4 variables. – Une fonction complète à 5 variables. – Une fonction incomplète à 6 variables. Elle permet aussi d’implanter, deux cellules séquentielles (bascules D) et des multiplexeurs de configuration. La figure 6, nous montre un exemple d’un CLB SPARTRAN avec ses différents composants. Figure 6 : Structure d’un CLB SPARTAN  Structure des IOB (INPUT/OUTPUT BLOCKS) Les Ports d’entrées/sortie des circuits FPGA sont totalement programmables, et : Le seuil d’entrée est soit TTL ou CMOS. Le slew-rate est programmable (La vitesse de balayage ou Slew rate représente la vitesse de variation maximale que peut reproduire un amplificateur). Le buffer de sortie est programmable en haute impédance Les entrées et sorties sont directes ou mémorisées L’inverseur est aussi programmable. La figure 7, nous montre un exemple des IOB SPARTRAN avec ses différents composants. 8 Cours informatique embarquées 2 Dr. DAOUD.H Figure 7 : Structure des IOB SPARTAN  Canaux de routage Les canaux de routage sont présentés soit sous formes de 8 pour les interconnexions en matrices soit sous forme de doublé pour les interconnexions directes soit sous forme de 3 pour les grandes lignes comme le montre la figure suivante Figure 8 : canaux de routage dans un FPGA 2.2. Les éléments des FPGA  L’horloge : Un élément essentiel pour le bon fonctionnement d’un système électronique. Les circuits FPGA sont prévus pour recevoir une ou plusieurs horloges. Des entrées peuvent être spécialement réservées à ce type de signaux. Ainsi que des ressources de routage spécialement adaptées au transport d’horloges sur de longues distances. L’horloge est un oscillateur à quartz : Placé dans un angle de la puce, il peut être activé lors de la phase de programmation pour réaliser un oscillateur. 9 Cours informatique embarquées 2 Dr. DAOUD.H Il utilise deux IOB voisins, pour réaliser l'oscillateur. Cet oscillateur ne peut être réalisé que dans un angle de la puce où se trouve l'amplificateur prévu à cet effet. Il est évident que si l'oscillateur n'est pas utilisé, les deux IOB sont utilisables au même titre que les autres IOB.  Les Critères De Choix :  Coût de développement et fabrication : C’est le coût des dépenses engagées pour concevoir le système et réaliser les outils nécessaires à sa fabrication et son test. Figure 9 : Coût de développement et fabrication des technologies  Temps de développement : Le temps de fabrication à l’aide d’un circuit FPGA se résume à sa programmation ce qui est négligeable. SPEC = Standard Performance Evaluation Corporation (licence ou cahier de charge des systèmes informatiques). Figure 10 : temps de développement de différentes technologies  Taille : Il y a une forte dépendance entre la taille du système et la densité d’intégration. L’augmentation de la densité d’intégration produit des systèmes de taille réduite. 10 Cours informatique embarquées 2 Dr. DAOUD.H Figure 11 : Taille des différentes technologies  Souplesse d’utilisation : Favorise les circuits programmables (SPLD, CPLD, FPGA) dont on peut modifier plus facilement des fichiers que des circuits.  Consommation : Critère particulièrement sensible dans les applications possédant une alimentation autonome. Il conduit à favoriser des solutions ASIC.  Vitesse de fonctionnement : Les CPLD sont des composants pour la plupart reprogrammables électriquement ou à fusibles, peu chers et très rapides (fréquence de fonctionnement élevée) mais avec une capacité fonctionnelle moindre que les FPGA.  Capacité mémoire: Les FPGA à SRAM contiennent des mémoires pour stocker leur configuration. La plupart des familles récentes offrent à l’utilisateur la possibilité d’utiliser certaines de ces mémoires en tant que telles. Des Kits pour apprendre Arduino MKR VIDOR 4000 : intel cyclone 10CL016+ SAMD21 (75 euros) 11 Cours informatique embarquées 2 Dr. DAOUD.H Digilent Zybo Z7 : Xilinx Zynq 7020 (185 euros) Trenz ZynqBerry : Zynq-7010 (138 euros) Bibliographies :https://electrosttissemsilt.files.wordpress.com/2017/04/technologie-etfabrication-des-circuits- intc3a9grc3a9s-partie-01.pdf : François Verdier, « Les circuits FPGA Concepts de base, architecture et applications », Université de Cergy-Pontoise Laboratoire ETIS - UMR CNRS 8051. :http://www.youscribe.com/catalogue/documents/ressourcesprofessionnelles/informatique /cours-sm10- 526067 : Fabrice CAIGNET, « Etude des circuits logiques programmables Les FPGA », LAAS – CNRS : http://hdl.telecom-paristech.fr/ 12 Cours informatique embarquées 2 Dr. DAOUD.H : https://fr.wikipedia.org/wiki/Langage_de_description_de_mat%C3%A9riel : Jacques Weber, Sébastien Moutault, Maurice Meaudre, “Le langage VHDL : du langage au circuit, du circuit au langage“, DUNOD, 2007. : le langage de description VHDL, T. BLOTIN Lycée Paul-Eluard 93206 SAINT-DENIS : Remacle Matthieu, Schmitz Thomas, Pierlot Vincent, « Le language VHDL », Microélectronique, 24 février 2016. : AMINE B. CHOUKRI ADEL C ; "Implémentation sur FPGA des méthodes MPP "P&O" et "floue optimisée par les Algorithmes Génétiques" ; école national polytechnique Alger ; Algérie juin 2006. 13

Use Quizgecko on...
Browser
Browser