Vous êtes sur la page 1sur 31

Chapitre 4

Les Circuits Logiques Programmables


I. CLASSIFICATION DES CIRCUITS LOGIQUES PROGRAMMABLES
1 Classification des mmoires mortes 2 Classification des PLD

II. PRINCIPES DE REPRESENTATION


1 2 3 4 5

Structure lmentaire dun PLD Symbolisation Structure logique dun PAL Structure logique dune PROM Structure logique dun FPLA ou PLA

III. STRUCTURE ET FONCTIONNEMENT DES MEMOIRES MORTES


1 2 3 4 5 Les PROM Bipolaires LES EPROM OU UVPROM LES EEPROM LES EPROM FLASH REFERENCES DES PROM

IV. UTILISATION DES PROM COMME CIRCUIT LOGIQUE


1. Utilisation des PROM comme circuit combinatoire 2. Utilisation des PROM comme circuit squentiel

V. ORGANISATION DE LA MEMOIRE

1. Zone accessible et zone inaccessible 3. Dtermination des zones de la partie accessible 2. capacit de la partie accessible

V. ETUDE DES CIRCUITS LOGIQUES PROGRAMMABLES (PLD)


1. 2. 3. 4. Les diffrentes structures de PAL. Les rfrences des PAL Les GAL et les PALCMOS Programmation

I.

CLASSIFICATION DES CIRCUITS LOGIQUES PROGRAMMABLES.


Page 1

Les circuits logiques programmables comprennent la fois les mmoires mortes programmables ou PROM et les PLD qui permettent la ralisation des circuits logiques en tant que entit circuit logique. 1.1 Classification des mmoires mortes

Mmoires mortes

ROM
Programme par le constructeur

PROM
Programmable par lutilisateur

FPROM
PROM fusibles (Non effaable)

EPROM
ou PROM effaable

OTPROM ou EPROM
Programmable une seule fois (Non effaable)

UVPROM ou EPROM
Effaable aux rayons Ultra Violets

EEPROM ou E2PROM
PROM effaable lectriquement

EPROM Flash
Effaable lectriquement

a. ROM (Read Only Memory) Une ROM est un circuit mmoire dont le contenu a t programm sa fabrication et qui ne peut plus tre effac ni modifi. b. PROM (Programmable ROM) Les PROM sont programmables par lutilisateur. On en distingue 3 types : - FPROM ou PROM Fusibles : elles sont ralises partir de transistors bipolaires en srie avec des fusibles pouvant tre grills grce un programmateur de PROM. Les FPROM sont des mmoires dont le contenu peut tre programm par lutilisateur mais qui ne peut plus tre effac ni modifi. - EPROM (Erasable PROM) ou UVPROM (Ultra Violet PROM) : ce sont des PROM dont le contenu peut tre effacs. Ces puces possdent une petite fentre de quartz permettant de laisser passer des rayons ultraviolets provenant dun effaceur deprom. - OTPROM (One Time PROM) : les OTPROM sont des UVPROM dont la possibilit deffacement est inhibe par labsence de fentre en quartz. Elles ne sont donc pas effaables. c. EEPROM ou E2PROM (Electrically Erasable PROM) : ce sont des PROM effaables par simple impulsion lectrique adresse par adresse. d. EPROM Flash : PROM effaable lectriquement de toute la capacit de la mmoire. La dnomination Flash vient des oprations deffacement et
Page 2

de programmation de la mmoire qui sont trs rapides (10s/octet). Cette programmation a lieu en circuit. 1.2 Classification des PLD

P L D

PAL
bipolaires non effaables

EPLD
Circuits logiques effaables

FPGA
Rseaux de portes Programmables ilisateur

GAL & PALCMOS

CPLD
ou PLD Complexe

LCA
FPGA de type RAM

FPGA
base danti-fusibles

CPLD
UVPROM

CPLD
E2CMOS

isp CPLD

