Archtecture

Télécharger au format pdf ou txt
Télécharger au format pdf ou txt
Vous êtes sur la page 1sur 12

Les fonctions logiques programmables

1 - Prsentation
Les fonctions logiques programmables sont des circuits disposants des entres et des sorties dont lutilisateur peut programmer le schma logique daprs les besoins lies la fonction souhaite : Logique combinatoire et/ou squentielle. Ces composants sont appels des PLD (Programmable Logic Device) Avantages : Un seul circuit peut remplacer lui seul lquivalent de plusieurs circuits en technologie standard TTL ou CMOS. Composant de faible cot car produits en grand nombre. La fonction logique ralise peut tre modifie par programmation, donc sans quil soit ncessaire de redessiner un nouveau circuit imprim. Inconvnients : Phase de programmation qui ncessite du temps de main duvre et limmobilisation de moyens de production (programmateur/Logiciel) Logiciels et matriel compatibles avec le composant programmer Comptences supplmentaires.

2 - Les diffrents familles de circuits programmable :


Il existe plusieurs familles de PLD qui sont diffrencies par leur structure interne. Le tableau suivant prsente certaines de ces familles.

Type
PROM PAL GAL EPLD FPGA

Nombre de portes intgres


2 000 500 000 10 100 10 100 100 3000 2000 3000

Matrice ET
Fixe Programmable Programmable Programmable Programmable

Matrice OU
Programmable Fixe Fixe Fixe Programmable

Effaable
Non Non Electriquement Aux U-V Electriquement

Les constructeurs de P.L.D. se livrent entre eux une guerre commerciale et sur les appellations, ce qui explique la difficult tablir la classification des P.L.D.

La plus ancienne et la plus connue est certainement la famille des P.A.L. Le nom a t donn par la socit M.M.I (qui a fusionn depuis avec A.M.D.), c'est une appellation dpose, comme Walkman pour Sony ou Rfrigrateur pour Frigidaire. 2.1 Les PAL P.A.L. signifie Programmable Array Logic, c'est dire rseau logique programmable. La programmation de ces circuits s'effectue par destruction de fusibles. Une fois programms on ne peut plus les effacer. On distingue deux sous familles: - Les P.A.L. combinatoires ou P.A.L. simples. Ils sont constitus de fonctions de logique combinatoire. - Les P.A.L. registres ou F.P.L.S. Field Programmable Logic Squencer pour squenceur logique programmable. Ils sont constitus de logique combinatoire et squentielle (Registre).
Les fonctions logiques programmables - page 1
LYCEE LACHENAL - M. BERNARD - dit le 03/03/2009

2.2 Les EPLD (PAL EFFACABLES) E.P.L.D. signifie Erasable Programmable Logic Device, c'est dire circuit logique programmable et effaable et qui sont aux P.A.L. ce que sont les U.V.P.R.OM. aux P.R.O.M. Les E.P.L.D. peuvent tre effacs par U.V. ou lectriquement. Ils sont encore appels P.A.L. CMOS. 2.3 Les GAL G.A.L. signifie Generic Array Logic ou encore rseau logique gnrique ce qui veut dire pas grand chose mais qui sont aux P.A.L. ce que sont les E.E.P.R.O.M aux P.R.O.M. Le nom de G.A.L. a t dpos par LATTICE SEMICONDUCTOR. Leur fonctionnement est identique aux P.A.L. CMOS, ils sont programmables et effaables lectriquement. 2.4 Les C P L D C.P.L.D. signifie Complex Programmable Logic Device. Ces circuits sont composs de plusieurs P.A.L.s lmentaires (Par exemple lquivalent de P.A.L.s 22V10) relis entre-eux par une zone dinterconnexion. Grce cette architecture, ils permettent datteindre des vitesses de fonctionnement leves (plusieurs centaine de Mhz). 2.5 Les L.C.A. et F.P.G.A. anti-fusible. - L.C.A. signifie Logic Cell Array ou encore rseau de cellules logiques. Ces circuits sont composs de blocs logiques lmentaires de 2000 10000 portes que l'utilisateur peut interconnecter. - F.P.G.A signifie Forecasting Programmable Gate Array. Les F.P.G.A. anti-fusibles sont identiques aux L.C.A sauf qu'ils permettent une plus grande intgration de portes et ils ne sont pas effaables lectriquement. Le nom anti-fusible vient de la programmation des connexions qui s'effectue par fermeture de circuits, compar aux fusibles o l'on ouvre les circuits. Voir rsum graphique des familles dans lannexe 1.

3 - Architecture dun composant programmable


Larchitecture interne dun composant programmable dpend de la catgorie de composant utilis. On restera sur la catgorie de produit qui occupe la plus grande place sur le march : La gamme PAL16V8/22V10 Un composant logique programmable (PAL : Programmable Array Logic) est bas sur le concept quil est possible de remmener toute quation logique en une somme de produits.

Voir Exo 1 du TD.

Les fonctions logiques programmables - page 2


LYCEE LACHENAL - M. BERNARD - dit le 03/03/2009

