Vous êtes sur la page 1sur 72

Algèbre de Boole

et

Portes logiques

1
Porte NOT

NOT « NON » : est un opérateur unaire ( une seule variable) qui à


pour rôle d’inverser la valeur d’une variable . Cet état
complémentaire s’écrit A’ .

Table de vérité: A X
0 1
Symbole graphique : 1 0

5v
A X
O
OFF
Logic 1
N
Logic 0

Equation Boolean: XA

3
Porte OR:

•Le OR « OU » est un opérateur binaire ( deux variables) , a pour rôle


de réaliser la somme logique entre deux variables logiques.

Table de vérité: montre que la sortie prend le niveau haut “high”. si au


moins
5v une de ces entrées est au niveau Haut “high”.
Equation Boolean : X AB
OR
Logic 1
0 5v
A B X
Input A
Output X Logic 1
0
0 0 0
Input B
0 1 1
5v
1 0 1
1 1 1

Logic 1
0 A

Diagramme temporelle 4
Porte AND:

Le AND « ET » est un opérateur binaire ( deux variables) , à pour rôle de


réaliser le Produit logique entre deux variables booléennes.
Table de vérité: la sortie est égale à 1 si A et B sont égales à 1

5v Equation Boolean:
X  AB
AND
Logic 1
0 5v
Input A A B X
Output X Logic 1
0
0 0 0
Input B
0 1 0
5v
1 0 0
1 1 1

Logic 1
0
A

Diagramme temporelle 5
En résumé

OR AND NOT
0 + 0 = 0 0 . 0 = 0 0 1
0 + 1 = 1 0 . 1 = 0
1 0
1 + 0 = 1 1 . 0 = 0
1 + 1 = 1 1 . 1 = 1

R. Skouri P1110 Chapitre 2 5


A A
PORTE NOR “NON OU” B
X = A+B

B
X = A+B

La porte NOR est équivalent à la porte OR suivie de la porte NOT. NOR : Not OR «
NON ET.
NOR Symbol
Table de vérité: montre que la sortie prend le niveau bas si au
moins une de ces entrées est au niveau Haut. C’est l’inverse d’une
porte OR
animation: …
5v
OR NOR
NOR
Logic 0
1 5v
A B A+B X
Input A
Output X Logic 1
0
0 0 0 1
Input B
0 1 1 0
5v
1 0 1 0
1 1 1 0

Logic 0
1

Equation Boolean : X AB


6
PORTE NAND “NON ET” A A
X=A.B X=A.B

B B
Opération AND suivie de NOT
NAND Symbol
Table de vérité:la sortie de la porte NAND prend le niveau bas quand tous ses
entrées sont au niveau Haut.

animation:
5v

NAND
Logic 0
1 5v
A B AB X
Input A
Output X Logic 1
0
0 0 0 1
Input B
0 1 0 1
5v
1 0 0 1
1 1 1 0

Logic 0
1

Equation Boolean : X  AB


7
Porte XOR

La porte XOR est une porte OU exclusibe. Exclusive signifie : une seule entrée est au
niveau Haut “high” .

Table de vérité:

Equation Boolean de la porte XOR :


XOR A B X

Input A
0 0 0 X  AB
Output X 0 1 1
Input B
1 0 1
1 1 0

XNOR c’est une porte OR exclusive suivie d’une porte NOT.

XNOR A B X
Equation Boolean de la porte XNOR :
0 0 1
Input A
Output X 0 1 0
Input B
1 0 0 X  AB
1 1 1

8
Portes logiques

Y F Y F
AND F  XY F = (XY) NAND
X X

Y F Y F
OR F  X Y F = (X + Y) NOR
X X

Y F XOR
Inverter X F F=X X
F = XY + X Y = XY
Y F XNOR
Buffer X F FX X
F = XY + X Y = (X Y )

2
Diagrammes temporelles: NOT/OR/AND

F x x
x
y y

1 1
1 x x
x 0 0
0
1 1
1 y y
0 0
F 1 1
0 F F
0 0
temps
temps temps

10
Algebre de Boole

Porte Porte Nand Porte NOR

a a a a a a
INVERSEUR '1' a a
a a
'0'
a a b a
a a b a b
AND
b b b

ab a
a ab a ab
OR b
b b

XOR
a  b  a  b  a  b  ( a  b)  ( a  b) , en utilisant des portes NOR

 ( a  b)  ( a  b) , en utilisant des portes NAND

R. Skouri P1110 Chapitre 2 11


Table de vérité
Permet d’estimer la valeur d’une fonction pour les différents
combinaisons des arguments


a b F a b c F a b c d F
Fonction à 2 entrées: 4 (22) lignes 0 0 0 0 0 0 0 0 0
– Fonction à 3 entrées: 8 (23) lignes 0 1 0 0 1 0 0 0 1


