Vous êtes sur la page 1sur 139

A.

RIZKI – FSTS

1
2
La base d’un système de numération (1)

 Écriture polynomiale en décimal


soit le nombre N = (93642)10,
N = 90000 + 3000 + 600 + 40 + 2
alors
N = 9x104 + 3x103 + 6x102 + 4x101 + 2x100

3
La base d’un système de numération (2)


 En décimal, on dispose de 10 chiffres (0, 1, 2, 3, 4, 5,
6, 7, 8, 9).
 Le chiffre de droite s’appelle le chiffre de poids
faible.
 Le chiffre de gauche s’appelle le chiffre de poids fort.

4
La forme polynômiale

 Pour un nombre décimal N de n+1 chiffres; où ai est un
chiffre:
ai = {0, 1, … , 9}; i = {0, 1, … , n};
 n est l’exposant de 10 du chiffre de poids fort

n
N   ai  10 i

i 0

5
La forme polynômiale

 Représentation dans une base quelconque:
ai = {0, 1, … , b-1}; i = {0, 1, … , n};
n est l’exposant de « b » du chiffre de poids fort.
n
N   ai  b i

i 0

6
Les bases usuelles

 b=2 Système binaire ai = {0,1}
 b=8 Système octal ai = {0,1, …,7}
 b = 10 Système décimal ai = {0,1, …,9}
 b = 16 Système hexadécimal ai = {0,1, …,9, A,B,C,D,E,F}

7
Valeur décimale d’un nombre de base «b»


 S’obtient à partir de la forme polynomiale
Exemple:
(101101)2 = 1x25 + 0x24 + 1x23 + 1x22 + 0x21 + 1x20 = (45)10
(217)8 = ………
(A26)16 = ………

8
Changements de base

 Il s’agit de déterminer les valeurs des ai de la forme
polynomiale N = Σ ai x bi à partir du nombre N écrit en
décimal.
 Effectuer des divisions successives du nombre N par b
 Le nombre écrit dans la nouvelle base est constitué de
gauche vers la droite des restes pris du dernier vers le
premier.

9
 Exemple:


Quotient Reste
125 ÷ 8 = 15 + 5=a0
15 ÷ 8 = 1 + 7=a1
1 ÷ 8 = 0 + 1=a2

Alors : N = (175)8

10
Nombres fractionnels
 Soit le nombre décimal fractionnel:
N = (0,82374)10

ce nombre s’écrit sous la forme:


N = 8x10-1 + 2x10-2 + 3x10-3 + 7x10-4 + 4x10-5

 D’une façon plus générale:

N   ai  b i

11
Nombres fractionnels

Changement de base

Cela revient à déterminer les valeurs ai de la forme


polynomiale correspondante. Pour cela on effectue des
multiplications successives sur la partie fractionnelle du
nombre N.

12
 Exemple:

N=(0,72145)10 = (????)2

0,72145 x 2 = 1,4429 a1 = 1
0,4429 x 2 = 0,8858 a2 = 0
0,8858 x 2 = 1,7716 a3 = 1
0,7716 x 2 = 1,5432 a4 = 1
0,5432 x 2 = 1,0864 a5 = 1
0,0864 x 2 = 0,1728 a6 = 0
0,1728 x 2 = 0,3456 a7 = 0
0,3456 x 2 = 0,6912 a8 = 0
0,6912 x 2 = 1,3824 a9 = 1

Alors N=(0,72145)10 = (0,101110001)2

13
Passage Binaire-Octal
( ) ( ) :

8 2
Le passage de l'octal au binaire se réalise en convertissant chaque
chiffre du nombre octal en son équivalent binaire codé sur trois bits

 ( )2  ( )8 :
Le passage du binaire vers l'octal s'effectue en divisant le mot binaire
en des groupes de 3 bits chacun, et de les convertir vers leurs
équivalents en Octal

14
Passage Binaire-Hexadécimal

 On applique le même principe que la diapo précédente, sauf
que le raisonnement ici se réalise avec 4 bits

15
Passage Hexadécimal-Octal

 Il n'existe pas de passage direct entre ces deux bases.
 On peut effectuer un passage intermédiaire à travers
la base binaire.
( 2 6 7 E )16

(0010 0110 0111 1110)2

(2 3 1 7 6)8
16
Décimal Binaire Octal Hexadecimal
0 00000 0 0
1 00001 1 1
2 00010 2 2
3 00011 3 3

4 00100 4 4

5
6
7
00101
00110
00111
5
6
7
5
6
7

8 01000 10 8
9 01001 11 9

Tableau 10 01010 12 A
11 01011 13 B

récapitulatif 12 01100 14 C
13 01101 15 D
14 01110 16 E
15 01111 17 F
16 10000 20 10
17 10001 21 11
18 10010 22 12
19 10011 23 13
20 10100 24 14
21 10101 25 15
22 10110 26 16
17
23 10111 27 17
24 11000 30 18
18
Addition:

 La table d’addition est la suivante:
0+0 = 0 0+1 = 1 1+0 = 1 1+1 = 10
 Exemple:
110101 101110011111001
+ 101100 + 110111101011101
1100001 1100110001010110

19
Soustraction:

 La table de soustraction est la suivante:
0-0 = 0 0-1 = 1 et retenue de 1 1-0 = 1 1-1 = 0
 Exemple:
1001011
- 0101111
0011100

20
Multiplication:

 Table de multiplication