Les PLD (Programmable Logic Devices) comprennent les grandes familles dont : a. Les PAL (Prgrammable Array Logic) : Les PAL ou Rseaux Logiques Programmables reprsentent la plus ancienne et la plus connue des familles de PLD. La programmation seffectue par destruction de fusibles. Une fois programms, on ne peut plus les effacer. Les PAL comprennent 2 sous familles : - les PAL COMBINATOIRES ou PAL simples. Ils sont constitus de fonctions logiques combinatoires. - Les PAL REGISTRES ou FPLS (Field Programmable Logic Sequencer) pour Squenceur logique Programmable sur site. Ils sont constitus de logiques combinatoires et squentielles (registres). b. PALCMOS ou PAL effaable. Les PALCMOS sont les tout premiers PLD qui soient effaables mais au rayon ultra violet. Ces circuits sont aux PAL ce que sont les UVPROM aux PROM. c. GAL (Generic Array Logic) ou rseaux logiques gnriques. Leur fonctionnement est identique aux PALCMOS, ils sont programmables et effaables lectriquement. Les GAL sont aux PAL ce que sont les EEPROM aux PROM. Dautres produits sont connus sous les appellations de E2PAL ou PAL EECMOS.

Page 3

d. CPLD (Complex PLD) Ces circuits sont composs de plusieurs PAL lmentaires relis entre eux par une zone dinterconnexion. Cest une volution des PALCMOS classiques qui suivant la mthode de programmation ou deffacement va donner les CPLD UVPROM, les CPLD E2CMOS ou les isp CPLD. e. FPGA (Field Programmable Gates Array) Ce sont des rseaux de portes logiques programmables par lutilisateur. On en distingue deux types : - Les LCA( Logic Cell Array)ou FPGA SRAM,rseaux de cellules logiques base de SRAM pour configurer les connexions, ces circuits sont composs de blocs logiques lmentaires de 2000 10 000 portes logiques que lutilisateur peut interconnecter. - Les FPGA anti-fusibles : ils sont identiques aux LCA sauf quils permettent une plus grande intgration de portes et quils ne sont pas effaables lectriquement. Le nom anti-fusible vient de la programmation des connexions qui seffectue par fermeture de circuits, compar aux fusibles o lon ouvre les circuits.

II. PRINCIPES DE REPRESENTATION 2.1 Structure lmentaire dun PLD


Le schma ci-dessous est constitu dun rseau de portes ET et ou interconnectes pour fournir 4 sorties correspondant toutes les combinaisons des 2 entres A et B. chacune des entres (produits) est raccorde lune des 4 entres filaments fusibles dune porte OU. Quand tous les filaments sont intacts, chacune des sorties OU est 1. Chaque sortie peut tre programme pour donner la fonction souhaite de A et B en faisant fondre les filaments appropris. Une fois que toutes les sorties ont t programmes, llment contient dfinitivement les fonctions programmes.
A B

AB AB AB AB

Fusibles

S3

Page 4

S2

S1

S0

2.2 Symbolisation
Pour simplifier les reprsentations internes des PLD, les fondeurs ont recours une symbologie simplifie : - ... - ... - ... Exemple A A B B . . . . A A B B . . . .

Fusible intact

A.B

A+B

Connexion permanente

2.3 Structure logique dun PAL

. 2.4 Structure logique dune PROM

2.5 Structure logique dun FPLA ou PLA .

Page 5

Page 6

III. STRUCTURE ET FONCTIONNEMENT DES MEMOIRES MORTES 3.1 Les PROM Bipolaires
Les PROM BIPOLAIRES sont des mmoires mortes programmables par lutilisateur mais non effaables. Ceci est d la structure de leur cellule de base. 3.1.1 Cellule de base On distingue 2 grands types de cellules de base dont : .. ..

Selon le circuit associ au fusible, on distingue les cellules de PROM fusibles suivantes :

Fusible Cellule diode

fusible

Cellule transistor bipolaire

Cellule transistor MOS

Dans la PROM fusibles, chaque intersection ligne - colonne, il y a une diode ou un transistor en srie avec un fusible. L utilisateur doit faire claquer le fusible pour programmer un bit. Pour programmer un bit, on doit tablir une liaison en faisant claquer la jonction de la diode en inverse par application entre X et Y dune tension suffisante pour mettre en avalanche la diode en question
Y

PROM avalanche X

3.1.2 Programmation

La PROM est livre vierge, tous les fusibles tant intacts. La programmation va consister faire griller les fusibles indsirables en leur appliquant des tensions leves de 12V. Initialement tous les bits sont 1.