1 0 0 1 0 0 0 1 0
Fonction à 4 entrées: 16 (24) lignes. 1 1 0 1 1 0 0 1 1
– …………………………………… 1 0 0 0 1 0 0
1 0 1 0 1 0 1
1 1 0 0 1 1 0
– Fonction à n entrées: 2n lignes. 1 1 1 0 1 1 1
1 0 0 0
1 0 0 1
1 0 1 0
1 0 1 1
1 1 0 0
1 1 0 1
1 1 1 0
1 1 1 1

12
Expressions Booléen
 Toutes les équations logiques sont formées des 3
opérateurs (+, *, not)
 Exemple: f(x,y,z) = (x + y’)z + x’
• ou:
– f est le nom de la fonction.
– (x,y,z) sont les variables d’entrées, chaque variable
peut être soit égal à 1 ou 0.
– Les 3 parties (xz, y’z et x’) de f sont appelées termes.
• F(x,y,z)=xz + y’z + x’=1
• si le terme (x et z) est égale à 1
• ou le terme (non y et z) égale à 1
• ou le terme (non x) égale à 1
si non f=0.

13
Table de vérité

Énumération ligne par ligne des valeurs prises par f en


fonction des valeurs de ses paramètres
Exemple f(x,y,z) = (x + y’)z + x’
f(0,0,0) = (0 + 1)0 + 1 = 1 x y z f(x,y,z)
f(0,0,1) = (0 + 1)1 + 1 = 1 0 0 0 1
0 0 1 1
f(0,1,0) = (0 + 0)0 + 1 = 1
0 1 0 1
f(0,1,1) = (0 + 0)1 + 1 = 1
0 1 1 1
f(1,0,0) = (1 + 1)0 + 0 = 0
1 0 0 0
f(1,0,1) = (1 + 1)1 + 0 = 1 1 0 1 1
f(1,1,0) = (1 + 0)0 + 0 = 0 1 1 0 0
f(1,1,1) = (1 + 0)1 + 0 = 1
1 1 1 1
14
Expressions et circuits
• Chaque expression Booléen peut être présenté par un
circuit logique.
• Exemple:
f(x, y, z)=(x + y’)z + x’

15
Expressions de la table de vérité
• On peut calculer f à partir de la table de vérité.
• On construit l’équation de f en écrivant tous les termes
donnant f=1.

x y z f Ainsi, f = 1:
o si x=0 et y=0 et z=1;
0 0 0 0
o ou si x=0 et y=1 et z=0;
0 0 1 1 o ou si x=1 et y=0 et z=1;
0 1 0 1 o ou si x=1 et y=1 et z=1.
0 1 1 0
1 0 0 0
1 0 1 1
1 1 0 0
f(x,y,z)= x’y’z + x’yz’ + xy’z + xyz
1 1 1 1
16
Logique Combinatoire

Expression booléenne

X = AB’ + BC

circuit logique Table de vérité

A 0 0 A B C X

0 0 0 0 0

0 0 1 0
0 0 0 1 0 0

B 1
1
X 0

1
1

0
1

0
1

1 1 1 0 1 1

C
1 1 0 0
1 1 1 1 1 1
1

17
Boolean Algebra

Une algèbre de Boole est la donnée de :


un ensemble E de deux éléments 0 et 1,
deux opérations binaires sur E : « + » et « . » (AND et OR logiques),
une opération unaire sur E : ( ‘ ) (NON logique).

x y x.y x y x+y x /x
0 0 0 0 0 0 0 1
0 1 0 0 1 1 1 0
1 0 0 1 0 1
1 1 1 1 1 1 NOT
AND OR
x x
x.y x+y x x'
y y

Signals: High = 5V = 1; Low = 0V = 0


18
Règles (ou propriétés) de l’algèbre booléenne

Dualité: Chaque axiome et chaque postulat possède un équivalent dual,


où les éléments 0 sont remplacés par des 1, les 1 par des 0, les ( · )
par des ( + ) et vice et versa

1. x + 0 = x 2. x  1 = x Identité
3. x + 1 = 1 4. x  0 = 0 remarquable
5. x + x = x 6. x  x = x Idempotence
7. x + x’ = 1 8. x  x’ = 0
complémentarité
9. (x’)’ = x
10. x + y = y + x 11. xy = yx Commutativité
12. x + (y + z) = (x + y) + z 13. x( yz) = ( xy)z Associativité
14. x(y + z) = xy + xz 15. x + yz = (x + y)(x + z) Distributivité
16. (x + y)’ = x’y’ 17. (xy)’ = x’ + y’ Loi De Morgan

19
Vérification de 16 et 17 en utilisant la table de vérité

(X + Y ) = X Y 
X X
XY (X + Y ) X Y  Y = Y
00 1 1
01 0 0
10 0 0
11 0 0

