You are on page 1of 13

I.

Introduction
Circuits Logiques
Programmables

Les circuits logiques programmables, dont


labrviation anglaise est PLD signifie :

FPLA Field Programmable Logic Array

PAL Programmable Array Logic

GAL Generic Array Logic

CPLD Complex Programmable Logic Device

FPGA Field Programmable Gate Array


1

un certains nombre davantages.

ESSTT- Mastre GE- SELLAMI A.

Systme de taille rduite : les PLD permettent,


par le niveau dintgration, de rduire le
nombre de composants et par consquent la
surface du circuit imprim.
 Systme cot rduit : il y a une conomie de
nombre de composants et des cots de
fabrication.


Programmable Logic Devices offrent

ESSTT- Mastre GE- SELLAMI A.

ESSTT- Mastre GE- SELLAMI A.

Accroissement de performance : la rduction


du nombre des composants contribue
lobtention
dune
grande
vitesse
de
fonctionnement et une faible consommation
dnergie.
 Grande scurit : les PLD sont pourvus dune
scurit qui permet de protger la lecture de
leur continu .


ESSTT- Mastre GE- SELLAMI A.

1. Classification des PLD




Grande flexibilit : les PLD permettent au


concepteur de programmer lectriquement les
lments logiques de base de faon rpondre
aux besoins spcifiques dune application
particulire non standard. Puisque les PLD
reprogrammables, cette flexibilit se traduit
aussi par la souplesse de modification des
quations (pour corriger une erreur, faire une
mise jour ou faire voluer le systme).
ESSTT- Mastre GE- SELLAMI A.

Les circuits PLD disposent des entres et des


sorties programmables qui les rendent flexibles et
adaptables diffrentes applications. Le nombre
dentres, sorties, de connexions programmables
et le niveau dintgration conduisent la
classification suivante des PLD :
ESSTT- Mastre GE- SELLAMI A.

Circuits Logiques Programmables

PLD Simples

CPLD

Grande
intgration
Plusieurs PLD
simples

PLD

CPLD

150

40 000

Trs grande
intgration

Nombre de portes

PAL

GAL

ESSTT- Mastre GE- SELLAMI A.

4 000 000

FPGA
Vitesse de fonctionnement 200 MHz 240 MHz

FPLA

FPGA

ESSTT- Mastre GE- SELLAMI A.

100 MHz

Courbe de la croissance industrielle en Million de Dollar

2. Dnomination des PLD

NN EE V SS
Nom gnrique
(PAL, GAL, ..)

Nombre max des


sorties

Nombre max des


entres

Type des sorties

FPGA

Complex PLD

PLD simples

ESSTT- Mastre GE- SELLAMI A.

10

II. Circuit logique programmable FPLA

Initialement introduit par SIGNETICS Inc. En 1975

Entres

Rseau ET
Programmable
par -fusibles

Rseau OU
Programmable
par -fusibles

-fusibles

11

ESSTT- Mastre GE- SELLAMI A.

-fusibles

Sorties

ESSTT- Mastre GE- SELLAMI A.

Le circuit FPLA est compos :


 des amplificateurs qui dlivrent des variables
dentre sous forme directe ou inverse,
 des portes ET qui calculent le produit de toutes les
variables dentres, directes et inverses,
 des portes OU qui reoivent toutes les sorties des
portes ET.
Le circuit FPLA permet, ainsi, de calculer des fonctions
boolennes sous forme de somme de mintermes.
Sa programmation consiste dtruire ou laisser
intacts les -fusibles.

12

ESSTT- Mastre GE- SELLAMI A.

III. Circuit logique programmable PAL


En 1978, MONOLITHIC MEMORIES Inc. a propos le circuit PAL, de
structure voisine celle des FPLA, mais avec une connexion fixe entre le rseau
ET et le rseau OU .

Entres

Rseau ET
Programmable
par -fusibles
-fusibles

13

ESSTT- Mastre GE- SELLAMI A.

14

ESSTT- Mastre GE- SELLAMI A.

La structure dun PAL combinatoire de type 12 H 6 est donne par


la figure suivante :

La figure
suivante donne
le schma de
principe dun
PAL squentiel
de type 16 R 4.

15

ESSTT- Mastre GE- SELLAMI A.

16

ESSTT- Mastre GE- SELLAMI A.

Rseau
OU
fixe

Sorties

La suite des mots correspondants est donne au tableau suivant:

