Professional Documents
Culture Documents
Transparents de Cours
1
Notions de base en lectronique numrique
1 Reprsentation numrique de nombres
Entiers positifs
Codage binaire et binaire rflchi (code de Gray)
Dcimal Code Binaire Code de Gray
0 0000 0000
1 0001 0001
2 0010 0011
3 0011 0010
4 0100 0110
5 0101 0111
6 0110 0101
7 0111 0100
8 1000 1100
9 1001 1101
10 1010 1111
11 1011 1110
12 1100 1010
13 1101 1011
14 1110 1001
15 1111 1000
. : ET (AND) : &
Oprateurs la base de toutes
+ : OU (OR) : |
les fonctions logiques
a : NON (NOT) : !a
2
Notions de base en lectronique numrique
2 Logique boolenne
Proprits des oprateurs logiques
lment neutre Commutativit Inverse
a+0 = a a+b = b+a a+a = 1
a.1 = a a.b = b.a a.a = 0
lment absorbant
a+1 =1 Associativit Thorme de De Morgan
a.0 = 0 a+(b+c) = (a+b)+c a+b = a . b
Idempotence a.(b.c) = (a.b).c a.b = a + b
a+a = a
a.a = a Distributivit Thorme du Consensus
Absorption a.(b+c) = a.b+a.c a.x + b.x + a.b = a.x + b.x
a+a.b = a a+(b.c) = (a+b).(a+c) (a+x).(b+x).(a+b)=(a+x).(b+x)
a.(a+b) = a
Involution
a=a Se dmontrent en vrifiant tous les cas
Variable logique : Symbole pouvant prendre comme valeur des tats logiques
3
Notions de base en lectronique numrique
3 Reprsentation des fonctions boolennes
Reprsentation l'aide d'une table de vrit
Une table de vrit est l'criture des valeurs d'une fonction logique pour toutes les
combinaisons possibles de ses variables.
Elle comporte donc 2N lignes si la fonction a N variables.
AND : a b s OR : a b s XOR : ab s
00 0 00 0 00 0
01 0 01 1 01 1
NOT : a s 10 0 10 1 10 1
0 1 11 1 11 1 11 0
1 0
NAND : a b s NOR : a b s XNOR : a b s
00 1 00 1 00 1
01 1 01 0 01 0
10 1 10 0 10 0
11 0 11 0 11 1
NOT :
XOR : XNOR :
1
=1 =1
4
Notions de base en lectronique numrique
3 Reprsentation des fonctions boolennes
Reprsentation l'aide d'une table de Karnaugh
Une table de Karnaugh est une autre reprsentation de la table de vrit qui permettra de
faciliter la simplification des fonctions logiques tudies. Son principe est de crer un
tableau deux dimensions en rpartissant de part et d'autres les diffrentes variables. Les
combinaisons des variables horizontales et verticales sont crites en code de Gray .
Une table de Karnaugh comporte 2N cases si la fonction a N variables.
a.b 01 0 0 1 0 a.b 0 0 1 0
a.b 11 1 1 1 1 a.b 1 1 1 1
a.b 10 0 0 1 0 a.b 0 0 1 0
5
Notions de base en lectronique numrique
4 Simplification des fonctions boolennes
Simplification graphique
Utilisation de tables de Karnaugh
e3 e2 e1 F2 e2e1
e2 e1 e2 e1 e2 e1 e2 e1
e3 0 0 0 1 1 1 1 0
0 0 0 0
0 0 1 1 e3 0 0 1 1 1
0 1 0 1
0 1 1 1
e3 1 0 1 1 0
1 0 0 0
1 0 1 1
1 1 0 0
1 1 1 1 F2 = e3 . e2 + e1
dmonstration au tableau :
-> quelque peu "pnible" partir de la table de vrit
-> quasi immdiate partir de la table de Karnaugh
6
Notions de base en lectronique numrique
4 Simplification des fonctions boolennes
Simplification graphique (suite)
Exemples : f 1( x , y , z ) = x .y .z + x .y .z + x .y .z
yz
x 00 01 11 10
0 0 1 1 0 ( )
f 1( x , y , z ) = x . z + y . z = x + y . z
1 0 0 1 0
f ( a , b , c , d ) = a .b .c .d + a .b .c .d + a .b .c .d + a .b .c .d + a .b .c .d + a .b .c .d + a .b .c .d + a .b .c .d
a
b
c d
1 0 0 1
0 1 1 0 f ( a , b , c , d ) = b .d + b .d
0 1 1 0
1 0 0 1
Fonctions combinatoires
Multiplexeur
Multiplexeur
Circuit permettant de slectionner une voie parmi 2n
l'aide d'une commande sur n bits
Slection de donnes
Exemple : Circuit 74LS153
E Z = S 1 .S 0 . I 0 + S 1 .S 0 . I 1 + S 1 .S 0 . I 2 + S 1 .S 0 . I 3
I0
I1 Z
I2
I3
S1 S0
Multiplexeur 4 vers 1
7
Fonctions combinatoires
Multiplexeur
Applications des Multiplexeurs
Ralisation de fonctions combinatoires :
Toute fonction combinatoire n variables est ralisable l'aide
d'un multiplexeur n-1 adresses et ventuellement d'un inverseur
F ( a , b ) = a . b . F ( 0 , 0 ) + a . b . F ( 0 ,1 ) + a . b . F ( 1 , 0 ) + a . b . F ( 1 ,1 )
abc F
000 0 (ab)2 = 0
001 0 F=0
010 1 (ab)2=1
0 I0
011 1 F=1 1 I1 Mux
Z= F
100 0 (ab)2 = 2 c I2 4 vers 1
101 1 F=c c I3 S S
1 0
110 1 (ab)2 = 3
111 0 F=c
a b
Fonctions combinatoires
Multiplexeur
74151
8
Prsentation du matriel de TP
LED rouges [1 ]
QUELQUES ASPECTS "PRATIQUES"
O O O OO O O O
Entres o 7
(interrupteurs) o 6
kHz 1 10 100 o 5
Hz 1 0 1 o 4
o 3
o 2
1.0 TTL o o o o o o o o o 1
o 0
o x x x 5V
0V O O O OO O O O
0.1 7 6 5 4 3 2 1 0 LED vertes [ 0 ]
tension (V)
5V
Signal * rectangulaire, calibr de 0 5V
"TTL" T
* rglable de f = 0,1 Hz f = 100 kHz
t
0V
Prsentation du matriel de TP
Plaquette trous , son alimentation / Positionnement d'un "CI"
xxxxxxx xxxxxxx 5V
xxxxxxx xxxxxxx 0V
xxxx xxxx xxxx xxxx
xxxx xxxx xxxx xxxx
x x x x x
x x x x x
x x x x x
x x x x x
x x x x x
x x x x x
x x x x x
x x x x x
x x x x x
x x x x x
xxxx xxxx xxxx xxxx
xxxx xxxx xxxx xxxx
9
Prsentation du matriel de TP
Support de C.I. ; orientation des C.I.
Les supports :
a) ils permettent d'augmenter la "dure de vie" des C.I. (solidit des broches)
b) leur orientation n'a aucune importance
c) attention aux C.I. 14 broches monts sur des supports 16 broches ... !!!
L'orientation des C.I. :
a) comme sur la notice, disposer toujours la broche n 1 en bas gauche
b) reprages de la broche n1 :
Le cas 1
Reprage 1 Reprage 2
est le plus
frquent
1 1
1 1 1
===================
10
Fonctions squentielles
Mmoire lmentaire
Mmoire lmentaire sur 1 bit
A base d'inverseurs reboucls : chaque tat logique peut tre conserv
0 1 1 0
1 0 0 1
Sur les circuits prcdents, rien ne permet de modifier la valeur stocke. Si l'on veut pouvoir le faire, il faut
rajouter une entre de commande en remplaant un inverseur par une porte 2 entres pouvant se comporter
comme un inverseur lorsque l'entre vaut 1 (NOR) ou 0 (NAND).
Fonctions squentielles
Bascules RS et Latch D
Bascule RS
Circuit mmoire programmable sur 1 bit
RS Qn+1
R Q
0 0 Qn
0 1 1
1 0 0 S Q
1 1 Q=Q=0 (Pb )
Latch D
EN D Qn+1
0 0 Qn D Q
0 1 Qn
1 0 0
EN Q
1 1 1
11
Notions de base en lectronique numrique
Circuits Squentiels
Circuits Asynchrones
Les sorties voluent spontanment la suite des changements des variables d'entre.
Le comportement squentiel est obtenu en prenant en compte une ou plusieurs sorties
en plus des entres pour calculer la nouvelle valeur des sorties (systme boucl).
Exemple : Circuit mmoire programmable sur 1 bit
RS Qn+1
0 0 Qn
0 1 1
1 0 0
1 1 Q=Q=0 (Pb )
R Q
A la base de toutes les bascules
S Q
latch RS H
S Q
Sur 1 front : prise en compte des entres lorsque l'horloge passe de 0 1 (montant)
ou de 1 0 (descendant)
Exemple : D Q
bascule D Q
R Q
Sur 2 fronts : prise en compte des entres sur front montant
et modification des sorties sur front descendant
S Q
12
Notions de base en lectronique numrique
Circuits Squentiels
Principales bascules existantes
Bascule RS : composant asynchrone
RS Qn+1 R Q
0 0 Qn
0 1 1
S Q
1 0 0
1 1 Q=Q=0 (Pb )
13
Notions de base en lectronique numrique
Circuits Squentiels
Compteurs
Circuit base de bascules permettant d'incrmenter ou de dcrmenter une valeur code en
binaire ou en BCD
Applications : mesure de temps, division de frquence
Compteurs asynchrones modulo 2n :
Principe : Les valeurs balayes en sortie vont de 0 2n - 1
Les sorties des bascules constituent les signaux d'horloge des bascules suivantes
Q0 Q1 Q2 H
1 T Q 1 T Q 1 T Q Q2
Q1
H Q Q Q Q0
D Q D Q D Q
H
Re Q Re Q Re Q
14
Notions de base en lectronique numrique
Circuits Squentiels
Compteurs (suite)
Compteurs synchrones modulo K :
Principe : Les horloges des bascules sont toutes relies au mme signal
Les entres des bascules sont obtenues partir des sorties l'aide de fonctions
combinatoires
Fonctions combinatoires
D Q D Q D Q D Q
D0 Q0 D1 Q1 Dn-2 Qn-2 Dn-1 Qn-1
Clk
Dtermination des fonctions combinatoires : mme mthodologie que pour une machine
tats finis de type Moore avec les Qi comme sortie (Cf. TP 3 et 4)
Circuit synchrone : toutes les sorties changent en mme temps
prfrable au compteur asynchrone
15
Notions de base en lectronique numrique
Circuits Squentiels
4029
Compteur / Dcompteur Dcimal / binaire prchargeable
Rle des entres :
Up/Down 1 : Compteur
0 : Dcompteur
Binary/Decade 1 : Binaire
0 : Dcimal
Carry In 1 : Inactif
0 : Actif
Preset Enable 1 : Mode chargement
0 : Mode comptage
Jam Inputs Valeur charge
16
Machines tats finis
Principe des machines tats finis
Dfinition :
Systme base de bascules synchrones permettant de raliser n'importe quel processus
squentiel (compteur, contrle ).
Les bascules permettent de mmoriser l'tat courant du processus (la combinaison des
sorties des bascules code la valeur de l'tat courant)
Des parties combinatoires permettent d'en dduire l'tat futur et la valeur des sorties de
la machine tats finis
Machine de Moore : Les sorties de la machine ne dpendent que de l'tat courant
L'tat futur dpend de l'tat courant et des entres
tat tat
Entres futur courant Sorties
CLK
1
Exemple : fonction compteur modulo 3 01
2 0
10 00
17
Machines tats finis
Principe des machines tats finis
Machine de Moore (suite)
Description par graphe d'tat : Quelques exemples supplmentaires
Compteur Variable
1
01
Compte jusqu' 2 (E=0) ou
2 E=0 0
jusqu' 3 (E = 1)
10 00
E=1 3
11
B=0
fonction flash
appui
Un appui sur B (B=0) provoque B=1 L=0 B=0 B=1
un clair (L=1) pendant un coup clair teint
d'horloge aprs relchement de L=1 L=0
B (B=1)
Dmarche d'analyse
18
Machines tats finis
Analyse des machines tats finis
Dmarche d'analyse (suite)
Exemple : E S1
D0 Q0 =1 D1 Q1
=1
dff0 dff1
S0
Q0 Q1
CLK
quations d'excitation : D0 = E S1 D1 = E S0
19
Machines tats finis
Analyse des machines tats finis
Dmarche d'analyse (suite)
E S1 S0 S1+ S0+
0 0 0 0 1
Table de transition : 0 0 1 1 1
0 1 0 0 0
0 1 1 1 0
1 0 0 1 0
1 0 1 0 0
1 1 0 1 1
1 1 1 0 1
S1S0
3) Nommer chacun des tats rencontrs : 00 A
Donner un nom chacune des combinaisons possible en 01 B
sortie des bascules 10 C
11 D
4) tablir la table des tats du processus :
S1S0 E=0 E=1
Dduire de la table de transition l'volution A B C
du systme en fonction de l'entre E Table d'tats : B D A
C A D
D C B
circuit complet.
Compteur (E=0) ou dcompteur (E=1) en code Gray
20
Machines tats finis
Principe des machines tats finis
Dfinition :
Systme base de bascules synchrones permettant de raliser n'importe quel processus
squentiel (compteur, contrle ).
Les bascules permettent de mmoriser l'tat courant du processus (la combinaison des
sorties des bascules code la valeur de l'tat courant)
Des parties combinatoires permettent d'en dduire l'tat futur et la valeur des sorties de
la machine tats finis
Machine de Moore : Les sorties de la machine ne dpendent que de l'tat courant
L'tat futur dpend de l'tat courant et des entres
tat tat
Entres futur courant Sorties
CLK
21
Machines tats finis
Synthse des machines tats finis
Dmarche de synthse (suite)
Exemple : fonction flash
Un appui sur B provoque un clair pendant un coup d'horloge aprs relchement de B
appui
B=1 L=0 B=0 B=1
clair teint
L=1 L=0
22
Machines tats finis
Synthse des machines tats finis
Dmarche de synthse (Machine de Moore)
Dessiner le schma :
bascules D : B
On a Q0+=D0 et Q1+=D1 1
D0 Q0 1 D1 Q1
Fonctions combinatoires
Codeurs et dcodeurs
Dcodeur BCD / 7 Segments
Circuit permettant de traduire un code binaire sur 4 bits (BCD) en
signaux de commande d'un afficheur 7 segments
Affichage de digits
a 1 a
0 D 0
b f b
1 C c 0 g
0 B d 1
e 1
0 A 0 e c
f
1 LT g 0 d
1 RBI
BI/RBO
23
Circuit de digicode
24
Circuit de robot
Circuit de slection FM
25
NOTICE
Plaquette trous Interrrupteurs (entres) - LED (sorties)
O O O O O O O O
Son alimentation o LED rouges [ 1 ]
Positionnement d'un C.I. 1 0 1 o
o
o
o
o o o o o o o o
xxxxxxx xxxxxxx 5V o
xxxxxxx xxxxxxx 0V 5V o
0V o LED vertes [ 0 ]
1 1
Signal T.T.L.
Rectangulaire de 0 5V - Son rglage en frquence Reprage 3 Reprage 4
1 1
kHz 1 10 100
Hz
Autre alimentation
1.0 TTL
tension (V)
5V o x x x
T 0.1 5V -15V +15V
Interrupteur Lampe
t
0V
tmoin
- 1 -
Autre plaquette trous sans soudure Porte NON (7404)
14 13 12 11 10 9 8
Gn Masse CH1 Masse CH2
Bornes
5V
Cblage fait
1 2 3 4 5 6 7
5V
Autre boitier de commande et de contrle
Borne rouge (sortie) [ * ]
Bas = hors service
[ Face arrire ] Gnd
Haut = en service 1 2 3 4 5 6 7
[*] : cble en provenance d'une sortie tester (led verte ou rouge) Gnd
[**] : cble destination d'une entre informer (0 ou 1 / led jaune) 1 2 3 4 5 6 7
- 2 -
Porte NAND 4 entres (7420) Quadruple Multiplexeur "2v -> 1v"
14 13 12 11 10 9 8
(74157)
Strobe
5V
16 15 14 13 12 11 10 9 S Ad B A Y
5V S 4A 4B 4Y 3A 3B 3Y H x x x L
L L x L L
Gnd
L L x H H
1 2 3 4 5 6 7 Ad 1A 1B 1Y 2A 2B 2Y Gnd L H L x L
L H H x H
1 2 3 4 5 6 7 8
Select
Inputs Output
- 3 -
4029
Quadruple Latch "D" (7475)
16 15 14 13 12 11 10 9
Q0 Q1 Q1B E01 Gnd Q2B Q2 Q3
- 4 -
Entres "DCBA" + Dcodeur
* Entre Binary/Decade 0 pour compter en dcimal
+ Rsistances + Afficheur
* Entre Up/down 0 pour dcompter 330
14 11
* Entre Preset/Enable 1 pour charger J1, J2, J3 et J4 en sortie,
DCODEUR
AFFICHEUR
6 15 2
0 pour permettre l'volution des sorties D
9 7
C 2
1 10 8
* Entre Carry In 0 pour permettre l'volution des sorties B
11 10
A 7
12 13
13 1
Dcodeur "7 segments" (7447)
16 15 14 13 12 11 10 9
Comparateur de 2 nombres 4 bits (7485)
f g a b c d e 16 15 14 13 12 11 10 9
5V 5V a3 b2 a2 a1 b1 a0 b0
B C D A Gnd
1 2 3 4 5 6 7 8 b3 A<B A=B A>B A>B A=B A<B Gnd
1 2 3 4 5 6 7 8
Cascade Inputs Outputs
- 5 -
Utilisation du logiciel MAX+plusII
Attention : ce logiciel gnre un trs grand nombre de fichiers, il est donc recommand de crer un
dossier spcifique pour chaque TP. Ne surtout pas utiliser directement la racine de votre partition
sur le disque dur (C : , G :, H : ) ou le bureau windows !
Projet courant
Schma courant
Compiler un projet :
Lorsque la saisie dun schma est termine, il est ncessaire de compiler le projet de manire
vrifier sil ny a pas derreur. Cette opration est aussi ncessaire pour pouvoir simuler et
programmer le circuit. Pour compiler, il faut sassurer que le schma courant correspond bien au
projet : File-> Project -> Set project to current file. Pour compiler le projet, il faut ouvrir loutil
compilateur (MAX+plusII-> Compiler) et cliquer sur Start. On peut choisir le FPGA sur lequel on
souhaite raliser le circuit grce Assign->Device. Une fentre de message souvre
automatiquement et signale sil y a des erreurs (messages en rouge corriger ncessairement) ou
des avertissements (messages en bleu pas toujours gnants mais qui peuvent entraner des
- 1 -
problmes par la suite). Licne rpt permet daccder au rapport dtaill de compilation contenant
notamment le nombre de portes et les quations logiques utilises.
Mise 0
Mise 1
Horloge
Compteur
- 2 -
Simuler le circuit :
Une fois que les stimuli ont t crs, il suffit de lancer le simulateur (MAX+plus2->Simulator) et
deffectuer la simulation en cliquant sur Start. Il est aussi possible deffectuer une Analyse
Temporelle (MAX+plus2->Timing Analysis) pour estimer les temps de rponse du circuit. Le
rsultat se prsente sous forme de matrice de temps de propagation (Delay Matrix). Pour les circuits
squentiels, on peut aussi dterminer la frquence maximale dutilisation.
- 3 -
Pour associer une patte une entre ou une sortie, il faut slectionner le symbole correspondant
du schma et cliquer droite. Cliquer ensuite sur Assign->Pin/Location/Chip pour ouvrir le menu
de slection. Il faut quun composant spcifique ait t slectionn pour que la fonction soit active.
Si ce nest pas le cas, cliquer sur Assign Device et slectionner le composant utiliser. Il suffit alors
de slectionner dans le menu droulant Pin le numro de la patte. Une fois toutes les pattes
affectes, Il faut recompiler le projet.