(X Y ) = X +Y 
X X
XY (X Y ) X  +Y  Y = Y
00 1 1
01 1 1
10 1 1
11 0 0
Vérification de 15 en utilisant la table de vérité

X+(YZ ) = (X+Y )(X+Z )


XYZ YZ X+(YZ ) X+Y X+Z (X+Y )(X+Z )
000 0 0 0 0 0
001 0 0 0 1 0
010 0 0 1 0 0
011 1 1 1 1 1
100 0 1 1 1 1
101 0 1 1 1 1
110 0 1 1 1 1
111 1 1 1 1 1

R. Skouri P1110 Chapitre 2 21


Commutativité

A+B = B+A A
B
A+B  B
A
B+A

AB = BA AB  B
A
BA

Associativité


A A A+B
A+(B+C)
B B
(A+B)+C
C B+C C


A A AB
A(BC)
B B
(AB)C
C BC C

22
Associativité

X=A(B+C) X=AB+AC

B A AB
B+C


C B
X
X
A A
C AC

23
Théorème de DE MORGAN

Le complément d’une somme est égal


au produit des termes complémentés

Le complément d’un produit est égal


à la somme des termes complémentés

24
Démonstration

• x +x = 1 ּ◌x + 1 ּ◌x 1 élément neutre de (.)


• = x(1 +1) distributivité
• = x.1 (1+1=1)
=x car 1 élément neutre de (.)

x.x = (0+x)(x+0) 0 élément neutre


= x +(0.0) distributivité
= x+0 0.0=0
=x 0 élément neutre

25
Application

• Simplifier l’expression suivante:

F = x’y’ + xyz + x’y

F = x’(y’ + y) + xyz [ Distributivité]


= x’1 + xyz [ y’ + y = 1 ]
= x’ + xyz [ x’1 = x’ ]
= (x’ + x)(x’ + yz) [ Distributivité ]
= 1  (x’ + yz) [ x’ + x = 1 ]
= x’ + yz [ x.1=x ]

26
Simplification en utilisant Algèbre de Boole

B
C AB+A(B+C)+B(B+C)

• AB+A(B+C)+B(B+C)
(Distributivité)
• = AB+AB+AC+BB+BC
(BB=B)
B
• = AB+AB+AC+B+BC B+A
C
( AB+AB=AB) A
• = AB+AC+B+BC C
(B+BC=B)
• = AB+AC+B
(AB+B=B)
• = B+AC 27
Autre lois

1. x + xy = x 4. x(x + y) = x
2. xy + xy’ = x 5. (x + y)(x + y’) = x
3. x + x’y = x + y 6. x(x’ + y) = xy
xy + x’z + yz = xy + x’z (x + y)(x’ + z)(y + z) = (x + y)(x’ + z)

x ּ◌ (x+y) = (x+0) ּ◌ (x+y) élément neutre


= x + (0 ּ◌ y) Distributivité
= x+0 0.y=0
=x x+0=0

x + x’y= (x + x’)(x + y) [ Distributivité ]


= 1  (x + y) [ x + x’ = 1 ]
=x+y [ élément neutre ]
28
Complément d’une fonction

Si E1= E2  dual (E1)=dual (E2)


ou dual(E) est le dual de E.
Par exemple,
XY + X Z +YZ = XY + X Z

Dualité:
 
0 1 1 0

Dual. (X + Y )(X  + Z )(Y + Z ) = (X + Y )(X  + Z )


Complément d’une fonction

• Exemple: f(x,y,z) = x’(y’z’ + yz)

x y z f(x,y,z) x y z f’(x,y,z)
0 0 0 1 0 0 0 0
0 0 1 0 0 0 1 1
0 1 0 1 0 1 0 0
0 1 1 1 0 1 1 0
1 0 0 0 1 0 0 1
1 0 1 0 1 0 1 1
1 1 0 0 1 1 0 1
1 1 1 0 1 1 1 1

f’(x,y,z) = ( x’(y’z’ + yz) )’


= x’’ + (y’z’ + yz)’ [ (AB)’ = A’ + B’ ]
= x + (y’z’)’ (yz)’ [ (A + B)’ = A’ B’ ]
= x + (y + z)(y’ + z’) [ (AB)’ = A’ + B’]
30
Exercice
Montrer que:. XY +YZ + X Z = XY + X Z
Démonstration
XY +YZ + X Z = XY + (X + X )YZ + X Z
= XY + XYZ + X YZ + X Z
= XY(1 + Z ) + X Z(Y + 1)
= XY + X Z

(X + Y )(Y + Z )(X  + Z ) = (X + Y )(X  + Z )

31
minterms
• Chaque minterms représente une combinaison de variables binaires dans
la table de vérité. Les variables sont avec (‘) si elles ont ‘0’ dans la table
de vérité et vice versa..
• Une fonction de n variables présente 2n minterms (produits standards)
distincts
• Exemple : f(x,y,z)  23 = 8 minterms:
x’y’z’ x’y’z x’yz’ x’yz
xy’z’ xy’z xyz’ xyz

