La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

CIRCUITS LOGIQUES PROGRAMMABLES

Présentations similaires


Présentation au sujet: "CIRCUITS LOGIQUES PROGRAMMABLES"— Transcription de la présentation:

1 CIRCUITS LOGIQUES PROGRAMMABLES
CPLD FPGA CIRCUITS LOGIQUES PROGRAMMABLES PAL EPLD FPGA 28/09/2000

2 Les familles de circuits logiques programmables
CPLD FPGA Les familles de circuits logiques programmables PLD Circuits logiques programmables PAL Bipolaires non effaçables EPLD Circuits logiques effaçables FPGA Réseaux de portes programmables De type RAM EPLD Complexes ou CPLD PAL CMOS et GAL UVPROM E²CMOS Isp PAL ICE GAL AMD VATTICE EP XXX MAX 5000 } ALTERA TPC TEXAS XC XILINX FLEX ALTERA FPGA A Anti-fusibles MACH 3 et 4 pLSI MAX 7000 MAX 9000 MAX ispLSI MACH 3 et 4 ALTERA VATTICE AMD 28/09/2000

3 CPLD FPGA Les PAL INVENTE IL Y A PLUS DE 20 ANS PAR LA SOCIETE MMI PIONNIERS DE LA TECHNOLOGIE DES MEMOIRE PROM IDEE : Utiliser la technologie des fusibles que l’on fait fondre de l’extérieur du composant pour réaliser des circuits logiques => pas de câblage fastidieux de circuits logiques sur circuits imprimés STRUCTURE INTERNE : Fusibles permettant de rompre le contact électrique et de générer une fonction logique 28/09/2000

4 EXEMPLE DE PROGRAMMATION :
CPLD FPGA EXEMPLE DE PROGRAMMATION : LA FONCTION OU EXCLUSIF : Suivant les fusibles « grillés » une fonction logique est définie sans câblage spécifique 28/09/2000

5 CPLD FPGA LA LOGIQUE : COMPOSANT PROGRAMMABLE POSSEDANT UNE STRUCTURE DE BASE PROGRAMMATEUR SPECIFIQUE (OU système à µP) GENERATION DE FONCTIONS LOGIQUES COMPLEXES BESOIN DEFINITION D’UNE STRUCTURE LOGIQUE SYSTEME ELECTRONIQUE (COMPLEXE) FONCTIONNEL EST UTILISEE POUR PERMETTRE DE GENERER DES SYSTEMES ELECTRONIQUES COMPLEXES 28/09/2000

6 Différentes structures possibles
CPLD FPGA Différentes structures possibles TROIS TYPES DE STRUCTURES ONT ETE ELABOREES AU SEIN DES PALS (et FPLA) 28/09/2000

7 ORGANISATION INTERNE :
CPLD FPGA L’aspect séquentiel CELLULE DE BASE : BASCULE D ORGANISATION INTERNE : REGISTRE 28/09/2000

8 CPLD FPGA Exemple Cet exemple permet de comprendre comment l’on peut réaliser un décodeur par programmation de fonctions logiques au sein d’un PAL DECODEUR BCD HEXADECIMAL POUR AFFICHEUR 7 SEGMENTS : 28/09/2000

9 La programmation CPLD FPGA 28/09/2000 PALASM VERION 1.5 PAL16L8 PAT07
HEX /RBI D0 D1 D2 D3 IC LT NC NC GND NC G /RB0 F E D C B A VCC IF (/IC)/A =/RB0*/D0/D2+RB0*/D0*D3+/RB0*D2+/RB0*D1*D2*/D3+/RB0*D0*D2*/D3+/RBO*/D1*/D2*D3+LT IF (/IC)/B =/RB0*/D2*/D3+/RB0*/D0*/D2+/RB0*/D0*/D1*/D3+/RB0*D0*D1*/D3+/RB0*D0*/D1*/D3+LT IF (/IC)/C =/RB0*D0*/D1+/RB0*D0*/D2+/RB0*/D1*/D2+/RB0*D2*D3+/RB0*/D2*D3+LT IF (/IC)/D =/RB0*/D1*D3+/RB0*/D0*/D2*/D3+/RB0*D0*D1*/D2+/RB0*/D0*D1*D2+/RBO*D0*/D1*D2+LT IF (/IC)/E =/RB0*/D0*/D2+/RB0*D2*D3+/RB0*/D0*D1+/RB0*D1*/D3+LT IF (/IC)/F =/RB0*/D0*/D1+/RB0*/D2*D3+/RB0*D1*D3+/RB0*/D0*/D2+/RB0*/D1*D2*/D3+LT IF (/IC)/RB0 =/D0*/D1*/D2*/D3*/RBI IF(/IC)/G = /RB0*D1*D2+RB0*D0*D3+/RB0*/D2*D3+/RB0*/D0*D1+/RB0*/D1*D2*/D3+LT DESCRIPTION 28/09/2000

