Académique Documents
Professionnel Documents
Culture Documents
hapitre 2
Algèbre de Boole et Circuits Logiques
Sommaire
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 « + ».
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 ».
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
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 ?
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
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 :
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
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
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).
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.
10
Exemple : Soit la fonction f(x,y,z) définie par la table de vérité
Pour la fonction f2 : suivante :
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
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 :
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 :
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
13