Vous êtes sur la page 1sur 13

Chapitre

hapitre 2
Algèbre de Boole et Circuits Logiques

Sommaire

II.1 – INTRODUCTION ...................................................................................................................................................................................... 2


II.2 – DEFINITION DE L’ALGEBRE DE BOOLE. ....................................................................................................................................................... 2
II.3 – THEOREMES ET PROPRIETES ...................................................................................................................................................................... 2
II.3.1 Principe de dualité ....................................................................................................................................................................... 2
II.3.2 Théorèmes Fondamentaux .......................................................................................................................................................... 3
II.4 – CONCEPTS FONDAMENTAUX ..................................................................................................................................................................... 3
II.4.1 Variables booléennes ................................................................................................................................................................... 3
II.4.2 Fonctions booléenne .................................................................................................................................................................... 3
II.4.3 Opérateurs booléens ou fonctions de base .................................................................................................................................. 3
II.4.4 Système logique complet (S.L.C) .................................................................................................................................................. 3
II.4.5 Système logique complet minimisé .............................................................................................................................................. 3
II.4.6 Expressions booléennes ............................................................................................................................................................... 4
II.5 – FONCTIONS BOOLEENNES ......................................................................................................................................................................... 4
II.5.1 Manipulations algébriques .......................................................................................................................................................... 4
II.5.2 Représentation par la table de vérité........................................................................................................................................... 4
II.5.3 Représentation par la forme algébrique ...................................................................................................................................... 5
II.5.4 Passage de la forme algébrique à la table de vérité .................................................................................................................... 5
II.5.5 Passage de la table de vérité à la forme algébrique .................................................................................................................... 5
II.5.6 Fonctions booléennes à une variable ........................................................................................................................................... 6
II.5.7 Fonctions booléennes à deux variables ........................................................................................................................................ 6
II.5.8 Fonctions booléennes à n variables ............................................................................................................................................. 6
II.5.9 Les fonctions booléennes particulières......................................................................................................................................... 6
II.5.10 Représentation schématiques des fonctions logiques................................................................................................................ 7
II.6 – FORMES CANONIQUES ............................................................................................................................................................................. 7
II.6.1 Mintermes et Maxtermes ............................................................................................................................................................ 7
II.6.2 Conversions entre formes canoniques ......................................................................................................................................... 8
II.7 – SIMPLIFICATIONS DES FONCTIONS BOOLEENNES ............................................................................................................................................. 9
II.7.1 La méthode algébrique ................................................................................................................................................................ 9
II.7.2 Méthode de simplification de Karnaugh ...................................................................................................................................... 9

Support de cours établi par Lhadi BOUZIDI


Année universitaire 2013-2014
Semestre II

1
II.1 – Introduction • La loi «  » admet un élément neutre noté e0 : ∀x∈E,
Un processeur est composé de transistors permettant de xe0 = x
réaliser des fonctions sur des signaux numériques. Ces • Tout élément de E est idempotent pour chacune des deux
transistors, assemblés entre eux forment des composants lois :
permettant de réaliser des fonctions très simples. A partir de ∀x∈E, x • x = x et xx = x
ces composants il est possible de créer des circuits réalisant • Axiomes de complémentarité : ∀x∈E, x • ̅ = e0 et
des opérations plus complexes. L'algèbre de Boole (du nom du ∀x∈E, x̅ = e1
mathématicien anglais Georges Boole 1915 - 1864) est un
moyen permettant de concevoir de tel circuit. C’est une Exemples d’algèbres de Boole :
théorie mathématique proposant de traduire des signaux • L’ensemble P(E) des parties d’un ensemble E, muni des
électriques (à deux états) en expressions mathématiques. Pour opérateurs intersection ∩ , union ∪, et l’application
cela, on définit chaque signal élémentaire par des variables involutive complémentaire dans E définie comme suit :
logiques et leur traitement par des fonctions logiques. Des f(A)= CE(A) avec A∈ P(E).
méthodes (table de vérité) permettent de définir les • L’ensemble des propositions (leurs valeurs {V,F}) muni
opérations que l'on désire réaliser, et de transcrire le résultat des connecteurs logiques ¬ (l’application involutive
en une expression algébrique. Grâce à des règles appelées lois négation) , ∧ (ET logique), ∨ (OU logique).
de composition, ces expressions peuvent être simplifiées. Cela • L’algèbre des circuits électriques est une algèbre de Boole
va permettre de représenter grâce à des symboles un circuit :
logique (logigramme), c'est-à-dire un circuit qui schématise L’ensemble E est composé des éléments 0 et 1. Il est
l'agencement des composants de base (au niveau logique) muni des lois « . » et « + » et de l’application
sans se préoccuper de la réalisation au moyen de transistors complémentaire f : a →. Concrètement, on peut
(niveau physique). utiliser des montages d’interrupteurs en série ou en
parallèle pour réaliser l’équivalent des deux lois de
Algèbre de Boole composition « . » et « + ».

Pour vérifier que les exemples ci-dessus sont réellement des


algèbre de Boole, il suffit de vérifier les axiomes présentés
Théorie mathématique
dans la page précédente en substituant les lois du nouvel
Utilisée pour Un ensemble ensemble aux lois « • », «  » et à l’application f : a →.
Deux lois de composition interne
La conception de Une application involutive II.3 – Théorèmes et propriétés
circuits électroniques Un ensemble d’axiomes
numériques Un ensemble de théorème II.3.1 Principe de dualité

Comme Le principe de dualité permet de retrouver des propriétés à


