Vous êtes sur la page 1sur 13

Institut Supérieur des Etudes Technologiques de Nabeul

Plan
Mastère Professionnel en Systèmes
Embarqués 1- Généralités
UE11: Architectures et Microsystèmes 1
MODULE: Systèmes Reconfigurables - SR 2- Les circuits logiques
gq programmables
p g
3- Environnement de développement
Chapitre 2: Les circuits
4- Liste des abréviations
logiques programmables
5 Les
5- L technologies
t h l i d’interconnexion
d’i t i
Par Dr. Khemaies GHALI
Contact: ghali_khemaies@yahoo.fr
ghali khemaies@yahoo fr 6- La technologie
g FPGA
Web: http://fr.groups.yahoo.com/group/ghali_isetn
Page Facebook: https://www.facebook.com/groups/ghali.isetn/

ISET Nabeul 2015/2016 MPSE1 - Cours SR - Par K.GHALI 1/51 ISET Nabeul 2015/2016 MPSE1 - Cours SR - Par K.GHALI 2/51

Généralités Pourquoi
q des circuits p
programmables
g ?
‰ Différentes approches pour un système logique
™ Logique standard ‰ Logique
g q standard
™ fonction figée par le constructeur
™ ASIC
g
™ intégration faible
™ Logique
L i programmable
bl
™ coût faible
‰ Progression constante de l’intégration :
p
™ disponibilité immédiate
™ Diminution des coûts,
‰ ASIC (Application Specific Integrated Circuit)
™ Diminution de la consommation,
™ à dé
développer
elopper par le concepteur
concepte r
™ Diminution de la taille des systèmes.
™ très grande intégration
‰ Amélioration des performances et de la fiabilité ™ coût important
‰ Développement du domaine avec des méthodes de conception ™ temps de développement important
p q
spécifiques

ISET Nabeul 2015/2016 MPSE1 - Cours SR - Par K.GHALI 3/51 ISET Nabeul 2015/2016 MPSE1 - Cours SR - Par K.GHALI 4/51
‰ Logique programmable Classification des circuits
™ fonction à programmer par l’utilisateur
™ intégration élevée
™ coût moindre
™ temps de développement nécessaire
™ gain de place
™g
gain en nombre de connexions
™ fiabilité augmentée
™ gain en vitesse et en consommation
SSI: Small Scale Integration (< 10 gates)

™ possibilité d’évolution MSI: Medium Scale Integration (10< gates <100)

™ confidentialité
Fig.1: Classification des circuits programmables

ISET Nabeul 2015/2016 MPSE1 - Cours SR - Par K.GHALI 5/51 ISET Nabeul 2015/2016 MPSE1 - Cours SR - Par K.GHALI 6/51

Les circuits ASICs Les circuits logiques programmables (1/2)


‰ Full Custom:
™ à la demande : conception au niveau transistor,
transistor forte densité ‰ PLD : Programmable Logic Device réseau logique programmable
d’intégration (> 1 Mportes), délai de mise au point important; composés de réseau des portes logiques « ET » et de « OU ».
™ Standard Cell,, pré-caractérisés
p :àp
partir de cellules
bl Programmable
‰ EPLD : Erasable
E P bl Logic
L i Device
D i ou CPLD :
fonctionnelles de dimensions standard avec des
caractéristiques électriques connues contenues dans une Complex Programmable Logic Device, constitué de plusieurs
bibliothèque logicielle.
logicielle blocs de type PLD reliés par un réseau d’interconnexions.
d interconnexions.
‰ Semi Custom: ‰ FPGA : Field Programmable Gate Array ou LCA : Logic Cell
™ Gate Array,
Array prédiffusés : constitués de matrices de portes ou de Array (Xilinx) matrices de cellules simples identiques reliables par
cellules déjà diffusées dans le silicium mais non des interconnexions programmables.
interconnectées.
™ Les délais de mise au point sont réduits mais pas d’optimisation
en surface et en vitesse.