0x0 = 0 0x1 = 0 1x0 = 0 1x1 = 1

 Même disposition et même algorithme qu’en décimal.

 Si on multiplie par « 1 » il faut écrire le multiplicande,


sinon on écrit « 0 ».

21
Multiplication:
Exemple: 
1101101
x 1010011
1101101
1 1 0 1 1 0 1.
1101101 . . . .
1101101. . . . . .
10001101010111

22
Multiplication:
Astuce:

 Lors de la multiplication par une puissance de 2 (2n)
Nous ferons n décalages à gauche en insérant des
zéros
 Exemple:
23 * 8 = ???

23
Division:

 Même disposition et même algorithme qu’en
décimal:
 Exemples:
11011 1001 101110111 110
1001 11 111110,1
01001
1001
0000

24
Complémentation

 Complément à 1:
le complément à 1 d’un nombre est obtenu en
remplaçant les ‘1’ par les ‘0’ et inversement.

Exemple:
N = 10111001001
Cà1 (N)= 01000110110

25
Complémentation
 Complément à 2:

 1ère méthode: soustraire le nombre de la puissance de
2 immédiatement supérieure:
Exemple: 10000000000
N= - 1101011010
0010100110

 2ème méthode: conserver tous les bits à partir de la


droite jusqu’au premier ‘1’, et de complémenter les
autres.

26
Complémentation

 Complément à 2:

 3ème méthode: trouver le complément à 2 revient à


trouver le complément à 1 et lui ajouter un ‘1’.

 Exemple: N = 1101011010
Cà1(N) 0010100101
+ 1
Cà2(N)  0010100110
27
Soustraction par complément à ‘1’ et
addition:

 On complémente l’opérande et on l’additionne au
nombre, si un ‘1’ déborde, on l’ajoute au résultat:

 Exemple:
1101011101 1101011101
- 1011100111 → Cà1 + 0100011000
10001110101
+ 1
0001110110

28
Soustraction par complément à ‘2’ et
addition:

 On complémente à ‘2’ l’opérande et on l’additionne
au nombre, si un ‘1’ déborde, on l’élimine :

 Exemple:
110110111 110110111
- 101011101 Cà2  + 010100011
1 001011010
à éliminer

29
Les nombres signés

 Un nombre est considéré signé si l'on reserve son bit
de poids fort pour représenter le signe. Ansi :
 Si ce bit est égal à 0 le nombre est positif
 Si ce bit est égal à 1 le nombre est négatif

 La valeur signée maximale codée sur 8 bits est égale à +127


0 1 1 1 1 1 1 1

 La valeur signée minimale codée sur 8 bits est égale à -128


1 0 0 0 0 0 0 0
30
Les nombres signés

 La valeur opposée d'un nombre signé s'obtient en
trouvant son complément à 2.

 Exemple 1 :
 1)
 N = (+ 23)10 = ( 0 0 0 1 0 1 1 1)2
 Le C à 2 ( N ) = (1 1 1 0 1 0 0 1 )2 = ( - 23 )

31
Les nombres signés

 Exemple 2:
43 43 00101011
- 17 + ( -17 ) + 11101111
= = = 00011010 = (26)10

(- 17) 10 = C à 2 (+17)2
= C à 2 (0 0 0 1 0 0 0 1)2
= ( 1 1 1 0 1 1 1 1)2

 Exemple 3:
 calculer en binaire (25-67)
32
33
Adjacence:


 Deux nombres sont adjacents s’ils ne différent que par les deux
chiffres d’un rang unique.

 Ces deux chiffres doivent eux-mêmes être adjacents.


 Exemples:
(295)10 395 195 205 285 296 294 2n = 6.
(1011)2 1010 1001 1111 0011 n=4.
Déduction
- Dans la base 2: Un nombre N ayant n chiffres possède n nombres
adjacents
- Dans les bases 10, 8 et 16: Un nombre N ayant n chiffres possède
2*n nombres adjacents
34
Code binaire Décimal BN BR

abcd δγβα
naturel et code
0 0000 0000
binaire réfléchi 1 0001 0001
(GRAY) 2 0010 0011
3 0011 0010
•Problème du comptage en BN 4 0100 0110
Les composants électroniques
n'assurent pas une bonne 5 0101 0111
précision quand à leur temps de 6 0110 0101
réponse à la commutation. 7 0111 0100
8 1000 1100
9 1001 1101
10 1010 1111
11 1011 1110
12 1100 1010
13 1101 1011
14 1110 1001 35
15 1111 1000
Passage BN  BR

 On commence par la droite et on transcrit chaque
chiffre tel qu’il est si il est suivi par ‘0’ sinon on le
remplace par son complément.

 ( 101100001110 )BN
 ( 111010001001) BR

36
Passage BR  BN

 On commence par la gauche et on transcrit chaque
chiffre tel qu’il est s’il est précédé dans le BN par ‘0’
sinon il est complémenté.

 EXEMPLE:
 ( 1101101001 ) BR
 ( 1001001110 ) BN

37
Code BCD (Binary Coded
Decimal)

 Le code binaire naturel permet de coder difficilement de très
grands nombres et les nombres fractionnaires ne sont toujours
pas précis, par exemple pour 21,4 :

 Coder chaque chiffre du nombre est plus simple et précis,

38
Code BCD (Binary Coded
Decimal)
 Code décimal Code BCD

 On fait correspondre à 0 0000