• Chaque minterms est égale à 1 si:

minterms Vrai si… notation


x’y’z’ x=0, y=0, z=0 m0
x’y’z x=0, y=0, z=1 m1
x’yz’ x=0, y=1, z=0 m2
x’yz x=0, y=1, z=1 m3
xy’z’ x=1, y=0, z=0 m4
xy’z x=1, y=0, z=1 m5
xyz’ x=1, y=1, z=0 m6
xyz x=1, y=1, z=1 m7
32
Somme de minterms: Sum-of-products SOP
(ORs of ANDs)

• Une fonction Booléenne f peut entre exprimée algébriquement à partir


d’une table de vérité en formant le minterms de chaque combinaison des
variables qui produisent ‘1’. f est la somme (OR) de ces minterms (AND).
x y z f(x,y,z) f’(x,y,z)
0 0 0 1 0 f = x’y’z’ + x’y’z + x’yz’ + x’yz + xyz’
0 0 1 1 0 = m0 + m1 + m2 + m3 + m6
0 1 0 1 0 = m(0,1,2,3,6)
0 1 1 1 0
1 0 0 0 1
f’ = xy’z’ + xy’z + xyz
1 0 1 0 1 = m4 + m5 + m7
1 1 0 1 0 = m(4,5,7)
1 1 1 0 1

f=1 si xyz = 000


ou 001
ou 010 f’ contient tous les minterms qui ne
ou 011 sont pas dans f
ou 110 33
De l’expression SOP vers la table de vérité

• Table de vérité de la Entrées


Inputs Sortie
Output Product
fonction « SOP »:
A B C X Term
0 0 0 0
ABC  ABC  ABC
0 0 1 1 ABC
0 1 0 0
0 1 1 0
1 0 0 1 AB C
1 0 1 0
1 1 0 0
1 1 1 1 ABC
34
maxterms
• Un maxterm est un terme somme dans lequel toutes les variables
apparaissent exactement une seule fois.
• Chaque maxterm représente une combinaison de variables binaires dans
la table de vérité. Les variables sont avec (‘) si elles ont ‘1’ dans la table
de vérité et vice versa.
• Il existe 2n maxterms (sommes standards) distincts pour n variables.
• Le symbole Mj est utilisé pour représenter un maxterm particulier
• Les maxterms d’une fonction à 3 variable f(x,y,z):
x’ + y’ + z’ x’ + y’ + z x’ + y + z’ x’+ y + z
x + y’ + z’ x + y’ + z x + y + z’ x+y+z
maxterm est faux si… Symboles
x+y+z x=0, y=0, z=0 M0
x + y + z’ x=0, y=0, z=1 M1
x + y’ + z x=0, y=1, z=0 M2
x + y’ + z’ x=0, y=1, z=1 M3
x’ + y + z x=1, y=0, z=0 M4
x’ + y + z’ x=1, y=0, z=1 M5
x’ + y’ + z x=1, y=1, z=0 M6
x’ + y’ + z’ x=1, y=1, z=1 M7
35
Produit de maxterms: Product-of-Sums (POS)
(ANDs of ORs )
• Chaque fonction peut être écrit sous forme de produit « AND » des
sommes « OR » des maxterms. Pour obtenir la fonction f, on prend le
produit des maxterms où la fonction vaut 0

x y z f(x,y,z) f’(x,y,z) Maxterm f = x’y’z’ + x’y’z + x’yz’ + x’yz + xyz’


0 0 0 1 0 f = M4 M5 M7
0 0 1 1 0 f = ΠM(4,5,7)
0 1 0 1 0
0 1 1 1 0 f = (x’ + y + z)(x’ + y + z’)(x’ + y’ + z’)
1 0 0 0 1 (x’+ y + z)
1 0 1 0 1 (x’+ y + z’)
1 1 0 1 0
1 1 1 0 1 (x’+ y’+ z’)
f = x’y’z’ + x’y’z + x’yz’ + x’yz + xyz’
f’ = (x + y + z)(x + y + z’)(x + y’ + z) (x + y’ + z’)(x’ + y’ + z)
= M0 M1 M2 M3 M6
= ΠM(0,1,2,3,6)
f’ contient tous les maxterms qui ne sont pas dans f
36
Table de Karnaugh

• Une table de Karnaugh est une façon compacte de représenter


une table de vérité.
• Les tables de Karnaugh permettent de simplifier facilement et
méthodiquement des expressions booléennes.

• On note :
 Chaque case de la table de Karnaugh correspond à une rangée
de la table de vérité.
 Un ‘1’ placé dans une case de la table de Karnaugh correspond
à un minterms de la fonction.
 Un ‘0’ placé dans une case de la table de Karnaugh correspond
à un maxterm de la fonction.
 Deux minterms ou maxterms représentés par deux cases