ISET Nabeul 2015/2016 MPSE1 - Cours SR - Par K.GHALI 7/51 ISET Nabeul 2015/2016 MPSE1 - Cours SR - Par K.GHALI 8/51
Les circuits logiques programmables (2/2) Les circuits PLD
‰ densité de quelques centaines de portes logiques
‰ architecture ET/OU programmable
‰ limites : nombre de bascules, nombre de signaux d’E/S, rigidité du
plan logique ET/OU et de ses interconnexions
‰ conception sous forme de langages d’équations, d ’automates…
‰ PAL : Programmable
g Arrayy Logic
g
™ PAL bipolaires, programmables une seule fois
¾ PAL combinatoires ou PAL simples (portes)
¾ PAL à registres (Field Programmable Logic Sequencer)
ISP - In-System
Programmable
™ PAL CMOS Ù GAL
‰ GAL : Generic Array Logic ; programmables et effaçables
Fig.3:
g Domaine des circuits logiques
gq programmables
p g q
électriquement ou PALCMOS
C OS ou EEPAL ou PALEECMOS C OS

ISET Nabeul 2015/2016 MPSE1 - Cours SR - Par K.GHALI 9/51 ISET Nabeul 2015/2016 MPSE1 - Cours SR - Par K.GHALI 10/51

Les circuits EPLD / CPLD Les circuits FPGA


‰ FPGA : Field Programmable Gate Array ou réseau de portes
‰ Erasable PLD ou Complex PLD programmable par l’utilisateur;

‰ C’est un ensemble de blocs logiques élémentaires que l’utilisateur


‰ Les EPLD sont programmables électriquement et effaçables aux
peut interconnecter pour réaliser les fonctions logiques de son
UV ; choix;
™ les EEPLD sont effaçables électriquement;
‰ La densité des portes est importante et sans cesse en évolution
‰ Principe similaire aux PAL mais avec interconnexions réalisées en ™ FPGA à SRAM ou LCA Logic Cell Array introduit en 1985 par
techno UVPROM Xilinx à base de SRAM;
¾ pour configurer les connexions logique non dédiée avec
‰ On trouve également les pLSI et ispLSI
des solutions d’interconnexions souples et efficaces
™ FPGA à antifusibles nés en 1990 Actel, programmables
électriquement par l’utilisateur non effaçables

ISET Nabeul 2015/2016 MPSE1 - Cours SR - Par K.GHALI 11/51 ISET Nabeul 2015/2016 MPSE1 - Cours SR - Par K.GHALI 12/51
Performances comparées
p (1/2) Performances comparées
p (2/2)

Fig.5: Fréquence utile/nombre de portes


Fig.4:
g Complexité
p (nombre de portes)/volume
p de production
p

ISET Nabeul 2015/2016 MPSE1 - Cours SR - Par K.GHALI 13/51 ISET Nabeul 2015/2016 MPSE1 - Cours SR - Par K.GHALI 14/51