La plupart des PLDs suivent la structure suivante : Un ensemble doprateurs ET sur lesquels viennent se connecter les variables dentre et leurs complments. Un ensemble doprateurs OU sur lesquels les sorties des oprateurs ET sont connectes. Une ventuelle structure de sortie (Portes inverseuses, logique 3 tats, registres...). Les deux premiers ensembles forment chacun ce quon appelle une matrice. Les interconnexions de ces matrices doivent tre programmables. Cest la raison pour laquelle elles sont assures par des fusibles qui sont grills lors de la programmation. Lorsquun PLD est vierge toutes les connexions sont assures.

Le produit vedette est le PAL 22V10CE.


Architecture interne (extrait associ une sortie)

Architecture interne Reprsentation modlise

Les fonctions logiques programmables - page 3


LYCEE LACHENAL - M. BERNARD - dit le 03/03/2009

Reprsentation de larchitecture interne dun PLD:

Symbolisation simplifie des connexions : La reprsentation schmatique de la structure ci-dessus demande beaucoup d'espace pour reprsenter un P.A.L. en entier. Les industriels ont adopt une autre reprsentation plus synthtique. Voir ci-dessous. Fig. 1: Porte ET 3 entres. Fig. 2: Porte ET 3 entres reprsentation P.A.L. Note :les croix reprsentent les fusibles intacts. Fig. 3: Reprsentation de la structure interne dun P.A.L..

Fig. 1

Fig. 3

Fig. 2

Les fonctions logiques programmables - page 4


LYCEE LACHENAL - M. BERNARD - dit le 03/03/2009

Organisation des PALS : 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 3 Etats : O1 On ou IO1 IOn (2<n<15). On peut trouver 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. Sortie 3 tats :
Porte sortie 3 tats, permettant de dconnecter (rendre indpendant) la sortie I/O de ltat logique impos par la sortie du OU. Dans ce cas la sortie I/O est utilise en entre

- Certaines broches de ces circuits peuvent tre utilises aussi bien en entre quen sortie grce un systme de logique 3 tats. La commande de cette dernire est configure au moment de la programmation. - La structure de sortie permet aussi de rinjecter les sorties en entre (Feed-back).

4 - Nomenclature des PALS


Selon le type de PAL la structure de sortie peut tre constitue dune porte NON, dune porte OU Exclusive , dune bascule D ou dune combinaison des trois. Le nombre dentres et de sorties est lui aussi li la rfrence du PAL. Les diverses possibilits de ces circuits et leur standardisation ont conduit les constructeurs dfinir une nomenclature permettant de dcoder assez facilement la rfrence des PALs.

PAL (CE) XX AB YY C ZZ DEF


Type de botier Vitesse Consommation Nombre de sorties Structure des sorties Nombre dEntres et dE/S CE pour technologie CMOS (MOS-FET) Effaables lectriquement Type de PLD Remarques : Le nombre dentres varie entre 10 et 22. Le nombre de sorties varie entre 1 et 10. La puissance est indique par une lettre code. La vitesse indique le temps de propagation en nS. Les versions versatiles ont une cellule de sortie programmable permettant dobtenir nimporte quel autre type de structure de sortie (L, H, R ...). Les versions CMOS (CE) sont effaables lectriquement. Les fusibles sont remplacs par des transistors de type MOS FET. Ce ne sont ni plus ni moins que des GALs .

Lettre(s) Code(s) L H C R RA X V

Structure de sortie OU combinatoire - active bas OU combinatoire - active haut OU combinatoire - active L OU H par programmation Registre synchrone (D) (et OE) Registre Asynchrone (et OE) OU eXclusif et Registre (D) Versatile (programmable)

Les fonctions logiques programmables - page 5


LYCEE LACHENAL - M. BERNARD - dit le 03/03/2009

5 - Exemple de PALs/GALs couramment utiliss


5.1 PAL16V8 Ce composant comporte 20 broches : - 2 broches dalimentation, - 8 broches configurables en sortie - 16 broches dentres / sorties (donc 16-8 broches = 8 broches dentres)

5.2 Avantage des Gals / aux Pals Linconvnient majeur des PALs est quils ne sont programmables quune seule fois. LATTICE a donc pens, il y a un peu plus de 10 ans, remplacer les fusibles irrversibles des PALs par des transistors MOS FET pouvant tre rgnrs. Ceci a donc donn naissance aux GALs que lon pourrait traduire par Rseau logique Gnrique . Ces circuits peuvent donc tre reprogramms volont sans pour autant avoir une dure de vie restreinte. On peut aussi noter que dans leur structure interne les GALs sont constitus de transistor CMOS alors que les PALs classiques sont constitus de transistors bipolaires. La consommation des GALs est donc beaucoup plus faible. Depuis dautres constructeurs fabriquent ce type de produit en les appelant PAL CMOS (PAL CE). Par soucis de remplacer les PALs, LATTICE a quip la plupart de ses GALs de macro-cellules programmables permettant dmuler nimporte quel PAL. Ces structures de sortie sont donc du type Versatile (V).

Les fonctions logiques programmables - page 6


LYCEE LACHENAL - M. BERNARD - dit le 03/03/2009