chaque caractère du 1 0001
système décimal un mot 2 0010
du code binaire de 4 bits. 3 0011
4 0100
 Pourquoi 4 bits ? 5 0101
6 0110
7 0111
8 1000
39
9 1001
Exemple 1: Conversion du Décimal 
BCD

( 8 6 3 8 7 )10

1000 0110 0011 1000 0111


BCD

40
Exemple 2 : Conversion du Décimal 
BCD

( 7 9 0 3 , 4 )10

0111 1001 0000 0011 , 0100


BCD

41
Opérations arithmétiques
 4316

+ 81
4397
0100 0011 0001 0110
+ 1000 0001
0100 0011 1001 0111
4 3 9 7
42
Difficultés des Opérations en BCD
(exemple)
 9237
+ 81
9318
1001 0010 0011 0111
+ 1000 0001
1001 0010 1011 1000

9 2 BCD 8

43
Solution:


On ajoute un « 6 » (0110)2 au code non BCD

1001 0010 1011 1000


+ 0110
0011 0001
9 3 1 8

44
Codes détecteurs d’erreurs

C. d 23 22 21 20 p Parité impaire
P : bit de parité
0 0 0 0 0 0
p = 0 si le nombre de ‘1’ du code est pair
1 0 0 0 1 1
P = 1 si le nombre de ‘1’ du code est impair
2 0 0 1 0 1
3 0 0 1 1 0 N.B: Permet de détecter des erreurs simples
4 0 1 0 0 1
5 0 1 0 1 0 Parité paire
P : bit de parité
6 0 1 1 0 0
p = 0 si le nombre de ‘1’ du code est impair
7 0 1 1 1 1
8 1 0 0 0 1 P = 1 si le nombre de ‘1’ du code est pair
9 1 0 0 1 0 N.B: Permet de détecter des erreurs simples
45
Codes détecteurs et correcteurs
d’erreurs

3 4 1 7

0 0 0 0 0
0 1 0 1 0
Parité
1 0 0 1 0 longitudinale
1 0 1 1 1

Parité verticale 0 1 1 1
46
47
Introduction


L’algèbre de Boole est un ensemble de
variables à deux états de valeurs de vérité:
1 (vrai), 0 (faux)
muni d’un nombre limité d’opérateurs:
NON; ET; OU (NOT; AND; OR).

La manipulation de ces variables booléennes


donne des fonctions booléennes.
48
Opération NON (NOT):

Soit x є {0,1}.
NON ( x)  x est une fonction booléenne

Table de vérité Symbole graphique

entrée sortie
x x
0 1
1 0
49
Opération ET (AND):

Soit x et y є {0,1}.
On note x.y = x ET y.

Table de vérité Symbole graphique

x y x.y
0 0 0
0 1 0
1 0 0
1 1 1
50
Opération OU (OR):
Soit x et y є {0,1}. 
On note x+y = x OR y.

Table de vérité Symbole graphique

x y x+y
0 0 0
0 1 1
1 0 1
1 1 1
51
2. Lois fondamentales (1)

 Loi de commutativité:

A.B = B.A
A+B=B+A
 Loi d’associativité:
A.(B.C) = (A.B).C
A + (B + C) = (A + B) + C
 Loi de distributivité:
ET sur OU: A.(B + C) = (A.B) + (A.C)
OU sur ET: A + (B.C) = (A + B).(A + C)

52
2. Lois fondamentales (2)

Loi d’idempotence:
A+A=A
A.A = A

Loi de complémentarité
A  A 1
A.A  0

53
2. Lois fondamentales (3)

Identités remarquables:
1.A = A
1+A=1
0.A = 0
0+A=A
Lois de distributivité interne:
A + (B + C) = (A + B) + (A + C)
A.(B.C) = (A.B).(A.C)
A.(A + B) = A + (A.B) 54
2. Lois fondamentales (4)

Loi de DeMorgan:

A  B  A.B
A.B  A  B
AA

55
Autres fonctions

 Fonction NOR (NON OU):


F1  x  y  x  y

 Fonction NAND (NON ET):


F2  x  y  x  y

56
Autres fonctions (2)
Fonction OU Exclusif :
F3  x  y  x  y  x  y

 Fonction coïncidence ou égalité : ( OU inclusif)


F4  x  y  x  y  x  y

57
Éléments de connexions universels
 La porte NOR:
A
NOT
A
A B
OR

AB
AB A B AND

AB

58
Éléments de connexions universels
(2)
 A
La porte NAND: NOT

A B A
AND
AB
AB A B
OR
AB

59
Quelques relations à démontrer

xyxyx x  x  y   x
xxyx x  x  y   x  y
xxyx y x  y   x  z   y  z   x  y   x  z 
xy xyz  xy xz x  y   x  y  z   x  y   x  z 
x  y x  y   x

60
Simplification des fonctions
Tableau de Karnaugh

Inconvénient de la table de vérité:
 Nombre de lignes important
On placera les variables d’entrée dans une
table aussi carrée que possible.
Soit n variables: 2p colonnes; 2q lignes.
 n pair: p = q = n/2
 n impair: |p-q| = 1
 Les cases seront numérotées selon le code de Gray
61
Simplification par table de Karnaugh

On exploite la
propriété d’adjacence
du code binaire
réfléchi.
a b S
0 0 0
0 1 1
1 0 1
1 1 1 62
Algèbre de Boole


 Opérations de base
 Lois fondamentales
 Théorèmes de Morgan
 Tables de vérité
 Tables de Karnaugh