partir de propriétés déjà existantes en se servant d’une
Les mémoires
caractéristique dont dispose les formules issues de l’algèbre
Les circuits de calcul
de Boole. En effet, partant d’une formule (axiome ou
Les microprocesseurs
Etc… théorème) déjà établi, on peut retrouver une autre formule
(axiome ou théorème) rien qu’en remplaçant dans la première
formule la loi « + » par « . » ou inversement et l’élément
Figure 1 - Algèbre de Boole
neutre « 1 » par « 0 » ou inversement.

II.2 – Définition de l’Algèbre de BOOLE.


Exemple : Tous les propriétés relatives à la loi « . » sont
déductibles de celles de la loi « + » en se servant du principe
On appelle algèbre de Boole tout ensemble E muni de deux
de dualité :
lois de composition interne « • » et «  » et d’une application
2
involutive f (f = Id) de E dans lui-même, notée f : a →
Propriété Loi "+"
( = ). Cet ensemble respecte les propriétés suivantes :
Idempotence x+x=x
Commutativité x+y=y+x
• Chacune des deux lois est associative et commutative,
Associativité x + y + z = x + (y + z) = (x + y) + z
• Chacune des deux lois est distributive par rapport à
Elément neutre x+0=x
l’autre,
Distributivité x + (y . z) = (x + y) . (x + z)
• La loi « • » admet un élément neutre unique noté e1 :
Complémentarité x + x =1
∀x∈E, x• e1 = x

2
Loi "+" Loi "." booléennes sont des fonctions à plusieurs variables
x+x=x x.x=x (x1,x2, ...,xn).
x+y=y+x x.y=y.x 0,1  → 0,1
:
x + y + z = x + (y + z) = (x + y) + z x . y . z = x . (y . z) = (x . y) . z
 ,  , … ,  ) →  ,  , … ,  )
x+0=x x.1=x
x + (y . z) = (x + y) . (x + z) x . (y + z) = (x . y) + (x . z)
Exemple : f1(x1, x2, x3) = (x1+x2) . 

x + x =1 x.x = 0

Tableau 1 - Propriétés de l’algèbre de Boole et principe de II.4.3 Opérateurs booléens ou fonctions de base
dualité On désigne par opérateur booléen, la fonction de base
associée soit à la loi de composition interne « + » ou « . » ou à
II.3.2 Théorèmes Fondamentaux l’application involutive « négation ». Nous verrons que
Les théorèmes qui suivent sont les plus utilisés dans le calcul d’autres opérateurs sont utilisés (NAND, NOR, XOR). En
des fonctions logiques. Tous peuvent être déduits des axiomes général, on n’utilise un opérateur que si on a trouvé un circuit
de l’algèbre de Boole. électronique qui le représente. Ces circuits sont aussi appelés
« portes logiques ».

Inhibition x + ( xy ) = x + y x.( x + y ) = x. y II.4.4 Système logique complet (S.L.C)

x+1=1 x.0=0 Un système logique complet est un ensemble d’opérateurs


Absorption logiques qui permet à lui seul d’exprimer une fonction logique
x + (x . y) = x x . (x + y) = x quelconque. Autrement dit, il doit réaliser les 3 opérations de
base : ET, OU et NON. Par exemple, le système {ET, OU, NON}
x + y = x. y x. y = x + y est un système logique complet.
DeMorgan
x = x II.4.5 Système logique complet minimisé

L’objectif de ce système est de minimiser les trois opérateurs


Tableau 2 : Théorème fondamentaux de l’algèbre de Boole
de base à 2 puis à 1 opérateur.
Démonstration du théorème de l’inhibition :
x + ( xy ) = x + y Exemples de SLC à
Démonstration
2 opérateurs
x + ( x y ) = ( x + x ).( x + y ) = 1.( x + y ) = x + y
x+y = ̅̅ + involution
{ET, NON}
= 
̅ .  Morgan
Démonstration du théorème de l’absorption : x.y = ̅̅ . involution
x + (x . y) = x {OU, NON}
= ̅
+  Morgan
x + (x . y) = (x . 1) + (x . y) = x . (1 + y) = x

Exemples de SLC à
Démonstration du théorème de l’absorption : x + 1 = 1 Démonstration
1 opérateur
x + 1 = x + (x + x ) = (x + x) + x = x + x = 1 ̅ = 
.  Idempotence
= (x↑x)
II.4 – Concepts fondamentaux
x+y = ̅̅ + involution
II.4.1 Variables booléennes 
L’opérateur NAND = ̅ .  Morgan
On désigne par variable booléenne un être mathématique qui (NON-ET) 
=.  .
). )
  idempotence
représente une valeur dans l’ensemble {0,1}. Elle est identifiée noté ↑ = (x↑x) ↑(y↑y)
par un nom composé de caractères alphanumériques (le
premier est toujours alphabétique). Concrètement, elle 
x.y= .  involution
représente un signal électrique dans un système électronique. 
= .
).
 )
 Idempotence
= (x↑y) ↑(x↑y)
II.4.2 Fonctions booléenne L’opérateur NOR
Peut être démontré de le même façon
Une fonction booléenne est une relation d’un ensemble de (NON-OU)
que pour l’opérateur NAND
n n
départ V et d’un ensemble d’arrivée V. avec V = produit noté ↓
cartésien de V par V n fois et V={0,1}. En général, les fonctions

3
II.4.6 Expressions booléennes

Lorsque plusieurs opérateurs sont combinés avec des variables


