0% ont trouvé ce document utile (0 vote)
56 vues8 pages

Circuits Logiques Programmables

Transféré par

youssef.soulali
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
56 vues8 pages

Circuits Logiques Programmables

Transféré par

youssef.soulali
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

69 / 167 ATC / 2e STE Lycée technique Acharif Al Idrissi - Safi J.

Temouden

PARTIE

2
1
70 / 167 ATC / 2e STE Lycée technique Acharif Al Idrissi - Safi [Link]

CIRCUITS LOGIQUES PROGRAMMABLES


Un circuit logique programmable PLD (Programmable Logic Device) est un composant logique disposant
d'entrées et de sorties dont on peut programmer le schéma selon la fonction souhaitée, combinatoire et/ou
séquentielle
Il apporte un gain dans la mesure où :
 Un seul circuit peut remplacer plusieurs
 La taille et le coût de la fonction implantée sont moindres

Architecture d'un PLD

Toute fonction logique peut être réalisée par seules les portes logiques fondamentales ET, OU et NON
Un PLD est bâti autour de ce concept

La plupart des PLD adoptent la structure suivante :

 Une matrice d’opérateurs ET sur lesquels viennent se connecter les variables d’entrée
 Une matrice d’opérateurs OU sur lesquels les sorties des opérateurs ET sont connectées.
 Une éventuelle structure de sortie (Portes inverseuses, bascules...).

Cas d'un PLD à 2 entrées et 2 sorties combinatoires (structure très simplifiée, avant la programmation)

Représentation simplifiée
71 / 167 ATC / 2e STE Lycée technique Acharif Al Idrissi - Safi [Link]

Les fonctions programmées ci-contre sont :

Q0 = ab + ab
Q1 = ab + ab

Exercice

Générateur de parité à 3 entrées


S = 1 si le nombre de 1 à l’entrée est impair;
S = 0 sinon

Table de vérité

a b c S
0 0 0 …… Equation
0 0 1 ……
S = ……………………………….
0 1 0 ……
0 1 1 ……
1 0 0 ……
1 0 1 ……
1 1 0 ……
1 1 1 ……

Programmation du PLD
72 / 167 ATC / 2e STE Lycée technique Acharif Al Idrissi - Safi [Link]

Le GAL 22V10

Avec les évolutions techniques actuelles, les PLD sont de plus en plus rapides, à plus grand nombre d'E/S,
effaçables et reprogrammables; on trouve alors différents types de PLD : PAL, GAL, CPLD, FPGA…

24 23 22 21 20 19 18 17 16 15 14 13

1 2 3 4 5 6 7 8 9 10 11 12

La désignation 22V10 signifie que le composant dispose de 22 entrées possibles et 10 sorties possibles
Chaque broche output émane d’une cellule OLMC (Output Logic MacroCell) qui définit par programme la
configuration de la sortie : combinatoire ou séquentielle, normale ou complémentaire

Programmation des PLD: langage Abel

La programmation des PLD nécessite un programmateur, un microordinateur et un logiciel adapté


Souvent le logiciel offre la possibilité de décrire la fonction à réaliser :
 Soit par schéma
 Soit syntaxiquement moyennant un langage de programmation HDL : ABEL, VHDL ou VERILOG

Lorsqu'il est terminé, le fichier de description (schéma ou programme) doit être compilé pour être traduit en
format JEDEC, c'est un fichier contenant des 0 et des 1 signifiant les croisements de fils qui seront détruits et les
autres qui seront maintenus. C’est ce fichier JEDEC qui est transféré au PLD via le programmateur

Schéma Fichier Programmateur


Compilation JEDEC
ou langage HDL de PLD

Voici un exemple de programme Abel et le Jedec correspondant

module test QP24* QF5828* QV0* F0*


Declarations X0*
test device 'P22V10'; NOTE Table of pin names and numbers*
a,b pin 2,3; NOTE PINS a:2 b:3 s1:14 s2:15*
s1,s2 pin 14,15 istype 'com'; L4884 11111111111111111111111111111111111111111111*
Equations L4928 11110111011111111111111111111111111111111111*
s1 = a # b; L4972 11111011101111111111111111111111111111111111*
s2 = !a; L5368 11111111111111111111111111111111111111111111*
end test L5412 11111011011111111111111111111111111111111111*
L5456 11110111101111111111111111111111111111111111*
L5808 00000000000000001111*
C2097*
73 / 167 ATC / 2e STE Lycée technique Acharif Al Idrissi - Safi [Link]

 Structure d'un programme ABEL

On y trouve :
 La section d'entête  MODULE, TITLE
 La section des déclarations  DECLARATIONS (DEVICE, E/S, bus…)
 La section de description  EQUATIONS, TRUTH_TABLE, STATE_DIAGRAM
 La déclaration de fin du fichier  END

 Les déclarations

 Pin : permet d’affecter une broche d’E/S à une variable


Exemples

e1, e2, A1 pin 2, 3, 4; : entrées affectées aux broches 2 ,3 et 4


d4 pin ; : entrée sans désignation de numéro de broche
s1 pin 12 istype 'com'; : sortie combinatoire associée à la broche 12
S0..S6 pin istype 'com'; : sorties combinatoires
S1 pin istype 'reg'; : sortie séquentielle

 On peut déclarer des ensembles (bus) de variables