FSTS - 2010 2 - 63
Opérations de base


Reposent sur 3 opérateurs de base:
 ET, OU, NON
 Toutes les équations logiques sont formées de ces 3
opérateurs

FSTS - 2010 2 - 64
Fonction logique NON


 En anglais: NOT
 Représentation:
F=A ou F = /A
Table de vérité:

Entrée Sortie

A F

0 1

1 0
Symbole usuel Symbole normalisé

FSTS - 2010 2 - 65
Fonction logique ET

 En anglais: AND 
 Représentation:
 F = A * B ou A • B ou AB
Table de vérité:

Entrées Sortie

A B F
0 0 0
0 1 0
1 0 0
1 1 1 Symbole usuel Symbole normalisé

FSTS - 2010 2 - 66
Application de la porte ET:
Alarme ceinture de sécurité

FSTS - 2010 2 - 67
Fonction logique OU
 En anglais: OR
 Représentation:
F=A+B 
Table de vérité:

Entrées Sortie

A B F

0 0 0

0 1 1
Symbole graphique
1 0 1

1 1 1

FSTS - 2010 2 - 68
Application de la porte OU

FSTS - 2010 2 - 69
Fonction logique NON-ET
 En anglais: NAND
 Représentation:
F=A*B 
Table de vérité:

Entrées Sortie

A B F

0 0 1

0 1 1
Symbole graphique
1 0 1

1 1 0

FSTS - 2010 2 - 70
Application de la porte NON ET

FSTS - 2010 2 - 71
Fonction logique NON-OU
 En anglais: NOR
 Représentation:
F=A+B 
Table de vérité:

Entrées Sortie

A B F

0 0 1

0 1 0
Symbole graphique
1 0 0

1 1 0

FSTS - 2010 2 - 72
Application

FSTS - 2010 2 - 73
Fonction OU-EXCLUSIF
 En anglais: EXOR
B*A+B*A
 Représentation:
F=AB 
Table de vérité:

Entrées Sortie
/B*A
A B F

0 0 0 B*/A

0 1 1

1 0 1 =1
1 1 0
Symbole usuel Symbole normalisé
FSTS - 2010 2 - 74
Fonction NON OU-EXCLUSIF
 En anglais: EXNOR
 Représentation:
F=AB  /B*/A + B*A

Table de vérité:
/B*/A
Entrées Sortie

A B F

0 0 1 B*A

0 1 0

1 0 0 =1
1 1 1
Symbole graphique Symbole normalisé
FSTS - 2010 2 - 75
Exemples de boitiers

 74LS00

FSTS - 2010 2 - 76

 74LS02

FSTS - 2010 2 - 77

 74LS08

FSTS - 2010 2 - 78
Portes Nand à 3 entrées

 74LS10

FSTS - 2010 2 - 79
Lois fondamentales de l’algèbre
booléenne

 Règles, postulats et théorèmes
 Utiles pour la simplification des équations logiques !

FSTS - 2010 2 - 80
Règles, postulats et théorèmes

 Fermeture:
Si A et B sont des variables Booléennes, alors
A+B, A*B sont aussi des variables Booléennes.

 Commutativité:
A + B = B + A
A * B = B * A

FSTS - 2010 2 - 81
Règles, postulats et théorèmes

 Associativité
A + (B + C) = (A + B) + C
A * (B * C) = (A * B) * C

 Distributivité
ET/OU: A*(B + C) = A*B + A*C
OU/ET: A+(B*C) = (A+B)*(A+C)

FSTS - 2010 2 - 82
Règles, postulats et théorèmes

 Idempotence
A+A = A
A*A=A

 Complémentarité
A+A=1
A*A=0

FSTS - 2010 2 - 83
Règles, postulats et théorèmes

 Identités remarquables

1+A=1 et 1*A=A
0+A=A et 0*A=0

 Distributivité interne
 A + (B + C) = (A + B) + (A + C)
 A * (B * C) = (A * B) * (A * C)

FSTS - 2010 2 - 84
Règles (ou propriétés) de l’algèbre booléenne

FSTS - 2010 2 - 85
Postulats

FSTS - 2010 2 - 86
Théorèmes

FSTS - 2010 2 - 87
FSTS - 2010 2 - 88
Tables de vérité
C Entrées
B A
Sortie
S
 Une table de vérité est 0 0 0 0
un tableau définissant
0 0 1 0
la valeur d'une
fonction logique 0 1 0 1
pour chacune des 0 1 1 1
combinaisons 1 0 0 0
possibles des entrées 1 0 1 1
1 1 0 1
1 1 1 0
FSTS - 2010 2 - 89
Exemple
Entrées Sortie
C B A S  Solution:
0 0 0 0
 On construit l’équation
0 0 1 0 de S en écrivant tous les
0 1 0 1 termes donnant S=1.
0 1 1 1
1 0 0 0  Ainsi, S = 1:
 si C=0 et B=1 et A=0;
1 0 1 1
 ou si C=0 et B=1 et A=1;
1 1 0 1  ou si C=1 et B=0 et A=1;
1 1 1 0  ou si C=1 et B=1 et A=0.

FSTS - 2010 2 - 90
Exemple


Entrées Sortie
C B A S
 Solution pour S=1.
0 0 0 0
 si C=0 et B=1 et A=0;
