Vous êtes sur la page 1sur 15

Logique combinatoire et séquentielle

CHAPITRE II :

ALGEBRE DE BOOLE : FONCTIONS ET CIRCUITS LOGIQUES

1. INTRODUCTION :
L’algèbre de Boole est un ensemble de variables à 2 états (binaire) de valeur de vérité 1 (vrai)
et 0 (faux), muni d’un nombre limité d’opérateur NON, ET, OU.
Une variable booléenne (VB) X est égale à 0 ou 1.

2. OPERATIONS DE BASE DE L’ALGEBRE DE BOOLE A :


2.1. 1 VB : Complémentation (NON, NI).
 Soit X une VB, le complément de X noté X et dit X barre, est aussi une VB.
Le circuit intégré d’implantation d’inverseur est le 74LS04 et comporte 6 inverseurs.

Table de vérité : Symbole graphique :

U?
X X
1 2
0 1
1 0 7404

2.2. Opération à 2 VB :
2.2.1. OPERATEUR ET :
- Soit deux VB X et Y, X ET Y : noté X . Y et se lit X et Y
- Le circuit intégré d’implantation du ET est le 74LS08 et comporte 4 ET à 2 entrées.

Table de vérité : Symbole graphique :

X Y X.Y U?
1
3
0 0 0 2

0 1 0 7408

1 0 0
1 1 1

2. 2. 4 OPERATEUR OU :
- Soit 2 VB X, Y, X OU Y note X+Y et dit X ou Y
- Le circuit intégré d’implantation du OU est le 74LS32 et comporte 4 portes OU à 2
entrées.

A. FAKKAR 19
Logique combinatoire et séquentielle

Table de vérité : Symbole graphique :

X Y X+Y
U?
1
0 0 0 3
2
0 1 1
7432
1 0 1
1 1 1

L’algèbre de Boole permet d’analyser ou de synthétiser un réseau électrique.


Exemple :
A
E S E A B S
B
A OU B A ET B
3. AXIOMES ET THEOREMES DE L’ALGEBRE DE BOOLE :
Soit a, b et c trois VB. On définit :

commutativité a +b=b+a a.b=b.a

associativité (a + b) + c = a + (b + c) (a . b) . c = a . (b . c)

distributivité a . (b + c) = a . b + a . c a + (b . c) = (a + b) . (a + c)

idempotence a.a=a a+a=a

Identité remarquable 1.a=a 0.a=0 1+a=1 0+a=a

_ _
complémentation
a + a = 1 a.a = 0

Exercice :
Vérifier les 2 relations de distributivité par la table de vérité.

A. FAKKAR 20
Logique combinatoire et séquentielle

U? A 1
A 1 3
3 A(B+C) B 2
2
7408 U?
7408 AB 1
3 AB+AC
AC 2
U? 1 7432
B 1 3
3 C 2
C 2
B+C 7408
7432
Circuit 1 Circuit 2

Il est important de noter que le 2ème circuit utilise 3 portes au lieu de 2 pour le 1er, Il n’est donc
pas indifférent de réaliser les circuits d’une façon ou d’une autre. Pour minimiser les coûts, il
peut être utile de minimiser les nombres de portes.
Remarque :
Les circuits intégrés TTL présentent la caractéristique suivante :
Laisser une entrée d’une porte en l’air (ouverte) c’est à dire non relié, ni à la tension ni à la
masse revient à avoir un «1» à cette entrée (entrée flottante).

A 1
B 2 4 A OU B OU 1=1
3

OR3
1 Entrée flottante

Si on a une entrée flottante pour le OU on la met à 0, et pour le ET on la met à 1.

4. EVALUATION D’UNE FOCNTION LOGIQUE :


Définition :
On appelle fonction logique une combinaison de variables booléennes reliées par des
opérateurs NON, ET, OU.
Exemple:
Z  ( x  y )( x  y )t ( x  y )
S  ( A  B)( A  C )  ( A  B)

Chaque fonction ne peut prendre que la valeur 0 ou 1.


Les fonctions logiques peuvent se simplifier à l’aide des lois énoncées à la section précédente
et s’évaluer à l’aide des tables de vérité.

Exemple:

Y  ( A  B )( A  B)  C ( A  B)
Y  AA  AB  B A  B B  C ( A  B)
Y  A  AB  C ( A  B)
 A  C ( A  B)