Règle de construction des arbres d’exécution :
et des constantes booléennes, on dit que l’ensemble forme
une expression logique. On distingue des opérateurs unaires
• Mettre au niveau des feuilles de l’arbre les occurrences
(négation) et des opérateurs n-aires (opérateurs ET, OU, etc.).
des variables et les constantes dans le même ordre que
Les expressions les plus simples sont composées d’une
celui de leur apparition dans l’expression
variable ou d’une constante. Des expressions plus complexes
• Identifier les opérateurs applicables en premier (ceux qui
sont souvent composées de sous expressions pouvant être
disposent des opérandes). Lier par des arcs les variables
décomposées à leur tour en sous expressions jusqu’à aboutir
et constantes aux opérateurs applicables en premier
aux expressions simples (constantes et variables).
niveau
A chaque expression on peut associer un arbre de
• Identifier les opérateurs applicables dans les niveaux
décomposition (ou d’exécution). Ce dernier est composé d’une
suivants sachant que les variables, constantes et résultats
hiérarchie de nœuds qui représentent les différents
des niveaux précédents peuvent servir d’opérandes.
opérateurs mis en jeux dans l’expression. Les arcs de cet arbre
représentent les sous expressions. Les feuilles de l’arbre • Tous les niveaux vont aboutir à un seul arc représentant
représentent les constantes et les variables logiques de l’expression à exécuter.
l’expression.
Equations : Une équation booléenne est une égalité entre
Exemple : Soit l’expression Exp1 représentée par la formule deux expressions booléennes.
Exemples :
suivante : Exp1 = x.( x + y ) + x. y
• y=1
En parcourant de gauche à droite, Exp1 est composée • z = x+y
• des opérateurs suivants : ET, NON, OU, OU, ET.
• f ( x , y ) = x.( x + y ) + x. y
• des variables suivantes : x et y.
Une question se pose au sujet de l’application des opérateurs :
dans quel ordre ces opérateurs sont-ils exécutés ?
II.5 – Fonctions Booléennes
En général, de la même façon que les expressions
arithmétiques. Des priorités sont associées à chacun des
II.5.1 Manipulations algébriques
opérateurs comme suit :
• La négation est l’opérateur le plus prioritaire Les fonctions booléennes sont, en général, exprimées sous
(priorité 1) forme de tables de vérité. Afin de les manipuler et de les
• Les parenthèses permettent de définir un ordre exploiter pour réaliser des circuits logiques, il faut les
d’exécution, ils sont d’une priorité 2 représenter sous forme d’expressions algébriques. La
• L’opérateur ET est prioritaire par rapport à OU (ET : manipulation algébrique des fonctions booléennes consiste,
priorité 3, OU : priorité 4) en général, à les représenter et les simplifier en utilisant les
• Lorsque les opérateurs sont de même priorité, axiomes et théorème de l’algèbre de Boole.
l’exécution est effectuée de gauche vers la droite.

II.5.2 Représentation par la table de vérité


Par exemple dans l’expression Exp1 l’arbre d’exécution sera
comme suit : La table de vérité d’une fonction représente:
• d'un coté, les différentes combinaisons des variables
impliquées dans la fonction
• et de l'autre, la valeur de cette fonction pour chacune de
ces combinaisons.
Plus concrètement, la table de vérité d’une fonction f à n
variables (x1, x2,..., xn) est un tableau composé de N lignes et
de M colonnes tel que M est égal au nombre de variables
n
ajouté de 1 et N est égal à 2 ajouté de 1. Chaque ligne
représente une combinaison unique de l’ensemble des
variables.

Figure 2 – Arbre d’exécution d’une expression booléenne

4
Exemple 1 Exemple : f(x,y) = x . y + x. y
x . y et x . y : sont des termes algébriques.
Ainsi, une fonction peut être représentée soit par sa forme
algébrique ou sa table de vérité. Mais maintenant, comment
faire pour passer d’une forme à une autre ?

II.5.4 Passage de la forme algébrique à la table de vérité

On peut retrouver n’importe qu’elle fonction logique à partir


de son expression algébrique.
Exemple : Considérons la fonction f(x,y) = x . y + x. y , pour
la représenter par sa table de vérité procédons comme suit :
• On considère chaque terme algébrique : On affecte à
chaque variable la valeur 1 (dans notre cas x→1 et y→1)
et on affecte à chaque négation de variable la valeur 0
(dans notre cas x → 0 et y → 0 ). On aura donc
x . y → 01 et x. y → 10
• Pour chacune de ces combinaisons on porte la valeur de
la fonction à 1 dans la table de vérité.
• Dans les autres combinaisons qui ne figurent pas dans
Tableau 3 – Exemple de table de vérité à 3 variables
l’expression de la fonction, on met des zéros dans la
En supposons que nous avons la spécification textuelle d’une colonne de la fonction.
fonction, nous pouvons déduire sa table de vérité. Voici un
exemple illustrant cette possibilité : On obtient alors la table de vérité suivante :

Exemple 2 : Soit la fonction f à deux variables (x, y) définie


comme suit : f(x,y) = 1
x. y x y f(x,y) pour chaque
f (x, y) = 1 si x = 0 et y = 1 terme algébrique
0 0 0
f (x, y) = 0 sinon 0 1 1
1 0 1
Cette fonction va être représentée par la table de vérité 1 1 0
suivante : x. y