0 0 1 0  ou si C=0 et B=1 et A=1;
0 1 0 1  ou si C=1 et B=0 et A=1;
0 1 1 1  ou si C=1 et B=1 et A=0.
1 0 0 0  On peut donc écrire:
1 0 1 1  S = /C.B./A + /C.B.A +
1 1 0 1 C./B.A + C.B./A

1 1 1 0 S  CBA  CBA CBA  CBA

FSTS - 2010 2 - 91
Exemple
 On peut simplifier: 
 S = C.B.A + C.B.A + C.B.A + C.B.A

 S = /C.B./A + C.B./A + /C.B.A + C./B.A

 S = B./A.(/C+C) + /C.B.A + C./B.A

 S = B./A.(1) + /C.B.A + C./B.A

 S = B./A + /C.B.A + C./B.A


 S = B./A + A.(C  B) "ou-exclusif"

FSTS - 2010 2 - 92
Inspection visuelle ? Exemple
Entrées 
Sortie
C B A S
0 0 0 0
0 0 1 0
0 1 0 1 S = /C.B + C./B.A + C.B./A
0 1 1 1 S = /C.B + C.(A  B)
1 0 0 0
1 0 1 1 S = B./A + /C.B.A + C./B.A
1 1 0 1 S = B./A + A.(C  B)
1 1 1 0
FSTS - 2010 2 - 93
Exercice

 Soit deux nombres binaires sur 2 bits A et B, on
veut effectuer R = A+B (arithmétique). R est sur 3
bits

 Donner la table de vérité de Ri = Fi (A1,A0,B1,B0)


 Donner les formes canoniques de Fi
 Simplifier les équations
 Proposer des schémas à base de portes OU, ET,NON
 Idem avec des NAND seulement
 Idem avec 3 NON et 3 MUX 8 vers 1

FSTS - 2010 2 - 94
Solution: A1
0
A0
0
B1
0
B0
0
R2
0
R1
0
R0
0
0 0 0 1 0 0 1
0 0 1 0 0 1 0
0 0 1 1 0 1 1
0 1 0 0 0 0 1
R = A+B 0 1 0 1 0 1 0
0 1 1 0 0 1 1
0 1 1 1 1 0 0
1 0 0 0 0 1 0
1 0 0 1 0 1 1
1 0 1 0 1 0 0
1 0 1 1 1 0 1
1 1 0 0 0 1 1
1 1 0 1 1 0 0
1 1 1 0 1 0 1
1 1 1 1 1 1 0

FSTS - 2010 2 - 95
Donner les formes canoniques de Fi
 Première forme canonique
R2  A1. A0 .B1.B0  A1. A0 .B1.B0  A1. A0 .B1.B0  A1. A0 .B1.B0  A1. A0 .B1.B0  A1. A0 .B1.B0
R1  A1. A0 .B1.B0  ...
R0  ...

 Deuxième forme canonique


     
R2   A1  A0  B1  B0   A1  A0  B1  B0  A1  A0  B1  B0  A1  A0  B1  B0 

A  A  B  B A  A  B  B A  A  B  B A  A  B  B 


1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0

A  A  B  B A  A  B  B 
1 0 1 0 1 0 1 0

R1   A1  A0  B1  B0   ...
R0  ...

FSTS - 2010 2 - 96
Simplifier les équations
Algébriquement

   
R2  A1. A0 .B1.B0  A1. A0 .B1.B0  A1. A0 .B1.B0  A1. A0 .B1.B0  A1 . A0 .B1 .B0  A1 . A0 .B1 .B0

R2  A .B .B .  A  A   A . A .B .  B
0 1 0 1 1 1 0 1 0 
 B0  A1. A0 .  B1  B0 

R2  A0 .B1.B0  A1. A0 .B1  A1. A0 .  B1  B0 

 
R2  B1. A0 .B0  A1. A0  A1. A0 .  B1  B0 

R1  ...

FSTS - 2010 2 - 97
Proposer des schémas à base de portes
OU, ET,NON
 
R2  B1. A0 .B0  A1. A0  A1. A0 .  B1  B0 
A1 A0 B1 B0

R2

FSTS - 2010 2 - 98
La simplification des
équations

 La simplification est essentielle.
 On veut avoir le circuit le plus simple possible...

 La simplification peut être un processus long si


le système est complexe.

 Heureusement, il existe des techniques simples


pour simplifier.

FSTS - 2010 2 - 99
Méthodes de
simplification

 Il est possible d ’obtenir directement une équation
sous sa forme simplifiée en utilisant une méthode de
simplification graphique.

 Méthode de simplification graphique:


 Tables de Karnaugh

FSTS - 2010 2 - 100


Table de Karnaugh

 Représentation de la table de vérité sous forme
graphique.

 Nombre de cases = nombre de lignes de la table de


vérité.
 Multiple de 2n (1, 2, 4, 8, 16, ...)
 n = Nombre d ’entrées

FSTS - 2010 2 - 101


Table de Karnaugh
 A
 Avec n = 2:
 Entrées B et A
B 0 1
 4 cases
0
0. 1.

1
2. 3.

FSTS - 2010 2 - 102


Table de Karnaugh

 Avec n = 3:
 Entrées C, B et A
 8 cases
BA
C
00 01 11 10

0
0 1 3 2

1
4 5 7 6

FSTS - 2010 2 - 103


Table de Karnaugh

 Avec n = 4:
 Entrées D, C, B et A
BA
 16 cases DC
00 01 11 10

