Vous êtes sur la page 1sur 29

Chapitre 3.

Architecture des FPGA

- Présentation des CP (Circuits programmables type PLA,CPLD)


- Structure des FPGA & ASICs
- Architecture générale
- Blocs logiques programmables
- Terminologies
- Blocs de mémoire intégrée
- Exemples de constructeurs Altera et Xilinx
- Applications
Présentation des CP (Circuits programmables type PLA, CPLD)

Différentes familles disponibles

Les premiers de ces circuits ont été produits en 1978 par Monolitics Memories. Ce
sont des PALs (Programmable Array Logic).

PLD est le terme général pour les petits composants programmables par l’utilisateur
(Programmable Logic Device).

Les PLD standards sont constitués d’un réseau de ET, suivi d’un réseau de OU. L’un
ou l’autre, ou les deux de ces réseaux sont programmables. Les entrées sont reliées
au réseau de ET, pour fournir les termes de produit. Chacun de ces termes est relié
aux portes OU pour fournir la fonction désirée.

PAL.
Dans les PALs (Programmable Array Logic), le réseau de ET est programmable, et
le réseau de OU est fixe.Il peut être quelques fois suivi de bascules. Ils sont
réalisés en technologie bipolaire (TTL) et ne peuvent être programmés qu’une
seule fois.
Présentation des CP (Circuits programmables type PLA, CPLD)
Différentes familles disponibles

GAL.
Les GALs (General Array Logic) sont comme les PALs, mais avec une cellule de
sortie (OLMC) dont on peut programmer la nature combinatoire ou
séquentielle.
Chaque OLMC intègre une partie du réseau de « OU ».On peut les effacer et
les reprogrammer. Ils sont réalisés en technologie CMOS. Attention, leur
tension d’alimentation Vcc est de 5V. Comme les PALs, ils comptent environ
30 broches.
CPLD.
Les CPLDs (Complex Programmable Logic Device) sont des PLDs (donc des GALs)
complexes .
Ils sont constitués de plusieurs GALs et ces GALS sont reliés entre eux à l ’aide d
’une matrice d’interconnexion. L ’avantage de cette architecture (vis à vis des
FPGAs) réside dans la matrice d ’interconnexion qui permet d ’avoir un temps de
propagation fixe et connu à l ’avance.
On peut les effacer et les reprogrammer. Ils sont réalisés en technologie CMOS.
Présentation des CP (Circuits programmables type PLA, CPLD)
Différentes familles disponibles tableau de correspondances
FPGA (Field Programmable Gate Array)
C’est un ensemble de cellules régulièrement disposées (dans une matrice XY)
appelées macro cellules. Chaque macro cellule contient un élément de logique
combinatoire et séquentielle programmable. Un FPGA contient un très grand nombre
de macro cellules permettant une très grand nombre de combinaisons. La logique
combinatoire programmable se fait avec une LUT (Lock Up Table) : basé sur un
multiplexeur. Le routage entre macro cellule se fait à l’aide d’une grande et
complexe matrice. Le routage n’assure pas un temps de propagation constant (à
priori).

ASIC (Application Specific Integrated Circuits)


C’est un ensemble de cellules régulièrement disposées (dans une matrice XY) sur un
substrat de silicium. Chaque cellule contient des portes logiques (le plus souvent des
NAND), de transistors et des résistances. Les métallisations de connexion dans et
entre les cellules dépendent de la fonction à réaliser. Quand les résultats de
simulation de la fonction sont corrects, le fondeur fabrique le circuit. Celui-là livre
un produit directement utilisable. Un seul circuit peut compter jusqu’à 100.000
portes logiques.
Structure des FPGA & ASICs

Les ASICs:

Les circuits ASIC constituent la troisième génération de circuits intégrés qui a vu le jour au
début des années 80. En comparaison des circuits intégrés standards et figés proposés par les
fabricants, l'ASIC présente une personnalisation de son fonctionnement, selon l'utilisation,
accompagnée d'une réduction du temps de développement, d'une augmentation de la densité
d'intégration et de la vitesse de fonctionnement. En outre sa personnalisation lui confère un
autre avantage industriel, c'est évidemment la confidentialité. Ce concept d'abord développé
autour du silicium s'est ensuite étendu à d'autres matériaux pour les applications microondes
ou très rapides (GaAs par exemple).
Par définition, les circuits ASIC regroupent tous les circuits dont la fonction peut être
personnalisée d'une manière ou d'une autre en vue d'une application spécifique, par opposition
aux circuits standards dont la fonction est définie et parfaitement décrite dans le catalogue de
composants. Les ASIC peuvent être classés en plusieurs catégories selon leur niveau
d'intégration [LUCA94], en fait un ASIC est défini par sa structure de base (réseau
programmable, cellule de base, matrice, etc.). Sous le terme ASIC deux familles sont
regroupées, les semi-personnalisés et les personnalisés.
Structure des FPGA & ASICs
Les ASICs: dont l'ensemble des
caractéristiques est conçu pour
dont la conception est fondée répondre à une demande
sur l'utilisation de blocs déterminée.
prédéfinis ou préconstruits.

te à l'emploi

Circuit prédiffusé,, dont l'interconnexion est laissée à l'initiative de l'utilisateur.


circuit précaractériser circuit intégré dont la conception est fondée sur l'utilisation
d'une bibliothèque de cellules dont les éléments ont été préalablement caractérisés.
Structure des FPGA & ASICs
Les ASICs:
Avantages et inconvénients de l'utilisation d'ASIC: D'une manière générale
l'utilisation d'un ASIC conduit à de nombreux avantages provenant essentiellement de
la réduction de la taille des systèmes. Il en ressort :
Réduction du nombre de composants sur le circuit imprimé. La consommation et
l'encombrement s'en trouvent considérablement réduits.
Le concept ASIC par définition assure une optimisation maximale du circuit à réaliser.
Nous disposons alors d'un circuit intégré correspondant réellement à nos propres
besoins.
La personnalisation du circuit donne une confidentialité au concepteur et une
protection industrielle.
Enfin, ce type de composant augmente la complexité du circuit, sa vitesse de
fonctionnement et sa fiabilité.
Dans l'approche des circuits pré diffusés et personnalisés,
l'inconvénient majeur réside dans le fait du passage obligatoire chez le fondeur ce
qui implique des frais de développement élevés du circuit. En général le fondeur ne
souhaite pas intervenir dans la phase de conception ; sa tâche est de réaliser le
composant à partir des masques. Dans le but de réduire les surcoûts dus aux
modifications, il s'avère nécessaire d'être rigoureux lors de la phase de
développement de telle sorte que le circuit prototype fonctionne dès les premiers
essais : c'est réussi dans environ 60% des cas. De plus dans de nombreuses
applications, l'utilisateur doit concevoir les programmes de testabilité.
Structure des FPGA & ASICs
Les structures PAL sont à la base des CPLD, FPGA d’aujourd’hui

OMLC
Output Logic
MacroCell
(Combinatoire
s
Séquentielles
Versatiles)
Structure des FPGA ET ASICs
Les CPLD (Complexe Programmable LogicDevice) :
Ces circuits ont une capacité de portes et de configuration très largement
supérieur aux PAL
*Architecture d’un cpld
*Architecture d’un cpld
Structure des FPGA & ASICs
Structure des FPGA et ASICs
Architecture générale d’un FPGA
Architecture générale d’un FPGA
Architecture générale d’un FPGA

* Architecture générale d’un FPGA


* Architecture générale d’un FPGA
convertiseur des signaux analogiques

Action de grouper

conversion des signaux analogiques


*Bloc de base d’un circuit FPGA

Chaine de
Elle peut toutefois être considérée comme une petite traitement
mémoire, un multiplexeur ou un registre à décalage. Le
Look-up table
registre permet de mémoriser un état (machine
séquentielle) ou de synchroniser un signal (pipeline).
*Bloc de base d’un circuit FPGA
Look-up table