Tableau 5
x y F(x,y)
0 0 0 si x=0 et y=1 II.5.5 Passage de la table de vérité à la forme algébrique
0 1 1 alors f(x,y)=1
Pour représenter une fonction sous forme algébrique à partir
1 0 0
de sa table de vérité, on suit les étapes suivantes :
1 1 0
On ne considère, dans la table de vérité, que les combinaisons
pour lesquelles la fonction vaut 1.
Tableau 4 – Représentation d’une fonction par une table de Dans la combinaison, on remplace les 1 par les variables et les
vérité 0 par leurs compléments. Ainsi chaque combinaison va
correspondre au produit logique de ses variables ou de leurs
II.5.3 Représentation par la forme algébrique compléments.
La fonction sera la somme logique de tous les produits
On peut représenter une fonction booléenne par une forme
logiques déjà trouvés en 2.
algébrique en utilisant les opérateurs booléens déjà vu
(somme logique, produit logique, négation).

5
Exemple :
x1 x2 f0 f1 f2 f3 f4 f5 f6 f7
Termes
x y f(x,y) 0 0 0 0 0 0 0 0 0 0
algébriques
0 0 0 0 1 0 0 0 0 1 1 1 1

0 1 1 On remplace le 0 par x et le 1 x. y
1 0 0 0 1 1 0 0 1 1
par y 1 1 0 1 0 1 0 1 0 1
On remplace le 1 par x et le 0 par

Fonction constante 0
1 0 1 x. y
y

Fonction ET

Ou exclusif
1 1 0

Ou
X1

X2
f(x,y) = xy + xy

Tableau 6 – Déduire l’expression algébrique d’une fonction à


partir de sa table de vérité

II.5.6 Fonctions booléennes à une variable x1 x2 f8 f9 f10 f11 f12 f13 f14 f15

0 0 1 1 1 1 1 1 1 1
Soit f une fonction à une variable x. Le nombre de valeurs
possibles que peut prendre x est 2. Une fonction à une 0 1 0 0 0 0 1 1 1 1
variable peut, de ce fait, prendre une valeur pour chaque
1 0 0 0 1 1 0 0 1 1
configuration de x. Le nombre de fonctions possibles que l’on
peut construire avec une variable est égale au nombre de 1 1 0 1 0 1 0 1 0 1
possibilités de mettre un 1 ou un 0 dans deux cases (c'est-à-

Equivalence ou égalité

Fonction constante 1
dire chacune des cases correspondante à chaque configuration
2
de x). Ce nombre est 2 =4.
Non Ou

Non X2

Non X1

Non ET
Les quatre fonctions à une variable sont :

• La fonction identité f0(x) = x


• La fonction complément f1(x) = x Tableau 8 – Fonctions booléennes à 2 variables
• La fonction constante f2(x) = 1
• La fonction constante f3(x) = 0 II.5.8 Fonctions booléennes à n variables

En Algèbre de Boole, on a souvent affaire à des fonctions à


x f0(x) f1(x) f2(x) f3(x)
plus de deux variables. Une fonction à n variables est définie
0 0 1 1 0 n
d’un ensemble de départs composé de 2 n-uplets (x1, x2,…, xn)
1 1 0 1 0 elle porte ses valeurs dans un ensemble d‘arrivées V={0,1}.
Tableau 7 – Fonctions booléennes à une variable
On peut démontrer que le nombre de fonctions possibles à n
2**n
II.5.7 Fonctions booléennes à deux variables variables est (2) .

Soit f une fonction à deux variable x1 et x2. Le nombre de


2
II.5.9 Les fonctions booléennes particulières
valeurs possibles que peut prendre le vecteur (x1, x2) est 2 =4.
Une fonction à deux variables peut, de ce fait, prendre une On peut relever dans la table de vérité ci-dessus quelques
valeur pour chaque configuration du vecteur (x1, x2). Le fonctions particulières. Ces fonctions sont les suivantes :
nombre de fonctions possibles que l’on peut construire avec • La fonction Non ET (NAND)
deux variables est égale au nombre de possibilités de mettre • La fonction Non OU (NOR)
2
un 1 ou un 0 dans 2 =4 cases (c'est-à-dire chacune des cases • La fonction Ou exclusif (XOR)
correspondante à chaque configuration de (x1,x2). • La fonction Non Ou Exclusif (XNOR)
2 2
Ce nombre est (2 ) =16. Ces fonctions sont utilisées dans certaines formules pour
simplifier les équations logiques.

6
II.5.10 Représentation schématiques des fonctions logiques
Opérateur logique NON-OU
Afin de pouvoir réaliser des circuits électroniques
correspondant à des fonctions logiques ou booléennes, on se
Symbole
sert d’une représentation logique des ces circuits. Ces
représentations sont appelées logigrammes ou schémas
logiques. Ces derniers sont, en fait, basé sur une x x 
+
représentation symbolique de chaque fonction logique de 0 0 1
base (opérateurs ET, OU, NON etc…) et de l’arbre d’exécution Table de vérité 0 1 0
de la fonction logique. 1 0 0
Voici les symboles logiques utilisés pour représenter les 1 1 0
opérateurs de base usuels

Opérateur logique ET Exemple : Voici le schéma logique correspondant à la fonction



logique Y = f(A, B, C) =  + ).  + ̅
Symbole