00
0 1 3 2

01
4 5 7 6

11
12 13 15 14

10
8 9 11 10

FSTS - 2010 2 - 104


Exemple (Karnaugh)
Entrées Sortie
C B A S 
0 0 0 0 BA
C
0 0 1 0 00 01 11 10

0 1 0 1 0 0 0 1 1
0 1 1 1 0 1 3 2

1 0 0 0
1 0 1 0 1
1 0 1 1 4 5 7 6

1 1 0 1
1 1 1 0
TABLE DE KARNAUGH
TABLE DE VÉRITÉ
FSTS - 2010 2 - 105
Table de Karnaugh

 À partir de la table, on simplifie en groupant les
1 adjacents.

 Les 1 adjacents sont mis en évidence par l'ordre


utilisé pour former la table

 La taille d’un groupe est un multiple de 2k (1, 2,


4, 8, ...).

 Le groupe doit être le plus carré possible.


FSTS - 2010 2 - 106
Exemple (Karnaugh)
 Simplification: S = /C.B + B./A + C./B.A


/C.B.A+/C.B./A = /C.B
BA
C
00 01 11 10

0 0 0 1 1
0 1 3 2

1 0 1 0 1
4 5 7 6

C./B.A
/C.B./A+C.B./A=B./A
FSTS - 2010 2 - 107
Table de Karnaugh

 Former les plus gros groupes possibles.
 Termes plus simples.

 Un 1 peut faire partie de plusieurs groupes.

FSTS - 2010 2 - 108


Exemple (Karnaugh)
 Les 1 des bords extrêmes sont adjacents.
 La table se referme sur elle même.
S
BA
DC
/C./A 00 01 11 10

00 1 0 1 1
/C.B
0 1 3 2

/D.C./B.A 01 0 1 0 0
4 5 7 6

11 0 0 0 0
12 13 15 14

S=/C./A+/C.B+/D.C. 10 1 0 1 1
/B.A 8 9 11 10

FSTS - 2010 2 - 109


Ex. Décodeur BCD – 7 Segment:74LS47
74LS47

?
A
a
B b
c
d
C e
f
g
D

Afficheur 7 segments

FSTS - 2010 2 - 110


Entrées Sorties

A B C D a b c d e f g
0 0 0 0 1 1 1 1 1 1 0
0 0 0 1 0 1 1 0 0 0 0
0 0 1 0 1 1 0 1 1 0 1
0 0 1 1 1 1 1 1 0 0 1
0 1 0 0 0 1 1 0 0 1 1
0 1 0 1 1 0 1 1 0 1 1
0 1 1 0 1 0 1 1 1 1 1
0 1 1 1 1 1 1 0 0 0 0
1 0 0 0 1 1 1 1 1 1 1
1 0 0 1 1 1 1 0 0 1 1

FSTS - 2010 2 - 111


Equation de la sortie ‘a’ :
A B C D a
0 0 0 0 1
0 0 0 1 0 a
CD
0 0 1 0 1 00 01 11 10
AB
0 0 1 1 1 00 1 0 1 1
0 1 0 0 0 01 0 1 1 1
0 1 0 1 1 11    
0 1 1 0 1 10 1 1  
0 1 1 1 1
1 0 0 0 1
1 0 0 1 1 : Variable Phibooléenne
On peut la considérer 0 ou 1

FSTS - 2010 2 - 112


a c
CD CD
AB 00 01 11 10 AB 00 01 11 10
00 1 0 1 1 00 1 1 1 0
01 0 1 1 1 01 1 1 1 1
11     11    
10 1 1   10 1 1  

b d
CD CD
AB 00 01 11 10 AB 00 01 11 10
00 1 1 1 1 00 1 0 1 1
01 1 0 1 0 01 0 1 0 1
11     11    
10 1 1   10 1 1  

FSTS - 2010 2 - 113


e
CD f
00 01 11 10 CD
AB 00 01 11 10
AB
00 1 0 0 1 00 1 0 0 0
01 0 0 0 1
01 1 1 0 1
11    
11    
10 1 0  
10 1 1  

g
CD
AB 00 01 11 10
00 0 0 1 1
01 1 1 0 1
11    
10 1 1  

FSTS - 2010 2 - 114


SOMME DE PRODUITS
 À partir d’une table(SOP)
de Karnaugh, nous générons une
somme de produits minimale en formant la sortie en
encerclant les 1’s

YZ
00 01 11 10
00 0 1 0 0 SOP F = W*X + /Y*Z + X*/Y + W*Z
01 1 1 0 0
WX
11 1 1 1 1
10 0 1 1 0
FSTS - 2010 2 - 115
SOMME DE PRODUITS
(SOP)
YZ
00 01 11 10 SOP, F = W*X + /Y*Z + X*/Y + W*Z
00 0 1 0 0
01 1 1 0 0 En appliquant Morgan, on
WX peut transformer la somme de
11 1 1 1 1 produits (SOP) en produit de
sommes (POS)
10 0 1 1 0

POS, /F = (/W+/X) * (Y+/Z) * (/X+Y) * (/W+/Z)

Réalisation de SOP et de POS avec portes NON, ET et OU. Il


ne faut pas oublier d’inverser la sortie si on réalise POS

FSTS - 2010 2 - 116


PRODUIT DE SOMMES
(POS)
 À partir d’une table de Karnaugh, nous générons un produit de
