Professional Documents
Culture Documents
---------------------------------------------------------------------------------------------------------------
Travaux Dirigs de
Logique Combinatoire
TD LOGIQUE COMBINATOIRE
---------------------------------------------------------------------------------------------------------------
TD n1
Algbre de BOOLE
Proprits et formes
canoniques
1. Mthode algbrique.
a) Les 3 oprateurs de base de lalgbre de Boole sont les oprateurs non , et ,
ou . Donner les tables de vrit de ces trois oprateurs.
b) A partir des tables de vrit, vrifier la proprit suivante :
c) Quelle
est
la
proprit
a + bc = ( a + b )( a + c ) ?
utilise
pour
effectuer
a ( b + c ) = ab + ac .
ce
dveloppement :
a ( a + b) = a ;
a + ab = a + b ;
( a + b) a + c (b + c ) = ( a + b) a + c ;
ab + ac = ab + ac + bc
e) Donner une expression boolenne pour les fonctions f, g et h spcies par les
tables de vrit ci-dessous
F2 = a cde + de + c
g) Comment appelle-t-on les lois logiques permettant deffectuer les manipulations
suivantes : a + b = a b , ab = a + b ?
h) .Donner la forme minimale des expressions logiques suivantes :
L1 = ab a + bc ;
L2 = ab + c + d
L3 = ( a + b ) + ( a + b ) + ( a b ) ( a b ) ;
L4 = abc + bc + ac ;
( )(a + b)
TD LOGIQUE COMBINATOIRE
--------------------------------------------------------------------------------------------------------------
L5 = (a + b)( a (b + c ) ) + ab + a c ;
L6 = ( a + b + c ) a + b + c a + b + c .
)(
j) Dmonter
( )
abc + ab a + c = ac ;
a c ( a b d ) +a b ( cd ) + a b c = b c + a c d + a b c ;
( a + b ) ( a + b + d ) d = bd ;
ab + bc + ac = a b + b c + ca
la
proprit
dassociativit
du
OU
( x ( y z ) = y ( x z ) = z ( x y ) = x y z ).
EXCLUSIF
(XOR)
l) Vrifier : a b c = a b c et a b c = a b c
m) Une fonction boolenne trois variables a, b et c est fausse uniquement dans le
cas ou ab = b+c et a c. Donner une expression boolenne reprsentant cette
fonction. Astuce : xy est quivalent x y et x = y est quivalent :NON(x y).
n) Ecrire les 2 expressions canoniques minterme ou SOP des 2 fonctions suivantes et
les simplifier :
f1 (a,b,c) = (0,2,3,4,6,7);
f2 (a,b,c) = (2,4,5,6,7);
Donner la forme maxterme ou POS et vrifier la forme minimale
TD LOGIQUE COMBINATOIRE
---------------------------------------------------------------------------------------------------------------
3. Chronogramme et Logigramme
a)
&
B
A
2)
B
A6
1
A5
&
A4
A3
1
1
A2
1
A1
A0
c)
1
X
&
C
A
&
&
&
D
4
TD LOGIQUE COMBINATOIRE
--------------------------------------------------------------------------------------------------------------d)
Montrer que loprateur NOR est un systme doprateur complet. Est-ce un
systme doprateur complet minimal ?.Que peut-on en dduire du systme doprateur
ET, OU, NON ?
e)
Donner lexpression de la fonction logique ralise par le circuit logique donn cidessous. Transformer ce circuit logique en un circuit constitu uniquement de porte
NAND, puis uniquement avec des portes NOR.
Alarm
Pannic
Enable
Exiting
Window
Door
Garage
f)
Donner lexpression de F et transformer ce circuit en un circuit fait de portes
NOR ( XY = X + Y )
u
x
y
v
z
g)
Pour chacune des expressions suivantes, construisez
correspondant en recourant uniquement des portes NAND et NOR.
le
circuit
logique
x = AB ( C + D ) ,
z = ( A + B + CDE ) ,
y = A + B + PQ
h)
Ecrivez la table de vrit correspondant un systme logique permettant de verifier
si un nombre de 4 bits est un multiple de 4. Donner le circuit logique correspondant.
TD LOGIQUE COMBINATOIRE
---------------------------------------------------------------------------------------------------------------
Thormes d'idempotence
a.a=a
a+a=a
a = a a = a
a.0=0
a+0=a
a.1=a
a+1=1
gnralisation
Thormes des constantes
a. a = 0
Thormes de complmentation
Thormes de commutativit
a+a =1
a.b=b.a
a+b=b+a
a.(b + c)= a . b + a . c
a + b . c = (a + b).(a + c)
a.(b . c)= (a . b). c = a . b . c
a+(b + c)=(a + b)+c = a+b+c
a+a.b=a
a . (a + b) = a
Thormes de distributivit
Thormes d'associativit
Relations d'absorption
a + a.b = a + b
a .b + a .b = a
Thormes du consensus
2. Thormes de DE MORGAN
Le complment d'une somme de variables logiques est gal au produit des complments
de ces variables :
a + b + c + ... + n = a . b . c ... n
Le complment d'un produit de variables logiques est gal la somme des complments
de ces variables :
a . b . c . . . n = a + b + c + ... + n
3. Formes Canoniques
Premire forme canonique SOP (sum of product):
f ( a , b, c ) =
(somme de mintermes).
a.
b.c + a.b.c + ...
{
minterme
TD LOGIQUE COMBINATOIRE
---------------------------------------------------------------------------------------------------------------
TD n2 : Algbre de BOOLE
Tableau de Karnaugh
1. Minimisation de lexpression dune fonction logique
Donner la forme minimale (mintermes) des fonctions logiques :
TD LOGIQUE COMBINATOIRE
-------------------------------------------------------------------------------------------------------------- Donner les quations simplifies en utilisant les tableaux de KARNAUGH.
ab
cd
00
01
11
10
00
01
11
10
ab
ab
00
01
11
10
00
01
11
10
M=
cd
00
01
11
10
00
01
11
10
01
11
10
N=
ab
cd
00
00
01
11
10
01
11
10
O=
cd
ab
ab
00
cd
00
01
11
10
00
00
00
01
01
11
11
10
10
00
01
11
10
Q=
P=
ab
cd
00
01
11
00
01
11
10
S=
cd
R=
10
ab
cd
00
01
11
10
ab
cd
00
00
01
01
11
11
10
10
T=
U=
TD LOGIQUE COMBINATOIRE
---------------------------------------------------------------------------------------------------------------
000
001
011
010
110
111
101
100
01
11
10
cde
ab
00
000
001
011
010
110
111
101
01
11
10
A=
100
B=
b) Une fonction logique F des variables abcde est donne par les tables de Karnaugh
ci-dessous :
cd
ab
00
01
11
10
00
01
11
10
00
01
11
10
e=0
e=1
TD LOGIQUE COMBINATOIRE
--------------------------------------------------------------------------------------------------------------c) Une fonction de logique de 5 variables a,b,c,d,e est spcifie par la table de
karnaugh suivante :
cd
ab
00
01
11
10
00
01
11
10
00
01
11
10
e=0
e=1
10
TD LOGIQUE COMBINATOIRE
---------------------------------------------------------------------------------------------------------------
ef= 01
ab
ab
00
01
11
10
cd
00
01
11
10
cd
00
00
01
11
10
01
11
10
00
01
11
10
ab
ab
00
01
11
01
01
11
11
10
10
cd
00
10
cd
00
ef= 10
ef= 11
00
01
11
10
00
01
e+ f
11
e+ f
10
ef
ef
11
TD LOGIQUE COMBINATOIRE
---------------------------------------------------------------------------------------------------------------
cd
ab
00
01
11
10
00
01
11
10
00
01
11
10
e=0
mme travail sur la fonction de logique suivante :
ab
cd
00
01
11
10
00
01
11
10
e=1
ab
cd
00
01
11
00
01
11
10
e=0
e=1
12
10
TD LOGIQUE COMBINATOIRE
---------------------------------------------------------------------------------------------------------------
TD n3
Analyse / Synthse
de circuits combinatoires
Exercice 1 :
Certains compas numriques utilisent un codeur optique faisant appel au codage Gray.
Laimant du compas est solidaire d'un disque quip dun systme de codage optique; ce
dernier est bas sur un code Gray ou code binaire rflchi. Ce code la particularit,pour
n'importe quel nombre, de ne voir qu'un de ses bits changer d'tat lorsque que ce nombre
passe la valeur immdiatement suprieure ou infrieure. Lorsqu'un bit est 1 le disque
cod laisse passer la lumire, lorsqu'il est zro, il empche son passage. Un systme
optique vient lire l'tat des bits et donc la valeur de l'angle entre l'appareil et le nord. Le
disque ci-contre est cod en binaire rflchi sur les 16 secteurs de ses 4 pistes. Pour
chaque valeur 0 la piste est transparente, pour chaque valeur 1 elle est opaque.
Un systme optique compos d'une diode LED et
d'un rcepteur (photodiode ou phototransistor)
vient lire, suivant un rayon, la valeur de chaque
secteur. L'erreur de lecture reste infrieure un
secteur. En pratique, pour avoir une meilleure
rsolution, le nombre de pistes et de secteurs est
plus lev. On trouve aujourdhui des codeurs
plus de 10 bits.
Valeur
dcimale
0
1
2
3
4
5
Etc
Code
binaire
Code Gray
dcba
0000
0001
0010
0011
0100
0101
0000
0001
0011
0010
0110
0111
a) Compltez la table de vrit ci-dessus. Donner lexpression non minimise des bits du
transcodeur : .
b) Minimiser les expression de .
b) Concevez un circuit simple qui permet de convertir un code Gray 4 bits en un code
binaire.
Exercice 2 : analyse du circuit 74153
Le schma interne est donn par le logigramme suivant :
1) Ecrire lexpression reliant la sortie Za aux entres S0, S1, I0a, I1a, I2a, I3a et E a .
2) Donner la table de vrit qui relie Za S0, S1, et E a . Les entres I0a, I1a, I2a et I3a
TD LOGIQUE COMBINATOIRE
--------------------------------------------------------------------------------------------------------------3) Quelle est la fonction de ce circuit ?
ef=01
00
01
11
10
0
1
x
1
0
1
0
x
1
0
0
0
x
0
1
0
ab
cd
00
01
11
10
00
01
11
10
0
1
x
0
0
1
1
x
1
1
0
0
x
0
1
1
ef=10
ab
cd
00
01
11
10
ef=11
00
01
11
10
0
0
x
1
1
1
1
x
1
0
0
0
x
0
1
0
ab
cd
00
01
11
10
00
01
11
10
0
0
x
0
1
1
1
x
1
1
1
0
x
0
1
1
1) Ecrire la table de vrit de la fonction G sous forme dune seule table de Karnaugh
dont les variables dentre sont a,b,c,d et variables introduites e,f.
2) En dduire un circuit permettant de raliser la fonction G comportant quelques portes
et un multiplexeur 4 entres de commande, en prcisant quelles sont les variables de
commande ainsi que leur poids.
14
TD LOGIQUE COMBINATOIRE
--------------------------------------------------------------------------------------------------------------Exercice 4 : Ralisation dune fonction logique par dcodeur & multiplexeur
0
0
0
0
0
0
0
1
0
0
1
0
0
0
1
1
DEC
DC
012345678910 11 12 13 14 15 B A
-0
-1
-2
-3
-4
-5
-6
-7
-8
-9
-10
-11
-12
-13
-14
-15
Z
MU
H G FE
Exercice 5 : Calendrier
On souhaite concevoir le plus petit circuit (en terme de portes logiques) recevant en
entre le numro du mois de lanne (nombre de 1 12 cod en binaire naturel) et
fournie en sortie un tat haut si le mois compte plus de trente jours, un tat bas sinon. On
utilisera la mthode de synthse du cot minimal (pour les conditions indiffrentes) et un
tableau de Karnaugh pour obtenir lexpression minimale de X.
Figure n 8.1 : Circuit logique (le nombre dentre nest pas forcment le bon)
15
TD LOGIQUE COMBINATOIRE
---------------------------------------------------------------------------------------------------------------
Code binaire
. a0
1
2
3
4
5
6
7
8
9
10
11
12
Exercice 6 : Circuit arithmtique
On cherche raliser un circuit combinatoire qui ralise lopration suivante y = x2+1. x
est un nombre binaire cod sur 2 bits (x=x1x0) et y sur 4 bits (y=y3y2y1y0) .
a ) Pour cela, complter la table de vrit de cette fonction :
b ) Donner les expressions des bits de y.
c ) La PLD (Programmable Logic Device) ci-dessous sert raliser lopration y = x2+1 ,
o x est un nombre binaire cod sur 2 bits, et y un nombre cod sur 4 bits. Quels fusibles
faut-il griller pour raliser cette fonction (barrer les fusibles dtruire) ? Un fusible est
reprsent sur la figure de la manire suivante :
16
TD LOGIQUE COMBINATOIRE
--------------------------------------------------------------------------------------------------------------Exercice 7 : Exercices corrigs
7.a ) Construire un circuit combinatoire trois entres x0, x1 et x2 capable de dtecter si le
nombre de reprsentation binaire x2x1x0 est divisible par 3.
7.b ) Un multiplexeur est un circuit combinatoire capable de slectionner" une de ses
deux entres (d0 et d1) selon la valeur d'une troisime entre a. Lorsque a = 0, la sortie s
du circuit doit tre identique d0 et quand a = 1, s doit tre gale d1. Dessiner le
logigramme du circuit combinatoire.
7.c ) Un systme de surveillance d'un rservoir est compos d'un circuit combinatoire reli
deux capteurs et un afficheur numrique sept segments. Le premier capteur met 1
l'entre cb du circuit lorsque le niveau du liquide est superieur ou gal 30cm, l'entre
est 0 dans le cas contraire. Le second capteur fait de mme avec l'entre ch du circuit
pour une hauteur de 250cm. Les sept sorties a, b, c, d, e, f et g du circuit correspondent
chacune un des sept segments de l'afficheur. Celui-ci n'affiche rien si le niveau est
normal (compris entre 30cm et 250cm). Quand le niveau est bas (infrieur 30cm),
l'afficheur indique b . Lorsque le liquide dpasse la hauteur de 250cm, il affiche H
et en cas d'incohrence des capteurs (cb = 0 et ch = 1), c'est E (Erreur) qui est affich.
Donner un logigramme du circuit combinatoire.
Correction :
17
TD LOGIQUE COMBINATOIRE
---------------------------------------------------------------------------------------------------------------
TD n4
Analyse / Synthse
de circuits combinatoires
Exercice 1 : ADDITIONNEURS (semi adder, full & ripple carry, full & fast carry)
On veut raliser l'addition S de 2 nombres A et B cods en binaires naturel sur n bits tels
que :
A
An
An-1
A1
B
Bn
Bn-1
B1
S
Sn
Sn-1
S1
An Bn et Sn tant les bits de poids fort.
1. Demi-additionneur : on appelle Si et Ci respectivement le rsultat et la retenue de
l'addition de 2 bits Ai et Bi indpendamment de la retenue Ci-1 de l'addition des 2 bits
prcdents. Etablir les tables de Karnaugh de Si et Ci. En dduire le diagramme logique
de ces 2 fonctions en utilisant des fonctions lmentaires (OR, AND, NI, XOR)
2. Additionneur complet retenue propage (ripple carry) : pour raliser l'addition de A et
B, on additionne en commenant par les bits de poids faible, Ai, Bi et Ci-1. Le rsultat
est S et une retenue ventuelle COUT.
a) Faire les tables de Karnaugh de Si et Ci. En dduire le diagramme logique de ces
fonctions. Prcisez les circuits utiliss.
b) A partir du bloc lmentaire d'addition dfinit prcdemment, dfinir le schma
ralisant l'addition de A et B (4 bits).
c) TP tant le temps de propagation de la famille logique choisie, en dduire le temps
de propagation de la retenue COUT.
3. Additionneur retenue gnre (fast carry) :
On appelle :
Ai . Bi = Gi le terme de gnration de retenue
Ai + Bi = Pi le terme de propagation de retenue
a) Exprimer Ci en fonction de Gi, Pi et Ci-1. En dduire l'expression logique de C1, C2,
C3 et C4 en fonction des Pi, Gi et CIN (retenue initiale)
b) Calculer Pi G i . Exprimer les Ci en fonction des G i , Pi et C IN .
c) Exprimer Ai Bi en fonction de G i Pi . En dduire l'expression de Si en fonction de
Gi, Pi, et Ci-1.
d) Avec les rsultats prcdents, tudier le diagramme logique du circuit 74283 (voir
figure)
e) Quel est le retard maximum pour COUT dans cette conception ? Comparer au 2).
18
TD LOGIQUE COMBINATOIRE
---------------------------------------------------------------------------------------------------------------
F= = 1
Le ime bit de X (ou Y) est not Xi-1 (ou Yi-1). Le rsultat de la comparaison dpend des
rsultats prcdents. On a donc une structure itrative.
1.a ] Prliminaires :
X i Yi
TD LOGIQUE COMBINATOIRE
--------------------------------------------------------------------------------------------------------------1.d ] Comparateur n bits
Cette machine logique ralise la comparaison de 2 nombres X et Y de n bits. Le
rsultat de la comparaison des bits de rang i utilise le rsultat de la comparaison du rang i1.
Donner lexpression de F= en fonctions des Xi et Yi avec i [0,3] .
1.e ] Analyse du circuit 74LS85
Ce circuit permet de raliser la comparaison de deux nombres binaires de 4 bits. Le
rsultat de la comparaison est indiqu par 3 variables logiques :
F> =1
A > B (si An > Bn ou [(An = Bn) et (An-1 > Bn-1)] ou )
F= =1
A = B (tous les bits sont identiques)
F< =1
A < B (si An < Bn ou [(An = Bn) et (An-1 < Bn-1)] ou )
Sachant que les signaux A>B et A<B sont 0 et A=B est 1 :
Indiquer sur le logigramme du 74LS85 les endroits o sont ralises les fonctions
Ai Bi .( rendre avec la copie)
Donner lexpression de A=B. Cette fonction estelle itrative ? Quel est lavantage
de cette forme ? Comment raliser un comparateur 16 bits ?
Sachant que toutes les portes ont le mme temps de propagation : . Donner le
temps dtablissement de la sortie A=B en fonction de .
Logigramme du 74LS85
20
TD LOGIQUE COMBINATOIRE
--------------------------------------------------------------------------------------------------------------Exercice 3 : Code barres
Les codes barres sont des codages de valeurs alphanumriques trs largement utiliss
tant dans lindustrie que dans la distribution. Le code barres dun chiffre ou dun lettre
est constitu dune suite de barres spares par des intervalles. Lun des codes les plus
rpandus dans lindustrie est le code 3 parmi 9, encore appel 39. Dans ce code, chaque
barre et chaque intervalle peut tre soit large soit troit. Large est associ la valeur
binaire 1 et troit 0. Chaque chiffre ou lettre est cod par un ensemble de 5 barre et 4
intervalles, soit 9 digits qui forme un mot de 5 digits correspondant au codage de la
largeur des barres et un mots de 4 digits correspondant au codage de la largeur des
intervalles. Dans le code barre 3 parmi 9, on dnombre 2 barre et 1 intervalle larges
exactement, soient 3 valeurs 1 parmi 9. Le code 39 de toutes les valeurs
alphanumriques est donn dans le tableau suivant. Les diffrentes variables
alphanumriques codes sont listes dans le tableau donn ci-dessous.
Caractre
Code
derreur
Caractre
Code
derreur
10001
0100
11000
0001
22
01001
0100
00101
0001
23
11000
0100
10100
0001
24
00101
0100
01100
0001
25
10100
0100
00011
0001
26
01100
0100
10010
0001
27
00011
0100
01010
0001
28
10010
0100
00110
0001
29
01010
0100
10001
1000
30
00110
0100
01001
1000
31
10001
0010
10
11000
1000
32
01001
0010
11
00101
1000
33
11000
0010
12
10100
1000
34
00101
0010
13
01100
1000
35
10100
0010
14
00011
1000
36
01100
0010
15
10010
1000
37
00011
0010
16
Espace
01010
1000
38
10010
0010
17
00110
1000
39
01010
0010
18
00000
1110
40
00110
0010
19
00000
1101
41
10001
0001
20
00000
1011
42
01001
0001
21
00000
0111
43
Le codage barre dune pice consiste lui affecter un code alphanumrique appel
message, BK5 par exemple, puis le transformer en une succession de barres et
dintervalles conformment ltat binaire associ chacune des valeurs B, K, 5 pour
notre exemple.
Ce code souvent complt par un caractre de contrle gal la somme modulo 43 de la
valeur du message. La valeur de contrle de chaque chiffre ou lettre est donne dans les
colonnes 4 et 8 du tableau.
21
TD LOGIQUE COMBINATOIRE
--------------------------------------------------------------------------------------------------------------Le code barre de la figure suivante correspond au message BK5 : on retrouve une barre
troite suivie dune large puis 2 troite et une large, cest dire le code 01001, spares
par 2 intervalles troits puis un large et un troit, cest dire le code 0010, soit un total le
code B. Les 5 barres suivantes correspondent de la mme faon au code K et les 5
suivants 5. Les 5 dernires correspondent au code de contrle. La valeur de la somme
de B,K et 5 correspond laddition suivante : 11 + 20 + 5 =36. On retrouve bien sur ces 5
dernires barres le code correspondant au tiret dont la valeur de contrle est gale 36.
B
K
5
Contrle
1) Soient les codes barres de la figure ci dessous. Donner le code alphanumrique
correspondant chaque code barres lorsque celui-ci est correct, si celui-ci est
incorrect, essayez de prciser ou est lerreur.
a)
b)
c)
b9b8b7b6b5
bbbb
01001
0010
Barre
3-a) Combien le transcodeur doit-il avoir de sorties ?
22
TD LOGIQUE COMBINATOIRE
--------------------------------------------------------------------------------------------------------------3-b) Ecrire dans une table les entres reprsentant les barres et les intervalles
utiliss pour coder ces 6 numros. Quelle est le nombre minimal dentres ncessaire pour
ce transcodeur ?
3-c) Trouver les quations minimales (forme minterme) reliant les sorties aux
variables entres du transcodeurs. On utilisera la mthode du cot minimale pour cette
question.
4) On suppose maintenant que le code de certaines pices peut tre incorrect. Ceci peut
tre d une erreur de code sur ltiquette magntique de la pice ou bien une erreur
de lecture de cette tiquette. Le transcodeur doit identifier les codes errons en
imposant la valeur 0 sur toutes ses sorties. Trouver les expressions minimales (forme
minterme) du transcodeur.
23