x y x.y
0 0 0
Table de vérité 0 1 0
1 0 0
II.6 – Formes Canoniques
1 1 1
Il existe deux formes canoniques pour chaque fonction
booléenne : la forme disjonctive et la forme conjonctive. Une
Opérateur logique OU fonction exprimée dans une forme canonique est constituée
Symbole de termes canoniques.
Un terme algébrique est dit canonique s’il contient une
x y y+y occurrence de chacune des variables impliquées dans la
0 0 0 fonction. (Les occurrences de la variable x sont x et x ).
Table de vérité 0 1 1
1 0 1 Exemple 1 : La fonction f(x,y) = x . y + x. y est une forme
1 1 1 canonique. Les termes canoniques sont x. y et x. y
Exemple 2 : La fonction f(x,y) = x + y est une forme canonique
Opérateur logique NON car le terme algébrique (x+y) contient les deux variables
impliquées dans la fonction.
Symbole
Une fonction est dite canonique si elle n’est composée que
de termes canoniques.
x ̅
Table de vérité 0 1
Exemple :
1 0
• f1(x,y,z) = x.y.z + x yz
• f2(x,y,z) = (x+y+z) . ( x + y + z)
Opérateur logique NON-ET
Considérons la fonction f1. On remarque que c’est la somme
de deux produits logiques. Cette fonction est dite canonique
Symbole
disjonctive, ses termes canoniques sont dits mintermes.

x x . 
 II.6.1 Mintermes et Maxtermes
0 0 1
Soit une fonction f à n variables (x1, x2, …, xn).
Table de vérité 0 1 1
1 0 1
Définition 1 : On définit une occurrence d’une variable par la
1 1 0
représentation de la variable elle-même ou de sa négation. On
déduit que chaque variable x dispose de deux occurrences qui
sont « x » et « ̅ ».

7
Définition 2 : Un minterme mi de la fonction f est définit par le Exemple :
produit logique d’une et d’une seule occurrence de chaque
variable de cette fonction. On déduit que le nombre de Minterme Maxterme x y F(x,y)
n
mintermes d’une fonction à n variables est 2 .
m0 = x. y M0 = x + y 0 0 1

Exemple : Considérons trois variables x, y et z. A partir de ces 3 m1 = x . y M1 = x + y 0 1 0


variables, nous pouvons construire 8 mintermes mi=0,7 faisant
intervenir x ou ̅ , y ou  et z ou ̅ .
m2 = x . y M2 = x + y 1 0 0

Mintermes Termes associés m3 = x . y M3 = x + y 1 1 1


m0 ̅ . . ̅
Forme canonique disjonctive :
m1 ̅ . . 
F(x,y) = v0.m0 + v1.m1 + v2.m2 + v3.m3
m2 ̅ . . ̅
F(x,y) =1.m0 + 0.m1 + 0.m2 + 1.m3
m3 ̅ . . 
F(x,y) = m0 + m3
m4 . . ̅
m5 . .  F(x,y) = ( x. y ) + (x.y)
m6 . . ̅ Forme canonique conjonctive
m7 . .  F(x,y) = ( v0 +M0).( v1 +M1).( v2 +M2).( v3 +M3)
F(x,y) = (1+M0).(0+M1).(0+M2).(1+M3)
Définition 3 : Un maxterme Mi de la fonction f est définit par
F(x,y) = (1).(M1).(M2).(1)
la somme logique d’une et d’une seule occurrence de chaque
F(x,y) = M1. M2
variable de cette fonction. On déduit que le nombre de
n
maxtermes d’une fonction à n variables est 2 . F(x,y) =( x + y ).( x + y )

Tableau 10 – Exemple de détermination de l’expression


Exemple : Considérons trois variables x, y et z. A partir de ces 3
algébrique d’une fonction
variables, nous pouvons construire 8 maxtermes Mi=0,7 faisant
intervenir x ou ̅ , y ou  et z ou ̅ .
Maxtermes Termes associés Forme canonique disjonctive :
m0 ++ F(x,y) =1.m0 + 0.m1 + 0.m2 + 1.m3
m1  +  + ̅ F(x,y) = m0 + m3 = ̅  + xy
m2  +  + 
m3  +  + ̅ Forme canonique disjonctive :
m4 ̅ +  +  F(x,y) = (1+M0)(0+M1)(0+M2)(1+M3)
̅ +  + ̅ F(x,y) = (1)(0+M1)(0+M2)(1)
m5
F(x,y) = (0+M1)(0+M2)
m6 ̅ +  + 
m7 ̅ +  + ̅ F(x,y) = M1.M2 = ( x + y ).( x +y)

Identification des mintermes et maxtermes : Soit une II.6.2 Conversions entre formes canoniques
fonction à deux variables x et y : Ayant une forme canonique d’une fonction, il est toujours
possible de retrouver l’autre forme canonique. En fait, la règle
Minterme Maxterme x y F(x,y) de passage d’une forme à une autre est extrêmement simple.
m0 M0 0 0 v0 Voyons voir comment :
m1 M1 0 1 v1 Soit une fonction à n variables (x0, x1, …, xn),
m2 M2 1 0 v2 • les mintermes associés à (x0, x1, …, xn) sont (m0, m1, …
n
m3 M3 1 1 v3 mi…) i allant de 0 à 2 .
Forme canonique disjonctive : • les maxtermes associés à (x0, x1, …, xn) sont (M0, M1, …
n
F(x,y) = v0.m0 + v1.m1 + v2.m2 + v3.m3 Mi…) i allant de 0 à 2 .
Forme canonique conjonctive • La forme canonique disjonctive de la fonction est
F(x,y) = ( v0 +M0).( v1 +M1).( v2 +M2).( v3 +M3) déterminée par un ensemble de mintermes, alors que la
forme canonique conjonctive de cette même fonction est
Tableau 9 – Forme canonique d’une fonction booléenne déterminée par les maxtermes dont l’indice ne
correspond à aucun des indices des mintermes.