sommes minimal en :
 Formant la somme de produits (SOP) de la sortie complémentée en
encerclant les 0’s
 Transformant cette SOP par De Morgan pour former le produit de somme
(POS) de la sortie non complémentée

YZ
00 01 11 10
00 0 1 0 0
01 1 1 0 0 SOP, /F = /W*Y + /X*/Z
WX
11 1 1 1 1
10 0 1 1 0
FSTS - 2010 2 - 117
PRODUIT DE SOMMES
(POS) SOP, /F = /W*Y + /X*/Z
YZ
00 01 11 10 En appliquant De Morgan, on
peut transformer la somme
00 0 1 0 0 de produits (SOP) en produit
01 1 1 0 0 de sommes (POS)
WX
11 1 1 1 1
POS F = (W+/Y) * (X+Z)
10 0 1 1 0

Réalisation de SOP et de POS avec portes NON, ET et OU. Il


ne faut pas oublier d’inverser la sortie si on réalise SOP

FSTS - 2010 2 - 118


SOP à POS et POS à SOP
 Les théorèmes de De Morgan permettent de transformer une somme de
produits (SOP) en un produit de sommes (POS) et vice-versa.

 Si une fonction logique F s’exprime par une somme de produits, on peut


la représenter par le complément d’un produit de sommes réalisé avec
des portes NON-ET et NON-OU

 Si une fonction logique F s’exprime par un produit de sommes, on peut


la représenter par le complément d’une somme de produits réalisé avec
des portes NON-ET et NON-OU

FSTS - 2010 2 - 119


Réalisation d’une fonction F
exprimée en somme de produits
avec des portes NON-ET

SOP, F = (W*X) + (/Y*Z) + (X*/Y) + (W*Z)

/{ /[F] } = /{ /[(W*X) + (/Y*Z) + (X*/Y) + (W*Z)] }

F = /{ /(W*X) * /(/Y*Z) * /(X*/Y) * /(W*Z) }

À partir de SOP, on obtient une réalisation avec seulement des portes NON-ET

FSTS - 2010 2 - 120


Réalisation d’une fonction F
exprimée en produit de sommes
avec des portes NON-OU

POS F = (W+/Y) * (X+Z)

/{ /[F] } = /{ /[(W+/Y) * (X+Z)] }

F = /{ /(W+/Y) + /(X+Z)] }

À partir de POS, on obtient une réalisation avec seulement des portes NON-OU

C’est la réalisation la plus simple :


1 X Quad 2-Input NOR
FSTS - 2010 2 - 121
MULTIPLEXEUR 4 à 1
I0

I1 4 -1
Out
I2 MUX
I3

S1 S0
S1 S0 Out

0 0 I0

0 1 I1
Écrivez l’équation de sortie

1 0 I2

1 1 I3

FSTS - 2010 2 - 122


DÉMULTIPLEXEUR 1 à
4

O0

4 -1 O1
In
MUX O2 Écrivez l’équation de sortie
O3

S1 S0
-: non utilisé

S1 S0 O0 O1 O2 O3
0 0 In - - -

0 1 - In - -
1 0 - - In -
1 1 - - - In

FSTS - 2010 2 - 123


DÉCODEUR 2 à 4

O0

I1 I0 O0 O1 O2 O3

I0
Décodeur
O1 0 0 1 0 0 0
2 - 4 0 1 0 1 0 0
O2
1 0 0 0 1 0
I1

O3 1 1 0 0 0 1

Écrivez l’équation de sortie

FSTS - 2010 2 - 124


ENCODEUR
4à2

I0
I0 I1 I2 I3 O1 O0

I1
Encodeur
O0 1 0 0 0 0 0
4 - 2 0 1 0 0 0 1
I2 O1
0 0 1 0 1 0
I3 0 0 0 1 1 1

Écrivez l’équation de sortie

FSTS - 2010 2 - 125


ENCODEUR DE
PRIORITÉ 4 à 2

I0
I0 I1 I2 I3 O1 O0

I1
Encodeur de
O0 1 X X X 0 0
Priorité 0 1 X X 0 1
I2 4 - 2 O1
0 0 1 X 1 0
I3 0 0 0 1 1 1

Écrivez l’équation de sortie

FSTS - 2010 2 - 126


L'additionneur
Le demi-additionneur

A B  R

0 Demi-additionneur:
0

0 0 0 0  = 𝐴0 . 𝐵0 + 𝐴0 . 𝐵0 = 𝐴0 ⨁𝐵0

0 1 1 0 𝑅 = 𝐴0 . 𝐵0
1 0 1 0
1 1 0 1

𝐴0 

D

𝐵0 A 𝑅

FSTS - 2010 2 - 127


L'additionneur
L'additionneur complet

 Additionneur Complet: 
 = 𝐴 . 𝐵 . 𝑅𝑖 +𝐴 . 𝐵. 𝑅𝑖 + 𝐴. 𝐵 . 𝑅𝑖 + 𝐴𝐵𝑅𝑖
A B Ri  R
 = 𝑅𝑖 . 𝐴 . 𝐵 + 𝐴. 𝐵 + 𝑅𝑖 . (𝐴 . 𝐵 + 𝐴. 𝐵 )
0 0 0 0 0
 = 𝑅𝑖 . 𝐴⨁𝐵 + 𝑅𝑖 . (𝐴⨁𝐵)