10 Câblage effectué en grillant les fusibles par programmation
CPLD FPGA Résultat Câblage effectué en grillant les fusibles par programmation Sortie Décodée Entrée codée 28/09/2000

11 CPLD FPGA Exemple de paquetages LES PAL bipolaires : PAL, PAL bipolaires, PAL versatiles, VPAL AFFECTATION DES PINS : APPARENCE DES PAQUETAGES : 28/09/2000

12 CPLD FPGA Les GAL (~ PAL CMOS) DIFFERENCE AVEC LES PAL : PLUS GRANDE SOUPLESSE DE CONFIGURATION DES ENTREES SORTIES QUE LES PALS CONSOMMATION BEAUCOUP PLUS FAIBLE QUE LES PAL DE MEME COMPLEXITE EFFACABLES ELECTRIQUEMENT (permet des reprogrammations en phase de développement) LA STRUCTURE DE BASE EST UNE MACROCELLULE PLUS COMPLEXE EN FAIT CES COMPOSANTS PREFIGURENT LES CIRCUITS LOGIQUES PLUS EVOLUES UTILISES DE NOS JOURS POUR LA CONCEPTION D ’ASICS (circuits électroniques dédiés) 28/09/2000

13 Architecture des GAL CPLD FPGA ARCHITECTURE D ’UN GAL
MACROCELLULE DU GAL 28/09/2000

14 Configuration des Macro cellules
CPLD FPGA Configuration des Macro cellules 28/09/2000

15 Une Macro cellule Synchrone Multiplexée
CPLD FPGA Une Macro cellule Synchrone Multiplexée VERS UNE COMPLEXITE CROISSANTE DE LA MACROCELLULE Adjonction d ’un multiplexeur 4 vers 1 Adjonction d ’un multiplexeur 2 vers 1 VERS UNE POLYVALENCE CROISSANTE DES FONCTIONS LOGIQUES ELABOREES 28/09/2000

16 L ’interface homme-composant (le LOGICIEL)
CPLD FPGA L ’interface homme-composant (le LOGICIEL) PRINCIPE DE PROGRAMMATION D’UN GAL 28/09/2000

17 CPLD FPGA Les EPLD SIGNAUX GROUPES EN TROIS BLOCS DISTINCTS (entrées, entrées/sorties, macro cellules) POSSIBILITES D’INTERCONNECTIONS + NOMBREUSES BASCULES CONFIGURABLES LA STRUCTURE D’UN EPLD RESTE SIMILAIRE A UN GAL : 28/09/2000

18 CPLD FPGA La cellule de base 28/09/2000

19 CABLAGE DU RESEAU D’INTERCONNECTION ET DES MACROCELLULES D’UN EPLD
CPLD FPGA Les EPLD CABLAGE DU RESEAU D’INTERCONNECTION ET DES MACROCELLULES D’UN EPLD 28/09/2000

20 Les FPGA (ce qu’apporte la RAM)
CPLD FPGA Les FPGA (ce qu’apporte la RAM) 28/09/2000

21 Structure d ’un FLEX 10 K (altera)
CPLD FPGA Structure d ’un FLEX 10 K (altera) 28/09/2000

22 Structure d ’un FLEX 10 K (altera)
CPLD FPGA Structure d ’un FLEX 10 K (altera) ZOOMONS SUR UN BLOC LOGIQUE 28/09/2000

23 La Macro cellule d ’un FLEX 10 K
CPLD FPGA La Macro cellule d ’un FLEX 10 K ZOOMONS SUR UN ELEMENT LOGIQUE DE BASE 28/09/2000