Page 7

VCC R R R R

I0 I1

PROM Programme
OE

Durant le processus de programmation, le programmateur gnre des impulsions qui ont pour effet de claquer les fusibles aux emplacements prescrits, gnrant ainsi desD0 logiques. D D D
0 1 2 3

3.1.3 Exemples de PROM Du fait de leur technologie, les PROM bipolaires consomment normment de puissance. Cest pour quoi les capacits sont modestes : de 32 x 8 bits 16K x 8 bits.
AMD 27S19 27S21 27S13 27S29 27S33 27S181 PHILIPS 82S23 82S126 82S130 82S135 82S137 82S181 Capacit 32 x 8 256 x 4 512 x 4 512 x 8 1024 x 4 1024 x 8

Page 8

Application Exercice 1 : Lire le contenu de la PROM du paragraphe 3.1.2


adresse Contenu de la PROM

I1

I0

D3

D2

D1

D0

Exercice 2 On donne ci dessous la structure dune PROM fusibles. 1. A quel moment a-t-on un bit 0 sur les sorties notes S0 Sk ? 2. Calculez n, j et k pour une mmoire de capacit gale 2K x 16 bits. 3. Quelle est la capacit de la mmoire pour n = 15 et k = 7 ? En dduire j.

FUSIBLE

P0

PJ

S0

Page 9
SK

3.2 LES EPROM OU UVPROM


3.2.1 Principe de fonctionnement La cellule mmoire lmentaire est constitue dun transistor FAMOS (Floating gate Avalanche injection Metal Oxyde Silicon). Pour programmer une telle cellule, on fait circuler un courant intense entre la source et le drain. Certains lectrons acquirent une nergie leur permettant d'atteindre la grille flottante. Ils y sont alors pigs. Lorsque la charge pige est suffisante, elle sature le transistor. Un 0 logique est programm dans la mmoire. Pour effacer la mmoire, il suffit de dcharger cette grille flottante. On expose le circuit un rayonnement ultraviolet pendant quelques dizaines de minutes. Les photons communiquent leur nergie aux lectrons et font perdre la grille flottante ses charges et la mmoire redevient vierge. Ces circuits sont quips d'une fentre en quartz pour leffacement et encapsuls dans un botier en cramique pour rsister l'chauffement. 3.2.2 Caractristiques
Pattes de gauche VPP A16 1 A15 2 A12 3 4 A7 5 A6 6 A5 7 8 A4 9 A3 10 A11 2 A12 1 A13 0 14 D0 15 D16 1 D2 Masse BROCHAGE des UVPROM Pattes de comprend : Le brochage

-
32 31 - .. A14 30 29 A13 28 A8 27 A9 BOTIER 26

droite VCC

.. PGM

MEMOIRE

- .. 20 D
7

25 A11 24 OE 23 A10 .......... 22 CE 21

19 D6 - .. 18 D5 17 D4

- ..

D3

- .. 3.2.3 Modes de fonctionnement

Page 10

Toutes les UVPROM disposent de plusieurs modes de fonctionnement dingale importance dcrits ci-dessous. Le mode lecture : Dans ce mode la mmoire est valide ; la donne est prsente sur le bus de donne en sortie. Cette donne est fournie par ladresse de la cellule envoye sur le bus dadresse. Le mode invalidation des sorties : La mmoire est valide mais les donnes ne sont pas disponibles sur les lignes de sortie qui demeurent en haute impdance. Le mode attente : La mmoire est invalide et ladresse prsente sur le bus dadresse est ignore. Les lignes de donnes sont en haute impdance. Le mode programmation : La mmoire est valide et est mise en mode programmation, la donne sur le bus de donne est en entre et sera crite ladresse slectionne sur le bus dadresse. Le mode vrification : Ce mode est identique au mode lecture. Cependant, la tension de programmation est applique la broche Vpp. Cela permet de vrifier trs rapidement la programmation correcte ou incorrecte des donnes. Le mode inhibition de programmation : Ce mode est identique au mode attente. Seulement, la tension de programmation est applique la broche Vpp.
oches Modes Br

CE

OE

PGM