Exemple
Un codeur optique dix pas est install sur larbre dune machine tournante (M)
afin de dtecter la position angulaire. Le code binaire de la position est fourni sur
quatre bits (a3,a2,a1,a0).
On cherche mettre en uvre un systme de transcodage fournissant la
position angulaire en code binaire naturel sur les sorties (S3 S2 S1 S0).
a3
M

S3

a2

Codeur
optique
dix pas

a1

S2

TRANSCODEUR

S1
S0

a0

ESSTT- Mastre GE- SELLAMI A.

17

Utiliser des
circuits logiques
programmables
de type FPLA et
PAL pour
raliser le
systme de
transcodage.
Indiquer par une
croix les fusibles
qui doivent rester
intacts.

18

IV. Circuit logique programmable GAL


Comme son nom lindique, Generic Array Logic ou
rseau logique gnrique, le GAL est une version amliore
du PAL squentiel.


Entres

Rseau ET
Programmable
par -fusibles

Rseau
OU
fixe

Bloc E/S
MacroCellule

-fusibles

Bloc combinatoire programmable

OMLC

Entres/
Sorties





19

ESSTT- Mastre GE- SELLAMI A.

20

Pas

a3

a2

a1

a0

ESSTT- Mastre GE- SELLAMI A.

Le bloc dentres/sorties est une macrocellule appele OLMC, abrviation anglaise


de Output Logic Macro Cell . Il est
constitu :
dune porte ou-exclusif,
dune bascule D,
des multiplexeurs,
dun dispositif de rebouclage sur le rseau
programmable ET ,
et des fusibles de configurations.

ESSTT- Mastre GE- SELLAMI A.

V. Circuit logique programmable CPLD

Le schma gnral dun CPLD est donne par la figure


suivante :
LAB

Les CPLD est une volution des PLD simples en ce


concerne le niveau dintgration. Un CPLD renferme au
moins 2 PLD de type GAL22V10. Cette volution a conduit
rendre la macro-cellule optimise et dutilisation plus
souple.
Loptimisation a permis damliorer :
 les blocs dentres et dentres/sorties, en ajoutant de
nouvelles fonctionnalits,
 les rseaux OU et ET , en optimisant le nombre de
termes produit ncessaires chaque macro-cellule,
 la macro-cellule, en la rendant configurable en bascule de
type D,T, JK ou RS. De mme, lhorloge de commande de
chaque bascule peut tre globale ou individuelle.
21

ESSTT- Mastre GE- SELLAMI A.

Exemple : Circuit EP1810 dAltera


Le circuit EP1810 est quivalent 5 GAL22V10. Il
dispose de :
 48 macro-cellules organises en 4 LAB de 12 macrocellules,
 le registre de la macro-cellule peut tre configur en
bascule D,T,JK ou RS,
 16 entres ddies dont 4 sont utiliss comme horloge
globale du LAB raison dune entre dhorloge par
LAB,
 48 broches dentres/sorties autorisant ainsi un
maximum de 64 entres,
 deux types de bus (local et global),
 un fusible de scurit en lecture,
 les fusibles sont des cellules de type EPROM.

23

ESSTT- Mastre GE- SELLAMI A.

22

Logic Array Bloc

ESSTT- Mastre GE- SELLAMI A.

Le schma gnral du circuit EP1810 est donn par la figure suivante :

24

ESSTT- Mastre GE- SELLAMI A.

1. Structure des FPGA

V. Circuit logique programmable FPGA




Les FPGA (abrviation anglaise de qui


signifie rseau des portes programmables sur
site) sont aussi des circuits logiques
programmables par lutilisateur.

Cest une volution des CLPD mais avec un


concept diffrent.

Ils offrent un niveau dintgration trs lev


par rapport aux CPLD.

25

ESSTT- Mastre GE- SELLAMI A.

Les ressources du circuit FPGA :




Un circuit FPGA contient un trs grand nombre de


macro-cellules (environ 32*32 CLB) avec une trs
grande souplesse dinterconnexion entre eux. Dans le
circuit FPGA, le temps de propagation dans les
couches logiques du circuit dpend de lorganisation
et

de

26

peuvent intgrer beaucoup des lments comme le


choix du temps de monte, lincorporation dune
rsistance de rappel la tension dalimentation pour
fixer le niveau de tension dune broche, le choix de
type de sortie : soit collecteur ouvert, soit 3-tats.

27

ESSTT- Mastre GE- SELLAMI A.

distance

entre

les

macro-cellules

interconnectes.

Entres-Sorties : elles sont indpendantes des


macro-cellules et de groupes de macro-cellules. Elles
ont comme lment de base la porte 3-tats. Elles