Environnement de développement
pp (1/2) Environnement de développement
pp (2/2)
a. Programmateurs standard JEDEC (Joint Electron Devices b. Systèmes de développement
Engineering Council : http://www.jedec.org) ‰ entrées :
‰ génère les chronogrammes nécessaires à la programmation du ™ équations logiques
circuit en fonction des spécifications de son fabricant ™ tables de vérité
‰ autonomes de production ™ schémas logiques
™ phase de production : plusieurs circuits simultanément ™ VHDL/Verilog
™ SystemC
™ 1 seul type de produit
™ Abel ...
‰ autonomes de laboratoire
‰ systèmes sur PC
™ une seule pièce à la fois ™ production d’un fichier JEDEC transmissible à n’importe quel
™ divers circuits logiques programmateur normalisé
™ association système de développement / carte de
‰ cartes de programmation
programmation / PC
™ avec micro-ordinateur PC + logiciel de pilotage
ISET Nabeul 2015/2016 MPSE1 - Cours SR - Par K.GHALI 15/51 ISET Nabeul 2015/2016 MPSE1 - Cours SR - Par K.GHALI 16/51
Liste des abréviations (1/5) Liste des abréviations (2/5)
‰ ASIC Application Specific Integrated Circuit - Circuit intégré conçu ‰ EEPLD Electrically Erasable Programmable Logic Device - PLD
à la demande effaçable électriquement

‰ BLMC Buried Logic Macrocell - Macro cellule logique enterrée ‰ EEPROM Electrically Erasable PROM - Mémoire à lecture seule,
électriquement effaçable
‰ CC Chip
Chi C i - Boîtier
Carrier B îti "porteur
" t de
d puce""
‰ EPLD Erasable Programmable Logic Device - Réseau logique
‰ CPLD Complex Programmable Logic Device - Réseau logique programmable effaçable
programmable
bl complexe
l
‰ EPROM Erasable Programmable Read Only Memory - Mémoire à
‰ DRAM Dynamic Random Access Memory - Mémoire dynamique à lecture seule effaçable
accès
è aléatoire
lé t i
‰ FPGA Field Programmable Gate Array - Réseau de portes
‰ DSP Digital Signal Processor - Processeur orienté vers le programmables
t it
traitement
t du
d signal
i l
‰ FPROM Field Programmable Read Only Memory
‰ EDIF Electronic Design Interchange Format
‰ GAL Generic Array Logic - PAL générique
ISET Nabeul 2015/2016 MPSE1 - Cours SR - Par K.GHALI 17/51 ISET Nabeul 2015/2016 MPSE1 - Cours SR - Par K.GHALI 18/51

Liste des abréviations (3/5) Liste des abréviations (4/5)


‰ ISP In-System (In Situ) Programmable - Composant ‰ PAL Programmable Array Logic - Réseau logique programmable
programmable sur carte
‰ PGA Programmable Gate Array - Réseau de portes
‰ JEDEC Joint Electronic Device Engineering Council - Organisme programmable
de normalisation
‰ PLA Programmable Logic Array - Réseau logique programmable
‰ JTAG Joint Test Action Group - Bus de test des composants
‰ PLD Programmable Logic Device - Dispositif logique
‰ LCA Logic Cell Array (Xilinx) - Réseau de cellules logiques programmable

‰ LUT Look-Up Table ‰ POF Programmer Object File - Fichier objet pour programmateur

‰ MAX Multiple Array Matrix - Megapals d'Altera ‰ PROM Programmable Read Only Memory - Mémoire à lecture
seule programmable
‰ NOVRAM ou NVRAM Non Volatile Random Access Memory -
RAM non volatile ‰ RAM Random Access Memory - Mémoire à accès aléatoire

‰ OTP One Time Programmable - Programmable une seule fois ‰ ROM Read Onlyy Memoryy - Mémoire à lecture seule

ISET Nabeul 2015/2016 MPSE1 - Cours SR - Par K.GHALI 19/51 ISET Nabeul 2015/2016 MPSE1 - Cours SR - Par K.GHALI 20/51
Liste des abréviations (5/5) Les technologies
g d’interconnexion
‰ SDF Standard Delay File
a. Les cellules à fusible:
‰ SOG Sea of Gates - Mer de portes : réseau actif logique prédiffusé
Sea-of-Gates
Etablie par défaut, la connexion est supprimée par claquage du
‰ SRAM Static Random Access Memory - Mémoire statique à accès fusible, obtenu par l’application d’une tension (de 12 à 25 V)
aléatoire

‰ TTL Transistor Transistor Logic - Logique transistor-transistor

‰ VHDL VHSIC Hardware Description Language - Langage de


description matérielle VHSIC

‰ VHSIC Very High Speed Integrated Circuit - Circuit intégré à très


grande vitesse

‰ XNF Xilinx Netlist Format - Format de fichier Xilinx


Fig 6: Fonction logique « ET câblée » avec S = e1 . e2
Fig.6:
ISET Nabeul 2015/2016 MPSE1 - Cours SR - Par K.GHALI 21/51 ISET Nabeul 2015/2016 MPSE1 - Cours SR - Par K.GHALI 22/51

b. Les cellules anti-fusible à diélectrique Les cellules reprogrammables


p g
‰ C’est une technique élaborée par Actel en 1986:
a. Le transistor MOS à grille flottante ou grille isolée + grille de
™ PLICE : Programmable Low Impedance Circuit Element
programmation:
sandwich « conducteur/isolant/conducteur »
™ Surface
S f de
d lla cellule
ll l = 1
1,8
8 μm²² ‰ P
Programmation
ti : piéger
ié d
des él
électrons
t dans
d la
l grille
ill flottante
fl tt t quii
s’opposent à la conduction dans le canal ;

™ le
l ttransistor
i t estt alors
l équivalent
é i l t à un iinterrupteur
t t ouvert.
t

‰ Lorsque le transistor n’est pas programmé, la grille flottante ne


contient aucun électron ;

™ le canal est conducteur et le transistor est équivalent à un


interrupteur fermé.
Fig.7: Diélectrique disposition verticale => gain en surface

ISET Nabeul 2015/2016 MPSE1 - Cours SR - Par K.GHALI 23/51 ISET Nabeul 2015/2016 MPSE1 - Cours SR - Par K.GHALI 24/51
d. Les cellules Flash EPROM:
b. Les cellules UVPROM:
‰ un même transistor de lecture
‰ l’exposition d’une durée d’environ 20 minutes à un rayonnement
et de programmation T2.
UV permet d’annuler
d annuler la charge stockée dans la grille flottante
flottante.
‰ Programmation 1000 fois plus
‰ effacement non sélectif, reproductible plus d’un millier de fois.
rapide
p q
que l’effacement
c. Les cellules EEPROM:
‰ Plusieurs cellules sont
programmées simultanément
‰ programmation
ti ett effacement
ff t réalisé
é li é él
électriquement
ti t
‰ Nombre de cycles de
‰ nombre de cycles de programmation :
programmation supérieur à
™ 10000 en techno 0,8 μm ; 10000
™ 100 en techno 0
0,6
6 μm.
μm Fig 8: Cellules Flash
Fig.8:
EPROM

ISET Nabeul 2015/2016 MPSE1 - Cours SR - Par K.GHALI 25/51 ISET Nabeul 2015/2016 MPSE1 - Cours SR - Par K.GHALI 26/51

e. Les cellules SRAM:

‰ Surface d’une cellule environ 50 μm²,

‰ Chargement d’une nouvelle configuration partielle ou totale


possible en cours d’utilisation,

™ D’où la configuration dynamique des FPGA.

‰ Rapidité de quelques dizaines de « ns » par cellule


cellule,

‰ Nécessité de charger la configuration à chaque mise sous


tension :

™ mémorisation externe

Fig 9: Cellules SRAM


Fig.9:
ISET Nabeul 2015/2016 MPSE1 - Cours SR - Par K.GHALI 27/51 ISET Nabeul 2015/2016 MPSE1 - Cours SR - Par K.GHALI 28/51
Les critères des choix (1/2) Les critères des choix (2/2)
Critères pour les interconnexions :
Type EPROM Anti-fusible SRAM
‰ rapidité de propagation à travers l’interrupteur d'interconnexion
™ produit une résistance et une capacité parasite!
Rapidité
- + -
‰ densité possible des interconnexions
Densité
™ D’où la surface de la cellule - + --
Facilité
‰ facilité
f ili é d’
d’utilisation
ili i (ISP(ISP, support, PROM de
d configuration)
fi i ) + - +
‰ maintien de la configuration (volatile) Reprogrammabilité
+ - ++
‰ Re-programmablilité (OTP)

ISET Nabeul 2015/2016 MPSE1 - Cours SR - Par K.GHALI 29/51 ISET Nabeul 2015/2016 MPSE1 - Cours SR - Par K.GHALI 30/51

La technologie
g FPGA (1/3) La technologie
g FPGA (2/3)
1. Généralités: ‰ Développement délicat : taux d ’utilisation/routage

‰ Des
D modules
d l logiques
l i plus
l réduits
éd i et plus
l nombreux;
b ‰ Cellules d’E/S dissociées des structures logiques

‰ Un réseau de routage centralisé sur tout le composant entre les


cellules
ll l llogiques;
i

‰ Le routage : est une multitude de segments métalliques de


diffé t ttailles
différentes ill reliés
lié entre
t eux,
™ ou commutés en Entrée ou Sortie des blocs logiques;

‰ Plusieurs chemins possibles : importance du P/R


(Placement/Routage);

‰ réseaux spécifiques globaux (segments métalliques longs) dédiés


aux horloges des systèmes synchrones;
Fig 10 : Organisation dd’un
Fig.10 un FPGA
ISET Nabeul 2015/2016 MPSE1 - Cours SR - Par K.GHALI 31/51 ISET Nabeul 2015/2016 MPSE1 - Cours SR - Par K.GHALI 32/51
La technologie
g FPGA (3/3) FPGA de type
yp SRAM : Xilinx
‰ Architecture matricielle

‰ Un point de SRAM /point configurable

‰ Un registre associé à chaque LUT

‰ Blocs programmables peu nombreux réalisant une fonction


complexe

‰ Configuration à charger à la mise sous tension,


™ À travers d’une PROM ou d’un μP.

g
‰ Données de configuration disponibles
p dans un fichier g
généré p
par
l’outil de développement,

Fig.11 : Routage type FPGA ™ Fichier de configuration « Bitstream »

ISET Nabeul 2015/2016 MPSE1 - Cours SR - Par K.GHALI 33/51 ISET Nabeul 2015/2016 MPSE1 - Cours SR - Par K.GHALI 34/51

Architecture de la famille XC4000 (1/2) Architecture de la famille XC4000 (2/2)


‰ matrice de blocs logiques CLB (Configurable Logic Bloc)
programmables

‰ blocs logiques d’E/S IOB programmables en périphérie du circuit

‰ buffers
b ff 3 états
ét t internes
i t (2 par CLB)

‰ ressources d’interconnexions entre ces éléments

‰ matrices de lignes d’interconnexions horizontales et verticales


entre les CLB,
™ connexions effectuées par des transistors MOS dont l’état est
contrôlé par des cellules de mémoire vive.

‰ sous le réseau logique se trouve une zone de mémoire dans


laquelle est chargée la configuration des connexions à établir. Tableau 1 : FPGA famille XC4000

ISET Nabeul 2015/2016 MPSE1 - Cours SR - Par K.GHALI 35/51 ISET Nabeul 2015/2016 MPSE1 - Cours SR - Par K.GHALI 36/51
Les blocs logiques
gq

‰ CLB : Configurable Logic Bloc

‰ 2 générateurs de fonctions à 4 entrées + 1 pour une combinaison

‰ réalisés par des cellules SRAM (LUT) réalisant la table de vérité


de la fonction

‰ possibilité d’utiliser les LUT en RAM double port

‰ multiplexeurs utilisés comme commutateurs pour sélectionner les


divers modes de fonctionnement de la cellule

Fig.12 : Bloc Logique CLB

ISET Nabeul 2015/2016 MPSE1 - Cours SR - Par K.GHALI 37/51 ISET Nabeul 2015/2016 MPSE1 - Cours SR - Par K.GHALI 38/51

Les Blocs d’Entrées/Sorties


‰ L’IOB (Input Output Bloc) a une configuration programmable
‰ C’est une interface entre les broches d’E/S et la logique interne

Figure 14 :
Fi
Bloc d’E/S
Fig 13 : CLB configuré en mémoire RAM double port 16x1
Fig.13
ISET Nabeul 2015/2016 MPSE1 - Cours SR - Par K.GHALI 39/51 ISET Nabeul 2015/2016 MPSE1 - Cours SR - Par K.GHALI 40/51
Les interconnexions Les interconnexions
‰ C’est une structure globale régulière adaptée aux algorithmes des
‰ Chaque segment peut être connecté à un autre par l’intermédiaire
outils de routage,
d’une
d une matrice programmable (PSM)
‰ R
Ressource principale
i i l : lilignes simples
i l ett d
doubles
bl ((segments
t
métalliques de largeur d’1 ou 2 CLB)

Fig.14 : Fig.15 : Structure


Ressources de de routage
routage
t associées

à un CLB

ISET Nabeul 2015/2016 MPSE1 - Cours SR - Par K.GHALI 41/51 ISET Nabeul 2015/2016 MPSE1 - Cours SR - Par K.GHALI 42/51

Fig.17 : Interconnexions
programmables
bl

Fig.16 : Matrice d’interconnexion PSM

ISET Nabeul 2015/2016 MPSE1 - Cours SR - Par K.GHALI 43/51 ISET Nabeul 2015/2016 MPSE1 - Cours SR - Par K.GHALI 44/51
Fig.18 : Interconnexions directes
Fig 19 : Distribution du réseau dd’horloge
Fig.19 horloge
ISET Nabeul 2015/2016 MPSE1 - Cours SR - Par K.GHALI 45/51 ISET Nabeul 2015/2016 MPSE1 - Cours SR - Par K.GHALI 46/51

Liste des fabricants de circuits logiques


gq Liste des fabricants de circuits logiques
programmables (1/3) programmables (2/3)
‰ SPLD : ™ Cypress
yp Semiconductor ((http://www.cypress.com)
p yp )
™ Anachip Corporation, ICT Corp. (http://anachip.com) ™ Lattice Semiconductor (http://www.latticesemi.com)
™ Atmel (http://www.atmel.com)
(http://www atmel com) ™ Xilinx (http://www
(http://www.xilinx.com)
xilinx com)
™ Cypress Semiconductor (http://www.cypress.com) ‰ FPGA :
™ Lattice
L tti Semiconductor
S i d t (http://www.latticesemi.com)
(htt // l tti i )
™ Actel (http://www.actel.com)
‰ CPLD : ™ Altera (http://www.altera.com)
™ Altera (http://www.altera.com) ™ Atmel (http://www.atmel.com)
™ Anachip Corporation, ICT Corp. (http://anachip.com) ™ Lattice Semiconductor (http://www.latticesemi.com)
(http://www latticesemi com)
™ Atmel (http://www.atmel.com)
™ QuickLogic (http://www.quicklogic.com)
™ Xilinx
Xili (htt
(http://www.xilinx.com)
// ili )
ISET Nabeul 2015/2016 MPSE1 - Cours SR - Par K.GHALI 47/51 ISET Nabeul 2015/2016 MPSE1 - Cours SR - Par K.GHALI 48/51
Liste des fabricants de circuits logiques
gq Liste des outils de conception
p (1/2)
programmables (3/3) ‰ Logiciel de tiers
‰ FPGA & h
hard
d CPU
CPU: ™ Mentor Graphics AG (http://www.actel.com)
™ Altera, Excalibur APEX & ARM9 (http://www.altera.com) ¾ Produits : HDL Designer, ModelSim, Precision, Leonardo,
™ QuickLogic, QuickMIPS (http://www.quicklogic.com) ™ Cadence (http://www.cadence.com/) & OrCAD
(http://www.orcad.com/)
™ Xilinx, Virtex-II Pro & PowerPC (http://www.xilinx.com)
¾ ProduitS : Encounter™ digital IC design, OrCAD Capture
‰ Circuits particuliers:
™ Protel Altium (http://www.protel.com/)
™ Programmable System
S Device (PSD,
( S μPSD)
S )
¾ Produit : Protel (Nexar 2004)
™ ST Microelctronics (http://www.st.com)
™ Synplicity (http://www.synplicity.com/)
(http://www synplicity com/)
™ Générateur d'horloge
¾ Produits : Amplify, Synplify
™ ispClock, Lattice Semiconductor (http://www.latticesemi.com)

ISET Nabeul 2015/2016 MPSE1 - Cours SR - Par K.GHALI 49/51 ISET Nabeul 2015/2016 MPSE1 - Cours SR - Par K.GHALI 50/51

Liste des outils de conception


p (2/2)
‰ Logiciel des fabricants

™ Libero, Actel (http://www.actel.com)


™ Quartus,
Quartus Altera (http://www.altera.com)
(http://www altera com)
™ WinPlace, Anachip Corporation (http://anachip.com)
™ IDS,
IDS Atmel
At l (http://www.atmel.com)
(htt // t l )
™ Warp, Cypress Semiconductor (http://www.cypress.com)
™ ispLever, Lattice Semiconductor (http://www.latticesemi.com)
™ QuickWorks, QuickLogic (http://www.quicklogic.com)
™ ISE, Xilinx (http://www.xilinx.com)

ISET Nabeul 2015/2016 MPSE1 - Cours SR - Par K.GHALI 51/51