VPP

Sortie

Lecture Invalidation des sorties Attente TTL Programmation Vrification Inhibition de programmation

3.2.4 Programmation Les UVPROM vierges ont tous leurs bits positionns 1. La procdure de programmation consiste programmer les 0. Compte tenu de leur taille de plus en plus importante, des algorithmes de programmation rapides sont proposs : - Ladresse de la cellule mmoire est slectionne et la donne programmer est applique sur les lignes de donne. - Une Impulsion de programmation dune dure de 100s est applique (passage de CE ltat bas). - un compteur est incrment et la mmoire est relue. Si la valeur lue est conforme celle programme, on passe ladresse suivante. Dans le
Page 11

cas contraire une nouvelle impulsion de 100s est nouveau applique, le compteur sincrmente et la mmoire est relue. - Ce processus peut se rpter jusqu 25 fois au maximum. Au del de ce nombre, si la mmoire nest toujours pas correctement programme, elle sera considre comme dfectueuse. - Si tout sest droul comme il faut, on passe ladresse suivante. - Lorsque toute la mmoire a t totalement programme, son contenu est compar avec la donne originale. En cas de conformit, fin de programmation, dans le cas contraire le circuit est dclar dfectueux.

3.3 LES EEPROM


3.3.1 Principe de fonctionnement La cellule lmentaire de lEEPROM est un transistor SAMOS (Stacked gate Avalanche injection MOS. S G1 G2 D Pour bloquer un transistor, la source (S) et le drain (D) sont mis la masse et une impulsion de tension positive est applique entre la seconde grille (G2) et la masse. Des lectrons issus du drain traversent la mince couche doxyde (isolant) et viennent se piger dans la grille flottante (G1).

p+

p+ n

Pour supprimer ce blocage du transistor, la grille G2 et la source sont mises la masse et limpulsion de tension est applique entre le drain et la masse. Les lectrons prcdemment pigs dans la grille flottante transitent en sens inverse travers loxyde mince et la tension seuil redevient normale. 3.3.2 Caractristiques Pour le brochage, les EEPROM sont identiques aux UVPROM sauf que la broche PGM est remplace par la broche WE (Write Enable). Leffacement de la mmoire se fait octet par octet. 3.3.3 Modes de fonctionnement CE OE WE Sortie Modes

Page 12

3.3.4 Programmation La programmation dune EEPROM nest rien dautre qune criture dans la mmoire. Elle se passe comme lcriture dans une mmoire vive ceci prs, quau lieu dtre quasi immdiate, elle demande environ 10ms par octet. Le chronogramme de programmation suit les tapes suivantes : - validation de la mmoire par action sur CE - invalidation des sorties par action sur OE - on fait descendre WE - on applique les donnes crire sur les sorties. Ces donnes sont mmorises au front montant suivant de WE 3.3.5 Chronogramme de programmation En suivant les tapes du chronogramme de programmation dcrites cidessus, tracez les courbes reprsentant : CE, OE, WE, ladresse et la donne.

3.4 LES EPROM FLASH


3.4.1 Principe de fonctionnement Les donnes sont entres dans la mmoire flash sous forme de bits, doctets, de mots ou de page par une opration de programmation. Une fois les donnes entres, elles resteront en mmoire indpendamment de la prsence dalimentation lectrique. La cellule de stockage de la mmoire flash est un transistor avec une porte isole en poly silicium capable de stocker des charges (lectrons). La quantit de charges stocke modifie le comportement de la cellule mmoire. La prsence de charge est interprte comme un 0 et labsence de charge comme un 1. 3.4.2 Modes de fonctionnement Elle admet 2 grands modes de fonctionnement : - le mode lecture uniquement - le mode lecture criture. La diffrence entre ces 2 modes se situe au niveau de la tension applique sur la broche Vpp. Lorsque cette tension est Vppl = 5V, il sagit du mode lecture uniquement. Lorsque cette tension VppH = 12V, il sagit du mode lecture criture. Chaque grand mode de fonctionnement comporte des sous modes comme regroup dans le tableau ci-aprs : Broches VPP Modes
READ READ Output Disable

CE L L

OE L H

WE H H

Sortie

VPPL VPPL

Page 13

ONLY

READ WRITE

Stand By READ Output Disable Stand By WRITE

VPPL VPPH VPPH VPPH VPPH

H L L H L

X L H X H

X H H X L

VppL = 5V, L=0 VppH = 12V, H=1 HZ = Haute Impdance 3.4.3 Programmation En mode programmation, la tension applique sur la broche Vpp est VppH. Cela donne accs un registre interne dans lequel on peut crire des codes et activer les possibilits deffacement et de programmation. La donne sera crite quand WE passe au niveau bas, CE au niveau bas et OE au niveau Haut. La programmation sera suivie dun test de vrification de loctet choisi. Cette vrification intervient aprs un temps de repos la fin de la programmation. Ce cycle de programmation seffectue lorsque ladresse est valide. Ce qui distingue les EPROM FLASH des EEPROM est le fait quelles soient plus rapides en terme de programmation et deffacement, do lappellation FLASH (temps de programmation= 100s, temps deffacement= 1s). 3.5 REFERENCES DES PROM Les rfrences des PROM peuvent se prsenter sous la forme gnrique suivante :

FIR XX AB YYYY - ZZ
.. .. .. .. ..

FIR XX
AB

: :
:

On trouve par exemple KM pour SAMSUNG, Am pour AMD 27 pour EPROM, 28 pour EEPROM, 28F pour EPROM Flash C pour CMOS, LV pour Low Voltage (3.3v), aucune lettre pour 16 pour 16 Kbits, 1024 pour 1024 Kbits ou 1 Mbits temps daccs en ns. 20 pour 200 ns

TTL YYYY : ZZ :

Les mmoires qui respectent cette rfrence obissent au principe suivant :

Page 14

Y peut prendre les valeurs suivantes : - .. - .. - .. - ..

CON XX AB 0Y0 ZZ
Exemples KM27C010 pour une capacit de 1Mbits soit 128K x 8 bits KM27C020 pour une capacit de 2Mbits soit 256K x 8 bits

IV. UTILISATION DES PROM COMME CIRCUIT LOGIQUE


Dans 90% des cas, les mmoires mortes sont utilises pour stocker des donnes (constantes, table, jeu de caractres) ou des programmes (BIOS). Elles sont galement utilises comme des circuits logiques (combinatoires et squentiels) en lieu et place des circuits PAL.

4.1. Utilisation des PROM comme circuit combinatoire


4.1.1. Principe de ralisation Pour utiliser une PROM comme circuit logique combinatoire, on procde comme suit : 1. . 2. . 3. . 4.1.2. Ralisation dun dcodeur

Page 15

En utilisant une EPROM 27C256, on veut raliser un dcodeur 1 parmi 8 74LS138 comportant : - 3 entres de validation (G2A et G2B actives ltat bas et G1 tant de plus fort poids et active ltat haut) - 3 entres de slection A, B, C (A tant le bit de poids le plus faible) - 8 sorties Y0 Y7 actives ltat bas. 1. LEPROM 27C256 est une mmoire de 32 Ko. Elle possde donc un bus dadresse de 15 bits allant de A0 A14 et un bus de donne de 8 bits allant de D0 D7. Le dcodeur possde : - 6 entres dont 3 entres de validation (G2A G2B et G1) et 3 entres de slection (A, B, C) connecter sur la partie utile du bus dadresse, cest-dire A0 A5 de lEPROM. La partie non utile A6 A14 du bus dadresse sera relie la masse. - 8 sorties (Y0 Y7) connecter sur le bus de donne D0 D7 de lEPROM. On peut proposer les affectations suivantes : - Les entres de validation G1, G2B et G2A sont connectes respectivement aux lignes A5, A4 et A3. - Les entres de slection C, B et A sont respectivement connectes aux lignes A2, A1, A0. Pour que lEPROM fonctionne en lecture, on reliera la masse, ses 2 entres CE et OE actives ltat bas. On obtient le schma fonctionnel suivant : 2. Pour obtenir le contenu de lEPROM, on peut dterminer dabord les 8 diffrentes zones dfinies par les combinaisons de G1, G2A et G2B.
Combinaisons G1 0 0 0 0 1 1 1 1 G2B 0 0 1 1 0 0 1 1

Zones G2A 0 Zone1 : pas de dcodage


1 0 1 0 1 0 1 Zone 2 : pas de dcodage Zone 3 : pas de dcodage Zone 4 : pas de dcodage Zone 5 : dcodage Zone 6 : pas de dcodage Zone 7 : pas de dcodage Zone 8 : pas de dcodage

Page 16

Seule la zone dfinie par la combinaison G1=1, G2A =0, G2B =0 permet de valider le botier dcodeur. Avec les affectations faites ci haut on obtient A5 = 1, A4 = 0, A3 = 0. Ce qui donne le contenu suivant de lEPROM

Bits mis la masse

A14

A6

G1 A5 0 0

G2B A4 0 1

G2A A3 0 1

C A2 0 1

B A1 0 1

A A0 0 1

Adresse en hexadcimal

Contenu de l EPROM

D7 D6 D5 D4 D3 D2 D1 D0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
Pas de dcodage

0000 H 001F H

0 . 0

Dcodage

1 1

0 1

1 1

0 1

0 1

0 1

0028 H 003F H

1 1

1 1

1 1

1 1

1 1

1 1

1 1

1 1

Pas de dcodage

4.2. Utilisation des PROM comme circuit squentiel


4.2.1 Principe Un systme squentiel peut tre dcompos en 2 parties : ... ...
Entres principales du systme Sorties du systme

La partie combinatoire gnre les sorties de ltat suivant en fonction de ltat prsent et des entres principales.
Partie combinatoire Page 17 Elment de mmorisation

Etat prsent

Etat suivant

A A210

Lutilisation dune PROM pour raliser un systme squentiel se fait de la manire suivante : la PROM ralise la partie combinatoire la partie de mmorisation est ralise soit par des bascules soit par des compteurs 4.2.2 Etude par lexemple On veut raliser un compteur ayant le cycle suivant, avec une PROM. 0 1 5 6

On spare la sortie et ltat suivant quil faut alors coder. Cette solution permet de considrer que lon a : - une partie volution du systme dcrite par ltat suivant - une partie gnration des sorties Les deux parties doivent tre prsentes simultanment. Cela sobtient en les stockant dans la mme case mmoire. On aura donc besoin de : 3 bits pour coder les tats suivants (nombre de chiffre compt = 7 23) de 4 bits pour coder les valeurs des sorties (le plus grand chiffre compt = 9 24) Chaque mot mmoire aura le format suivant :
D7 D6 D5 D4 D3 Code sortie D2 D1 D0

Code tat suivant

On obtient le schma suivant :

H
Bascules D Q6 Q5 Q4 Q3 Q2 Q1 Q0

Etats prsents

Mmoire

Images des sorties

D2 D0 Etats suivants

Page 18

Sorties du systme

D7 D4

On en dduit le contenu suivant de la PROM


A2 0 0 0 0 1 1 1 Etat prsent A1 A0 0 0 0 1 1 0 1 1 0 0 0 1 1 0 D7 (Q6) sorties D6 (Q5) D5 (Q4) D4 (Q3) NU D3 D2 (Q2) Etat suivant D1 (Q1) D0 (Q0)

V. ORGANISATION DE LA MEMOIRE 1. Zone accessible et zone inaccessible


Lutilisation des mmoires (PROM) pour raliser des fonctions logiques comme nous lavons vu dans le paragraphe 4, se fait en fixant par codage la valeur de certains bits du bus dadresse. Ces bits sappellent bits fixes .

Page 19

En fixant certains bits du bus dadresse, on autorise laccs certaines zones de la mmoire et on en interdit pour dautres. On parle alors de zones accessibles et de zones inaccessibles : Une partie de la mmoire est dite accessible sil existe une combinaison des bits du bus dadresse permettant daccder une des cases mmoires quelle contient. Une partie de la mmoire sera dite inaccessible si quelle que soit la combinaison des bits du bus dadresse, on ne peut accder aucune case quelle contient.

Exemple : Soit une mmoire de 8 mots ayant un bus dadresse de 3 bits : A0, A1, A2. Cas 1 : on fixe A2 = 0 A2 0 1 0 1 1 A1 0 A0 0 1 0 1 0 1 0 1 Mot 0 Mot 1 Mot 2 Mot 3 Mot 4 Mot 5 Mot 6 Mot 7

Les mots 0, 1, 2, 3 sont accessibles. Etant contigus, on considre quils forment une seule zone de 4 mots. Les mots 4, 5, 6 et 7 forment aussi une seule zone mais inaccessible de 4 mots. Cas 2 : on fixe A0=1 A2 0 1 0 1 1 A1 0 A0 0 1 0 1 0 1 0 1 Mot 0 Mot 1 Mot 2 Mot 3 Mot 4 Mot 5 Mot 6 Mot 7

Les cases 1, 3, 5 et 7 sont accessibles. Ntant pas contigus, on considre quelles forment 4 zones dune case chacune. Les mots 0, 2, 4 et 6 forment galement 4 zones inaccessibles.

Conclusion :

Page 20

2. capacit de la partie accessible


Soit y le nombre de bits fixs et CACC la capacit de la partie accessible. La capacit de la partie accessible est donne par la formule suivante : CACC = Capacit totale de la mmoire/2y

3. Dtermination des zones de la partie accessible


Pour dterminer le nombre de zones de la partie accessible et les adresses de dbut et de fin de ces zones, on procde comme suit : 1. Dessiner le bus dadresse quon nommera A0 An-1 2. Placer la valeur des bits fixs sur les bits dadresse et calculer capacit de la partie accessible. la

3. Parcourir le bus dadresse de A0 vers le bit An-1 et sarrter lorsque lon rencontre le premier bit fix nomm Ax. Ce bit sappelle bit sparateur. Il divise le bus dadresse en deux parties qui sont : A0 Ax-1 et Ax+1 An-1 4. La partie A0 Ax-1 permet de dterminer : ladresse de dbut dune zone en mettant tous les bits 0 et en lisant ladresse de dbut donne par tous les bits A0 An-1. Ladresse de fin dune zone en mettant tous les bits 1 et en lisant ladresse de fin donne par tous les bits A0 An-1.

VI. ETUDE DES CIRCUITS LOGIQUES PROGRAMMABLES (PLD)

Page 21

6.1. Les diffrentes structures de PAL.


6.1.1 Structure gnrale Tout PAL est constitu : - D'entres (Input) : I1 In avec 8<n<20. - De sorties (Output) Ou dentres /sorties (I/O) de type Trois Etats : O 1 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. D'un point de vue fonctionnel un PAL est constitu d'une zone d'entre de fusibles ou matrice de programmation et une structure de sortie non programmable dterminant le type de circuit (voir schma ci-dessous).

Symbolisation normalise On peut distinguer trois types de structures de base: - . - . - . 6.1.2 Structure de PAL combinatoire Le circuit est constitu uniquement de portes logiques combinatoires lmentaires. Les entres sont directes et inverss et aboutissent sur la matrice programmable. La sortie passe par un buffer command par le rseau programmable. La sortie est rinjecte dans la zone programmable travers un circuit inverseur non inverseur. Cela permet dutiliser la sortie comme une entre. On parle alors dentre/sortie. Il en existe trois types: - H (High) : Portes ET suivie d'une Porte OU. Sortie active l'tat haut.

Page 22

- L (Low) : Porte ET suivie d'une Porte NON OU. Sortie active l'tat bas. - C (Combine) programmable en type H ou L. Exemple : type L

6.1.3 Structure de PAL squentiel Il en existe trois types: - R (Register) : Registre. Ces circuits sont composs de bascule D. Les sorties des bascules sont de type trois tats contrls par un signal de validation Enable ou OE, et une horloge est commune toutes les bascules (clock). Exemple : type R

- X (Register Or Exclusif) : Ou Exclusif et Registre. Identique au prcdent sauf que le rseau programmable sort par une porte XOR avant dentrer dans la bascule D.

- RA (Register Asynchron) : Registre asynchrone polarit programmable. La structure de sortie est beaucoup plus volue par rapport aux autres PAL. Elle se rapproche des PAL de type versatile.

Page 23

Elle peut prendre quatre configurations (figures ci-dessous) suivant les valeurs de AP et AR. Si AP=AR=1 le registre est invalide et le PAL se transforme en modle combinatoire simple.

.. .

.. .

6.1.4 Caractristiques des PAL combinatoires et registres On distingue deux familles de ces PAL : lune 20 pattes et lautre 24 pattes. On parle alors de famille 20 pattes ou de famille 24 pattes. Elles portent respectivement les dsignations suivantes : PAL16R8 et PAL20R8 PAL16R8 : Elle comporte 4 membres 16L8 16R8 16R6 16R4 PAL20R8 : Elle comporte aussi 4 membres 20L8 20R8 20R6 20R4

Page 24

6.1.5 Structure de PAL versatile ou VPAL Ce type de structure reprsente les PAL les plus volues, car les structures de sorties dites versatiles proposent quatre configurations possibles. Le plus connu est le PAL22V10 de AMD. La structure de la cellule de sortie est la suivante.

Suivant les valeurs des entres de programmation de la cellule de sortie S0 et S1, on obtient les structures de sortie reprsentes ci-dessous.

..

..

..

..

Ces 4 structures reprsentent toutes les architectures de sorties des PAL classiques. 6.2. Les rfrences des PAL. Les diverses possibilits des PAL et leur standardisation ont conduit les constructeurs dfinir une nomenclature permettant de dcoder assez facilement leur rfrence.

Page 25

6.2.1 Lettres codes Des lettres codes sont utilises pour identifier chaque structure de sortie. Ces lettres codes sont rsumes dans le tableau ci-aprs.
Lettres codes L H P C R RA X RP V Structures de sorties Combinatoire active bas Combinatoire active haut Combinatoire polarit programmable Combinatoire complmentaire Registre synchrone ( bascule D) Registre asynchrone Registre et XOR Registre programmable Versatile (macro cellule)

6.2.2. Exemples de rfrence Chez AMD

PAL CE pour version CMOS Nombre dentres Structure de sortie Nombre de sortie Consommatio n Vitesse Botier, gamme

Remarque : Le nombre dentres varie entre 10 et 22. Le nombre de sorties varie entre 1 et 10. La vitesse indique le temps de propagation en ns. 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 .

Page 26

6.3. LES GAL ET LES PALCMOS. Les aussi bien que les PALCMOS sont des PAL programmables et effaables lectriquement. Ils partagent les mmes rfrences : 16V8, 20V8, 18V10, 22V10, 26CV12. 6.3.1 Architecture gnrale Larchitecture gnrale montre une zone dinterconnexion programmable de type ET en technologie E2CMOS. Cette zone permet de relier entre elles des macros cellules appeles OLMC (Ouput Logic Macro Cell). Le schma cidessous en montre un exemple.

6.3.2 Structure de lOLMC LOLMC dun GAL versatile programmable et comprend : - 1 bascule D - 1 porte XOR - 1 buffer de sortie (reprsent ci-dessous) est polarit

Page 27

- 4 MUX lui permettant de prendre de nombreuses configurations diffrentes qui sont : . . . . . .

0 1

Comme cela a t spcifi auparavant, ces structures de sortie sont programmables et permettent dmuler nimporte quelle autre structure de sortie. Elles possdent en tout :

Les configurations sont reprsentes ci-aprs :

Page 28

. 6.3.3. Table de vrit


CL1x 0 1 0 1 0 1 0 CG1 0 0 0 0 1 1 1 CL0x 0 0 1 1 0 0 1

Configurations de sortie

Page 29

6.4. PROGRAMMATION PROGRAMMABLES

DES

CIRCUITS

LOGIQUES

La programmation des PLD et des FPGA ncessite un logiciel adapt pour le dveloppement du programme et le programmateur permettant de griller le circuit tel que le montre la figure ci-dessous.
Circuit non encore programm enficher sur le programmateur

Circuit dj programm

Le logiciel de programmation est install sur un micro ordinateur

Programmateur

En outre il est conseill de suivre la dmarche dcrite par lorganigramme suivant :

Saisie des quations logiques, de la table de vrit, du logigramme ou de lalgorithme avec le logiciel de dveloppement

Page 30

Le logiciel de dveloppement 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 (Joint Electronic Device Engineering Council : Organisme de normalisation) 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.

Page 31