A. FAKKAR 21
Logique combinatoire et séquentielle

A B C
1
3
1 2 2
1
3
2
1
3
2 1
3 Y
2

1
1 2 1 3 (8 portes)
3 2
2

1 1
3 1 3 Y
1 2 2 3 2
2
(4 portes)

Logogramme de la fonction Y avant et après simplification.

5. TABLE DES FONCTIONS A DEUX VARIABLES :


16 fonctions sont possibles avec 2 VB :

X Y F0 F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 F11 F12 F13 F14 F15

0 0 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1

0 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0 1 1

1 0 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1

1 1 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1

Fonction 0 X Y ET Y X OU 1

Toutes ces fonctions peuvent être exprimés au moyen des opérateurs ET, OU, NON.

Autres fonctions très souvent utilisées :


2
F1 = X Y=X + Y  3
1

7402

Le circuit intégré d’implantation 74LS02.

Fonction NON OU  NOR.


3
F7= X+Y=XY 2 Le circuit intégré d’implantation 74LS00.
7400
Fonction NON ET  NAND.

A. FAKKAR 22
Logique combinatoire et séquentielle

Remarque:
Ces 2 fonctions sont utilisées pour générer toutes les fonctions booléennes possibles. On dit
aussi que ce sont des éléments de connexions universelles.
Exercice:
Réaliser les fonctions NON, ET, OU à 2 entrées avec NAND et NOR.

2
3 NON
7400

1 1

2
3
2
3 ET
7400 7400

1
3
2

7400 1
3
2 OU
1 7400
3
2

7400

3
1
NON
7402

2 2

3
1
3
1
OU
7402 7402

2
1
3

7402 2
1
3
ET
2 7402
1
3

7402

Avantage de l’utilisation des NAND et NOR :


C’est l’implantation de n’importe quel type de circuit avec un seul type de porte.

1
3
· F6 =XY+XY = X  Y Ou exclusif 2

7486

A. FAKKAR 23
Logique combinatoire et séquentielle

1
3
· F9=XY+XY=X  Y 2 Fonction égalité ou coïncidence.
74266

Remarque : Fa= F15 – a

6. RELATIONS DE BASE DE L’ALGEBRE DE BOOLE :


Ces relations vont servir pour simplifier les expressions booléennes ou pour démontrer de
nouvelles relations.
Relations de Base :

xy  xy  x ( x  y )( x  y )  x
x  xy  x x( x  y )  x
x  xy  x  y x( x  y )  xy
xy  x z  yz  xy  x z ( x  y )( x  z )( y  z )  ( x  y )( x  z )
xy  xyz  xy  xz ( x  y )( x  y  z )  ( x  y )( x  z )

7 : THEOREME DE DEMORGAN :
Théorème 1 : La négation d’un produit de variables est égale à la somme des négations de
variable.
abc  a  b  c
Théorème 2 : La négation d’une somme de variables est égale au produit des négations de
variable.

a  b  c  ab c

Remarque:
Ces 2 théorèmes sont très utiles pour les circuits logiques, ils permettent entre autre de
transformer un produit de somme en une somme de produit et vice versa.
8. DUALITE DE L’ALGEBRE DE BOOLE :
Si on démontre une relation, on peut écrire immédiatement sa duale en remplaçant les
opérateurs :
(.)  (+)
(+)  (.)
(1)  (0)
(0)  (1)

A. FAKKAR 24
Logique combinatoire et séquentielle

Exemple : écrire la duale de la fonction suivante.


Z  ab  a b  a b
Z  b (a  a )  a b
Z  b  ab
Z a b
Par dualité, on trouve :
(a  b )(a  b )(a  b)  a b
9. SIMPLIFICATION ALGEBRIQUE DES RELATIONS BOOLEENNES :
Simplifier une fonction revient à l’écrire à l’aide d’un nombre minimum de terme en utilisant
les lois fondamentales et les relations démontrées.

Exemple :
Simplifier la fonction booléenne Z suivante :

Z  (a  b)(b  c)(a  c)
Z  (ab  ac  bb  bc)(a  c)
Z  ab  ac  bc)(a  c)
Z  aa b  aa c  a bc  ab c  acc  bcc
Z  a bc  ab c  ac  bc
Z  bc(1  a )  ac(1  b )
Z  ac  bc
Z  ( a  b )c

