Академический Документы
Профессиональный Документы
Культура Документы
La logique combinatoire
2.1 lments de base
Variable d'entre
Les variables d'entre sont celles sur lesquelles on peut agir directement. Ce sont des
variables logiques indpendantes.
Variable de sortie
Variable contenant l'tat de la fonction aprs l'valuation des oprateurs logiques sur les
variables d'entre.
ET
S = AB = AB
A B S
0 0 0
0 1 0
1 0 0
1 1 1
OU
S=A+B
A B S
0 0 0
0 1 1
1 0 1
1 1 1
NON
S=A
A S
0 1
1 0
NON-ET
S = A B = AB
A B S
0 0 1
0 1 1
1 0 1
1 1 0
NON-OU
S=A+B
A B S
0 0 1
0 1 0
1 0 0
1 1 0
Variable de sortie
Une analyse rapide permet de dterminer que la lampe sera allume (active) si un des
trois commutateurs est actif ou si les trois sont actifs.
Donc: L = ABC + A BC + ABC + A BC
10
A0=0
A+1=1
A1=A
A+A=A
AA=A
A + A =1
AA = 0
A=A
F = AB
et
G = A+B
alors
F=G
12
Complmentarit
Deux fonctions sont dites complmentaires si l'une est l'inverse de l'autre pour toutes les
combinaisons d'entres possibles.
Si
F = AB
et
G = A+B
alors
F=G
AB = A + B
A + B = AB
par dualit.
Associativit
A + B + C = (A + B) + C = A + (B + C)
A B C = (A B) C = A (B C)
Commutativit
A+B=B+A
AB=BA
Distributivit
A (B + C) = A B + A C = AB + AC
13
Thorme de DeMorgan
Premire Forme:
A + B + C + ... = A B C ...
Deuxime Forme:
A B C ... = A + B + C + ...
Forme canonique
Une expression est sous sa forme canonique si tous les symboles qui reprsentent les
variables apparaissent dans tous les termes qui la constitue. Lorsqu'une quation est crite
partir de sa table de vrit, elle est dans sa forme canonique.
Si une fonction est une somme de produits, on a une somme canonique.
Exemple: F = ABC + ABC + A BC + A BC
Si une fonction est un produit de somme, on a un produit canonique.
Exemple: G = (A + B + C) (A + B + C) (A + B + C) (A + B + C)
Exemple 2.2
Trouvez la somme et le produit canonique de la fonction suivante:
A B C L
0 0 0
0 0 1
L = A BC + ABC + A BC + ABC
0 1 0
M = L = A BC + ABC + A BC + ABC
0 1 1
1 0 0
1 0 1
L = (A BC)(ABC)(A BC)(ABC)
1 1 0
1 1 1
L = M = A BC + ABC + A BC + ABC
14
Exemple 2.3
On veut simplifier le circuit suivant:
15
16
2.4.1 Karnaugh
La mthode de Karnaugh permet de visualiser une fonction et den tirer intuitivement une
fonction simplifie. Llment de base de cette mthode est la table de Karnaugh qui reprsente,
sous forme de tableau, toutes les combinaisons d'tats possibles pour un nombre de variables
donn. Chaque dimension du tableau pouvant reprsenter visuellement deux variables, on peut
facilement simplifier des fonctions quatre variables laide dun tableau deux dimensions.
Bien que plus difficile visualiser, la simplification de fonctions cinq ou six variables est
possible laide de tableau trois dimensions.
Codes
Avant de poursuivre les explications de la table de Karnaugh, il faut introduire quelques
concepts sur lesquels Karnaugh s'est bas pour dvelopper ses tables. Le premier concept est
l'utilisation d'une reprsentation particulire de l'information, il s'agit des codes. Les codes et
systmes reprsentatifs seront vus en dtail aux chapitre 5. Lorsque plusieurs variables logiques
sont exprimes ensemble, ce groupe peut tre appel nombre binaire. Par analogie aux nombres
dcimaux o chaque chiffre est un multiplicateur d'une puissance de dix, chaque chiffre qui le
compose est le multiplicateur d'une puissance de deux. Le nombre 123 peut donc tre exprim de
la faon suivante:
Nombre dcimal
Nombre binaire
123 = 1 10 2 + 2 101 + 3 10 0
123 = 1 2 6 + 1 2 5 + 0 2 4 + 1 2 3 + 1 2 2 + 1 21 + 1 2 0
123 = 100 + 20 + 3
123 = 64 + 32 + 8 + 4 + 2 + 1
Cette notation, appele code binaire naturel, permet de reprsenter 2n nombres en utilisant
n bits (variables binaires). Avec quatre bits, il est donc possible de reprsenter 16 nombres
allants de 0 15. Le tableau suivant (tableau 2.1) donne les combinaisons possibles pour un mot
binaire naturel de 4 bits, A3, A2, A1 et A0.
17
Nombre dcimal A3
A2 A1 A0
A222 +
A121 +
A020
10
11
12
13
14
15
La transition d'un mot au mot suivant implique qu'un, et seulement un, bit change
d'tat.
Ces deux caractristiques ne sont pas prsentes dans le code binaire naturel. Par exemple,
en passant du nombre 7 au nombre 8, tous les bits doivent changer d'tat. De plus, le code binaire
naturel n'est pas cyclique puisque le nombre suivant 15 est 16 et qu'il n'est pas possible de
reprsenter ce nombre avec le code binaire naturel 4 bits. Dans un compteur binaire naturel, le
18
nombre suivant 15 sera 0 avec une indication de dbordement. La table suivante montre les
codes de Gray 1, 2 et 3 bits.
Gray 1 bit Gray 2 bits Gray 3 bits
0
00
000
01
001
11
011
10
010
110
111
101
100
19
A
0
B 0
1
BA
00
01
11
10
01
11
10
C 0
1
BA
00
DC 00
01
11
10
BA
00
BA
01
11
10
00
DC 00
DC 00
01
01
11
11
10
10
01
E= 0
11
10
E= 1
20
est reprsente dans la table, on procde des regroupements de "1" qui se situent les uns ct
des autres. Puisque la table de Karnaugh utilise un code de Gray, ces groupements identifient des
termes adjacents. La figure suivante identifie certains groupements typiques. Il est important de
noter que les groupements sont toujours des rectangles (les carrs sont aussi des rectangles)
contenant un nombre de "1" qui est une puissance de deux.
Si une fentre n'est couverte que par un seul impliquant, il est essentiel.
Exemple 2.5
On veut simplifier S = AC + AB + BC
Il faut tout d'abord remplir la table de Karnaugh l'aide de l'quation de la fonction. Cette
tape est trs importante puisqu'il faut remplir toutes les cases qui correspondent une
combinaison d'entres produisant une sortie vraie.
Conditions facultatives
Sous certaines conditions, il se peut qu'un systme soit conu avec des combinaisons
d'entres qui ne se prsentent jamais ou qui sont sans intrts. On dsigne les tats de sorties
correspondantes par des conditions facultatives (don't care) et on les considre comme des "1"
ou des "0", selon ce qui est avantageux. On reprsente ces conditions facultatives dans les tables
par le symbole "X" ou ""
Exemple 2.6
Les afficheurs sept segments sont bien connus. Ils servent afficher un chiffre allant de
0 9. Ce nombre est reprsent sur 4 bits qui permettent de reprsenter les nombres de 0 15.
Les combinaisons d'entres de 10 15 sont des conditions facultatives puisqu'elles ne devraient
jamais tre prsentes.
a = (0,2,3,5,6,7,8,9) + (10,11,12,13,14,15)
b = (0,1,2,3,4,7,8,9) + (10,11,12,13,14,15)
.
.
.
Impliquants redondants
Un impliquant est dit redondant si toutes les fentres qu'il couvre dans une table de
Karnaugh sont dj couvert par un autre impliquant. Ce terme peut tre enlev de l'quation sans
changer la table de vrit. Sous certaines conditions, ce terme peut stabiliser le circuit en
enlevant des erreurs momentanes (glitchs) de fonctionnement.
23
Exemple 2.7
F = CBA + CBA + CBA + CBA
F = CB + CA
F = CB + CA + BA
24
F = DA BC
F = DA(B + C) + CB(D + A )
F = DA BC + CBDA
F = DA BC
F = A B C
25
F = AC(BD + BD)
F = AC(B D)
F = (A + C)(B D)
F = AC(B D)
2.4.2 Quine/McCluskey
Avec les mthodes prcdentes, les simplifications ont t obtenues de faon purement
intuitive; rien ne nous assure que la fonction obtenue est rellement la plus simple que lon peut
obtenir. De plus, en l'absence d'algorithme bien dfini, ces mthodes ne peuvent tre implantes
efficacement dans un logiciel.
La mthode Quine/McCluskey, constitue dune procdure bien dfinie. garantit une
simplification maximale de la fonction obtenue, sous forme de somme de produits. I1 n'existe
aucune autre fonction quivalente contenant moins de termes. La mthode de Quine/McCluskey
utilise un algorithme pour faire ressortir l'adjacence entre les termes.
26