La structure du bloc logique change selon le fabricant

• Aujourd'hui, la structure la plus utilisée est basée sur une look-up


table (RAM) pour implémenter une fonction combinatoire plus
une bascule D
installer
La fonction de la LUT est de stocker la table de vérité de la
fonction combinatoire à implémenter dans la cellule
*Bloc de base d’un circuit FPGA
EXEMPLE
* Cellule de base d’un circuit FPGA

Look-up table
Configuration des FPGA
* Le signal d'horloge d'un FPGA vient généralement de
l'extérieur. Il y a des entrées spécialisées pour
recevoir les signaux d'horloge et les distribuer
ensuite à l'intérieur du circuit

Aussi Les pins d'entrée/sortie des FPGA possèdent également des


caractéristiques configurables:
Configuration des FPGA e
u
La chaîne de bits de configuration (bitstream) est envoyée depuis l'extérieur et
m
distribuée en série à l'intérieur du FPGA. On peut voir les SRAM de configuration
comme un énorme registre à décalage (dans la réalité, c'est divisé en frames de 1024
bits et on utilise des latches!).
Le temps de configuration peut être très long (on a aujourd'hui des biststreams de
25Mb)

rtisseur 1 bit" ou
chnologie de
nalogiques en
es signaux
nalogiques.

Il existe en général 4 modes de


configuration:
•􀀁 série, avec le FPGA en maître
•􀀁 série, avec le FPGA en esclave
•􀀁 parallèle, avec le FPGA en maître
•􀀁 parallèle, avec le FPGA en esclave
LES DEUX PLUS
GRANDS
FABRICANTS DE
FPGA ,XILINX ET
ALERA
*APPLICATIONS
LES FPGA dans les applications de test
Lorsque vous évaluez les performances et le fonctionnement d'un appareil sous test (DUT,
Device Under Test), la précision du test dépend de celle de votre système de mesure. Or
l'utilisation de puces FPGA en tant qu'interfaces primaires dote vos E/S d'une intelligence
ultrarapide.
Il est ainsi possible de vérifier matériellement les caractéristiques uniques d'un appareil,
et d'ajouter des fonctionnalités de test plus facilement grâce au parallélisme

LES FPGA dans les systèmes de contrôles


Les systèmes de contrôle permettent également d'illustrer à quel point les FPGA se sont
affranchis de leur rôle originel de matériel d’"interfaçage d’appoint". Les systèmes de
contrôle en boucle fermée varient d'un secteur d’activité à un autre, mais ils ont souvent
en commun un facteur de performance déterminant : la vitesse de la boucle de contrôle.
Au niveau le plus fondamental, la vitesse de boucle est le temps total nécessaire pour lire
les entrées de capteurs, traiter l'algorithme de contrôle et transmettre les valeurs
résultantes aux actionneurs

Plusieurs boucles de contrôle s'exécutent avec un véritable parallélisme


matériel sur les cartes d'E/S à base de FPGA
:
*APPLICATIONS
LES FPGA dans les systèmes embarqués
Un système embarqué est défini comme un système électronique et
informatique autonome, souvent temps réel, spécialisé dans une tâche bien
précise.

Exemple d’application
Astronautique : fusée, satellite artificiel, sonde spatiale, etc.
Automate programmable industriel, contrôle-commande
Électroménager : télévision, four à micro-ondes
Environnement [archive]
Équipement médical
Guichet automatique bancaire (GAB)
impression : imprimante multifonctions, photocopieur, etc.
Informatique : disque dur, Lecteur de disquette, etc.
Métrologie
Militaire : missile
Multimédia : console de jeux vidéo, assistant personnel
Télécommunication : Set-top box, téléphonie, routeur, pare-feu, serveur de
temps, Téléphone portable, .
Transport : Automobile, Aéronautique (avionique), Ferroviaire, etc.

Vous aimerez peut-être aussi