A. FAKKAR 25
Logique combinatoire et séquentielle

CHAPITRE III :

REPRESENTATION ET SIMPLIFCATION DES FONCTIONS


LOGIQUES

I. REPRESENTATION DES FONCTIONS LOGIQUES :


1. Objectif :

 Savoir représenter les fonctions logiques sous 4 formes :


* Expression algébrique
* Table de vérité
* Table de Karnaugh
* Logigramme
 Savoir extraire les formes canoniques,
 Savoir simplifier une expression booléenne à partir des tables de Karnaugh complètes ou
non.

2. MODES DE REPRESENTATION DES FONCTIONS LOGIQUES :

a) Représentation algébrique :
La représentation algébrique d’une fonction logique est une combinaison de variable
boolienne reliée pat des opérateurs logiques.
Exemple :
S  x. y.c  x. y.c  x. y.c  x. y.c
C  x. y.c  x. y.c  x. y.c  x. y.c  x. y  x.c  y.c
b) Table de vérité:
On peut représenter les fonctions logiques sous forme de table de vérité, les entrées
étant dans l’ordre binaire naturel, S et C sont des fonctions à 3 variables donc 23
(8)combinaisons sont possibles.

x y c S C
0 0 0 0 0
0 0 1 1 0
0 1 0 1 0
0 1 1 0 1
1 0 0 1 0
1 0 1 0 1
1 1 0 0 1
1 1 1 1 1

A. FAKKAR 26
Logique combinatoire et séquentielle

c) Tableau de Karnaugh :
La table de vérité présente un inconvénient, le nombre de lignes croit de façon
exponentielle avec le nombre de variables. Le nombre de lignes est 2n. On contourne
cette difficulté en plaçant les variables d’entrées aux entrées d’une table aussi carrée que
possible. On a donc, une table de Karnaugh à double entrée, l’une pour les lignes et
l’autre pour les colonnes.
Soit une fonction à n variables, la table sera aussi carrée que possible pour p et q entiers
tel que : p + q = n, avec p = q = n/2 pour n pair et  p – q  = 1 pour n impair. La table
comportera alors 2p colonnes et 2q lignes. On numérote ensuite les colonnes et les lignes
selon le code binaire réfléchi.
Considérons les fonctions de 3 variables S et C définies précédemment, choisissons p =
2 et q = 1, on aura alors 4 colonnes et 2 lignes, la table se présentera de la manière
suivante :

Fonction S Fonction C

x\y c 00 01 11 10 x\y c 00 01 11 10
0 0 1 0 1 0 0 0 1 0
1 1 0 1 0 1 0 1 1 1

Pour obtenir la fonction de chaque case, il suffit d’effectuer pour chaque case le produit
des variables en complémentant chaque variable de valeur 0.
Exemple :
Représenter sous forme de table de Karnaugh l’expression :

Z  a .b .d  a.b .c .d  a.b.c  a.b.c.d  a.b.c .d

Nous avons 4 variables, donc n = 4 et p = q = 2. La table de Karnaugh aura 4 lignes et


4 colonnes.

dc\ba 00 01 11 10

00 1 0 0 0

01 1 0 1 0

11 0 0 1 1

10 1 0 0 1

d) Logigramme :
On suppose qu’une série de lignes nous fournit les variables d’entrées.

A. FAKKAR 27
Logique combinatoire et séquentielle

Exemple :
Représenter graphiquement la fonction C = x.c + x.y + y.c

C Y X

1
3
2

1 1
3 2 4
2 3
C

1
3
2

3. FORMES CANONIQUES :
Toute fonction booléenne d'une seule variable x peut être écrite sous la forme :

f(x)  f(1) x  f(0) x

Considérons les expressions f(1,x2,.......,xn) et f(0,x2,.......,xn) fonction de x2,.......,xn, on aboutit


au théorème de Shannon qui s'exprime ainsi :
Toute fonction booléenne de n variables f(x1, x2,......., xn) s'écrit :

f(x1 , x 2 ,......., x n )  f(1, x 2 ,.., x n ) x 1  f(0, x 2 ,.., x n ) x 1

En généralisant, on obtient :
f(x1 , x 2 ,..., x n )  f(1,1,...,1) (x1 x 2 ... x n )  f(0,1..., 1) (x1 x2 ...xn ),..., f (0,0,...,0)(x1 x2 ...xn )
Cette forme est appelée forme canonique disjonctive de la fonction.
Par dualité, on a la forme canonique conjonctive.