la

28

ESSTT- Mastre GE- SELLAMI A.

Macro-cellules : elles sont trs nombreuses, et il


ny a pas de matrice ET et OU. La macro cellule
est constitue dune partie combinatoire et dune
partie squentielle.
La partie combinatoire permet de raliser des
fonctions de complexit moyenne. Les
constructeurs ont propos chacun une ou
plusieurs solutions de synthse dont les
principales sont :
La fonction de synthse 4 ou 5 variables avec
des portes classiques ET, OU et NON.

ESSTT- Mastre GE- SELLAMI A.




29

31

La synthse de fonctions laide de multiplexeurs.


La synthse de fonctions combinatoires laide de
mmoire vive, on dit aussi ralisation des fonctions
logiques par LUT, abrviation anglaise de LOOKUP TABLE signifiant table dobservation (ou de
ralisation).
La partie squentielle comporte une ou deux bascules
gnralement de type D. il est rare de trouver des
macro-cellules uniquement pourvue de la partie
combinatoire. Compte tenu de nombre de macrocellules et de leur structure, leur association permet la
ralisation de nimporte quel autre type de bascule.
ESSTT- Mastre GE- SELLAMI A.

Rseaux dinterconnexion : il doit permettre de


connecter nimporte quelle CLB une autre ou
une cellule dentre-sortie. Pour cela, un ensemble
des lignes horizontales et verticales et un ensemble
de points de connexions sont utiliss. Selon
lintgration vhicule, on distingue plusieurs
types de lignes dfinies par leur longueur relatives.
Les principales sont :
Les interconnexions usage gnral : sont
composes des segments verticaux et horizontaux
qui encadrent chaque CLB et qui peuvent tre
relis entre eux par une matrice de commutation.
Chaque segment peut tre connect des segments
qui lui sont adjacents ou perpendiculaires en
utilisant des points de connexion.
ESSTT- Mastre GE- SELLAMI A.

Les macro-cellules sont appeles :


 Soit CLB : abrviation anglaise de Configurable
Logic Block , signifiant bloc Logique configurable.
Cest la dnomination adopte par Xilinx.
 Soit LC : abrviation anglaise de Logic Cell ,
signifiant cellule logique, cest le nom choisi par
Cypress.
 Soit LE : abrviation anglaise de Logic Element,
signfiant lment logique, cest lappellation
dAltera.
La dnomination la plus courante pour dsigner une
macro-cellule est CLB. A cet effet, on appelle souvent
les FPGA, LCA, abrviation anglaise de Logic Cell
Array signifiant rseau de cellules logiques. Cette
dnomination des FPGA est dpasse comme marque
Xlinx.
30




32

ESSTT- Mastre GE- SELLAMI A.

Les lignes directes : fournissent des chemins entre les


CLB adjacents et entre les CLB et les cellules
dentre-sortie.
Les lignes longues : sont des lignes verticales et
horizontales qui nutilisent pas les matrices de
commutation. Elles parcourent toutes les zones
dinterconnexion. Elles sont utilises pour vhicules
les signaux qui doivent parcourir un long trajet. Elles
galisent les dtails entre les signaux de faon
permettre un dcalage minimum entre deux points
distants de la ligne.
Les lignes conviennent pour vhiculer les signaux
dhorloge.
Lensemble des points de connexion est appel PIP,
abrviation anglaise de Programme Interconnect
Points .
ESSTT- Mastre GE- SELLAMI A.

2) Exemple1 : Circuit CY7C381A de Cypress


Caractristiques :
Le circuit CY7C381A contient :
 96 Cellules Logiques (LC) ;
 32 entres-sorties ;
 6 entres ddies ;
 2 entres ddies et dhorloge ;
 Ce circuit fait partie de la famille PASIC 380 des
FPGA de Cypress. Il utilise un rseau de cellules
logiques organises en une matrice de 8 par 12. les
cellules logiques sont configures et interconnectes
par des lignes horizontales et verticales des points de
connexion. Chaque point de connexion est un antifusible dont la programmation est irrversible.
33

ESSTT- Mastre GE- SELLAMI A.

3) Exemple 2 : Circuit EPF8282 dAltera :


Ce circuit contient :
 208 Cellules logiques (LE) ;
 78 Broches dentre-sortie ;
 282 Bascules actives sur front ;
 Des connexions commandes par des cellules de type SRAM ;
