Vous êtes sur la page 1sur 32

CIRCUITS LOGIQUES

PROGRAMMABLES

FPGA

1
Les FPGA
 FPGA= Field Programmable Gate Array.

 Circuit intégré contenant un très grand nombre de portes logiques (VLSI)


organisées en blocs logiques configurables et interconnectables.

 Le FPGA a été Lancé sur le marché en 1984 par la firme XILINX.

 Le concept du FPGA est basé sur l'utilisation d'une LUT (Look Up Table)
comme élément combinatoire de la cellule de base.

 « Programmer » un fpga = Configurer et interconnecter des blocs


logiques = « Câblage » sur silicium

 Tous les FPGA sont fabriqués en technologie CMOS, les plus


gros d'entre eux intègrent jusqu'à 10000000 portes logiques utilisables.
2
Les 5 atouts des FPGAS

 flexibilité

 reconfiguration

 support de plusieurs niveaux de parallélisme

 prototypage rapide

économie des tests de fabrication

3
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,…
 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= Programmable Switch
Matrix  » configurables
lignes courtes
lignes longues
 Options : multiplicateurs , SRAM , … etc

4
Structure d’un circuit FPGA
Description simplifiée d ’un FPGA

6
Description simplifiée d ’un FPGA
(Spartan III)
Buffers Gestion d ’horloge (DCM)

Bloc logique (CLB)

Ram
Entrée/Sortie (IOB)

Multiplieurs

Zone d ’interconnexions

7
Blocs d ’interconnexions programmables(PSM)

spartan3 XC3S200

8
Exemple:
Dans cette figure, on a: 12 IOBs et 5x3 CLBs

IOB

CLB

9
Bloc de logique configurable (CLB)
Exemple du virtex 5:
 Un CLB est composé de 2 tranches (slices).
 Chaque tranche est reliée au réseau d’interconnexion.
 Les tranches sont reliées entre elles verticalement.

10
Architecture d’une tranche (slice L)
Une tranche est composée de:
• 4 tables de correspondance (LUT) à 6 entrées, pouvant etre
programmées comme:
 Fonction logique
 ROM
• 4 éléments à mémoire :bascules
• Des multiplexeurs pour router les signaux
• Des portes logiques pour l’addition rapide

N.B: Il existe des slices de type M où les LUTs peuvent etre


programmées comme des RAM ou des registres à décalage.

11
4 LUTs Addition

Bascules
12
MUX
Principe de fonctionnement
d ’une cellule logique de base

Bascule Mux
4 entrées LUT D Q

Ck Positionné lors de
SRAM de 16 bits la configuration
(Look Up Table) CE

Mémorisation
du résultat

13
Principe de fonctionnement
d ’une cellule logique de base
Fonctionnement purement combinatoire:

Bascule

4 entrées LUT D Q

Ck
Choix
SRAM de 16 bits
(Look Up Table) CE

14
Principe de fonctionnement
d ’une cellule logique de base
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

15
Look up table (LUT)
0
1
0
4 entrées LUT 1 sortie Sortie
24 bits

SRAM 16*1 bits 1


(Look Up Table)
4 entrées

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 à 4 entrées binaires.
16
Les composantes secondaires d’un FPGA

• Des mémoires intégrées


• Des fonctions arithmétiques avancées
(multiplieurs)
• Des modules de génération d’horloge
• Des réseaux de distribution d’horloges
• Des microprocesseurs fixes.

17
Les 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.

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
Principaux constructeurs de FPGA

20
21
Carte Genesys équipée d’un FPGA VIRTEX 5 de Xilinx
22
23
Carte DE2 équipée d’un FPGA Cyclone II d’Altera 24
Familles de FPGA « virtex de Xilinx »

25
26
Familles de FPGA «Spartan de Xilinx »

27
FPGA hautes performances
«La famille Stratix d’Altera»

28
FPGA polyvalent «La famille Arria »

29
FPGA de grande série «La famille Cyclone »

30
Applications des FPGA
• Télécommunications,
• Traitement de signal, d’images et de vidéos,
• Aéronautique,
• Transports,
• …. etc
• Ils sont également utilisés pour le prototypage
d'ASIC.

31
Les ASICs
• ASIC = Application-Specific Integrated Circuit
•  Circuit intégré propre à une application,
•   circuit intégré spécialisé.

32

Vous aimerez peut-être aussi