24 Un exemple de carte de développement
CPLD FPGA Un exemple de carte de développement 28/09/2000

25 Quelques questions légitimes
CPLD FPGA Quelques questions légitimes QUEL EST L’INTERET DE CES COMPOSANTS PROGRAMMABLES EN ELECTRONIQUE ? QU ’APPORTENT-ILS DE PLUS QUE LES SYSTEMES DE PORTES LOGIQUES CÂBLES SUR CIRCUITS IMPRIMES? QU ’EST CE QUE LA SIMULATION LOGIQUE ET EN QUOI A-T-ELLLE UN RAPPORT AVEC CES COMPOSANTS? QU ’EST CE QUE LA SYNTHESE LOGIQUE ET EN QUOI CES COMPOSANTS NOUS PERMETTENT-ILS DE DEFINIR DE NOUVEAUX COMPOSANTS DEDIES? AVEZ-VOUS ENTENDU PARLER DE LANGUAGES DE MODELISATION (VHDL, VERILOG, TNSS) ? NOUS ALLONS ESSAYER DE REPONDRE A CES QUESTIONS AU TRAVERS D ’UN EXEMPLE CONCRET ET LIBERATEUR …… LA MACHINE A LAVER ! 28/09/2000

26 Un exemple concret CPLD FPGA
VOYONS COMMENT L’ ON PEUT DEFINIR UN PROGRAMMATEUR DE MACHINE A LAVER ET L’ INTEGRER DANS UN ASIC EN PASSANT PAR LA PROGRAMMATION DE FPGA DEFINISSONS TOUT D ’ABORD LA NOTION DE MACHINE A ETAT ET SON IMPLANTATION ELECTRONIQUE Machine à état d ’une machine à laver : Arrêt Lavage Rinçage Essorage Prélavage 28/09/2000

27 Le codage des états CPLD FPGA 28/09/2000 Prélavage : 10 minutes
Rinçage : 10 minutes Essorage : 5minutes Arrêt XYZ=000 Lavage XYZ=111 Rinçage XYZ=100 Essorage XYZ=101 Prélavage XYZ=110 C<10 C>=10 C<30 C>=30 C<5 C>=5 M M.P M : variable booléenne de Marche P: Variable booléenne indiquant si choix de prélavage C : Valeur en minute du chronomètre 28/09/2000

28 La machine à état synchrone
CPLD FPGA La machine à état synchrone P1,P2 : RESEAU COMBINATOIRES RE : REGISTRES ETAT FUTUR SORTIES P1 P2 RE HORLOGE MOORE MEALY ENTREES ETAT COURANT 28/09/2000

29 Mise en œuvre en électronique
CPLD FPGA Mise en œuvre en électronique Arrêt XYZ=000 Lavage XYZ=111 Rinçage XYZ=100 Essorage XYZ=101 Prélavage XYZ=110 C10 C30 C5 M M.P Codage « one hot » 28/09/2000

30 La définition des combinaisons logiques
CPLD FPGA La définition des combinaisons logiques DEFINITION DES TABLEAUX DE KARNAUGH SIMPLIFICATION DE L’EXPRESSION LOGIQUE DEFINITION DU CABLAGE DES PORTES LOGIQUES RECHERCHE D’UNE SOLUTION ADAPTEE EN ELECTRONIQUE AU COURS DE CETTE DEMARCHE NOUS VERRONS COMMENT L’ON PEUT UTILISER LES PAL, GAL, EPLD, ET FPGA POUR MODELISER CETTE MACHINE A ETAT 28/09/2000

31 Les parties combinatoires P1 et P2
CPLD FPGA Les parties combinatoires P1 et P2 28/09/2000

32 DEUX CHOIX S’IMPOSENT ALORS :
CPLD FPGA DEUX CHOIX S’IMPOSENT ALORS : REALISER UN CIRCUIT IMPRIME SUR LEQUEL SERAIENT CABLES DES CIRCUITS CONTENANT DES FONCTIONS ELEMENTAIRES 74LSXX (UN PEU DE SERIEUX) UTILISER DES RESSOURCES DE L’ELECTRONIQUE NUMERIQUE MODERNE POUR ABOUTIR A UN COMPOSANT DE PETITE TAILLE GERANT PARFAITEMENT LE CYCLE DE LAVAGE D’UNE MACHINE A LAVER PROGRAMMATION D’EPLD et d’FPGA SYNTHETISER COMMERCIALISER UN ASIC DEDIE A CETTE APPLICATION 28/09/2000