Les formes canoniques permettent de localiser chaque ligne d'une table de vérité ou chaque
case d'une table de Karnaugh comportant un "1" pour la première ou un "0" pour la 2nd.
On peut distinguer quatre formes canoniques :
a. Forme canonique disjonctive ou somme de produits :
Considérer la table de vérité ou de Karnaugh. A chaque "1" de la variable de sortie, faire
correspondre un produit de n variables d'entrées sous la forme normale lorsque la variable est à
"1", sous forme complémenté si la variable d'entrée est à "0". S'il y a p "1", Faire la somme

A. FAKKAR 28
Logique combinatoire et séquentielle

logique (OU) de ces p produits. Chaque produit doit contenir toutes les variables. L'expression
obtenue est généralement simplifiable.
Exemple : D’après la table de vérité de S, on a :

S  x. y.c  x. y.c  x. y.c  x. y.c


b. Forme canonique conjonctive produit de somme :

A chaque «0» de la variable de sortie faire correspondre une somme des n variables d’entrée
sous forme normale, Si la variable d’entrée est «0» sous forme complément si la variable est
à «1», faire le produit logique des q sommes (q nombre de «0»).
Exemple :
S  ( x  y  c)( x  y  c)( x  y  c )( x  y  c )
Remarque :
Si on cherche le complément de la fonction par la pière forme canonique, on retrouve la 2nd
forme canonique en complémentant le résultat.

c. Forme canonique : Forme NAND


La forme canonique NAND permet de réaliser le logigramme uniquement et directement à
l’aide de porte NAND. On la déduit de la première forme canonique pour double
complémentation.

d. Forme canonique : Forme NOR


On l’a déduit de la 2ème forme canonique par double complémentation.

A. FAKKAR 29
Logique combinatoire et séquentielle

II. SIMPLIFICATION DES FONCTIONS LOGIQUES :


1. Principe de la méthode :
Soit une fonction booléenne complète (c'est à dire complètement spécifiée). Cette fonction est
représentée sur la table de Karnaugh par une série de cases où la fonction prend la valeur "1" et
une autre série de cases où la fonction prend la valeur "0". La table de Karnaugh étant établit
dans le code binaire réfléchi, qui possède la propriété d’adjacente, on peut mettre en évidence
les propriétés suivantes :
Deux cases adjacentes de la table de Karnaugh contenant la valeur «1» correspondent à 2
mintermes qui diffèrent par une seule variable c'est à dire que cette variable est complémentée
dans l’un des mintermes, non complémenté dans l’autre, On a affaire à 2 termes tel que :
x1 x2 ...x j ...xn etx1 x2 ...x j ...xn
Ces deux termes donnent :
x1 x2 ...x j 1 x j 1 ...xn
Où le terme xj disparaît. En généralisant, 22 = 4 cases adjacentes, contenant la valeur « 1 »,
conduisent à un seul terme réduit dans lequel 2 variables n’apparaissent pas.
2n cases adjacentes, contenant la valeur « 1 », conduisent à un seul terme réduit dans lequel n
variables n’apparaissent pas.
Cette méthode consiste à faire apparaître dans la table des groupes de « 1 » adjacents aussi
importants que possible en remarquant qu’un même « 1 » peut faire partie de plusieurs groupes
en vertu de la relation x + x + x = x.
Remarque :
Une table ou diagramme de Karnaugh est une table d’implication logique disposée de telle
manière que 2 termes logiquement adjacents soient aussi adjacents géométriquement.
2. Traitement des cas :
a. Fonction à 3 variables A, B et C :

A\BC 00 01 11 10
0
1 1 1

AB C  ABC  AC
On regroupe les «1» de toutes les cases adjacentes et on lit les coordonnés de chaque
groupement.
2.2.2. Exemple :

A\BC 00 01 11 10 A\BC 00 01 11 10
0 0 0 1 1 I 1 0 0 1 1 0
1 0 0 1 1 1 0 1 1 0

I) F = B 1) F = C

A. FAKKAR 30
Logique combinatoire et séquentielle

A\BC 00 01 11 10 A\BC 00 01 11 10
0 1 0 0 1 II 2 0 0 0 0 0
1 1 0 0 1 1 1 1 1 1

