Vous êtes sur la page 1sur 84

Les circuits logiques programmables - FPGA

Etude Etude des des circuits circuits logiques logiques programmables programmables Les Les FPGA FPGA

Fabrice CAIGNET LAAS - CNRS fcaignet@laas.fr

Les circuits logiques programmables - FPGA

Contenu Contenu:: I. Les Rseaux Logiques Programmables : PLD II. Les technologies des lments programmables III. Les FPGAs IV. Les outils de dveloppement V. Les tendances des composants programmables VI. Le langage VHDL

Les circuits logiques programmables - FPGA

I. I.Les LesRseaux RseauxLogiques LogiquesProgrammables Programmables::PLD PLD


PLD = Programmable Logic Devices Circuits logiques + ou - complexes remplaant lassociation de plusieurs botes logiques Simplification de cblage Encombrement rduit Diminution des cots Facilit dutilisation Diminution du risque des pannes

entres

PLD Association de fct Logiques

Sorties

1 seul circuit intgr

Les circuits logiques programmables - FPGA

I. I.Les LesRseaux RseauxLogiques LogiquesProgrammables Programmables::PLD PLD


Importance du Time To Market Le cahier des charges du dveloppement dun systme doit prendre en compte les paramtres suivants : Le cot de production Les performances La consommation L'intgration L'volution du produit La maintenance La protection industrielle Deux alternatives existent : Les ASIC (Application Specific integrated Circuits) Les Circuits rseaux programmables
temps Nb de ventes
Entreprise 1

Entreprise 2

Les circuits logiques programmables - FPGA

I. I.Les LesRseaux RseauxLogiques LogiquesProgrammables Programmables::PLD PLD


Quelles diffrences entre un ASIC et un PLD ASIC
Application Specific Integrated Circuits

PLD
Programmable Logic Device

Choix du fondeur Conception du circuit (full-custom - bibliothques) Trs grand niveau dintgration Fabrication trs grand nombre dexemplaire Un circuit ddi une application Choix de la technologie Maximum de performances

Choix du circuit Programmation du circuit (logiciel + interface circuit) Intgration limite Implmentation nombre dexemplaires limit Un circuit programm pour une application Technologie fige mais : Facilit de programmation

Les circuits logiques programmables - FPGA

I. I.Les LesRseaux RseauxLogiques LogiquesProgrammables Programmables::PLD PLD

Les circuits logiques programmables - FPGA

I. I.Les LesRseaux RseauxLogiques LogiquesProgrammables Programmables::PLD PLD


