Académique Documents
Professionnel Documents
Culture Documents
Par convention, on associe généralement à l’état vrai d’une variable logique la valeur binaire 1 et la valeur 0 à
l’état faux. C’est la logique positive. On peut aussi faire le contraire (c’est la logique négative) en associant la
valeur 0 à l’état vrai et la valeur 1 à l’état faux. Dans ce cours, on travaillera toujours en logique positive, sauf
mention contraire.
Electriquement, l’état vrai (ou la valeur 1) va être associé à un niveau de tension haut (la tension
d’alimentation du montage V en général) et l’état faux (valeur 0) va être associé à un niveau de tension bas (en
DD
général, la masse du montage GND).
En logique, tout raisonnement est décomposé en une suite de propositions élémentaires qui sont vraies ou
fausses. BOOLE, mathématicien britannique du XIX siècle a créé une algèbre qui codifie les règles (algèbre
Booléenne) à l’aide de variables logiques ne pouvant prendre que deux états et d’opérations élémentaires portant
sur une ou 2 variables.
L’algèbre de BOOLE ne traite que de la logique combinatoire, c’est à dire des circuits numériques dont la
sortie ne dépend que de l’état présent des entrées (sans mémoire des états passés). A chaque opérateur
logique booléen (NON, ET, OU, NON ET, NON OU, OU exclusif, NON OU exclusif), on va associer un circuit
numérique combinatoire élémentaire. La logique séquentielle (avec mémoire) sera vue plus tard.
1
Logique Combinatoire et Séquentielle Chapitre II. Fonctions logique élémentaires et
Algèbre de Boole
1.2.1.3 OR (OU)
L’opérateur OR (OU) porte sur deux variables d’entrée. Si A et B sont les variables d’entrée, alors S =
A+B. S est vraie si A OU B sont vraies. L’opérateur OR est symbolisé par le plus (+) comme l’addition en
mathématique. On peut voir cette fonction comme l’opérateur maximum (max) qui prend la plus grande des deux
valeurs. Le tableau suivant résume l’action de cet opérateur.
2
Logique Combinatoire et Séquentielle Chapitre II. Fonctions logique élémentaires et
Algèbre de Boole
1.2.1.5 NOR (NON OU)
L’opérateur NOR (NON OU) porte sur deux variables d’entrée. Si A et B sont les variables d’entrée,
alors S= 𝐴 + 𝐵 . S est fausse si A OU B sont vraies. L’opérateur NOR est l’inverse de l’opérateur OR. Son
symbole est le symbole du OU suivi d’une bulle qui matérialise l’inversion. Le tableau suivant résume l’action de
cet opérateur.
3
Logique Combinatoire et Séquentielle Chapitre II. Fonctions logique élémentaires et
Algèbre de Boole
Remarque :
Les NAND et les NOR sont des portes universelles car elles permettent de réaliser toutes les opérations
logiques élémentaires.
Les lois fondamentales de l’algèbre de BOOLE se vérifient en écrivant les tables de vérités et en testant
tous les cas possibles. Ces lois sont les suivantes :
4
Logique Combinatoire et Séquentielle Chapitre II. Fonctions logique élémentaires et
Algèbre de Boole
𝐴 ⊕ 𝐵 = 𝐴. 𝐵 + 𝐴𝐵
On a de plus
𝐴 ⊕ 𝐵 = 𝐴 ⊕ 𝐵 = 𝐴⨁𝐵
Et
1⨁𝐴 =𝐴
0⨁𝐴 =𝐴
1) Le complément d’un produit de variables est égal à la somme des compléments des variables.
Par exemple :
𝐴. 𝐵 = 𝐴 + 𝐵
2) Le complément d’une somme de variables est égal au produit des compléments des
variables. Par exemple :
𝐴 + 𝐵 = 𝐴. 𝐵
5
Logique Combinatoire et Séquentielle Chapitre II. Fonctions logique élémentaires et
Algèbre de Boole
N
par exemple et écrire les combinaisons dans l’ordre des entiers naturels (0, 1, 2, 3, …, 2 -1). La table de vérité de
S sera par exemple la suivante :
Entrées Sortie
Valeur A B C Combinaison S
entière
0 0 0 0 𝑨. 𝑩 . 𝑪 0
1 0 0 1 𝑨. 𝑩 . 𝑪 1
2 0 1 0 𝑨. 𝑩. 𝑪 1
3 0 1 1 𝑨. 𝑩. 𝑪 1
4 1 0 0 𝑨. 𝑩. 𝑪 0
5 1 0 1 𝑨. 𝑩. 𝑪 1
6 1 1 0 𝑨. 𝑩. 𝑪 0
7 1 1 1 𝑨. 𝑩. 𝑪 0
Sous sa forme complète, l’équation logique de S se lit directement. C’est la somme du ET logique de chaque
combinaison avec l’état de S correspondant. Ici, on obtient la forme canonique complète :
𝑺 = 𝑨. 𝑩. 𝑪. 𝟎 + 𝑨. 𝑩. 𝑪. 𝟏 + 𝑨. 𝑩. 𝑪. 𝟏 + 𝑨. 𝑩. 𝑪. 𝟏 + 𝑨. 𝑩. 𝑪. 𝟎 + 𝑨. 𝑩. 𝑪. 𝟏 + 𝑨. 𝑩. 𝑪. 𝟎 + 𝑨. 𝑩. 𝑪. 𝟎
On sait que 0.X = 0, donc on peut éliminer les termes qui valent 0. Cela nous donne :
𝑺 = 𝑨. 𝑩. 𝑪. 𝟏 + 𝑨. 𝑩. 𝑪. 𝟏 + 𝑨. 𝑩. 𝑪. 𝟏 + 𝑨. 𝑩. 𝑪. 𝟏
On sait aussi que 1.X = X, donc on peut écrire la forme canonique abrégée :
𝑺 = 𝑨. 𝑩. 𝑪 + 𝑨. 𝑩. 𝑪 + 𝑨. 𝑩. 𝑪 + 𝑨. 𝑩. 𝑪
C’est simplement la somme de combinaisons pour lesquelles S vaut 1. On la note aussi Σ (1, 2, 3,5).
1.2.4 Simplification des fonctions logiques
L’expression d’une fonction logique sous sa forme la plus simple n’est pas quelque chose d’évident. Trois
méthodes sont utilisables :
• Le raisonnement. On cherche, à partir du problème à résoudre, l’expression la plus simple possible.
Evidemment, cette méthode ne garantit pas un résultat optimal.
• La table de vérité et les propriétés de l’algèbre de BOOLE. C’est plus efficace, mais il est facile de rater une
simplification, notamment quand la fonction est compliquée.
• La méthode graphique des tableaux de Karnaugh. C’est la méthode la plus efficace car elle garantit le bon
résultat.
6
Logique Combinatoire et Séquentielle Chapitre II. Fonctions logique élémentaires et
Algèbre de Boole
A BS
0 0 0
0 1 1
1 0 1
1 1 1
On obtient donc :
𝑺 = 𝑨𝑩 + 𝑨𝑩 + 𝑨𝑩
𝑺 = 𝑨 𝑩 + 𝑩 + 𝑨𝑩 = 𝑨 + 𝑨𝑩 = 𝑨 + 𝑩
On voit bien que cette méthode de simplification devient peu évidente quand la fonction est plus complexe.
Voyons maintenant une méthode plus efficace.
A la main, on traite 4 variables sans difficultés. Au maximum, on peut aller jusqu’à 5 voir 6 variables. En
pratique, on utilise un programme informatique qui implémente généralement l’algorithme de QUINE-
McCLUSKEY, qui reprend la méthode de Karnaugh, mais de manière systématique et non visuelle.
Définition : dans un code adjacent, seul un bit change d’une valeur à la valeur suivante. Exemple avec deux
variables :
Les tableaux de Karnaugh sont une variante des tables de vérité. Ils sont organisés de telle façon que les
termes à 1 (ou à 0) adjacents soient systématiquement regroupés dans des cases voisines, donc faciles à identifier
visuellement. En effet, deux termes adjacents (qui ne différent que par une variable) peuvent se simplifier
facilement : 𝐴𝐵𝐶 + 𝐴𝐵𝐶 = 𝐴𝐵(𝐶 + 𝐶) = 𝐴𝐵. On représente les valeurs de la fonction dans un tableau aussi
7
Logique Combinatoire et Séquentielle Chapitre II. Fonctions logique élémentaires et
Algèbre de Boole
carré que possible, dans lequel chaque ligne et chaque colonne correspondent à une combinaison des variables
d’entrée exprimée avec un code adjacent (le code GRAY en général).
Pour la lecture et la simplification de l’expression, on cherche des regroupements les plus gros possibles (de
1, 2, 4 ou 8 variables), en se rappelant que le code est aussi adjacent sur les bords (bord supérieur avec bord
inférieur, bord gauche avec bord droit). On effectue une lecture par « intersection » en recherchant la ou les
variables ne changeant pas pour le regroupement. On ajoute alors les paquets. On obtient l’expression sous la
forme d’une somme de produit. Une case peut être reprise dans plusieurs paquets.
8
Logique Combinatoire et Séquentielle Chapitre II. Fonctions logique élémentaires et
Algèbre de Boole
9
Logique Combinatoire et Séquentielle Chapitre II. Fonctions logique élémentaires et
Algèbre de Boole
Dans une fonction logique, il peut exister des états non utilisés (Indifférences). Ces combinaisons n’ont
pas d’importance pour le problème à résoudre. On les appelle en anglais des états « don’t care » (ne pas
tenir compte) et on les symbolise par un X. Ces états X peuvent prendre la valeur la plus pratique pour
simplifier la fonction. Exemple :
Il peut parfois être plus pratique de lire les 0 dans le tableau plutôt que les 1. On obtient alors 𝐹 =
somme de produits ce qui implique (par DE MORGAN) que F = produit de somme des variables inversées. Si
par exemple on a :
En comptant les 1 : 𝑆 = 𝐵 + 𝐴. 𝐶
En comptant les 0 au lieu des 1, on obtient : 𝑆 = 𝐴𝐵 + 𝐵𝐶 . D’où on tire : 𝑆 = 𝐵(𝐴+𝐶 ) ce qui donne finalement :
𝑆 = 𝑆 = 𝐵 + 𝐴𝐶. On peut utiliser la lecture directe sur les 0 quand il y a peu de 0 et beaucoup de 1.
10