Le circuit EPF8282 fait partie de la famille FLEX800 des FPGA
dAltera. Flex est labrviation anglaise de Flexible Logic
Element matriX signifient matrice dlments flexibles. Pour
rendre les circuits de la famille FLEX adaptable une large
gamme dapplications, cette famille combine (pour les CPLD,
les avantages de grande vitesse de fonctionnement et de temps
de propagation prdictible) et pour les FPGA le nombre
important de registres et la souplesse de connexion.

35

ESSTT- Mastre GE- SELLAMI A.

b) Schma de principe
1

12

Lignes
horizontales

Cellule
logique
Cellule E/S

8
Lignes
verticales

34

36

ESSTT- Mastre GE- SELLAMI A.

Ce circuit contient 208 cellules logiques (LE) organises


en 26 LAB de 8 LE, les LAB sont organises en deux
lignes de 13 colonnes. Comme il a t indiqu dans la
prsentation gnrale, il ny a pas de matrice ET et OU.
Chaque LE comporte une partie combinatoire et une
partie squentielle. La fonction logique de 4 variables, un
bloc pour le calcul anticip de la retenue pour les
oprations arithmtiques et un bloc pour la mise en
cascade rapide les fonctions de dcalage.
La partie squentielle est constitue dun registre qui peut
tre configur en bascule D, T, JK ou RS.
Ce circuit dispose de 78 blocs dentre-sortie qui sont
places aux extrmits (colonnes et lignes) du rseau
dinterconnexion.

ESSTT- Mastre GE- SELLAMI A.

La connexion entre les LAB dune part et les LE et les blocs


dentre-sortie, dautre part est lgrement diffrente de celle
que lon a prsent pour les FPGA. Par contre la commande
des points de connexion se fait toujours par superposition dune
couche de commande constitue de (connexion) cellules
mmoire de type SRAM.
La notion de diffrents types de ligne est remplace par la
notion unique de groupes de lignes et colonnes qui traversent le
circuit de part en part. cette notion est appele en anglais
Altera Fast Track Interconnect signifiant piste rapide
dinterconnexion. La connexion entre les lignes et colonnes se
fait par la commande de multiplexeur. Cette commande
provient des cellules-mmoire (SRAM) de la couche de
commande. Cette technique vite les dlais introduits par les
matrices de commutation entre les lignes dusage gnral de la
structure standard. Un groupe de lignes comporte 168 lignes et
celui des colonnes est constitu de 16 colonnes.
Comme pour tout FPGA, la gestion de ces lignes et colonnes
est compltement transparente. Cependant, le systme de
dveloppement offre la possibilit dimposer des contraintes de
placement et de routage.
ESSTT- Mastre GE- SELLAMI A.

37

Schma gnral :

38

VI. Outil de dveloppement


Comporte en gnral, un logiciel de conception, une carte

dmulation pour la vrification du fonctionnement lectrique


de larchitecture conue, un micro-ordinateur hte.


Carte dmulation
Liaison par bus
Logiciel de
conception

FPGA

ordinateur hte

39

Architecture sous
test

ESSTT- Mastre GE- SELLAMI A.

40

ESSTT- Mastre GE- SELLAMI A.

Le logiciel : sert aider le concepteur dvelopper la mthode


de conception de larchitecture.
La mthode de conception comporte quatre phases : une phase
de saisie de larchitecture, une phase dimplantation, une phase
de vrification et une phase des tests lectriques.
La phase de saisie de larchitecture consiste entrer
lapplication sous la forme de son schma ou de ses quations
boolennes de fonctionnement de son graphe dtalon, enfin,
sous forme dun langage de description. Ce dernier semble
simposer sous la forme du langage de VHDL (Very High
Development Library), pour saisir larchitecture encore appele
application .
Pour les outils de saisie de schmas, dquations, de graphes
dtats, on peut citer des logiciels tels que view logic, Mentor
Graphics, Orcad, ABEL chacun de ces logiciels de plus
en plus tendance gnrer automatiquement le code VHDL.
ESSTT- Mastre GE- SELLAMI A.

Application

Le Synoptique : qui dcrit la mthode de conception


dune architecture, il comprend trois tapes:
 une tape indpendante de la technologie du circuit
cible, contient la saisie de lapplication, la gnration
des commandes fictives du rseau de blocs logiques
par programmation, encore appel synthse , la
simulation du circuit synthtis,
 une tape qui dpend de la technologie et qui se
dveloppe aprs avoir choisi le constructeur de FPGA,
contient la programmation fictive du cblage du circuit
du constructeur choisi, encore appel routage , et
la simulation de son fonctionnement rel. Jusqu la fin
de cette tape, la conception a la possibilit de
modifier toute partie de lapplication tous les niveaux
de description facilement et de faon conomique,
 une tape de programmation physique et de tests