adjacentes ne diffèrent que par un seul bit.

37
– La simplification des équations logiques au moyen de l’algèbre
booléenne n’est pas toujours simple, et on ne sait pas toujours si on
a atteint une solution optimale.
– Les tables de Karnaugh permettent de systématiser ce processus.

38
Représentation Cubique
• On peut utilisé les représentations suivants pour représenter
les fonctions logiques
– Tables de vérité
– Expressions algébriques
– Diagrammes de Venn
– Table de Karnaugh « K-maps »
– Cube à n dimension
Cube à 1-dimension 01 11
0 1
Y Cube à 2-dimension
X 10
00
X

111

Y Z Cube à 3-dimension
101

000 X
39
Représentation Cubique
• Exemple: B F=1 A varie(A=X), B =0 {X0}
Ce coté représente B'
A B F A F=0
F
0 0 1 F= { X0 } = B’
01 11
0 1 0
1 0 1 Face C=0 Coté AB=10
00 10 XX0 10X
1 1 0

A B f 01 X1 11 F= {1X, X1} =A+B


0 0 0
1X
0 1 1
1 0 1 00 011 111
10
1 1 1
B 010
C X10 110

f = {000, 010, 100, 101, 110} A 1X0


0X0 101
f = C’ + AB’ 10X
X00 100 40
000
Tableau de Karnaugh: K-maps

Table de vérité B

A B C F C
0 0 0 0 0
1 0 0 1 0 A

2 0 1 0 1
3 0 1 1 1
BC
4 1 0 0 0 A 00 01 11 10
5 1 0 1 1 0 0 0 1 1

6 1 1 0 0 1 0 1 1 0

7 1 1 1 1

41
Exemple