33 CPLD FPGA La « Programmation » 28/09/2000

34 PROGRAMMATION A L’AIDE DES FONCTIONS PREDEFINIES
CPLD FPGA UTILISATION D ’UN PAL : PAL + REGISTRE ENTREES SORTIES PROGRAMMATION A L’AIDE DES FONCTIONS PREDEFINIES SI UNE PHASE DE DEVELOPPEMENT EST NECESSAIRE POUR UN SYSTEME ELETRONIQUE PLUS COMPLEXE, LE GAL NE PEUT PAS ETRE REPROGRAMME : L ’ERREUR N ’EST PAS AUTORISEE 28/09/2000

35 PROGRAMMATION A L ’AIDE DES FONCTIONS PREDEFINIES
CPLD FPGA UTILISATION D ’UN GAL : GAL + REGISTRE ENTREES SORTIES PROGRAMMATION A L ’AIDE DES FONCTIONS PREDEFINIES SI UNE PHASE DE DEVELOPPEMENT EST NECESSAIRE POUR UN SYSTEME ELETRONIQUE PLUS COMPLEXE, LE GAL EST REPROGRAMMABLE ET PLUS INTERESSANT QU ’UN PAL 28/09/2000

36 Le VHDL (dédié aux FPGA)
CPLD FPGA Le VHDL (dédié aux FPGA) 28/09/2000

37 CPLD FPGA La simulation VHDL NOUS NOUS ARRETERONS A CE NIVEAU DE LA CONCEPTION D’UN ASIC UN VHDL SIMULABLE (AU NIVEAU RTL) PEUT DANS CERTAINES CONDITIONS ETRE IMPLANTE DANS UN FPGA POUR OBTENIR LA FONCTION VOULU DES OUTILS DE PROGRAMMATION DE HAUT NIVEAU PERMETTENT DE SIMULER AVANT D’IMPLANTER UN VHDL RTL DANS UN FPGA LE FPGA PERMET DE CONNAÎTRE LA COMPLEXITE DU COMPOSANT OBTENU APRES CODAGE VHDL (ou VERILOG) DES OUTILS D’OPTIMISATION ET DE SYNTHESE PERMETTENT ALORS D’OBTENIR UNE NETLIST CETTE NETLIST ENVOYEE CHEZ UN FONDEUR POURRA ETRE A L’ORIGINE D’UN ASIC (Microprocesseur, codeurs divers …) 28/09/2000

38 CPLD FPGA Conclusion REGARDEZ BIEN CET ECRAN C’EST UN FLOT DE CONCEPTION SIMILLAIRE QUI A PERMIS DE CRÉER TOUS LES COMPOSANTS (ou presque) QUI VOUS PERMETTENT DE SUIVRE CET EXPOSE. ET CECI GRACE A UNE MACHINE NUMERIQUE SI COMPLEXE QU’IL EST IMPOSSIBLE DE CONNAÎTRE SON NOMBRE D’ETAT POSSIBLE ET LE NOMBRE EXACTE DE TRANSISTORS QUI SE COMMUTTENT ACTUELLEMENT POUR VOUS AFFICHER DE BEAUX PIXELS. 28/09/2000

39 CPLD FPGA Bibliographie CIRCUITS LOGIQUES PROGRAMMABLES aux éditions DUNOD par CHRISTIAN TAVERNIER ELECTRONIQUE NUMERIQUE INTEGREE dominante COMELEC ENST TECHNOLOGIES ET PERFORMANCE DES SYSTEMES INTEGRES dominante COMELEC ENST VHDL INTRODUCTION A LA SYNTHESE LOGIQUE aux éditions EYROLLES par PHILIPPE LARCHER SYNTHESE, du VHDL au CIRCUIT option EST ENST 28/09/2000

40 CPLD FPGA QUESTIONS 28/09/2000


Télécharger ppt "CIRCUITS LOGIQUES PROGRAMMABLES"

Présentations similaires


Annonces Google