SlideServe
Menu
Préférences
© SlideServe · v2026

Les FPGA « Field Programmable Gate Array »

edythe avatar
31 diapositives · 835 Views · Aug 23, 2014

Les FPGA « Field Programmable Gate Array ». - Circuit intégré contenant un très grand nombre de portes logiques organisées en blocs logiques configurables et interconnectables « Programmer » un fpga = Configurer et interconnecter des blocs logiques

Les FPGA « Field Programmable Gate Array » - slide 1
01 / 31Les FPGA « Field Programmable Gate Array »
1 / 17

Télécharger la présentation

Les FPGA « Field Programmable Gate Array »
Une image / un lien ci-dessous est fourni (tel quel) pour télécharger la présentation

Politique de téléchargement : le contenu du site vous est fourni TEL QUEL pour votre information et votre usage personnel ; il ne peut être vendu, concédé sous licence ni partagé sur d’autres sites sans l’accord de son auteur.Le contenu vous est fourni TEL QUEL, pour votre information et votre usage personnel uniquement. Téléchargez la présentation en cliquant sur ce lien. Lors du téléchargement, si vous ne parvenez pas à télécharger une présentation, l’éditeur a peut-être supprimé le fichier de son serveur.Pendant le téléchargement, si vous ne parvenez pas à obtenir une présentation, le fichier a peut-être été supprimé par l’éditeur.

F I N

Plus de contenu associé