(A'+A)BCin
A B Cin Cout

0 0 0 0 011 111
0 0 1 0
0 1 0 0 A(B+B')Cin
0 1 1 1 B C 101
1 0 0 0
1 0 1 1 000 A AB(Cin'+Cin)
1 1 0 1
1 1 1 1
Cout = BCin+AB+ACin

42
Tableau de vérité  table de Karnaugh
• Une fonction à deux variables possède 4 minterms possible.
Nous pouvons re-arranger ces minterms en un tableau de
Karnaugh.
x y minterm Y
0 0 x’y’ 0 1
0 1 x’y 0 x’y’ x’y
1 0 xy’ X
1 xy’ xy
1 1 xy

Ceci nous permet de voir quels sont les minterms contenant les variables
communes.
Les minterms à gauche et à droite (du tableau) contiennent y’ et y
respectivement.
Les minterms du haut et du bas (du tableau) contiennent respectivement
x’ et x Y

0 1 Y’ Y
0 x’y’ x’y X’ x’y’ x’y
X
1 xy’ xy X xy’ xy
43
Exemple 1: Simplification K-map

• Soit une somme de minterms à 2 variables:


F(x,y)=x’y’ + x’y
• Ces 2 minterms apparaissent en haut du tableau de Karnaugh et
contiennent la variable x’ (x’ cte et y varie)

X\Y 0 1 Y varie, X =0.


0 x’y’ x’y
1 0 0
F(x,y)=x’

• Simplification en utilisant l’Algèbre de Boole:

x’y’ + x’y = x’(y’ + y) [ Distributivité ]


= x’  1 [ y + y’ = 1 ]
= x’ [x1=x]

44
Exemple 2: Simplification K-map

• Exemple 2a: F(x,y)= x’y + xy.


Les 2 minterms apparaissent à droite (du tableau) et contiennent la
variable y
On a: x’y + xy = y.

Y
0 x’y X varie, Y =1.
X 0 xy F(x,y)=y

• Exemple 2b: g(x,y)=x’y’ + x’y + xy

La ligne haute (du tableau, X=0) correspond à x’y’ + x’y qui est égale à
x’.
De même la colonne à droite (Y=1) x’y + xy , peut être réduite à y

Y
g(x,y)= x’ + y x’y’ x’y
X 0 xy
45
Exemple 3

F(x1,x2) = x1'x2' + x1'x2 + x1x2 x1

x2 0 1
1 0
0
1 1
1

En effet F = x1’ + x2
F(x1,x2) = x1'x2' + x1'x2 + x1'x2 + x1x2
= x1'(x2' + x2) + x2(x1' + x1)
= x1' + x2

46
Tableau de Karnaugh
Fonction Booléenne à 3 Variables
• Pour une expression à 3 variables (x, y, z), l’arrangement des
minterms est un peu compliqué:
YZ
YZ
X 00 01 11 10 X 00 01 11 10
0 x’y’z’ x’y’z x’yz x’yz’ 0 m0 m1 m3 m2
1 xy’z’ xy’z xyz xyz’ 1 m4 m5 m7 m6

• Une autre façon d’étiqueter le tableau de Karnaugh est:


YZ Y Y
X
x’y’z’ x’y’z x’yz x’yz’ m0 m1 m3 m2
X m4 m5 m7 m6
X xy’z’ xy’z xyz xyz’

Z Z

47
Tableau de Karnaugh:
Simplification
• Avec cet arrangement, un groupe de 2, 4 ou 8 carrés adjacents dans le
tableau contient des variables communes, peut être factorisé (ou
simplifié)..
Y f(x,y,z) = x’y’z + x’yz
x’y’z’ x’y’z x’yz x’yz’ = x’z(y’ + y)
X xy’z’ xy’z xyz xyz’ = x’z  1
Z = x’z

• Le “Voisinage” inclut les cotés extrêmes de gauche et de droite:

Y g(x,y,z) = x’y’z’ + xy’z’ + x’yz’ + xyz’


x’y’z’ x’y’z x’yz x’yz’ = z’(x’y’ + xy’ + x’y + xy)
X xy’z’ xy’z xyz xyz’ = z’(y’(x’ + x) + y(x’ + x))
Z = z’(y’+y)
= z’

z=0, x et y varie g(x,y,z)=z’


48
K-maps 5-variables

 5 variables v, w, x, y et z
 On utilise un tableau de Karnaugh à 4 variables
v' v
y y
yz yz
wx 00 01 11 10 wx 00 01 11 10
00 m0 m1 m3 m2 00 m16 m17 m19 m18

m4 m5 m7 m6 m20 m21 m23 m22


01 01
x x
m12 m13 m15 m14 m28 m29 m31 m30
11 11
w w
m8 m9 m11 m10 m24 m25 m27 m26
10 10
z z

49
Exemple
Tableau de Karnaugh:Simplification
• Exemple f(x,y,z) = xy + y’z + xz. x y z f(x,y,z)
0 0 0 0
1ere étape: Table de vérité 0 0 1 1
0 1 0 0
0 1 1 0
1 0 0 0
1 0 1 1
1 1 0 1
ajouter les variables manquantes, comme 1 1 1 1
suit:

xy + y’z + xz = (xy  1) + (y’z  1) + (xz  1)


= (xy  (z’ + z)) + (y’z  (x’ + x)) + (xz  (y’ + y))
= (xyz’ + xyz) + (x’y’z + xy’z) + (xy’z + xyz)
= xyz’ + xyz + x’y’z + xy’z

f(x,y,z) = x’y’z + xy’z + xyz’ + xyz


= m1 + m5 + m6 + m7

50
Tableau de Karnaugh:Simplification

• 2eme étape Établir et remplir le tableau de Karnaugh.


– Mettre les 1s dans le tableau pour chaque minterms, et les 0s dans les
autres carrés.
– Nous pouvons utiliser soit les produits minterms ou la forme Σmi pour
montrer ou se trouvent les 1s et les 0s.Par exemple, f(x,y,z) s’écrit
comme suit:

f(x,y,z) = x’y’z + xy’z + xyz’ + xyz f(x,y,z) = m1 + m5 + m6 + m7


Y Y
0 x’y’z 0 0 m0 m1 m3 m2
X 0 xy’z xyz xyz’ X m4 m5 m7 m6
Z Z

Ce qui conduit à : Y
0 1 0 0
X 0 1 1 1
Z

51
Directement à partir de la table de vérité

x y z f(x,y,z)
0 0 0 0
0 0 1 1 yz
00 01 11 10
0 1 0 0 x

0 1 1 0 0 0 1 0 0

1 1 1
1 0 0 0 1 0

1 0 1 1
1 1 0 1
1 1 1 1
52
Groupement des minterms
• 3eme étape: La plus difficile. Elle consiste à grouper ensemble les ‘1’s dans le
Tableau-Karnaugh
– Former des groupes (rectangles/carres) de 1, 2, 4, ou 8 minterms contenant
des ‘1’s.
– Tout les 1s dans le Tableau-Karnaugh doivent inclure au moins un rectangle.
– Ne pas inclure aucun des minterms contenant des 0s.
Y
0 1 0 0
X 0 1 1 1
Z
• Chaque groupe correspond à un terme produit. Pour obtenir un résultat aussi
simple que possible:
– Former le moins de rectangles possibles, pour minimiser le nombre de
produits dans l’expression finale.
– Chaque rectangle doit être le plus large possible, pour minimiser le nombre
de variables (literals) dans chaque terme.
– Les rectangles peuvent se chevaucher si c’est pour les rendre plus larges.

f(x,y,z) = xy + y’z + xz= y’z + xy


53
Exemple de regroupement

1 1 1 1 1 1 1 1

1 1 1 1

1 1 1 1 1 1 1

54
Exemple

 Exemple:
f(A,B,C,D) = A.(C+D)'.(B'+D') + C.(B+C'+A'.D)
= A.(C'.D').(B'+D') + B.C + C.C' + A'.C.D
= A.B'.C'.D' + A.C'.D' + B.C + A'.C.D
A
A.B'.C'.D' + A.C'.D' + B.C + A'.C.D AB
CD
= A.B'.C'.D' + A.C'.D'.(B+B') + B.C + A'.C.D 00 01 11 10

= A.B'.C'.D' + A.B.C'.D' + A.B'.C'.D' + 00 1 1

B.C.(A+A') + A'.C.D 01
D
= A.B'.C'.D' + A.B.C'.D' + A.B.C + A'.B.C + 11 1 1 1
A'.C.D C
1 1
= A.B'.C'.D' + A.B.C'.D' + A.B.C.(D+D') + 10

A'.B.C.(D+D') + A'.C.D.(B+B') B
= A.B'.C'.D' + A.B.C'.D' + A.B.C.D + A.B.C.D'
+ A'.B.C.D + A'.B.C.D' + A'.B‘.C.D
55
Logique combinatoire
Dans certains cas, la sortie pour un état d’entrée donné est
indifférente, soit parce que cet état d’entrée ne peut jamais se
produire, soit parce que la sortie correspondante ne nous intéresse
pas. On inscrit alors un x dans la table de Karnaugh. On peut s’en
servir pour minimiser le circuit comme si c’étaient des 1.