6 Programmation des Pals La programmation des PLDs ncessite un logiciel adapt pour le dveloppement du programme et un programmateur permettant de griller le circuit. En outre il est conseill de suivre la dmarche dcrite par lorganigramme suivant :

Cahier des charges

Mise en forme et rsolution du problme sous forme dquation logique, de logigramme ou dalgorithme

Choix du PLD en fonction du nombre dentres / sorties ncessaires.

Saisie des quations logiques, de la table de vrit, du logigramme ou de lalgorithme

Simplification logique

Logiciel WARP

Gnration du fichier au format JEDEC

Simulation

Programmateur

Programmation du PLD partir du fichier JEDEC et dun programmateur

Fin - PLD programm !


=> Le logiciel warp permet de simplifier les quations et de gnrer un fichier JEDEC partir des donnes rentres par loprateur. Il simule aussi le fonctionnement du PLD avec le programme obtenu. Le logiciel PALASM dvelopp par AMD permet deffectuer ces oprations pour la programmation de PAL ou de GAL. => Le fichier JEDEC est un ensemble de donnes binaires indiquant au programmateur les fusibles griller. => Le programmateur permet de griller les fusibles du PLD en fonctions des donnes du fichier JEDEC. Il est en gnral associ un logiciel de pilotage. Les programmateurs utiliss sont les mmes que ceux permettant la programmation des EPROM.
Les fonctions logiques programmables - page 7
LYCEE LACHENAL - M. BERNARD - dit le 03/03/2009

Annexe 1 : Classification des mmoires mortes et des PLD

Les fonctions logiques programmables - page 8


LYCEE LACHENAL - M. BERNARD - dit le 03/03/2009

Annexe 2 : Liste des abrviations ASIC Application Specific Integrated Circuit - Circuit intgr conu la demande BLMC Buried Logic Macrocell - Macro cellule logique enterre CC Chip Carrier - Botier "porteur de puce" CPLD Complex Programmable Logic Device - Rseau logique programmable complexe - plusieurs PLD sur une mme pastille. DRAM Dynamic Random Access Memory - Mmoire dynamique accs alatoire DSP Digital Signal Processor - Processeur orient vers le traitement du signal EDIF Electronic Design Interchange Format EEPLD Electrically Erasable Programmable Logic Device - PLD effaable lectriquement EEPROM Electrically Erasable PROM - Mmoire lecture seule, lectriquement effaable EPLD Erasable Programmable Logic Device - Rseau logique programmable effaable EPROM Erasable Programmable Read Only Memory - Mmoire lecture seule effaable FPGA Field Programmable Gate Array - Rseau de portes programmables - haute densit dintgration FPROM Field Programmable Read Only Memory GAL Generic Array Logic - PAL gnrique ISP In-System (In Situ) Programmable - Composant programmable sur carte JEDEC Joint Electronic Device Engineering Council - Organisme de normalisation JTAG Joint Test Action Group - Bus de test des composants LCA Logic Cell Array (Xilinx) - Rseau de cellules logiques LUT Look-Up Table MAX Multiple Array Matrix - Megapals d'Altera NOVRAM ou NVRAM Non Volatile Random Access Memory - RAM non volatile OTP One Time Programmable - Programmable une seule fois PAL Programmable Array Logic - Rseau logique programmable = PLD PGA Programmable Gate Array - Rseau de portes programmable PLA Programmable Logic Array - Rseau logique programmable - matrices ET, OU et NON programmables PLD Programmable Logic Device - Dispositif logique programmable - matrice ET programmable, OU fixe, cellules de sortie POF Programmer Object File - Fichier objet pour programmateur PROM Programmable Read Only Memory - Mmoire lecture seule programmable RAM Random Access Memory - Mmoire accs alatoire ROM Read Only Memory - Mmoire lecture seule SDF Standard Delay File SOG Sea-of-Gates - Mer de portes : rseau actif logique prdiffus SRAM Static Random Access Memory - Mmoire statique accs alatoire TTL Transistor Transistor Logic - Logique transistor-transistor VHDL VHSIC Hardware Description Language - Langage de description matrielle VHSIC VHSIC Very High Speed Integrated Circuit - Circuit intgr trs grande vitesse
XNF Xilinx Netlist Format - Format de fichier Xilinx

Les fonctions logiques programmables - page 9


LYCEE LACHENAL - M. BERNARD - dit le 03/03/2009

Annexe 3 : Les diffrentes structures

Structure PAL (OU PLD)

Structure PROM

Structure PLA

Les fonctions logiques programmables - page 10


LYCEE LACHENAL - M. BERNARD - dit le 03/03/2009

Annexe 4 : Documentation constructeur - Aperu des diffrents types de structures

PAL 22V10

Les fonctions logiques programmables - page 11


LYCEE LACHENAL - M. BERNARD - dit le 03/03/2009

Annexe 4 : Documentation constructeur - Aperu des diffrents types de structures

PAL 22V10

Les fonctions logiques programmables - page 12


LYCEE LACHENAL - M. BERNARD - dit le 03/03/2009

Vous aimerez peut-être aussi