Exemples N = [D2, D1, D0] ; A = [b7..b0] ;
L’affectation N=5 entraîne D2=1 , D1 = 0 et D0 = 1

 Les opérateurs

Opérateurs logiques Opérateurs relationnels Opérateurs arithmétiques

! : NON == Egal - négation ou soustraction


& : ET != Différent + Addition
# : OU < Inférieur * Multiplication
$ : OU exclusif <= Inférieur ou égal / Division
!$ : NON OU exclusif > Supérieur % Reste de la division
>= Supérieur ou égal

 Instructions d’affectation et de test

 S = a & !b # !a & b; affectation pour une sortie combinatoire (symbole = )


A0 := !D1 & A0 & !D7; affectation pour une sortie séquentielle (symbole := )
X = a<b X reçoit 1 si a<b et X reçoit 0 sinon

 La structure conditionnelle WHEN (condition) THEN équation1 ; ELSE équation2 ;


Exemple when (E1 == 0) then S = a $ b ; else S = a !$ b ;

 Les extensions

Les pins peuvent être suivis d’une extension leur associant une fonction particulière
.CLK : Entrée horloge .D : Entrée D d’une bascule D
.AR : Reset asynchrone .J : Entrée J d’une bascule JK
.OE : Output Enable .K : Entrée K d’une bascule JK
74 / 167 ATC / 2e STE Lycée technique Acharif Al Idrissi - Safi [Link]

r ..
h Declarations
Circuit
h, r pin ;
a, b, c, d pin istype ‘reg’;
S =[a, b, c, d];
a b c d Equations
Dans cet exemple, on déclare que [Link] = h ;
 L'entrée h est l'horloge des bascules de sortie [Link] = r ;
 L'entrée r effectue une mise à 0 asynchrone des sorties ..

Exercices

Additionneur 2 bits a b S R
0 0 …… ……
S = ………..…..…..
a S (Somme) 0 1 …… ……
Additionneur R = ………..…..…..
2 bits R (Retenue) 1 0 …… ……
b 1 1 …… ……

Description par la table de vérité Description par les équations logiques

MODULE additionneur MODULE additionneur


DECLARATIONS DECLARATIONS
additionneur DEVICE ‘P22V10’ ; additionneur DEVICE ‘P22V10’ ;
a, b PIN ; a, b PIN 4, 5 ;
S, R PIN ISTYPE 'COM' ; S, R PIN 15, 16 ISTYPE 'COM' ;
TRUTH_TABLE ( [ ……..….] ->[…….........] ) EQUATIONS
S = ………………………………
………………………………
……………………………… R = ………………………………

……………………………… END additionneur


………………………………
END additionneur

Comparateur 4 bits
S (entrée d’activation)
Sup = 1 si A>B
Inf = 1 si A<B A Sup
Egal = 1 si A=B Comparateur
Egal
B Inf
75 / 167 ATC / 2e STE Lycée technique Acharif Al Idrissi - Safi [Link]

module comparateur
Declarations
………………………………………….
………………………………………….
………………………………………….
………………………………………….
………………………………………….

Equations
………………………………………….
………………………………………….
………………………………………….
………………………………………….
End …………………

Chauffage électrique

Le système de chauffage est équipé d’un radiateur électrique à deux allures de chauffe, comportant deux
résistances R1 et R2 et un ventilateur V. Il est commandé par deux interrupteurs a et b.

 Par action sur a seul, la résistance R1 seule est mise sous-tension.


 Par action sur b seul ou sur a et b à la fois, les deux résistances et le ventilateur sont mis sous-tension.

module ………………
Declarations
V ………………………………………….
………………………………………….
R1 R2
………………………………………….

a b Truth_Table (………………………………)
…………………………………………
…………………………………………
…………………………………………
…………………………………………
End ……………….
76 / 167 ATC / 2e STE Lycée technique Acharif Al Idrissi - Safi [Link]

Compteur 4 bits avec mise à 0 asynchrone

module …………….
r (entrée de RAZ) Declarations
………………………………………….
H Compteur ………………………………………….
………………………………………….
………………………………………….
Q3 Q2 Q1 Q0
equations
………………………………………….
………………………………………….
………………………………………….

End ………………..

Chenillard à 4 LED
H
Au départ la Led d est allumé. L’appui sur le bouton m lance une séquences de
m
défilements vers la droite

d c b a

Le diagramme d'état est une Module chenillard


représentation symbolique de DECLARATIONS
l'enchaînement séquentiel des états de sortie chenillard device ‘P22V10’ ;
d'un système. …………………..
………………….
Le diagramme d’état suivant illustre le cycle
d’allumage désiré ………………….
EQUATIONS
………………….
m=0 STATE_DIAGRAM …………
m=1
State [1,0,0,0] : IF (m==1) THEN goto [0,1,0,0] ; else goto [1,0,0,0] ;
dcba= dcba=
1000 0100 ………………….
………………….
………………….
dcba=
dcba= 0010
0001 END chenillard

Vous aimerez peut-être aussi