0 0 1 1 0
0 1 0 1 0  = 𝑅𝑖 ⨁𝐴⨁𝐵
0 1 1 0 1
1 0 0 1 0 𝑅 = 𝐴 . 𝐵. 𝑅𝑖 +𝐴. 𝐵 . 𝑅𝑖 + 𝐴𝐵𝑅𝑖 + 𝐴. 𝐵. 𝑅𝑖
1 0 1 0 1 𝑅 = 𝑅𝑖. 𝐴 . 𝐵 + 𝐴. 𝐵 + 𝐴. 𝐵(𝑅𝑖 + 𝑅𝑖 )
1 1 0 0 1 𝑅 = 𝑅𝑖 . 𝐴 ⊕ 𝐵 + 𝐴. 𝐵
1 1 1 1 1

FSTS - 2010 2 - 128


L'additionneur
L'additionneur complet

 𝐴0 
 Additionneur Complet:
A
 = 𝑅𝑖 ⨁𝐴⨁𝐵 𝐵0
𝑅 = 𝑅𝑖 . 𝐴⨁𝐵 + 𝐴. 𝐵 𝑅
𝑅𝑖 C


Ri 
D

≡ A D
A
A
𝑅
B

FSTS - 2010 2 - 129


Le soustracteur
Le demi-soustracteur

A B S R

0 Demi-Soustracteur:
0

0 0 0 0 𝑆 = 𝐴0 . 𝐵0 + 𝐴0 . 𝐵0 = 𝐴0 ⨁𝐵0

0 1 1 1 𝑅 = 𝐴0 . 𝐵0
1 0 1 0
1 1 0 0
𝐴0 𝐒
D
𝑆
𝐵0 S 𝑅

FSTS - 2010 2 - 130


Le soustracteur
Le soustracteur complet


A B Ri S R 𝑆 = 𝐴 . 𝐵 . 𝑅𝑖 +𝐴 . 𝐵. 𝑅𝑖 + 𝐴. 𝐵 . 𝑅𝑖 + 𝐴𝐵𝑅𝑖
𝑆 = 𝑅𝑖 . 𝐴 . 𝐵 + 𝐴. 𝐵 + 𝑅𝑖 . (𝐴 . 𝐵 + 𝐴. 𝐵 )
0 0 0 0 0
𝑆 = 𝑅𝑖 . 𝐴⨁𝐵 + 𝑅𝑖 . (𝐴⨁𝐵)
0 0 1 1 1
𝑆 = 𝑅𝑖 ⨁𝐴⨁𝐵
0 1 0 1 1
0 1 1 0 1 𝑅 = 𝐴 . 𝐵 . 𝑅𝑖 +𝐴 . 𝐵. 𝑅𝑖 + 𝐴 . 𝐵. 𝑅𝑖 + 𝐴. 𝐵. 𝑅𝑖
1 0 0 1 0 𝑅 = 𝑅𝑖. 𝐴 . 𝐵 + 𝐴. 𝐵 + 𝐴 . 𝐵(𝑅𝑖 + 𝑅𝑖 )
1 0 1 0 0 𝑅 = 𝑅𝑖 . 𝐴⨁𝐵 + 𝐴 . 𝐵
1 1 0 0 0 𝐴0 𝑺
S
1 1 1 1 1
𝐵0
𝑅𝑖 C 𝑅

FSTS - 2010 2 - 131


Opérateurs Soustracteur:

arithmétiques:

A 𝑆
Soustracteur Complet:
S
𝐵
𝑆 = 𝑅𝑖 ⨁𝐴⨁𝐵 𝑅
𝑅𝑖 C
𝑅 = 𝑅𝑖 . 𝐴⨁𝐵 + 𝐴. 𝐵

𝑆
Ri 𝑆
D
S
A
≡ B
D
S
𝑅

FSTS - 2010 2 - 132


Opérateurs Multiplieur 2 bits:

arithmétiques:

A1 A0
A
X
X
B1 B0
B
A1B A0B0
+
A1B1 A0B1 .

= 3 2 1 0

FSTS - 2010 2 - 133


Opérateurs arithmétiques:
Multiplieur 2 bits:

FSTS - 2010 2 - 134


Opérateurs
arithmétiques:

1. Optimiser le circuit précédent en n'utilisant que des
demi-additionneurs.
2. Réaliser le soustracteur de 2 nombres codés sur 3
bits exclusivement avec 3 A.C.
3. Réaliser le multiplieur à 3 bits avec des
additionneurs intégrés 4 bits et des portes logiques
ET.

FSTS - 2010 2 - 135


Opérateurs arithmétiques:

 Soustracteur 3 bits: 0
AC
A0
B0

1
AC
A1
B1

AC 2
A2
B2

FSTS - 2010 2 - 136


Opérateurs arithmétiques:

 Réaliser le multiplieur à 3 bits avec des
additionneurs intégrés 4 bits et des portes logiques
ET.
A0 0
A1
7 1

A2 4 2

A3 3
L

B0 S
B1 8 R0
B2
3 R3
B3

FSTS - 2010 2 - 137


Opérateurs Multiplieur 3 bits:

arithmétiques:

A
A2 A1 A0
X
X
B
B2 B1 B0

A2B0 A1B0 A0B0


+
A2B1 A1B1 A0B1 .
+
A2B2 A1B2 A0B2 . .

= 5 4 3 2 1 0
FSTS - 2010 2 - 138
Multiplieur 3 bits:

FSTS - 2010 2 - 139

Vous aimerez peut-être aussi