8
Exemple : Soit une fonction à trois variables F(x1, x2, x3).
Supposons que la forme canonique disjonctive de F est (m0 +
m3 + m6).

Posons IND1={0, 3, 6}, alors on peut déterminer les indices des


maxtermes de la forme canonique de F par la formule
suivante : IND2 = {0,1,2,3,4,5,6,7} – IND1 = {1,2,4,5,7}.

Ceci nous donne directement la forme canonique conjonctive


de F : Tableau 11 – Table de vérité de la fonction F
F(x,y,z) = M1 . M2 . M4 . M5 . M7
Nous en déduisons sa forme canonique : F = ̅ y z + x  z + x
y ̅ + x y z
Conclusion : Pour passer de la forme canonique disjonctive à
En nous servant des axiomes et théorèmes de l’algèbre de
la forme canonique conjonctive, il suffit de remplacer tous les
Boole, nous pouvons simplifier l’expression de notre fonction
mintermes de la fonction par des maxtermes ayant des indices
F:
différents de ceux des mintermes.
F = ̅ y z + x  z + x y ̅ + x y z
Pour passer de la forme canonique conjonctive à la forme
F = ( ̅ y z + x y z ) + ( x  z + x y z) + ( x y ̅ + x y z)
canonique disjonctive, il suffit de remplacer tous les
F = y z (̅ + x) + x z ( +y) + x y (̅+ z)
maxtermes de la fonction par des mintermes ayant des indices
différents de ceux des maxtermes.
F=yz+xz+ xy

II.7 – Simplifications des fonctions booléennes


II.7.2 Méthode de simplification de Karnaugh
L’intérêt de la simplification vient du fait que ces fonctions
sont en général matérialisées sous forme de circuits logiques, Cette méthode est souvent utilisée pour remédier aux
pour lesquels on doit minimiser le nombre de portes logiques. difficultés que l’on rencontre dans la méthode algébrique. Elle
Il existe, au moins, trois méthodes pour simplifier une fonction est très intéressante lorsque le nombre de variables de la
logique : fonction ne dépasse pas 6. Au-delà de six variables, elle est
• la méthode algébrique (analytique) difficile à utiliser. Son principe est basé sur une nouvelle
• la méthode de Karnaugh disposition des configurations des variables et la
• la méthode de Quine McClusky représentation de la fonction là où elle est à 1. Elle repose sur
La méthode algébrique est recommandée lorsque le nombre l’identité suivante : . ) + . ) = .  + ) = 
de variables est inférieur à 4. Ceci est dû au fait que, lorsque le
nombre variables devient grand, il est difficile de faire des Elle est basée sur l’inspection visuelle de tableaux disposés de
transformations algébriques en se basant sur les théorèmes et façon que deux cases adjacentes en ligne et en colonne ne
axiomes de l’algèbre de Boole. diffèrent que par l’état d’une variable et une seule.
La méthode Karnaugh est une très bonne méthode, mais elle
n
est limitée aux fonctions dont le nombre de variables Si une fonction dépend de n variables, il y a 2 produits
n’excèdent pas 6. possibles (mintermes). Chacun de ces mintermes est
La méthode de Quine McClusky est la plus générale. Elle est représenté par une case dans le tableau de Karnaugh. Les
plus difficile à utilisée que les deux premières, mais elle a le figures suivantes donnent la structure des tableaux de
mérite d’être une méthode systématique et pouvant être Karnaugh pour 2, 3, 4 et 5 variables. Observez comment sont
facilement programmée. D’ailleurs, il existe actuellement numérotés les lignes et les colonnes : d’une case à sa voisine,
plusieurs programmes de simplification de fonctions logiques une seule variable change d’état.
basées sur cette méthode. Cette méthode ne sera pas traitée
dans ce présent cours. Pour 2 variables : (x, y), voici la table de Karnaugh
correspondant:
II.7.1 La méthode algébrique

La méthode algébrique consiste à simplifier une fonction en


utilisant les axiomes et les théorèmes de l’algèbre de Boole.
Considérons la fonction F définie par la table de vérité
suivante :

9
Pour 3 variables : (x, y, z), voici la table de Karnaugh peut faire partie de plusieurs groupes. Lors de cette
correspondant: étape, vous allez obtenir k groupes : g1, g2, …, gk.
• La fonction optimisée recherchée est la somme logique
des groupes trouvés. Il suffit de développer chacun des
groupes en éliminant les variables qui changent d’état.

Tableau de Karnaugh à 2 variables : Pour une fonction à deux


Pour 4 variables : (x, y, z,t), voici la table de Karnaugh 2
variables, la table de Karnaugh sera constituée de 2 = 4 cases.
correspondant:
Sa disposition sera sous forme bidimensionnelle comme suit :
x
y 0 1
0 m0 m1
1 m2 m3
m0, m1, m2 et m3 sont les mintermes associés aux
configurations obtenues à partir des variables x et y :
m0 = x y, m1= x y, m2 = x y et m3=x y
Pour 5 variables : (x, y, z, t,u ), voici la table de Karnaugh
correspondant: Dans la première colonne de cette table, on met les valeurs
possibles pour la variable x, et dans la première ligne, les
valeurs possibles pour la variable y. De cette façon, en
intersection entre la ligne et la colonne, on obtient une
configuration pour x et y.

Exemple : Soit la fonction f(x,y) définie par la table de vérité


suivante :

Chaque case d’un tableau de Karnaugh correspond au seul