II ) F  C 2) F  A

A\BC 00 01 11 10 A\BC 00 01 11 10
0 0 1 0 0 III 3 0 1 0 0 1
1 0 1 0 0 1 0 0 0 0

III ) F  B .C 3) F  A.C

A\BC 00 01 11 10 A\BC 00 01 11 10
0 0 0 1 1 IV 4 0 0 0 1 1
1 0 1 1 1 1 1 1 1 1

IV) F = B + A.C 5) F = A + B

A\BC 00 01 11 10 A\BC 00 01 11 10
0 0 0 0 1 1 3 0 2 V 5 0 1 0 0 0
1 0 4 1 5 1 7 1 6 1 0 0 1 1

V) F  A.B  A.C  B.C 5) F  A.B  A.B.C

2.2.3. Remarque :
La fonction (V) peut s’écrire sous la forme : F = {3, 5, 6, 7}.

b. Fonction à 4 variables a, b, c et d :

Le numéro de chaque case et l’équivalent décimal du nombre binaire d c b a avec les


poids respectifs 23, 22, 21, 20.

dc\ba 00 01 11 10

00 0 1 3 2

01 4 5 7 6

11 12 13 15 14

10 8 9 11 10

A. FAKKAR 31
Logique combinatoire et séquentielle

d est le poids fort et a le poids faible.


Exemple :
Soit F une fonction logique de 4 variables booléenne d, c, b et a définit par l'équivalent décimal
des mintermes vrais. Cette représentation facilite le remplissage de la table de Karnaugh.
F = R {0, 1, 2, 5, 6, 7, 9, 10, 11, 13, 14, 15}, R exprimant la réunion des cases à "1".
Remarque :
Cette représentation est l'équivalent de :
F = {0000, 0001, 0010, 0101, 0110, 0111, 1001, 1010, 1011, 1101, 1110, 1111}
La table de Karnaugh correspondante se présente comme ci-dessous :

dc\ba 00 01 11 10

1 1 0 1
01
00 0 1 1 1

11 0 1 1 1

10 0 1 1 1

F  d .c .b  b.a  c.a  d .a

dc\ba 00 01 11 10

00 1 1 0 1
01 0 1 1 1
11 0 1 1 1
10 0 1 1 1

F  d .c .a  b .a  c.b  d .b
Remarque :
Le groupement des "1" sous les formes représentées sur les 2 tables conduisent à des formes
également optimales. Ainsi la forme simplifiée peut conduire à des expressions différentes.
c. Fonction à 5 variables :
Remarque:
Pour cette table il y a intérêt à faire apparaître les cases par rapport auxquelles les groupements
de "1" constitués doivent être symétriques. La table ci-dessous montre les différents axes de
symétries.
Exemple :
F = R {0, 2, 5, 6, 8, 9, 10, 11, 12, 13, 14, 16, 18, 20, 21, 22, 23, 26, 27, 29, 30}

A. FAKKAR 32
Logique combinatoire et séquentielle

ed\cba 000 001 011 010 110 111 101 100


00 1 0 0 1 1 0 1 0
01 1 1 1 1 1 0 1 1
11 0 0 1 1 1 0 1 0
10 1 0 0 1 1 1 1 1

AB\CDE 000 001 011 010 110 111 101 100

00 1 0 0 1 1 0 1 0

01 1 1 1 1 1 0 1 1

11 0 0 1 1 1 0 1 0

10 1 0 0 1 1 1 1 1

F  B .C .E  A.B.D  A.B .E  A.C.D.E  B.C .D  A.D.E


Remarque :
La table à 5 variables peut être représentée à l'aide de 2 tables à 4 variables, l'une d'elle est
établie pour la valeur "0", l'autre pour la valeur "1" de la 5ème variable.
d. Cas des fonctions incomplètement spécifiée ou incomplètes
Certaines fonctions possèdent des combinaisons de variables pour lesquelles la valeur de la
fonction est indifférente ou arbitraire. Dans ce cas, on choisit ces valeurs arbitraires de manière
à faciliter la formation des groupes de "1" aussi important que possible.
Exemple :

AB\CD 00 01 11 10
00 1 1 0 0
01 1 * * *
11 0 1 1 0
10 0 * 0 0

F  A.C  A.D

A. FAKKAR 33

Vous aimerez peut-être aussi