Académique Documents
Professionnel Documents
Culture Documents
Omar DIOURI
Email : diouri@upf.ac.ma 1
Année Universitaire 2022/2023
Présentation de la Logique Programmée
Actuellement les Objets Techniques (O.T.) utilisent de plus en plus la logique programmée
(µP, Mémoires, µC, ...). Ces structures ont besoin de s'interfacer entre elles. Elles utilisent
généralement pour réaliser ces interfaces des fonctions à base de fonctions logiques
élémentaires, compteurs, registres , .... Le nombre de circuits nécessaires pour remplir ces
fonctions peut devenir très vite important.
Ces circuits sont capables pour un O.T. de réaliser plusieurs fonctions logiques dans un seul
circuit. Si ces fonctions étaient réalisées à base des circuits logiques classiques, il en
faudrait plusieurs circuits.
Un autre avantage, l'évolution des fonctions d'un O.T. s'effectue par programmation
comparée à une solution classique où il faut refaire un circuit imprimé si on veut modifier le
fonctionnement.
La classification des P.L.D
❑P.A.L.
P.A.L. signifie Programmable Array Logic, c'est à dire réseau logique
programmable. La programmation de ces circuits s'effectue par destruction de
fusibles. Une fois programmés on ne peut plus les effacer. On distingue deux sous
familles:
- Les P.A.L. combinatoires ou P.A.L. simples. Ils sont constitués de fonctions
logiques combinatoires.
- Les P.A.L. à registres ou F.P.L.S. Field Programmable Logic Séquencer pour
séquenceur logique programmable. Ils sont constitués de logique combinatoire et
séquentielle (Registre).
❑Les P.A.L. effaçables: E.P.L.D. Ce qui signifie Erasable Programmable Logic Device,
peuvent être effacés par U.V. ou électriquement. Ils sont encore appelés P.A.L. CMOS.
❑Les G.A.L. Ce qui signifie Generic Array Logic ou encore réseau logique générique
La classification des P.L.D
❑Les C.P.L.D. Ce qui signifie Complex Programmable Logic Device. Ces circuits
sont composés de plusieurs P.A.L.s élémentaires (Par exemple l’équivalent de
P.A.L.s 22V10) reliés entre-eux par une zone d’interconnexion. Grâce à cette
architecture, ils permettent d’atteindre des vitesses de fonctionnement élevées
(plusieurs centaine de Mhz).
❑Les F.P.G.A. à anti fusibles permettent une plus grande intégration de portes et ils
ne sont pas effaçables é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.
La classification des P.L.D
P.A.L. Programmable Array Logic
a: Porte ET à 3 entrées.
b: Porte ET à 3 entrées représentation P.A.L. les croix représentent les fusibles intacts.
c: Représentation de la structure interne d’un P.A.L.
La classification des P.L.D
P.A.L. Programmable Array Logic
La symbolisation et la représentation
La classification des P.L.D
P.A.L. Programmable Array Logic
Les différentes structures
❖ Structure générale
D’après la structure des PAL, il est clair que ces derniers présentent l’inconvénient d’être
programmable une seule fois, ce qui donne un gaspillage important, lorsqu’on veut
développer un nouveau circuit. Pour remédier à ce problème, la firme LATICE a pensé à
remplacer les fusibles irréversibles des PAL, par des transistors MOSFET pouvant être
régénérés et atteindre les objectifs suivants :
- Proposer des produits fabriqués selon une technologie qui permet des tests sur la zone de
programmation lors de la fabrication du circuit, ce qui été impossible pour les PAL puisque
cela consistait à faire sauter des fusibles.
- Permettre de remplacer les PAL dans n’importe quelle application.
- Avoir une plus grande souplesse de configuration des entrées/sorties par rapport à celle
des PAL.
La classification des P.L.D
Circuit GAL (Generic Array Logic)
Réseau logique de portes
La structure de base est donc la même que celle des PAL, matrice ET programmable
matrice OU fixe comme indiqué sur la figure
La classification des P.L.D
Circuit GAL (Generic Array Logic)
Réseau logique de portes
Au niveau de la structure interne, les GAL sont constitués de transistor CMOS alors que les
PAL classiques sont constitués de transistors bipolaires. Il reste encore un inconvénient
important dans les circuits PAL qui vient du fait que leurs structures de sorties soit figée
pour chaque composant.
Il est donc nécessaire de choisir le type de circuit PAL selon les fonctions à réaliser. Pour
cela on a introduit dans la structure de sorties des circuits GAL des macros cellules
programmables qui rendent le circuit versatile, ce qui veut dire qu’il est possible, par
programmation, de choisir entre une configuration de sortie combinatoire ou une
configuration de sortie séquentielle.
Donc un circuit GAL est constitué de :
- Une matrice AND reprogrammable et effaçable électriquement (EECMOS).
- Une matrice OR fixe (comme celle des PAL).
- Une configuration de sortie programmable à base de macro cellule (OLMC).
La classification des P.L.D
Circuit GAL (Generic Array Logic)
Matrice AND
Dans un circuit PAL la matrice AND contient des fusibles, alors que dans un circuit GAL
elle est reprogrammable et effaçable électriquement et contient des cellules E2CMOS qui
ont pour élément de base le transistor MOSFET.
La classification des P.L.D
Circuit GAL (Generic Array Logic)
Macro-cellule de sortie (OLMC)
GAL 16V8
La classification des P.L.D
C.P.L.D ( Complex Programmable Logic Device)
Ces circuits ont une capacité en nombre de portes et en possibilités de configuration très
supérieure à celle des PALs. Leurs architectures sont basées sur celles des PALS. Un CPLD
c’est l’équivalent de plusieurs PALs mis dans le même circuit associé à une zone
d’interconnexion. Le nombres de portes peut varier entre 100 et 100 000 portes logiques et
entre 16 et 1000 bascules voir plus.
Lancé sur le marché en 1984 par XILINX, le FPGA (Field Programmable Gate Array) est
un circuit pré-diffusé programmable. Le concept du FPGA est basé sur l’utilisation d’une
unité appelée LUT (look up table) comme élément combinatoire de la cellule de base. La
LUT peut être vu comme une mémoire qui permet de créer n’importe quelle fonction
logique combinatoire à 4 variables d’entrées. On l’appel aussi générateur de fonctions
(Function generator).
La classification des P.L.D
F.P.G.A (Fields Programmable Gate Array)
La puissance de ces circuits est telle qu’ils peuvent être composés de plusieurs
milliers voire millions de portes logiques et de bascules. Les deux plus grands
constructeurs de FPGA sont XILINX et ALTERA.
Ils sont composés de blocs logiques élémentaires (plusieurs milliers de portes) qui
peuvent être interconnectés.
La classification des P.L.D
F.P.G.A (Fields Programmable Gate Array)
Les cellules de base d’un FPGA sont disposées en lignes et en colonnes. Des lignes
d’interconnexions programmables qui traversent le circuit, horizontalement et
verticalement, entre les différentes cellules, et des lignes d’interconnexions permettant
de relier les cellules entre elles et avec les ports d’entrées/sorties. Les connexions
programmables sur ces lignes sont réalisées par des transistors MOS dont l’état est
contrôlé par des cellules mémoires SRAM. Ainsi, toute la configuration d’un FPGA est
contenue dans des cellules SRAM.
La classification des P.L.D
F.P.G.A (Fields Programmable Gate Array)
VHDL
Introduction
L’abréviation VHDL signifie VHSIC Hardware Description Language (VHSIC : Very High
Speed Integrated Circuit).
Ce langage a été écrit dans les années 70 pour réaliser la simulation de circuits
électroniques.
On l’a ensuite étendu en lui rajoutant des extensions pour permettre la conception
(synthèse) de circuits logiques programmables (P.L.D. Programmable Logic Device).
VHDL
Relation entre une description VHDL et les circuits logiques programmables
Lors de la phase de synthèse chaque bloc sera matérialisé par des portes et/ou des
bascules. La phase suivante sera d’implanter les portes et les bascules à l’intérieur du
circuit logique.
Cette tâche sera réalisée par le logiciel placement/routage, au cours de laquelle les
entrées et sorties seront affectées à des numéros de broches.
VHDL
Organisation fonctionnelle de développement d’un PLD.
VHDL
Organisation fonctionnelle de développement d’un PLD.
VHDL
Structure d’une description VHDL simple
Elle permet de définir le NOM de la description VHDL ainsi que les entrées et sorties
utilisées, l’instruction qui les définit c’est port :
VHDL
Structure d’une description VHDL simple
Déclaration de l’entité et des entrées / sorties (I/O)
L’instruction port .
❑ Le SENS du signal.
- in : pour un signal en entrée.
- out : pour un signal en sortie.
- inout : pour un signal en entrée sortie
- buffer : pour un signal en sortie mais utilisé comme entrée dans la description.
VHDL
Structure d’une description VHDL simple
Déclaration de l’entité et des entrées / sorties (I/O)
Le TYPE :
Le TYPE utilisé pour les signaux d’entrées / sorties est :
- le std_logic pour un signal.
- le std_logic_vector pour un bus composé de plusieurs signaux.
Commentaire
L’entrée RESET est prioritaire sur l’entrée
SET qui est à son tour prioritaire sur le front
montant de l’horloge CLK. Cette description
est asynchrone car les signaux d’entrée SET
et RESET sont mentionnés dans la liste de
sensibilité du process.
VHDL
VHDL
VHDL
VHDL
VHDL
VHDL
VHDL
VHDL
VHDL
VHDL
VHDL