lectriques termine la ralisation du circuit prototype.

-Schma
-Equation
-Graphe dtat

Saisie de
lapplication

VHDL

Synoptique
de la
mthode de
conception
dun circuit
numrique
par FPGA

Gnrateur des
vecteurs de tests

Synthse

Simulation
fonctionnelle

Routage

Simulation
temporelle

ESSTT- Mastre GE- SELLAMI A.

Langage de description
VHDL
Le langage de description VHDL dont
labrviation anglaise est : Very
High Description Langage
 Cest un langage qui a t cr dans
les annes 70pour le dveloppement
de circuits intgrs logiques
complexes.

Programmation
physique

Bibliothque de
fonctions du circuit
constructeur

42

43

ESSTT- Mastre GE- SELLAMI A.

2me phase
dpendante du
composant

Logiciel de
simulation

Circuit
Circuit

41

1re phase
indpendante
du composant

44

Tests
lectriques

3me phase
indpendante
du composant

ESSTT- Mastre GE- SELLAMI A.

Le VHDL a connu un vritable succs


essentiellement sa standardisation en
Dcembre 1987 par IEEE qui a permis den
faire un langage unique pour la description, la
modlisation, la simulation, la synthse et la
documentation.
De nos jours, plus de 50% des projets
numriques sont conus en VHDL.
Le VHDL ne suit plus la dmarche
traditionnelle descendante (de la description
jusqu' la ralisation ou la synthse) mais se
limite une description directement issue des
spcifications techniques du produit quon
souhaite obtenir.
ESSTT- Mastre GE- SELLAMI A.

Avantages du langage
VHDL






45

Description plus flexible et plus lisible.


Diffrents modes de description bien
adapts aux diffrentes fonctions :
quations, diagrammes dtats,
algorithmes
Domaines dexploration des solutions plus
importants.
Prise en compte des diffrentes
contraintes : performances, contraintes
technologiques...
ESSTT- Mastre GE- SELLAMI A.

Avantages du langage
VHDL


Le circuit peut tre programm par nimporte


quel outil de synthse et ce sur nimporte quel
type dordinateur.

Le VHDL est un langage de compilation.

Le VHDL est un langage de simulation.

Le VHDL permet de changer le programme


juste avant de limplanter dans le circuit
programmable.

47

ESSTT- Mastre GE- SELLAMI A.

Avantages du langage
VHDL





46

Permet de concevoir des circuits plus


complexes tout en rduisant les temps de
dveloppement.
Rsultats optimiss et analyss.
Le VHDL permet de dcrire et de
synthtiser rapidement des circuits
contenant lquivalent de 5 20 milles
portes logiques. (un travail quivalent avec
les quations boolennes prendrait
quelques mois de travail).
ESSTT- Mastre GE- SELLAMI A.

Modle du langage VHDL


Chaque modle VHDL est compos dune unit appel
ENTITY et dau moins une ARCHITECTURE .

L ENTITY dcrit
linterface du modle
ENTITY

LARCHITECTURE dcrit le
comportement (ou fonctionnalit)
du modle.

ARCHITECTURE

Une ENTITY peut avoir plusieurs ARCHITECTURES.


48

ESSTT- Mastre GE- SELLAMI A.

Exemple de modle VHDL





Library nom_ de_ la_ bibliothque ;

Use_libray_name._package_name.all;




49

Entity <NOM_ DE_ LENTITY> is


Port (listes des entres /sorties) ;
End< NOM_ DE_ LENTITY> ;
Architecture< NOM_ DE_ LARCHITECTURE> of <
NOM_DE_ LENTITY> is
Begin
Description du fonctionnement ;
End < NOM_ DE_ LARCHITECTURE> ;

ESSTT- Mastre GE- SELLAMI A.







50

Lentit comporte les entres et les sorties avec le


nom, la structure et le type de chacun.
Larchitecture comporte la description du
fonctionnement.
Quelques dclarations et oprations utilises pour la
construction dun modle VHDL :
- Oprateurs relationnels : =, /=, <, <=,>, >=.
- Oprateurs arithmtiques : +,-, *, / ..
- Oprateurs logiques : AND, OR, XOR, NOR..
- Instructions utilises dans les dclarations
squentielles : CASE, IF, FOR.
- Instructions utilises dans les dclarations
concurrentes : When, ELSE.

ESSTT- Mastre GE- SELLAMI A.

You might also like