Transcription de la présentation
  1. Les FPGA« Field Programmable Gate Array » - Circuit intégré contenant un très grand nombre de portes logiques organisées en blocs logiques configurables et interconnectables « Programmer » un fpga = Configurer et interconnecter des blocs logiques = « Câblage » sur silicium

  2. Architecture des FPGA • Blocs d ’entrées/sorties « IOB » configurables • Entrée, sortie ou les deux, mémorisation dans une bascule D • niveaux logiques LVTTL, LVCMOS, … 3.3V, 2.5V,… • pull-up ou pull-down interne sur les entrées • Blocs logiques « CLB » configurables • Blocs combinatoires 4 entrées une sortie (en général) • Bascules D pour la mémorisation • Lignes d ’interconnexions    « PSM » configurables • lignes courtes • lignes longues • Options : multiplicateurs , sram, etc…

  3. Description simplifiée d ’un FPGA Entrée/Sortie (IOB) Bloc logique (CLB) Zone d ’interconnexions

  4. Description simplifiée d ’un FPGASpartan III Buffers Gestion d ’horloge (DCM) Bloc logique (CLB) Ram Entrée/Sortie (IOB) Multiplieurs Zone d ’interconnexions

  5. spartan3 XC3S200 Blocs d ’interconnexions programmables(PSM)

  6. Multiplexeurs positionnés lors de la configuration Mémorisation de la sortie Mémorisation de l ’entrée spartan3 XC3S200 Bloc d ’entrée/sortie (IOB)

  7. Entrée « directe »

  8. Entrée mémorisée dans une bascule

  9. Sortie « directe »

  10. Sortie mémorisée dans une bascule

  11. Autorisation de la sortie Driver de sortie à 3 états Adaptation électrique des entrées par résistance Bloc d ’entrée/sortie (IOB)

  12. Bascule Mux 4 entrées LUT D Q Ck Positionné lors de la configuration SRAM de 16 bits (Look Up Table) CE Mémorisation du résultat Principe de fonctionnement d ’une cellule logique de base

  13. Bascule 4 entrées LUT D Q Ck Choix SRAM de 16 bits (Look Up Table) CE Principe de fonctionnement d ’une cellule logique de base Fonctionnement purement combinatoire

  14. Mémorisation du résultat Bascule 4 entrées LUT D Q Ck Choix SRAM de 16 bits (Look Up Table) CE Mémorisation du résultat Principe de fonctionnement d ’une cellule logique de base

  15. 0 1 0 Sortie 24 bits 4 entrées LUT 1 sortie 1 4 entrées SRAM 16*1 bits (Look Up Table) Look up table (LUT) - Les 4 entrées permettent d ’adresser 16 cellules mémoires de 1 bit chacune (24) - Le contenu de la table permet d ’obtenir n ’importe quelle fonction logique de 4 entrées binaires.

  16. spartan3 XC3S200 Bloc logique configurable (CLB)

  17. Horloges • Des entrées spécialisées sont prévues pour recevoir les signaux • d'horloge et les distribuer à l'intérieur du circuit • les DCM (Digital Clock Managers) sont des blocs internes pour la gestion • du signal d'horloge: • Ils génèrent d'autres fréquences d'horloge et des déphasages à partir du • signal d ’horloge externe, en éliminant le « jitter » • Les DCM sont basés sur des PLL (phase-locked loops)

  18. 4 blocs de gestion d ’horloge (DCM Spartan 3) f f avec déphasage 2.f f /(1,5 2 2,5...16) ( 2…32)/(1..32) . f

  19. Le transfert est rythmé par une Horloge Programmation des FPGA Xilinx • La chaîne de bits de configuration est envoyée en série dans la • mémoire vive interne de configuration par : • Connexion JTAG (Joint Test Action Group) • Mémoire externe flash à accès série

  20. Outils logiciels génériques • Synario, Synopsis, Mentor, ViewLogic, ASYL, CADENCE,,… Avantages: – un seul apprentissage pour tous les composants – permet une conception détachée du composant cible… Inconvénients : – toujours un peu en retard sur les derniers composants sortis – plus chers – Le P/R constructeur est nécessaire

  21. Outils logiciels spécifiques • Ne permettent que le développement des composants du constructeurs • Ex : Actel Logiciel Designer, Altera Max.PlusII, AMD Mach XL, Lattice IspDesignEXPERT, Xilinx ISE… • Avantages : – ils optimisent au mieux la synthèse pour le composant ciblé – toujours à jour sur le dernier composant • Inconvénients : – ils nécessitent un apprentissage à refaire si on souhaite changer de constructeur

  22. Projet FPGA Conception « Top-Down » • • Décomposer le circuit principal en blocs fonctionnels simples interconnectés. • Un bloc fonctionnel complexe peut, à son tour, être décomposé en éléments plus simples…etc... • Réalisation « Bottom-up » • Mettre au point chacun des blocs fonctionnels séparément • Regrouper les blocs et tester le fonctionnement global

  23. Les interfaces de saisie • • Schéma électronique: • On place et on relie des composants • Le fichier HDL est créé automatiquement • Saisie en mode texte en VHDL ( Verilog, Abel…) • Description structurelle • Description comportementale • Génération du composant pour la saisie schématique • Autre : Saisie graphique de diagramme d ’états

  24. La synthèse logique • • Traduit en «blocs logiques élémentaires interconnectés » • les fichiers du projet. • L ’utilisateur peut agir sur la façon dont la synthèse s ’effectue. • Par exemple : • Codage « one-hot » ou binaire pour les machines séquentielles • ... • Le résultat de la synthèse peut être affiché sous forme : • - classique ne tenant pas compte de l ’architecture du FPGA • - ou de schémas adapté à l ’architecture du FPGA

  25. La simulation fonctionnelle • • Simule le fonctionnement du circuit avant son implantation • Utile pour détecter des erreurs de conception • Ne tient pas compte des contraintes et aléa de fonctionnement liées au composant ciblé: • fréquences maximales d ’horloge • possibilités de routage • ressources insuffisantes • temps de transfert réel dans les circuits logiques • …etc...

  26. Le placement - routage • • Implante le circuit dans le composant cible • Affecte les pattes d ’entrées/sorties • Mode d ’optimisation (en surface ou en vitesse) • Génère le fichier de configuration à télécharger dans la cible • Produit un rapport avec les ressources utilisées et les temps de propagation de broche à broche.

  27. La simulation « post-routage » • • La simulation tient compte de l ’implantation dans le composant. • Elle permet de vérifier si le circuit répond au cahier des charges

  28. Chargement dans la cible • • Directement par l ’interface JTAG dans la mémoire SRAM de configuration • Indirectement : • Le fichier est tout d ’abord stocké dans une mémoire flash à accès série externe (ou interne). • A la mise sous tension du FPGA il y a recopie de la mémoire flash vers la SRAM de configuration

  29. Tests sur la cible • • On effectue des tests avec des signaux réels sur la cible pour valider le circuit créé. • L ’interface JTAG est utile pour sonder l ’état logique des broches du circuit en fonctionnement

  30. Les TP sur FPGA Spartan3 xc3s200 • Prise en main de outils Xilinx : • en VHDL (TP1) • en mode schéma (TP2) • Utilisation de « cœurs configurables » (core IP) • et des bibliothèques de symboles (TP3) • Mise en évidence des performances d ’une architecture distribuée (parallèle) avec la réalisation d ’un filtre passe-bande numérique (TP4) • Mise en place d’un cœur microprocesseur (TP5)

  31. Les documents utiles • Description de la carte de développement UG130.pdf • Manuel de référence VHDL (synopsys) VHDLman.pdf • Tutorial rapide (Xilinx) qst.pdf • Tutorial complet (Xilinx) ise8.2tut.pdf • Datasheet du spartan3 (Xilinx) ds099.pdf • Documentation des librairies (Xilinx) s3esc.pdf et s3ehl.pdf