cd
ab
00 01 11 10
00 0 0 0 0

01 0 0 0 0
ab + ac
11 1 X X X
X 0 1 X Au lieu de:
10

abcd + abcd

56
Exemple: Simplifier F = m0+m2+m5+m8+m10+m13

YZ Y
WX
00 01 11 10
00 1 0 0 1
01 0 1 0 0 x=0,z=0 , y et w varie
X
11 0 1 0 0
W
10 1 0 0 1
Z

F= x’z’ + xy’z

x=1, y=0, z=1


Et w varie

57
Représentation de termes sur la table de Karnaugh

A
0 1 A
BC
BC 0 1
00 0 0
00 0 0
01 0 0 01 0 0
B=1 sur 11 1 1 11 0 0
Ces 10 1 1 10 1 1
lignes
F=B
F = BC’

A
BC 0 1
00 0 1 C=0 sur ces
01 0 0 lignes et F=AC’
11 0 0 A=1 sur cette
10 0 1 colonne

58
Tableau de Karnaugh: Simplification
• Note:
Ces deux résultat sont équivalents

Y
0 1 0 1
X 0 1 1 1
Z

Y Y
0 1 0 1 0 1 0 1
X 0 1 1 1 X 0 1 1 1
Z Z

y’z + yz’ + xy y’z + yz’ + xz

59
Tables de Karnaugh: Simplification
Quelques définitions :
• Adjacence : deux cellules sont adjacentes si elles se touchent ou si elles
sont à deux extrémités de la table

• Impliquant : un groupe de forme rectangulaire de 1, 2, 4, 8, 16, 32, 64,


… 2k, k  N, cellules adjacentes contenant des ‘1’.
• Un impliquant premier est un terme représenté par un « rectangle »
(regroupement) qui n’est pas entièrement inclus dans un autre « rectangle ».
• Un impliquant premier essentiel est un terme représenté par un «rectangle»
(regroupement) comportant au moins une cellule ne faisant pas partie d’aucun
autre rectangle associé à un impliquant premier.
• Exemple :

BC
A 00 01 11 10
1 1 0 0
Impliquant premier 0
essentiel Impliquant premier
1 0 1 1 0 essentiel
Impliquant premier 60
Exemple

f(A,B,C,D) =  m(2,3,4,5,7,8,10,13,15)
A
AB
CD 00 01 11 10

00 1 1
Tous les impliquants
01 1 1
D
premiers
11 1 1 1
C
10 1 1

B
A
AB f(A,B,C,D) = B.D + A'.B'.C + A.B'.D' + A'.B.C'
CD 00 01 11 10
A'BC'
00 1 1 AB'D'
01 1 1
D
11 1 1 1
C
10 1 1 B.D
B

A'B'C 61
Exemple

• F = AB +CD +ABCD
= AB + CD + BD
G = AB + BCD +CD
= AB + CD + BD
H =AB +CD + BD
A A A

D D D
C C C

B B B
F = AB + CD + BD
R. Skouri P1110 Chapitre 2 62
Tables de Karnaugh: Simplification
• Exemple
AB A

C 00 01 11 10
F = A + B·C' + B'·C
0 2 6 4

0 0 1 1 1
1 3 7 5

C 1 1 0 1 1

A
B AB
AB CD 00 01 11 10
CD 00 01 11 10 00 1 1
F= AC’ + CB
00 1 1
01 1 1

01 1 1
11 1 1
C
11 1 1
10 1 1
1 1
10
B
63
Produit de sommes POS  somme de produits SOP

 L’expression POS peut etre obtenu en regroupant les