minterme prenant la valeur 1 pour la combinaison identifiée
par la ligne et la colonne. Par exemple, la case foncée dans le
tableau suivant correspond au minterme m1 représentant
Pour la fonction f1 :
(x,y,z,t)=(0,0,0,1) ce qui donne  = ̅ ̅
Etape 1 : Construisons le tableau de Karnaugh correspondant à
xy
la fonction f :
zt 00 01 11 10
00 m0 m4 m12 m8
01 m1 m5 m13 m9
11 m3 m7 m15 m11
10 m2 m6 m14 m10
Etape 2 : Composons les groupes :
Tableau 12 - Identification des mintermes dans un tableau de
Karnaugh

Le passage de la table de vérité au tableau de Karnaugh


consiste à remplir chaque case (du tableau de Karnaugh) avec
la valeur de la fonction pour le produit (minterme)
correspondant. Il est recommandé de ne reporter que les 1.
La méthode de simplification de Karnaugh consiste à : Remarque : nous avons épuisé tous les 1 du tableau de
• Rassembler les cases adjacentes contenant des 1 par Karnaugh. Donc nous avons terminé la composition des
groupes de 2, 4, 8 termes tout en s’assurant d’obtenir des groupes. En fait, nous avons un seul groupe : g1.
groupes ayant un maximum de 1.
Etape 3 : Etablissons la formule de la fonction f : f(x,y) =g1 = ̅
• Répéter l’opération 1 jusqu’à épuisez tous les 1 du
Il faut noter que dans le groupe g1, la variable y change d’état,
tableau de Karnaugh tout en prenant en compte qu’un 1
donc elle sera éliminée (simplifiée)

10
Exemple : Soit la fonction f(x,y,z) définie par la table de vérité
Pour la fonction f2 : suivante :

Etape 1 : Construisons le tableau de Karnaugh correspondant à


la fonction f :

Etape 2 : Composons les groupes :


En se servant de la méthode algébrique, nous pouvons
simplifier cette fonction :
f(x,y,z) = m1+m3 + m5 = x y z +x y z+x y z

Par la méthode algébrique, on peut simplifier cette équation


Remarque : nous avons épuisé tous les 1 du tableau de de la façon suivante :
Karnaugh. Donc nous avons terminé la composition des
groupes. En fait, nous avons un seul groupe : g1. f(x,y,z) = x yz +x y z+x y z ⇒ f(x,y) = x z (y + y ) +
xyz
Etape 3 : Etablissons la formule de la fonction f : f(x,y) =g1+ g2 =
⇒ f(x,y) = x z + x y z ⇒ f(x,y) =( x +x y )z
̅ +
Il faut noter que : dans le groupe g1, la variable y change ⇒ f (x,y) =( x + y ) z .
d’état, donc elle sera éliminée (simplifiée). Dans le groupe g2,
la variable x change d’état, donc elle sera éliminée (simplifiée) On trouve donc que la fonction f peut être simplifiée et a
comme expression simplifiée
Table à trois variables : Pour une fonction à trois variables, la (x z+ y z)
3
table de Karnaugh sera constituée de 2 = 8 cases. Sa
disposition sera sous forme bidimensionnelle comme suit : On peut trouver un résultat équivalent en se servant de la
méthode de Karnaugh :
x y 00 01 11 10
z 1 – Dresser la table de Karnaugh :
0 m0 m2 m6 m4 xy
1 m1 m3 m7 m5 z 00 01 11 10
0 m0 m2 m6 m4
Tableau 13 – Table de Karnaugh à 3 variables
1 m1 m3 m7 m5
m0, m1, m2, m3, m4, m5, m6 et m7 sont les mintermes associés
aux configurations obtenues à partir des variables x, y et z. 2 – Remplir la table de Karnaugh :

m0 = x y z, m1= x
y z , m2 = x y z , m3= x y z , m4= xy
x y z , m5= x y z , m6= x y z et m7=x y z z 00 01 11 10
0
Dans cette table, il faut observer l’ordre des combinaisons de 1 1 1 1
0 et de 1 associées aux variables x et y : 00, 01, 11 et 10. Vous f(x,y) =m1 + m3 + m5
constatez que pour passer d’une combinaison à une autre, un
seul bit change à la fois : 3 – Simplification :
Construction des groupes : Les mintermes impliqués sont m1,
• 00 → 01 le deuxième bit change de 0 vers 1 m3 et m5. m1 et m3 sont adjacents, on peut donc former un
• 01 → 11 le premier bit change de 0 vers 1 groupe g1. m1 et m5 sont adjacents, on peut donc former un
• 11 → 10 le deuxième bit change de 1 vers 0 groupe g2.

11
00 → 01 le deuxième bit change de 0 vers 1
xy 01 → 11 le premier bit change de 0 vers 1
z 00 01 11 10 11 → 10 le deuxième bit change de 1 vers 0

0 g1 Exemple : Soit la fonction f(x,y,z,t) = m3 + m7 + m11 = x y zt


+x y z t+ x y z t
1 1 1 1
Par la méthode algébrique, on peut simplifier cette équation
de la façon suivante :
f(x,y,z,t) = x y z t + x y z t + x y z t ⇒ f(x,y) = x z t (y +
g2
y )+ x y zt
Etablissement des équations de chaque groupe :
⇒ f(x,y) = x z t + x y z t ⇒ f(x,y) =( x + x y ) z t
• Pour la détermination de g1, on voit que y change de
valeur, il sera donc éliminé, par contre x est à 0 et z à ⇒ f(x,y) =( x + y ) z t ⇒ f(x,y) =( x z t + y z t )