Avantages des PLD
Le cot et temps de dveloppement. Le prototypage et temps de simulation acclr. La prise de risque est rduite. (modifications possibles, risque d'inventaire) Des supports logiciels peu chers. Des produits prouvs. (pas de vecteurs de test structurel)

Inconvnients
Un niveau d'intgration moindre aux ASIC. Une consommation plus leve. Des prix importants et une faible disponibilit pour de grandes sries . Symbolisation Normalise

Les circuits logiques programmables - FPGA

I. I.Les LesRseaux RseauxLogiques LogiquesProgrammables Programmables::PLD PLD


Quatre Familles de PLD botes logiques

PLD
PAL GAL EPLD FPGA

Les circuits logiques programmables - FPGA

I. I.Les LesRseaux RseauxLogiques LogiquesProgrammables Programmables::PLD PLD


PAL (Programmable Array Logic) : rseaux logiques programmables Dvelopps au dbut des annes 70 par MMI (ex-AMD) La programmation se fait par destruction de fusibles Aucun fusible nest grill lachat de la PAL

Fusibles Fusibles Les fonctions ET sont programmables

Les circuits logiques programmables - FPGA

I. I.Les LesRseaux RseauxLogiques LogiquesProgrammables Programmables::PLD PLD


PAL (Programmable Array Logic) : rseaux logiques programmables Reprsentation :
- les fusibles intactes sont reprsents par une connexion - les fusibles dtruits sont reprsents par une absence de connexion

Fusible Fusibleintact intact

Fusible Fusible dtruit dtruit Exemple dun OU EXCLUSIF

Les circuits logiques programmables - FPGA

I. I.Les LesRseaux RseauxLogiques LogiquesProgrammables Programmables::PLD PLD


PAL (Programmable Array Logic) : rseaux logiques programmables Que peut-on trouver dans une PAL?? Tout P.A.L. est constitu :
- D'entres (Input): I1 In avec 8<n<20. - De sorties (Output) Ou dentres / sorties (I/O) de type Totem Ple ou Trois Etats :O1 On ou IO1 IOn (2<n<15).

On trouve aussi :
- Une entre d'horloge (Clock): Clk ou Clock. - Une entre de validation des sorties trois tats: OE (Output Enable) ou Enable. - Une entre de remise zro des registres: RESET.

Les circuits logiques programmables - FPGA

I. I.Les LesRseaux RseauxLogiques LogiquesProgrammables Programmables::PLD PLD


PAL : Matrice de programmation La plupart des P.A.L. sont constitus :
- Un ensemble de portes ET sur lesquelles viennent se connecter les variables dentre et leurs complments. - Un ensemble de portes OU sur lesquelles les sorties des oprateurs ET sont connectes les variables dentre.

Matrice Matricede de programmation programmation

Les circuits logiques programmables - FPGA

I. I.Les LesRseaux RseauxLogiques LogiquesProgrammables Programmables::PLD PLD


PAL : Structure de sortie Il existe 3 structures de sortie qui peuvent-tre aussi de entres/sorties : - Combinatoire - Squentielle - versatiles Entres / Sorties combinatoires Sortie 3 tats rebouche vers la matrice une sortie peut servir de variable intermdiaire une sortie peut servir dentre (en mode haute impdance)

Les circuits logiques programmables - FPGA

I. I.Les LesRseaux RseauxLogiques LogiquesProgrammables Programmables::PLD PLD


PAL : Structure de sortie Entres / Sorties squentielles, registre Une bascule D permet la logique squentielle sorties squences sur une horloge H une sortie ne peut pas servir dentre une commande OE (Ouput Enable) permet de dsactiver la sortie OE

Sortie REGISTRE

Les circuits logiques programmables - FPGA

I. I.Les LesRseaux RseauxLogiques LogiquesProgrammables Programmables::PLD PLD


PAL (Programmable Array Logic) : Structure de sortie Entres / Sorties versatiles (VPAL) On peut configurer par programmation le mode dutilisation de la broche de sortie

Entre / Sortie VERSATILE

Les circuits logiques programmables - FPGA

I. I.Les LesRseaux RseauxLogiques LogiquesProgrammables Programmables::PLD PLD


PAL (Programmable Array Logic) : Exemple de PAL22V10 (AMD)

Les circuits logiques programmables - FPGA

I. I.Les LesRseaux RseauxLogiques LogiquesProgrammables Programmables::PLD PLD


GAL (Gnric Array Logic), LATICE Semiconductor

Rseau Logique

Reprogrammable

n u t s e L e l A b G faa n t f U n e e L uem A P triq c e l

Les circuits logiques programmables - FPGA

I. I.Les LesRseaux RseauxLogiques LogiquesProgrammables Programmables::PLD PLD

Erasable Programmable Logic Device

Circuit Logique reprogrammable de grande capacit

Les circuits logiques programmables - FPGA

I. I.Les LesRseaux RseauxLogiques LogiquesProgrammables Programmables::PLD PLD

Forecasting Programmable Gate Array


La densit croissante des circuits programmables actuels, notamment des FPGA (Field Programmable Gate Array), permet le prototypage rapide des circuits numriques grande complexit. Aussi, il est possible de tester rapidement la validit de concepts architecturaux nouveaux: l'implmentation complte d'un processeur sur des circuits FPGA est aujourd'hui notre porte, entranant ainsi plus de possibilits d'valuation que celles offertes par des simulateurs logiciels. De plus, la reprogrammabilit de certains circuits FPGA a ouvert de nouvelles voies de recherche: des mthodologies de conception des systmes reconfigurables, capables d'voluer ou de s'adapter des environnements ou des contraintes variables.

Rseau de portes programmables la demande

Les circuits logiques programmables - FPGA

I. I.Les LesRseaux RseauxLogiques LogiquesProgrammables Programmables::PLD PLD


Rsum graphique des familles de P.L.D.
PLD Circuits Logiques Programmables

PAL et FPLS PAL fusibles bipolaires PAL CMOS effaables lectriquement GAL effaables lectriquement PAL effaables aux UV GPLD - EPLD LCA FPGA

Les circuits logiques programmables - FPGA

I. I.Les LesRseaux RseauxLogiques LogiquesProgrammables Programmables::PLD PLD


Les principaux critres de choix des P.L.D. sont: - Vitesse de fonctionnement - Nombre de portes - Consommation - Technologie - Prix

Les circuits logiques programmables - FPGA

II. II.Les Lestechnologies technologiesdes deslments lmentsprogrammables programmables


Gnralit sur les technologies des lments programmables
On trouve les lments programmables dans les blocs logiques des PLDs, afin de leur donner une fonctionnalit, mais aussi dans les matrices d'interconnexions entre ces blocs. Un lment programmable peut tre considr comme un interrupteur. Afin de respecter les contraintes imposes l'ingnieur, les lments programmables doivent possder plusieurs qualits : - Ils doivent occuper une surface la plus petite possible (Ce point s'explique pour des raisons videntes de cot. Ceci est d'autant plus vrai que l'on dsire en disposer d'un grand nombre). - Ils doivent possder une rsistance de passage faible et une rsistance de coupure trs leve. - Ils doivent apporter un minimum de capacit parasite. Les deux derniers points s'expliquent quant eux pour des raisons de performance en terme de frquence de fonctionnement du PLD. Plus la rsistance et la capacit sur le chemin d'un signal sont faibles, plus la frquence de ce signal peut tre leve (RC effet).

Les circuits logiques programmables - FPGA

II. II.Les Lestechnologies technologiesdes deslments lmentsprogrammables programmables


Les technologies fusibles Les fusibles sont grills en appliquant des tensions leves (12V)

Technologie fusible-diode

Technologie fusible-transistor

Technologies Technologiesmaintenant maintenantabandonnes abandonnespour pourdes desraisons raisonsde demanque manquede defiabilit. fiabilit. Le fait de "griller" les fusibles provoque des perturbations qui peuvent affecter Le fait de "griller" les fusibles provoque des perturbations qui peuvent affecterle lereste restedu ducircuit. circuit. De plus, cette programmation est irrversible et ne permet donc pas la re-programmabilit. De plus, cette programmation est irrversible et ne permet donc pas la re-programmabilit.

Les circuits logiques programmables - FPGA

II. II.Les Lestechnologies technologiesdes deslments lmentsprogrammables programmables


Les technologies anti-fusibles (Actel, QuickLogic, Crosspointet Xilinx)
un anti-fusible est un lment programmable qui l'inverse des fusibles n'est passant qu'aprs programmation. La connexion s effectue en dtruisant un dilectrique

Technologie anti-fusible PLICE

Technologie anti-fusible VIA-Link

Petite Petitetaille taille(grande (grandecapacit capacitdintgration) dintgration) Base Baseimpdance impdance(rapidit) (rapidit)

Technologie Technologiedifficile difficilematriser matriser ne nepermettent permettentpas pasla lareprogrammation reprogrammation

Les circuits logiques programmables - FPGA

II. II.Les Lestechnologies technologiesdes deslments lmentsprogrammables programmables


Les technologies EPROM/FLASH (Actel, AMD...)
Il existe deux variantes de l'EPROM, - Erasable Programmable Read Only Memory classique (EPROM) - Electrically Erasable Programmable Read Only Memory (EEPROM).

Cellule grille flottante dune EPROM Petite Petitetaille taille(grande (grandecapacit capacitdintgration) dintgration) Base Baseimpdance impdance(rapidit) (rapidit)

Systme dinterconnexion Possibilit Possibilitde dereprogrammation reprogrammationloisir loisir

Les circuits logiques programmables - FPGA

II. II.Les Lestechnologies technologiesdes deslments lmentsprogrammables programmables


Les technologies EPROM/FLASH (Actel, AMD...)
Le systme Grille flottante :

Charge de la grille

VT1

VT0

Non programm

Programm

Etat n'existepas pasde decharge chargedans dansla lagrille grilleflottante flottanteet etle le Etatnon nonprogramm programm: :ililn'existe transistor peut tre utilis normalement. transistor peut tre utilis normalement. En Encours coursde deprogrammation programmation(effet (effettunel, tunel,passage passaged'un d'unfort fortcourant courantentre entrela la source et le drain), une partie de la charge est retenue dans la grille flottante. Le source et le drain), une partie de la charge est retenue dans la grille flottante. Le seuil seuildu dutransistor transistoraugmente, augmente, Le Letransistor transistorest estbloqu bloqujusqu' jusqu'ce cequ'il qu'ilsoit soit"effac". "effac".

Les circuits logiques programmables - FPGA

II. II.Les Lestechnologies technologiesdes deslments lmentsprogrammables programmables


Les technologies RAM statique -SRAM (XILINX, ALTERA...)
Elle fait appel une phase de chargement de la configuration depuis l'extrieur
Commande Commande

Structure + complexe (4 6 Transistors)


Transistor de passage Portes de passage Portes de passage

Grande Grandepossibilit possibilitde deprogrammation programmation Technologie Technologiede detype typeCMOS CMOS(trs (trsbien bien matrise) matrise)

Place Placeimportante importante Mmoire Mmoirevolatile volatile(reprogrammation (reprogrammation obligatoire) obligatoire)

Les circuits logiques programmables - FPGA

II. II.Les Lestechnologies technologiesdes deslments lmentsprogrammables programmables


Les technologies RAM statique -SRAM (XILINX, ALTERA...)
Exemples de structure SRAM implantes

Les circuits logiques programmables - FPGA

II. II.Les Lestechnologies technologiesdes deslments lmentsprogrammables programmables


Rcapitulatif :

La technologie EEPROM

Les PLD EPROM se programment lectriquement et seffacent aux UV, Par contre Les PLD EEPROM se programment quasi instantanment, et gardent la configuration jusqu une nouvelle programmation (mme en labsence de tension)
La technologie EEPROM

Facile et rapide programmer, la configuration disparat sans alimentation.

Les circuits logiques programmables - FPGA

II. II.Les Lestechnologies technologiesdes deslments lmentsprogrammables programmables


Technologies utilises par les diffrents fabricants

Les circuits logiques programmables - FPGA

III. III.Les LesFPGA FPGA


Rappel des caractristiques principales
Comme nous venons de le voir, les lments programmable sont la base des caractristiques des FPGA Le choix dun PLD dpendra dont : La densit dintgration De la rapidit de fonctionnement (paramtre directement li limpdance intrinsque des lments programmables De la facilit de mise en uvre (programmation, reprogrammation) de la possibilit de maintien de linformation

Les circuits logiques programmables - FPGA

III. III.Les LesFPGA FPGA


Rappel des caractristiques principales
Les structures PAL sont la base des CPLD, FPGA daujourdhui

Zone de programmation

OMLC Output Logic MacroCell (Combinatoires Squentielles Versatiles

Les circuits logiques programmables - FPGA

III. III.Les LesFPGA FPGA


Les CPLD (Complexe Programmable Logic Device) :
Ces circuits ont une capacit de portes et de configuration trs largement suprieur aux PAL
Macro-cellules composes de : - une zone de portes logiques - un bascule

Bloc Logiques Zone d interconnexion Bloc Logiques Bloc Logiques

Architecture Architectureidentique identiqueaux auxPAL PAL quivalent quivalentplusieurs plusieursPAL PALspares sparespar par une unezone zonedinterconnexion dinterconnexion

100 100100000portes 100000portes 16 161000 1000bascules bascules

Les circuits logiques programmables - FPGA

III. III.Les LesFPGA FPGA


Les FPGA (Fields Programmable Gate Array) : Rseau de portes programmables la demande - XILINX et ALTERA.
les FPGA la diffrence des CPLD sont assimilables des A.S.I.C. programmables par lutilisateur. La puissance de ces circuits est telle quils peuvent tre composs de plusieurs milliers voir millions de portes logiques et de bascules. Les dernires gnrations de FPGA intgrent mme de la mmoire vive (RAM). Les deux plus grands constructeurs de FPGA sont XILINX et ALTERA. Ils sont composs de blocs logiques lmentaires (plusieurs milliers de portes) qui peuvent tre interconnects. Critre de choix : vitesse de fonctionnement plus leves pour les CPLD

Les circuits logiques programmables - FPGA

III. III.Les LesFPGA FPGA


Structure interne dun FPGA type XILINX

le leFPGA FPGAest estprsent prsentpour pourla la1er 1erfois foispar par XILINX XILINX avec avecdes desstructure structure: : blocs blocslogiques logiquesconfigurables configurables blocs blocsdI/O dI/Oconfigurables configurables des desinterconnexions interconnexionsentre entrebloc bloc configurables configurables

Les circuits logiques programmables - FPGA

III. III.Les LesFPGA FPGA


Structure interne des FPGA

Exemple Exemplede destructures structuresde deFPGA FPGA

Les circuits logiques programmables - FPGA

III. III.Les LesFPGA FPGA


Structure interne des FPGA

FPGA Raw-based

FPGA Sea of gates

Les circuits logiques programmables - FPGA

III. III.Les LesFPGA FPGA


Les interconnexions programmables dans les FPGA

Dans Dansles lesFPGA FPGAles lesblocs blocssont sont interconnects interconnectsde dediffrentes diffrentes faons faons: : des desoptimisations optimisationsde deroutage routage sont sontpossibles possibles slections slectionsde delignes lignesou ou colonnes colonnes canaux canauxde deroutage routagerapide rapide (longues (longuesdistances) distances)

Les circuits logiques programmables - FPGA

III. III.Les LesFPGA FPGA


Les interconnexions programmables dans les FPGA
Afin Afinde dediminuer diminuerle lenombre nombrede decanaux canauxde deroutage, routage,ils ilssont sontsegments segmentsou oupeuvent peuvent l'tre l'trepar parprogrammation. programmation.Cette Cettedernire derniremthode mthodeest estutilise utilisedans dansle lecas casd'une d'une technologie technologiede deprogrammation programmationpar paranti-fusibles anti-fusiblescar carles leslments lmentsprogrammables programmablessont sont de depetite petitetaille. taille. On Onnotera noterales lescompromis compromisqu'il qu'ilexiste existeentre entrenombre nombrede decanaux canauxde deroutage, routage,nombre nombre d'lments d'lmentsde deprogrammation programmationet ettemps tempsde depropagation. propagation.

Les figures illustrent les diffrents types de segmentation pour un mme exemple de routage

Les circuits logiques programmables - FPGA

III. III.Les LesFPGA FPGA


Les types de blocs logiques dans les FPGA
IlIlexiste existe44types typesde deblocs blocslogiques logiques: : - -Les Lesmacrocellules. macrocellules. - -Les Lesblocs blocsmultiplexeurs. multiplexeurs. - -Les LesLUT. LUT. - -Les cellules Les cellulessymtriques. symtriques.

Cellules symtriques :
Ces blocs de petite taille servent raliser des fonctions logiques simples mais aussi comme ressources de connexion

Les circuits logiques programmables - FPGA

III. III.Les LesFPGA FPGA


Les types de blocs logiques dans les FPGA Les Multiplexeurs :
En venant programmer les entres du multiplexeur et en pilotant les signaux de slection, il est possible de raliser toutes les fonctions logiques ( autant d'entres que de signaux de slection). Leur trs petite taille est particulirement adapte la technologie anti-fusible.

Les circuits logiques programmables - FPGA

III. III.Les LesFPGA FPGA


Les types de blocs logiques dans les FPGA Les LUT (Look-Up Table) :
Les Look-Up Table sont un cas particulier des cellules multiplexeur, avec de 2 9 entres et dont la technologie du point mmoire est une technologie SRAM. Une Look Up Table de N entrees est une mmoire qui peut implmenter n'importe quelle fonction boolenne de N variables. Les N entres sont utilises comme adresse d'une mmoire de 2n bits qui code la fonction boolenne raliser. On peut donc raliser 2n fonctions diffrentes avec une LUT N entres. Les Look-Up Tables sont des blocs logiques de trs petite granularit dans un CLP. Comme Les Look-Up Table possdent une bascule de sortie, les architectures base de Look-Up Table sont beaucoup plus riches en bascules que les architectures macro-cellules.

Les circuits logiques programmables - FPGA

III. III.Les LesFPGA FPGA


Les types de blocs logiques dans les FPGA Les LUT (Look-Up Table) :
Entres

Point mmoires

Les circuits logiques programmables - FPGA

III. III.Les LesFPGA FPGA


Les types de blocs logiques dans les FPGA Les Macro-cellules :
On retrouve dans certaines macro-cellules toute la complexit d'un PAL. Il y a en gnral un nombre rduit de macrocellules dans un EPLD, car ces cellules occupent une grande surface. la macro-cellule prsente plusieurs intrts : - grand nombre de variables d'entres possibles - grand nombre de termes de produits possibles

Les circuits logiques programmables - FPGA

IV. IV.Les Lesoutils outilsde dedveloppement dveloppement


Deux DeuxOutils Outilssont sontncessaires ncessairesla laprogrammation programmationdes desFPGA FPGA: : - -Le Lesystme systmede dedveloppement dveloppement - -Le Leprogrammeur programmeur

Les circuits logiques programmables - FPGA

IV. IV.Les Lesoutils outilsde dedveloppement dveloppement


Les systmes de dveloppement
Ces Cessystmes systmesproduisent produisentune unetable tablereprsentant reprsentantles lesfusibles fusiblesdtruire dtruireen en fonction fonctiondes desquations quationslogiques, logiques,diagramme diagrammed'tats d'tatset ettables tablesde devrits vritscrit critdans dans le lelangage langagepropre propreau ausystme, systme,c'est c'estle lerle rledu ducompilateur compilateurou ousynthtiseur. synthtiseur. La Ladescription descriptiondu dufonctionnement fonctionnementdes descircuits circuitspeut peutse sefaire fairede deplusieurs plusieursfaons, faons, soit soit: : - -Par (Portes Parun unschma schmabase basede defonctions fonctionslogiques logiqueslmentaires lmentaires(Portes ET,OU,NON, ET,OU,NON, bascules, bascules,compteurs, compteurs,registres registresdcalages). dcalages). - -En Enutilisant utilisantun unlangage langagede dedescription descriptioncomportementale comportementaleH.D.L. H.D.L. (Hardware , ,ORCAD/PLD (HardwareDescription DescriptionLanguage). Language).Les Lesplus plusanciens ancienssont sontPALASM PALASM ORCAD/PLDet et le leplus plusconnu connuet etutilis utilisest estsans sansconteste contesteABEL ABEL(utilis (utilispar parla laplus pluspart partdes des systmes systmesde dedveloppements). dveloppements).Enfin Enfinles leslangages langagesdit ditde dehaut hautniveau, niveau,VHDL VHDL( (Very Very high highspeed speedHardware HardwareDescription DescriptionLanguage) Language)et etVERILOG VERILOGsont sonten engnral gnralutiliss utiliss pour pourdes descircuits circuitscomplexes. complexes.Le Lelangage langageVHDL VHDLest esttrs trsutilis utilisen enEurope. Europe.

Les circuits logiques programmables - FPGA

Voir 2me fichier

Les circuits logiques programmables - FPGA

IV. IV.Les Lesoutils outilsde dedveloppement dveloppement


Les systmes de dveloppement
- -Par Parlutilisation lutilisationde degraphes graphesd'tats d'tats(Flow (FlowStates StatesMachines, Machines,FSM) FSM)

Les circuits logiques programmables - FPGA

V. V.Le LeFPGA FPGAM7000 M7000de deALTERA ALTERA


Presentation gnrale
Elments Elmentsprogrammables programmablesde detype typeEEPROM, EEPROM,bas bassur surle leprincipe principede de seconde secondegnration gnrationde dematrice matriceprogrammables. programmables. 5.0V, 5.0V,IEEE IEEE1149.1 1149.1test teststandard standard 600 6005000 5000portes portes 55ns nsPin Pinto topin pindelay delay(175MHz) (175MHz)

Les circuits logiques programmables - FPGA

V. V.Le LeFPGA FPGAM7000 M7000de deALTERA ALTERA


Performances de certains FPGA parmi les MAX7000

Les circuits logiques programmables - FPGA

V. V.Le LeFPGA FPGAM7000 M7000de deALTERA ALTERA


Les Macrocells

Les circuits logiques programmables - FPGA

V. V.Le LeFPGA FPGAM7000 M7000de deALTERA ALTERA


Les contraintes de temps (timing constrains)
Chaque Chaquelment lmentintervient intervientet etdoit doittre treprit priten encompte comptedans danslvaluation lvaluationdes destemps temps de depropagation propagation

Les circuits logiques programmables - FPGA

V. V.Le LeFPGA FPGAM7000 M7000de deALTERA ALTERA


Les contraintes de temps (timing constrains)
Exemple Exempledapplication dapplicationun uncas cassimple simplede delogique logiquecombinatoire combinatoire

Les circuits logiques programmables - FPGA

V. V.Le LeFPGA FPGAM7000 M7000de deALTERA ALTERA


Les contraintes de temps (timing constrains)
Exemple Exempledapplication dapplicationau aucas cassquentiels squentiels

Les circuits logiques programmables - FPGA

V. V.Le LeFPGA FPGAM7000 M7000de deALTERA ALTERA


Le format de test JTAG : IEEE 1149.1 (the boundary scan standard)

Les circuits logiques programmables - FPGA

V. V.Le LeFPGA FPGACX4000 CX4000de deXilinx Xilinx

Les circuits logiques programmables - FPGA

V. V.Le LeFPGA FPGACX4000 CX4000de deXilinx Xilinx

Les circuits logiques programmables - FPGA

V. V.Le LeFPGA FPGACX4000 CX4000de deXilinx Xilinx

Les circuits logiques programmables - FPGA

V. V.Le LeFPGA FPGAFLEX6000 FLEX6000de deALTERA ALTERA


Informations gnrales
Informations Informationsgenerales generales - -Nb de portes Nb de portes: :5000 5000- -24000 24000

The Thelogic logicarray arraycontains containslogic logicarray arrayblocks blocks (LABs) (LABs)composed composedof of10 10logic logicelements elements (LEs) (LEs)that thatcommunicate communicatethrough throughaafully fully populated populatedlocal localinterconnect interconnectstructure structure

Les circuits logiques programmables - FPGA

V. V.Le LeFPGA FPGAFLEX6000 FLEX6000de deALTERA ALTERA


Informations gnrales

LAB
Le Le

LAB
Le Le

Interleaved InterleavedLABs LABs Chaque ChaqueLe Ledun dunmme mmeLAB LABpeuvent peuvent tre treinterconnects interconnectsainsi ainsiqu quleurs leurs plus plusproches prochesvoisins voisins

FastTrack FastTrackInterconnect Interconnect Les LesLAB LABpeuvent peuventtre treinterconnects interconnects grce un rseau dinterconnections grce un rseau dinterconnections longue longuedistance distance

Les circuits logiques programmables - FPGA

V. V.Le LeFPGA FPGAFLEX6000 FLEX6000de deALTERA ALTERA


Informations gnrales : que sont les LE (logic Element)?
Chaque ChaqueLE LE(Logic (LogicElement) Element)contient contient11LUT LUTaa44entrees entrees

Les circuits logiques programmables - FPGA

V. V.Le LeFPGA FPGAFLEX6000 FLEX6000de deALTERA ALTERA


Informations gnrales : que sont les LE (logic Element)?
Le LeCarry CarryChain Chain

Les circuits logiques programmables - FPGA

V. V.Le LeFPGA FPGAFLEX6000 FLEX6000de deALTERA ALTERA


Informations gnrales : que sont les LE (logic Element)?
Le LeCascade Cascadechain chain

Les circuits logiques programmables - FPGA

V. V.Le LeFPGA FPGAFLEX6000 FLEX6000de deALTERA ALTERA


Informations gnrales : performances

Les circuits logiques programmables - FPGA

V. V.Le LeFPGA FPGAFLEX10K FLEX10Kde deALTERA ALTERA


Informations gnrales
Premier circuit programmable dit: embedded programmable logic device (PLD) family, providing System-on-a-Programmable-Chip (SOPC) De 10000 250000 portes

Les circuits logiques programmables - FPGA

V. V.Le LeFPGA FPGAAPEX APEXde deALTERA ALTERA


Informations gnrales
The APEX device family ranges from 30,000 to over 1.5 million gates (113,000 to over 2.5 million system gates) and ships on 0.22-m, 0.18-m, and 0.15-m processes. Introduced in 1999 with all copper interconnect layers

Les circuits logiques programmables - FPGA

V. V.Le LeFPGA FPGAAPEX APEXde deALTERA ALTERA


Informations gnrales

(1 ESB = 4096bits)

Protocole Protocolede de communication communication 1Gbs 1Gbs

Les circuits logiques programmables - FPGA

V. V.Le LeFPGA FPGAAPEX APEXde deALTERA ALTERA


Informations gnrales
Package informations

Les circuits logiques programmables - FPGA

V. V.Le LeFPGA FPGAAPEX APEXde deALTERA ALTERA


Informations gnrales

Les circuits logiques programmables - FPGA

V. V.Le LeFPGA FPGAAPEX APEXde deALTERA ALTERA

Les circuits logiques programmables - FPGA

V. V.Le LeFPGA FPGAAPEX APEXde deALTERA ALTERA


Structure
Systme de communication entre les LABs

Chaque MegaLAB contient un groupe de 16 ou 24 LABs

Les circuits logiques programmables - FPGA

Les circuits logiques programmables - FPGA

V. V.Le LeFPGA FPGAAPEX APEXde deALTERA ALTERA


Structure des Le

Les circuits logiques programmables - FPGA

V. V.Le LeFPGA FPGAAPEX APEXde deALTERA ALTERA


Mode de programmation des Le

LE mode normal est utilis pour la synthse de structures combinatoires ou squentiel, avec les possibilits de mise en cascade

Les circuits logiques programmables - FPGA

V. V.Le LeFPGA FPGAAPEX APEXde deALTERA ALTERA


Mode de programmation des Le

LE mode arithmtique est utilis pour la synthse de fonctions addition, comparaison, accumulation

Les circuits logiques programmables - FPGA

V. V.Le LeFPGA FPGAAPEX APEXde deALTERA ALTERA


Mode de programmation des Le

LE mode comptage propose des clock enable, counter enable, synchrone, Asynchrones, up, douwn,

Les circuits logiques programmables - FPGA

V. V.Le LeFPGA FPGACyclone Cyclonede deALTERA ALTERA

Les circuits logiques programmables - FPGA

V. V.Le LeFPGA FPGACyclone Cyclonede deALTERA ALTERA

Cyclone I

Cyclone II

Les circuits logiques programmables - FPGA

V. V.Le LeFPGA FPGAStratix Stratixde deALTERA ALTERA

Les circuits logiques programmables - FPGA

V. V.Le LeFPGA FPGAStratix Stratixde deALTERA ALTERA

Les circuits logiques programmables - FPGA

VI. VI.Les Lestendances tendancesdes descomposants composantsprogrammables programmables


Evolution des systmes vers les trs grandes complexits
Complexit

FPGA CPLD PAL GAL LCA CPLD PAL

Evolutions Evolutionsrsultantes rsultantes: : - -des desprogrs progrstechnologiques technologiques (rduction (rductiondes desdimensions dimensionsde de transistors transistors- -densits densitsd dintgration) intgration) - -des desprogrs progrslogiciel logicieldes desoutils outilsde de dveloppement dveloppement(langage (langageHDL HDL- simplicit simplicitde dedveloppement) dveloppement)

1970

1980

1990

2001

Annes

Les circuits logiques programmables - FPGA

VI. VI.Les Lestendances tendancesdes descomposants composantsprogrammables programmables

erformances :

Les circuits logiques programmables - FPGA

VI. VI.Les Lestendances tendancesdes descomposants composantsprogrammables programmables


Evolution vers les systmes de trs grande complexit APEX Devices: System-on-a-Programmable-Chip Solutions from ALTERA chip

30,000 30,000vers versplus plusde de1.5 1.5million millionde deportes portes (113,000 to over 2.5 million (113,000 to over 2.5 million system systemgates) gates) Technologie 0.22-m,0.18-m 0.18-met et Technologie: :0.22-m, 0.09m 0.09m Ports 128808 808I/O I/O Portsddentre/sortie entre/sortie: :128 Introduction Introductiondes desSystem-on-chip System-on-chip dans dansles lescomposants composantsprogrammables programmables (RAM, (RAM,ROM, ROM,FIFO, FIFO,CAN, CAN,PCI, PCI,P..) P..)

Aujourdhui, Aujourdhui,prs prsde de50% 50%des desFPGA FPGAsont sontdes desSoC SoC Introduction Introductiondes desIPs IPsdans dansles lesFPGA FPGA(Intelectual (IntelectualProperties) Properties)

Les circuits logiques programmables - FPGA

VI. VI.Les Lestendances tendancesdes descomposants composantsprogrammables programmables


Quels sont les problmes limitant lvolution et les performances des FPGAs?
Les Lesinterconnexions interconnexions

Plus les technologies voluent plus les interconnexion deviennent des lments actifs des circuits
La Ladensit densitdintgration dintgration

La quantit de mmoire ncessaire pour accrotre les performances des FPGA devient trs importante
Les Lessofts softs(mthodes (mthodesde deprogrammation) programmation)volution volutionvers versles lessystemC systemC

Les logiciel de dveloppement voluent vers des systmes types Visual C++. Cest une obligation face laugmentation des possibilits de programmation des FPGA