maxtermes de notre fonction (i.e. les “0”).
 Exemple:
Soit F=m(0,1,2,3,5,7,8,9,10,11), Tout d’abord on
utilise le tableau de Karnaugh, ensuite on regroupe
les maxterms:
A
AB
CD 00 01 11 10

00 1 0 0 1

01 1 1 0 1
D
11 1 1 0 1
C
10 1 0 0 1

64
Produit de sommes POS  somme de produits SOP

A A
AB AB
CD 00 01 11 10 CD 00 01 11 10

K-map 00 1 0 0 1 00 0 1 1 0 K-map
of F 01 1 1 0 1 01 0 0 1 0 of F'
D D
11 1 1 0 1 11 0 0 1 0
C C
10 1 0 0 1 10 0 1 1 0

B B

 Ce qui donne F’ sous forme SOP:


F' = B.D' + A.B
 Pour trouver F sous forme POS:
F = (B.D' + A.B)'
= (B.D')'.(A.B)' Lois De Morgan
= (B'+D).(A'+B') Lois De Morgan

65
Exemples
f(A,B,C,D) =  m(2,8,10,15) +  d(0,1,3,7)
A
AB
CD 00 01 11 10

00 X 1

01 X
D
11 X X 1
C
10 1 1

f(A,B,C,D) = B'.D' + B.C.D

66
Exemples

 Donner l”expression de F sous forme POS:


f(A,B,C,D) = A.B.C + B'.C.D' + A.D + B'.C'.D'
 K-map de f '.

A
AB
CD 00 01 11 10 f ' = A'.B + A'.D + B.C'.D'
00 1 1 Lois De Morgan,
01 1 1
D f = (A'.B + A'.D + B.C'.D')'
11 1 1 1
C = (A+B').(A+D').(B'+C+D)
10 1 1
B
A corriger

ExamplesR. Skouri P1110 Chapitre 2 67


Examples (11/11)

 To find simplest POS expression for example #3:


f(A,B,C,D) =  m(2,8,10,15) +  d(0,1,3,7)
 Draw the K-map of the complement of f, f '.
f '(A,B,C,D) =  m(4,5,6,9,11,12,13,14) +  d(0,1,3,7)
A
AB
CD 00 01 11 10
From K-map,
00 X 1 1 f ' = B.C' + B.D' + B'.D
01 X 1 1 1 Using DeMorgan’s theorem,
D
11 X X 1
C f = (B.C' + B.D' + B'.D)'
10 1 1
= (B'+C).(B'+D).(B+D')
B

ExamplesR. Skouri P1110 Chapitre 2 68


Conception d'un circuit logique
• définir clairement le problème sous forme d'expressions littérales
• écrire les affirmations logiques en expressions littérales traduisibles
en langage booléen
• écrire les expressions booléennes
• Simplier et optimiser si possible les expressions booléennes
• écrire une expression générale tout en AND ou tout en NAND ou
tout en OR ou tout en NOR du circuit afin de minimiser le nombre
de circuits intégrés requis
• dessiner le schéma logique pour la réalisation électronique du circuit

69
Conception d'un circuit logique
A) Problème B) Table de vérité
y =1 si a=1, ou b et c sont égal à 1.
Z = 1 si b ou c est égal à 1, mais pas tout les deux, Inputs Outputs
ou a,b et c sont tous égaux à 1. a b c y z
0 0 0 0 0
0 0 1 0 1
C) Équations de sorties
0 1 0 0 1
0 1 1 1 0
y = a'bc + ab'c' + ab'c + abc' + abc 1 0 0 1 0
1 0 1 1 1
1 1 0 1 1
z = a'b'c + a'bc' + ab'c + abc' + abc 1 1 1 1 1

D) Minimisation E) Circuit logique


y z
bc bc a
a 00 01 11 10 y
a 00 01 11 10 b
c
0 0 0 1 0 0 0 1 0 1
1 1 1 1 1 1 0 1 1 1
z
y = a + bc z = ab + b’c + bc’
70
Temps de propagation
Retard entre transition des signaux de sortie et d’entrée.
Ce retard est lié à divers phénomènes, tels que:
La charge et/ou la décharge de diverses capacités parasites
Méthode courante pour le délai de propagation:
Mesurer le délai entre les points à « 50% » des signaux d’entrée
et de sortie.
Délai de propagation différents pour montée et descente, Temps
de propagation+ moyenne entre ces deux temps

tPD= ½(tPHL + tPLH)

H
Entrée
Entrée Sortie
L
H
Sortie
L
71
tPHL tPLH
Temps de propagation

 Exemple: considérons le circuit suivant:


 Chaque porte à un temps de propagation égale à ∆t.

X ∆t
2∆t
Y S

∆t 2∆t
3∆t
C
Z

72

Vous aimerez peut-être aussi