1 c'est-à-dire que g1 = x z
• Pour la détermination de g2, on voit que x change de On trouve donc que la fonction f peut être simplifiée et a
valeur, il sera donc éliminé, par contre y est à 0 et z comme expression simplifiée :

est à 1 c'est-à-dire que g2 = yz f (x,y,z,t) = ( x z t + y z t)

La fonction simplifiée est la somme logique de tous les termes La méthode de Karnaugh nous permet d’obtenir le même
de chaque groupe c'est-à-dire: résultat en procédant ainsi :
f(x,y) = g1 + g2 = x z+ yz
1 – dresser la table de Karnaugh :

Remarque : La méthode de Karnaugh exige à ce qu’on


xy
minimise le nombre de groupe et on maximise le nombre de 1
zt 00 01 11 10
dans un groupe. Les 1 d’un groupe doivent se trouver
00
impérativement dans des cases adjacentes, mais le nombre de
01
1 dans un groupe doit aussi être une puissance de 2. Par
exemple si vous avez trois 1 dans trois cases adjacentes les 11
une avec les autres, vous ne pourrez pas former un seul 10
groupe mais deux.
Tableau 15 – Tableau de Karnaugh à 4 variables

Table à quatre variables : Pour une fonction à quatre


4
variables, la table de Karnaugh sera constituée de 2 = 16 2 – Remplir la table de Karnaugh: f(x,y,z,t) =m3 + m7+ m11
cases. Sa disposition sera sous forme bidimensionnelle comme
suit : xy
xy zt 00 01 11 10
zt 00 01 11 10 00
00 m0 m4 m12 m8 01
11 1 1 1
01 m1 m5 m13 m9
10
11 m3 m7 m15 m11
10 m2 m6 m14 m10 3 – Simplification

Tableau 14 – Tableau de Karnaugh à 4 variables


Construction des groupes : Les mintermes impliqués sont m3,
m7 et m11. m3 et m7 sont adjacents, on peut donc former un
m0, m1, m2, m3, m4, …, m14 et m15 sont les mintermes associés groupe g1, m3 et m11 sont adjacents, on peut donc former un
aux configurations obtenues à partir des variables x, y et z : groupe g2
m0 = x yzt , m1= x y zt, … et m15=x y z t
Dans cette table, il faut observer l’ordre des combinaisons de
0 et de 1 associées aux variables x et y d’une part et z et t
d’autre part : 00, 01, 11 et 10. Vous constatez que pour passer
d’une combinaison à une autre, un seul bit change à la fois :

12
xy x
zt 00 01 11 10 0 1
00 yz
g1
01 tu 00 01 11 10 10 11 01 00
11 1 1 1 00
10 01
11
Etablissement des équations de chaque groupe :
Tableau 16 – Table de Karnaugh à 5 variables
• Pour la détermination de g1, on voit que y change de
valeur, il sera donc éliminé, par contre x est à 0, z à 1 et t Dans ce qui suit, nous allons uniquement montrer comment
à 1 c'est-à-dire que g1 = x zt déterminer les groupes et l’équation de la fonction, à partir
• Pour la détermination de g2, on voit que x change de d’une table de Karnaugh déjà établie. Le reste de la méthode
valeur, il sera donc éliminé, par contre y est à 0, z est à 1 est identique à la procédure déjà présentée dans le cas de
et t est à 1 c'est-à-dire que g1 = y zt fonction à 2, 3 ou 4 variables. Voyons le cas de la fonction
déterminée par la table de Karnaugh suivante. Comme vous
pouvez le constater, nous pouvons établir trois groupes
La fonction simplifiée est la somme logique des termes de
composés chacun de deux 1.
chaque groupe c'est-à-dire : f(x,y,z,t) = g1 + g2 = x zt + y zt
x
0 1
Tables à cinq variables : Pour une fonction à cinq variables, la
5 yz
table de Karnaugh sera constituée de 2 = 32 cases. Sa
tu 00 01 11 10 10 11 01 00
disposition sera sous forme bidimensionnelle comme suit :
00
Chaque case va disposer de cinq cases adjacentes. Comme g1
vous le constatez sur la figure suivante, la case m7 possède 01 1 1 1
cinq cases adjacentes dont quatre sont situées sur le même 11 1
cadrant alors que la cinquième est située sur le cadrant 10 1 1
g2
adjacent.
g3
x
0 1
yz Dans le groupe « g1 » on voit que les variables y, z, t et u
t u 00 01 11 10 10 11 01 00 restent inchangées, seul la variable x change, de ce fait, x sera

00 éliminée et l’équation de « g1 » sera : g1 = y zt u


01 Dans le groupe « g2 » on voit que les variables x, y, z et u
restent inchangées, seul la variable t change, de ce fait, t sera
11
éliminé et l’équation de « g2 » sera : g2 = x y zu
10
Dans le groupe « g3 » on voit que les variables y, z, t et u
restent inchangées, seul la variable x change, de ce fait, x sera
Case éliminé et l’équation de « g3 » sera : g3 = y zt u
Cadrant 1 Cadrant 2
m7
En définitif, l’équation simplifiée de la fonction f(x ,y,z,t,u) est
Il faut remarquer le la suivante : f(x ,y,z,t,u)=g1+g2+g3
parfait effet miroir entre
le cadrant 1 et le cadrant
f(x ,y,z,t,u) = y zt u + x y zu + y zt u
2

13

Vous aimerez peut-être aussi