Cours sur les Circuits Numériques
Cours sur les Circuits Numériques
Cours Circuits et
Opérateurs Numériques
M2 RESEAUX ET TELECOMS
Faouzi BAHLOUL :
Professeur
1
Chapitre 1 : Systèmes de numération
•Introduction
•Système décimal
•Système binaire , octal et hexadécimal
• Conversion d’un système de numération vers un
autre système .
•Opérations arithmétiques en binaire, octal et
hexadécimal.
2
Objectifs
3
Introduction
• Nous avons pris l'habitude de représenter les nombres en utilisant
dix symboles différents: 0 , 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9
• Ce système est appelé le système décimal (déci signifie dix).
• Il existe cependant d'autres formes de numération qui fonctionnent
en utilisant un nombre de symboles distincts.
– Exemple :
• système binaire (bi: deux),
• le système octal (oct: huit),
• le système hexadécimal (hexa: seize).
• En fait, on peut utiliser n'importe quel nombre de symboles
différents (pas nécessairement des chiffres).
• Dans un système de numération : le nombre de symboles distincts
est appelé la base du système de numération.
4
1 . Le système décimal
• On utilise dix symboles différents:
{0,1,2,3,4,5,6,7,8,9}
• N’importe quelle combinaison des symboles { 0 , 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 } nous
donne un nombre.
7654332
Poids faible
Poids fort
345 , 567
Partie fractionnelle
Partie entière 5
Développement en polynôme d’un nombre
dans le système décimal
• Soit le nombre 1978, ce nombre peut être écrit sous la forme suivante :
7
2 . Système binaire ( système à base 2 ):
exemple illustratif
4 1
8
Maintenant on va former des groupes de 2 jetons ( on obtient 7 groupes) .
.Par la suite on va regrouper les 7 groupes 2 à 2 ( on obtient 3 groupes ) .
On va regrouper ces derniers aussi 2 à 2 ( on obtient 1 seul groupe ) .
: Le schéma illustre le principe .
La base
Un bit 2 )1101 (
2 )1 0 1 1 (
Le bits du poids forts Le bits du poids faible
Un nombre dans la base 2 peut être écrit aussi sous la forme polynomial .
(1110) 2 1* 23 1* 2 2 1* 21 0 * 20 (14)10
(1110,101) 2 1* 23 1* 2 2 1* 21 0 * 20 1* 2 1 0 * 2 2 1* 2 3 (14,625)10
10
Comptage en binaire
Décimal Binaire
0 000
: Sur 2 bits . 1 001
2 010
Décimal Binaire
3 011
0 00 4 100
1 01 5 101
2 10 6 110
3 11 7 111
combinaisons= 22 4
combinaisons= 23 8 11
Le système octal ( base 8 )
• Exemple 1 :
(127)8 1* 82 2 * 81 7 * 80
(127,65)8 1* 8 2 2 * 81 7 * 80 6 * 8 1 5 * 8 2
: Exemple 2
Le nombre (1289) n’existe pas dans la base 8 puisque les symboles 8 et 9
. n’appartiennent pas à la base
12
Le système hexadécimal ( base 16 )
Hexadécimal Décimal
0 0
1 1
• On utilise seize (16) symboles
2 2
différents: 3 3
4 4
5 5
(17)16 1*161 7 *160 6 6
1 0 1
7 7
(AB)16 A *16 B *16 10 *16 11 *1 8 8
9 9
A 10
B 11
C 12
D 13
E 14
F 15 13
Résumé
14
3. Conversion d’une base X à la base 10
: Exemple
15
Exercice
16
Conversion de la base 10 à la base 2
Le principe consiste à faire des divisions successives du nombre sur
.2 , et prendre le reste des divisions dans l’ordre inverse
35 2
Exemple 1 : (35)10=(?)2 1 17 2
1
8 2
0 4 2
: Après division 0 2 2
on obtient : (35)10=(100011)2 0 1 2
1 0
17
Conversion de la base 10 à la base 2 : cas d’un
nombre réel
• Un nombre réel est constitué de deux parties : la partie entière et la
partie fractionnelle.
• La partie entière est transformée en effectuant des divisions
successives.
• La partie fractionnelle est transformée en effectuant des
multiplications successives par 2 .
2 )0,101(=)0,625(
Donc 35,625=(100011,101)2
18
• Exemple 2: (0,6)10=(?)2
0,6 * 2 = 1,2
0,2 * 2 = 0,4 )0,1001( =)0,6(
2
0,4 * 2 = 0,8
0,8 * 2 = 1,6
: Remarque
. Le nombre de bits après la virgule va déterminer la précision
: Exercice
: Effectuer les transformations suivantes
) ?(=)23,65(
2
)?(=)18,190(
2
19
Conversion du décimal à une base X
: Exemple 35 3
3)?( = 35 2 11 3
2
3 3
)1022(=35 0
3 1 3
1 0
43 16
43 8
8 11 2 16
3 5
2 0
5 0
)2B(
8)53(
16
21
Conversion d’une base b1 à une base b2
?
b1 b2
Développement
en polynôme Divisions successives
10
22
Exemple : ( 34)5=(?)7
19 7
7)25(=10)19(
5 2 7
7)25(=5)34 (
2 0
8 )?(=5)?(=6)43(
16=(?)9)2A(
23
Conversion : binaire octal
Binaire Octal
En octal chaque, symbole de la base s’écrit sur 3 . 000 0
.bits en binaire 001 1
L’idée de base est de replacer chaque symbole . 010 2
dans la base octal par sa valeur en binaire sur 3 011 3
.bits ( faire des éclatement sur 3 bits ) 100 4
101 5
: Exemples 110 6
2)101 100 011(=8)345( 111 7
: Exemple
: Remarque
le regroupement se fait de droit à gauche pour la partie entière
. et de gauche à droite pour la partie fractionnelle
25
Conversion : hexadécimal binaire
Hexadécimal Décimal
0 0
1 1
2 2
.En Hexa chaque symbole de la base s’écrit sur 4 bits . 3 3
.L’idée de base est de faire des regroupements de 4 bits à partir du poids faible .
: Exemple
16)32A6(=2)0110 1010 0010 0011(=2)11001010100110(
27
4. Opérations arithmétiques en binaire
0 0 1 1
+ + + +
0 1 0 1
0 1 1 0 1
1 1
1 1 0 0 0 1 1
+
1 1 0 1 0 0 0 1
1 1 1 0 1 1 1 0
28
Opérations arithmétiques en octal
1 1
5 6 3 4
+
1 5 4
5 8 11 6
0 3
5 6 8 4
+
A 5 1 7
12 18 11 6
C En hexa 11 s’écrit B
En hexa 18 s’écrit 12
B
2
v5
Tension Binaire Binaire : 1
(logique ) v 2,8
Inutilisée
0V 0
v 0,8
5V 1
Binaire : 0
v0
31
Opérations arithmétiques en CA2
Effectuer les opérations suivantes sur 5 Bits , en utilisant la représentation en CA2
1 0 0 1 0
1 0 0 1 0 +
+ 9+
9+ 0 0 1 1 1
0 0 1 0 0 4-
4+
5+
13 + 1 0 1 0 0 1
1 0 1 1 0
10)13 ( =2)01101(
Le résultat est positif
)5 ( =2)00101(
10
1 1 1 0 1 1 1 1 0 1
9- + 9- +
0 0 1 1 1 1 0 0 1 0
4- 9+
13 - 0+
1 1 0 0 1 1 0 0 0 0 0 1
Report Report
0 1 1 0
1 0 0 1 0 1 1 1 0 1
9+ + +
0 0 0 1 0 9-
0 0 0 1 1
8+ 8-
17 + 1 0 0 0 1 17 -
1 1 0 1 0
Négatif
Positif
9 2 1 2 6 5
40
1. Introduction
A
F(A,B)
Circuit
B
42
2. Algèbre de Boole
• George Boole est un mathématicien anglais ( 1815-1864).
• Ces travaux ont été utilisés pour faire l’étude des systèmes
qui possèdent deux états s’exclus mutuellement :
– Le système peut être uniquement dans deux états E1 et
E2 tel que E1 est l’opposé de E2.
– Le système ne peut pas être dans l’état E1 et E2 en même
temps
• Remarque :
On peut utiliser les conventions suivantes :
: Exemple
: Logique positive
lampe allumée : 1
lampe éteinte : 0
Logique négative
lampe allumée : 0
lampe éteinte : 1
45
3.2. Variable logique ( booléenne )
• Une variable logique ( booléenne ) est une variable qui
peut prendre soit la valeur 0 ou 1 .
• Généralement elle est exprimée par un seul caractère
alphabétique en majuscule ( A , B, S , …)
• Exemple :
F(A)= Non A = A
( lire : A barre )
1 0
0 1
49
4.2 ET ( AND )
• Le ET est un opérateur binaire ( deux variables) , à
pour rôle de réaliser le Produit logique entre deux
variables booléennes.
• Le ET fait la conjonction entre deux variables.
•
Le ET est défini par : F(A,B)= A . B
A.B B A
0 0 0
0 1 0
0 0 1
1 1 1
50
4.3 OU ( OR )
• Le OU est un opérateur binaire ( deux variables) , à pour
rôle de réaliser la somme logique entre deux variables
logiques.
• Le OU fait la disjonction entre deux variables.
• Le OU est défini par F(A,B)= A + B ( il ne faut pas
confondre avec la somme arithmétique )
A+B B A
0 0 0
1 1 0
1 0 1
1 1 1
51
Remarques
• Dans la définition des opérateurs ET , OU , nous avons
juste donner la définition de base avec deux variables
logiques.
52
4.4 Précédence des opérateurs ( priorité des opérateurs )
• Pour évaluer une expression logique ( fonction logique) :
– on commence par évaluer les sous expressions entre les
parenthèses.
– puis le complément ( NON ) ,
– en suite le produit logique ( ET )
– enfin la somme logique ( OU)
Exemple :
F(A, B, C) ( A . B) . ( C B) A.B.C
si on veut calculer F(0,1,1) alors :
F(0,1,1) (0.1)(1 1) 0.1.1
F(0,1,1) (0 ) (1 ) 0.0.1
F(0,1,1) 1.1 0.0.1
F(0,1,1) 1 0
F(0,1,1) 1
: Exercice
? Trouver la table de vérité de la fonction précédente 53
Solution
Pour trouver la table de vérité , il faut trouver la valeur de la fonction F •
pour chaque combinaisons des trois variables A, B , C
variables 2 3 = 8 combinaisons 3•
L’opérateur NON•
A A
A A 1
A. A 0
55
L’opérateur ET•
56
L’opérateur OU •
( A B) C A ( B C ) A B C Associativité
A B B A Commutativité
A A A Idempotence
A 0 A Elément neutre
A 1 1 Elément absorbant
57
Distributivité•
A . ( B C ) ( A . B ) ( A . C ) Distributivité du ET sur le OU
A ( B . C ) (A B).(A C) Distributivité du OU sur le ET
A ( A . B ) A
A. ( A B) A
(A B) . (A B) A
A A . B A B
58
5. Dualité de l’algèbre de Boole
• Toute expression logique reste vrais si on remplace le ET
par le OU , le OU par le ET , le 1 par 0 , le 0 par 1.
• Exemple :
A 1 1 A . 0 0
A A 1 A . A 0
59
6. Théorème de DE-MORGANE
AB A . B
• Le produit logique complimenté de deux variables est
égale au somme logique des compléments des deux
variables.
A.B A B 60
6.1 Généralisation du Théorème DE-
MORGANE à N variables
A.B.C...... A B C ..........
A B C ........... A.B.C......
61
7. Autres opérateurs logiques
7.1 OU exclusif ( XOR)
F ( A, B) A B
A B A.B A.B
62
7.2 NAND ( NON ET )
F(A, B) A . B
F ( A, B) A B
63
7.3 NOR ( NON OU )
F(A, B) A B
F ( A, B ) A B
64
7.4 NAND et NOR sont des opérateurs
universels
65
7.4.1 Réalisation des opérateurs de base
avec des NOR
A A A A A
A B A B A B (A B) (A B)
A.B A.B A B A B (A A) (B B)
66
7.4.3 Propriétés des opérateurs NAND et
NOR
A 0 1 A 0 A
A 1 A A 1 0
A B B A A B B A
( A B) C A ( B C ) ( A B) C A ( B C )
67
8. Portes logiques
Une porte logique est un circuit électronique élémentaire qui
. Permet de réaliser la fonction d’un opérateur logique de base
A A
Inverseur
A A
A.B A+B
B Porte ET B Porte OU
68
A A
A B A B
A
A B
B Porte XOR
: Remarque
Les portes ET , OU , NAND , NOR peuvent avoir plus•
que deux entrées
Il n’existe pas de OU exclusif à plus de deux entrées•
69
Schéma d’un circuit logique ( Logigramme) 8.1
Exemple1
B F
F ( A, B, C ) A.B B.C
70
Exemple 2
F(A, B, C, D) (A B ) . ( B C D ) .A
A
B
D
71
Exercice 1
• Donner le logigramme des fonctions suivantes :
72
Exercice 2 : Donner l’équation de F ?
B
F
D
73
Définition textuelle d’une fonction
logique , table de vérité , formes
algébriques , simplification
algébrique, table de Karnaugh
74
1. Définition textuelle d’une fonction logique
75
Exemple : définition textuelle du fonctionnement
d’un système
76
Étapes de conception et de réalisation d’un circuit
numérique
77
Si on reprend l’exemple de la serrure :
78
S=F(A,B,C)
F(A,B,C)= 1 si au mois deux clés sont introduites
F(A,B,C)=0 si non .
A
S=F(A,B,C)
B Circuit
C
: Remarque
Il est important de préciser aussi le niveau logique avec lequel on travail
.) logique positive ou négative (
79
2. Table de vérité ( Rappel )
80
2. Table de vérité ( Exemple )
S C B A
0 0 0 0 A B C : max terme
0 1 0 0 A B C : max terme
0 0 1 0 A B C : max terme
1 1 1 0 A .B.C : min terme
0 0 0 1 A B C : max terme
1 1 0 1 A .B.C : min terme
1 0 1 1
A .B.C : min terme
1 1 1 1 A .B.C : min terme
81
2.3 Extraction de la fonction logique à partir
de la T.V
F ( A, B, C ) A . B . C A . B . C A . B . C A . B . C
F(A, B, C) ( A B C) (A B C)(A B C) (A B C)
82
3. Forme canonique d’une fonction logique
• Exemple :
• Exemple :
F ( A, B, C ) A . B . C A . B . C A . B . C A . B . C
F(A, B, C) ( A B C) (A B C)(A B C) (A B C)
85
Remarque 1
• On peut toujours ramener n’importe qu’elle fonction
logique à l’une des formes canoniques.
86
Exemple :
1. F(A, B) A B
A (B B) B( A A )
AB A B AB AB
AB A B AB
2. F(A, B, C) AB C
AB(C C) C( A A )
ABC ABC AC AC
ABC ABC AC(B B) AC (B B)
ABC ABC ABC A BC ABC A BC
ABC ABC A BC A B C A B C 87
Remarque 2
• Il existe une autre représentation des formes canoniques
d’une fonction , cette représentation est appelée forme
numérique.
• R : pour indiquer la forme disjonctive
• P : pour indiquer la forme conjonctive.
1 0 0 0 0
1 0 1 0 0
1 0 0 1 0
0 1 1 1 0
1 0 0 0 1
0 1 1 0 1
0 1 0 1 1
0 1 1 1 1
F B A
0 0 0
1 1 0
1 0 1
0 1 1
90
Exercice 2
S C B A
0 0 0 0
1 1 0 0
1 0 1 0
1 1 1 0
0 0 0 1
1 1 0 1
1 0 1 1
1 1 1 1
91
Exercice 3
Question :
a./ Déduire une table de vérité pour le problème,
b./ Donner les équations de S, E,
c./ En déduire l’équation de N,
92
4. Simplification des fonctions
logiques
93
4. Simplification des fonctions logiques
A . B A . B B
A A . B A
A A . B A B
( A B) ( A B) A
A . ( A B) A
A . ( A B) A . B 95
5.1 Règles de simplification
• Règles 1 : regrouper des termes à l’aide des règles
précédentes
• Exemple
96
• Règles 2 : Rajouter un terme déjà existant à une expression
• Exemple :
A B C ABC A BC ABC
ABC ABC ABC A BC ABC ABC
BC AC AB
97
• Règles 3 : il est possible de supprimer un terme
superflu ( un terme en plus ), c’est-à-dire déjà
inclus dans la réunion des autres termes.
• Exemple 1 :
F(A, B, C) A B BC AC AB BC AC ( B B)
AB BC ACB A BC
AB ( 1 C) BC (1 A)
AB BC
98
Exemple 2 : il existe aussi la forme conjonctive du terme
superflu
F(A, B, C) (A B) . (B C) . (A C)
(A B) . (B C) . (A C B.B)
(A B) . (B C) . (A C B) .(A C B)
(A B) . (A C B) . (B C) .(A C B)
(A B) . (B C)
99
• Règles 4 : il est préférable de simplifier la forme
canonique ayant le nombre de termes minimum.
• Exemple :
F ( A, B, C ) R ( 2,3,4,5,6,7)
F(A, B, C) R( 0,1) A . B . C A . B . C
A . B (C C)
A . B A B
F(A, B, C) F(A, B, C) A B A B
100
Exercice
101
Simplification par la table .6
de Karnaugh
102
6.1. Les termes adjacents
: Examinons l’expression suivante•
A.B A.B
AB A B A( B B ) A
104
Description de la table de karnaugh 6.1
105
A AB
B C
1 0 10 11 01 00
0 0
1 1
106
Tableau à 4 variables
AB
CD
10 11 01 00
00
01
11
10
107
Tableau à 5 variables
AB AB
CD CD
10 11 01 00 10 11 01 00
00 00
01 01
11 11
10 10
U=0 U= 1
108
Dans un tableau de karnaugh , chaque case possède un certain
.nombre de cases adjacentes
AB AB
C CD
10 11 01 00 10 11 01 00
0 00
1 01
11
Les trois cases bleues sont des
cases adjacentes à la case rouge 10
109
6.2 Passage de la table de vérité à la table de Karnaugh
110
: Exemple
S C B A
0 0 0 0 AB
0 1 0 0 C
10 11 01 00
0 0 1 0
1 0
1 1 1 0
1 1 1 1
0 0 0 1
1 1 0 1
1 0 1 1
1 1 1 1
111
6.3 Passage de la forme canonique à la table de
Karnaugh
112
Exemple
AB
C
10 11 01 00
F1(A, B, C) (1,2,5,7)
1 0
1 1 1 1
AB
C
10 11 01 00
F2(A, B, C) (0,2,3,6) 0
0 0 0
0 1
113
6.4 Méthode de simplification (Exemple : 3 variables )
AB
C
10 11 01 00
0
ABC ABC AB
1
1 1 1 1
114
Puisque il existent encore des cases qui sont en dehors d’un
regroupement on refait la même procédure : former des
.regroupements
Une case peut appartenir à plusieurs regroupements
AB
C
10 11 01 00
0 ABC ABC AB
1
1 1 1 1 ABC A BC AC
115
On s’arrête lorsque il y a plus de 1 en dehors des regroupements
La fonction final est égale à la réunion ( somme ) des termes après
.simplification
AB
C
10 11 01 00
0 ABC ABC AB
1
1 1 1 1 ABC A BC AC
F ( A, B, C ) AB AC BC
116
Donc , en résumé pour simplifier une fonction par la table de
karnaugh il faut suivre les étapes suivantes :
AB
C
10 11 01 00
1 0
1 1 1 1 1
F ( A, B, C ) C AB
118
Exemple 2 : 4 variables
AB
CD
10 11 01 00
1 00
1 1 1 1 01
11
1 10
AB
CD
10 11 01 00
1 1 00
1 1 1 01
1 11
1 1 10
F ( A, B, C , D) AB B D BC D 120
Exemple 4 : 5 variables
AB AB
CD CD
10 11 01 00 10 11 01 00
1 00 1 00
1 1 01 1 1 01
1 1 11 1 1 11
1 10 1 1 10
U=0 U= 1
AB
CD
AB 10 11 01 00
C
10 11 01 00 00
1 1 1
1 1 1 0
01
1 1 1 1
11
1 1 1 1 10
122
6.5 Cas d’une fonction non totalement définie
123
S D C B A
Pour les cas impossibles ou interdites
0 0 0 0 0
. il faut mettre un X dans la T.V
0 1 0 0 0
Les cas impossibles sont représentées 0 0 1 0 0
aussi par des X dans la table de karnaugh 1 1 1 0 0
0 0 0 1 0
1 1 0 1 0
AB 1 0 1 1 0
CD 1 1 1 1 0
10 11 01 00
0 0 0 0 1
00 X 1 0 0 1
1
1 0 1 0 1
X X 1 01 X 1 1 0 1
1 0 0 1 1
X X 1 1 11
X 1 0 1 1
1 0 1 1 1
1 1 1 10
X 1 1 1 1124
• Il est possible d’utiliser les X dans des regroupements :
– Soit les prendre comme étant des 1
– Ou les prendre comme étant des 0
• Il ne faut pas former des regroupement qui contient uniquement des X
AB
CD
10 11 01 00
1 00
X X 1 01
X X 1 1 11
1 1 1 10
AB 125
AB
CD
10 11 01 00
1 00
X X 1 01
X X 1 1 11
1 1 1 10
AB CD
126
AB
CD
10 11 01 00
1 00
X X 1 01
X X 1 1 11
1 1 1 10
AB CD BD
127
AB
CD
10 11 01 00
1 00
X X 1 01
X X 1 1 11
1 1 1 10
AB CD BD AC
128
AB
CD
10 11 01 00
1 00
X X 1 01
X X 1 1 11
1 1 1 10
AB CD BD AC BC
129
Exercice 1
AB
CD
10 11 01 00
X 1 00
1 X 1 01
1 X 1 11
X 1 X 10
130
Chapitre 3 : Les circuits combinatoires
Objectifs
• Apprendre la structure de quelques circuits
combinatoires souvent utilisés ( demi additionneur ,
additionneur complet,……..).
131
1. Les Circuits combinatoires
• Un circuit combinatoire est un circuit numérique dont les
sorties dépendent uniquement des entrées.
• Si=F(Ei)
• Si=F(E1,E2,….,En)
E1 S1
S2
E2 Circuit
..
.. combinatoire
En Sm
Schéma Bloc
1. Demi Additionneur
2. Additionneur complet
3. Comparateur
4. Multiplexeur
5. Demultiplexeur
6. Encodeur
7. Décodeur
133
2. Demi Additionneur
• Le demi additionneur est un circuit combinatoire qui permet de
réaliser la somme arithmétique de deux nombres A et B chacun sur
un bit.
• A la sortie on va avoir la somme S et la retenue R ( Carry).
A S
B DA
R
0 0 0 0
R A.B
1 0 1 0
S A.B A.B A B
1 0 0 1
0 1 1 1 135
R A.B
S A B
A S
B
136
3. L’additionneur complet
• En binaire lorsque on fait une addition, il faut tenir
en compte de la retenue entrante.
r0= 0 r1 r2 r3 r4
ri-1
a1 a2 a3 a4
+ ai
b1 b2 b3 b4
bi +
s1 s2 s3 s4 r4
si ri 137
3.1 Additionneur complet 1 bit
• L’additionneur complet un bit possède 3 entrées :
– ai : le premier nombre sur un bit.
– bi : le deuxième nombre sur un bit.
– ri-1 : la retenue entrante sur un bit.
• Il possède deux sorties :
– Si : la somme
– Ri la retenue sortante
ai Si
bi Additionneur
complet
ri-1 Ri
138
si ri ri-1 bi ai
Table de vérité d’un additionneur 0 0 0 0 0
complet sur 1 bit
1 0 1 0 0
1 0 0 1 0
0 1 1 1 0
1 0 0 0 1
0 1 1 0 1
0 1 0 1 1
1 1 1 1 1
Ri Ai Bi Ri 1 Ai B i Ri 1 Ai Bi R i 1 Ai Bi Ri 1
Ri Ri 1.( Ai .Bi Ai .B i ) Ai Bi ( R i 1 i Ri 1 )
Ri Ri 1.( Ai Bi ) Ai Bi
140
3.3 Schéma d’un additionneur complet
R i A i .Bi R i 1.(Bi A i )
Si A i Bi R i 1
Ai
Bi
Si
Ri-1
Ri
141
3.4 En utilisant des Demi Additionneurs
R i A i .Bi R i 1.(Bi A i )
Si A i Bi R i 1
Si on pose X A i Bi et Y A i Bi
On obtient :
R i Y R i 1.X
Si X R i 1
et si on pose Z X R i 1 et T R i 1.X
On obtient :
R i Y T
Si Z
On remarque que X et Y sont les sorties d’un demi additionneur ayant
comme entrées A et B
On remarque que Z et T sont les sorties d’un demi additionneur ayant
comme entrées X et Ri-1
142
X A i Bi
Y A i Bi
Z X R i 1
T R i 1.X
R i Y T
Si Z
Y
AI
RI
Demi Add
BI
X
Demi Z
Add 143
RI-1
• Circuits logiques
– Synthèse d’un circuit combinatoire
•Synthèse d’un additionneur binaire
•Réalisation au moyen de 2 demi-additionneurs
R a S abR S
a a S ab b R R)ab(
’R
b b R
a.b
a ab
b
abR
S
R
• Réalisation complète R)ab(
A 3 B3 A2 B2 A1 B1 A0 B 0 0
Additionneur a b R a b R a b R a b R
bit 1
R’ S R’ S R’ S R’ S
R S3 S2 S1 S0
A(A3A2A1A0) + B(B3B2B1B0)=RS=(RS3S2S1S0)
145
3.4 Additionneur sur 4 bits
• Un additionneur sur 4 bits est un circuit qui permet de faire l’addition de
deux nombres A et B de 4 bits chacun
– A(a3a2a1a0)
– B(b3b2b1b0)
En plus il tient en compte de la retenu entrante
• Il faut trouver une solution plus facile et plus efficace pour concevoir ce
circuit ?
146
•Lorsque on fait l’addition en binaire , on additionne bit par bit en
commençant à partir du poids fiable et à chaque fois on propage la
retenue sortante au bit du rang supérieur.
L’addition sur un bit peut se faire par un additionneur complet sur 1 bits.
r0= 0 r1 r2 r3
a1 a2 a3 a4
b1 b2 b3 b4 +
r1 s 1 r2 s 2 r3 s 3 r4 s 4
r4 s4 s3 s2 s1 Résultat final
147
3.4.1 Additionneur 4 bits ( schéma )
R0=0
A4 B4 A3 B3 A2 B2 A1 B1
R3 R2 R1
R4 S4 S3 S2 S1
148
Circuits logiques
– Synthèse d’un circuit combinatoire
–Additionneur/soustracteur 4 bits
B3 B2 B1 B0
soustraction = 1
addition = 0
A3 A2 A1 A0
Additionneur a b R a b R a b R a b R
bit 1
R’ S R’ S R’ S R’ S
S3 S2 S1 S0
4. Le Comparateur
• C’est un circuit combinatoire qui permet de
comparer entre deux nombres binaire A et B.
• Il possède 2 entrées :
– A : sur un bit
– B : sur un bit
• Il possède 3 sorties A fi
– fe : égalité ( A=B) Comparateur fe
B bit 1
– fi : inférieur ( A < B) fs
– fs : supérieur (A > B)
150
4.1 Comparateur sur un bit
fi fe fs B A
fs A.B
0 1 0 0 0
fi AB
1 0 0 1 0
fe AB AB A B fs fi
0 0 1 0 1
0 1 0 1 1
151
Schéma d’un comparateur d’un bit
fs A.B
fi AB
fe fs fi
A fs
fe
B fi
152
4.2 Comparateur 2 bits
A1 fi
Comparateur fe
A2 bits 2
fs
B1
B2
153
fi fe fs B1 B2 A1 A2
A=B si .1
0 1 0 0 0 0 0
A2=B2 et A1=B1 1 0 0 1 0 0 0
1 0 0 0 1 0 0
fe ( A2 B 2).( A1 B1) 1 0 0 1 1 0 0
0 0 1 0 0 1 0
A>B si .2 0 1 0 1 0 1 0
1 0 0 0 1 1 0
A2 > B2 ou (A2=B2 et A1>B1)
1 0 0 1 1 1 0
0 0 1 0 0 0 1
fs A2.B 2 ( A2 B 2).( A1.B1) 0 0 1 1 0 0 1
0 1 0 0 1 0 1
A<B si .3 1 0 0 1 1 0 1
A2 < B2 ou (A2=B2 et A1<B1) 0 0 1 0 0 1 1
0 0 1 1 0 1 1
0 0 1 0 1 1 1
0 1 0 1 1 1 1
154
4.2.2 comparateur 2 bits avec des comparateurs 1 bit
a2 b2 a1 b1
155
A=B si .1
A2=B2 et A1=B1
A<B si .3
A2 < B2 ou (A2=B2 et A1<B1)
fs fe fi
157
4.2.3 Comparateur avec des entrées de
mise en cascade
• On remarque que :
– Si A2 >B2 alors A > B
– Si A2<B2 alors A < B
0 0 1 X X X A2>B2
Comp )> ( Es
)= ( Eg
1 0 0 X X X A2<B2 fs fe fi )< ( Ei
0 0 1 0 0 1
0 1 0 0 1 0 A2=B1
fs= (A2>B2) ou (A2=B2).Es
fi= ( A2<B2) ou (A2=B2).Ei
1 0 0 1 0 0 fe=(A2=B2).Eg
159
a2 b2 a1 b1
‘0’
Comp Comp
Es Es
Eg Eg ‘1’
fs2 fe2 fi2 fs1 fe1 fi1
Ei Ei
160
161
Circuits logiques
– UAL élémentaire
A S
B
R ’R
R ’R
0 Additionneur
F0 A 1
F1 B 2
3
Décodeur 2-4 Unité arithmétique
Unité de commande
5. Le Multiplexeur
• Un multiplexeur est un circuit combinatoire qui permet de
sélectionner une information (1 bit) parmi 2n valeurs en
entrée.
• Il possède :
– 2n entrées d’information
– Une seule sortie
– N entrées de sélection ( commandes)
Em ......... E3 E1 E0
C0
C1 Mux 2n 1 V
Cn-1
S
163
5.1 Multiplexeur 2 1
S C0 V
0 X 0
E1 E0
C0
E0 0 1 Mux 2 1
V
E1 1 1
S V .(C 0 .E 0 C 0 .E1)
164
5.2 Multiplexeur 4 1
S C0 C1
E0 0 0
E3 E2 E1 E0
E1 1 0 C0
C1 Mux 4 1
E2 0 1
E3 1 1
S
165
5.3 Multiplexeur 81
S C0 C1 C2
E0 0 0 0
E1 1 0 0
E7 E6 E5 E4 E3 E2 E1 E0
E2 0 1 0
C0
E3 1 1 0 C1 Mux 8 1
E4 0 0 1 C2
E5 1 0 1
E6 0 1 1
E7 1 1 1
ri ri-1 bi ai Si ri-1 bi ai
0 0 0 0
0 0 0 0
1 1 0 0
0 1 0 0
1 0 1 0
0 0 1 0
0 1 1 0
1 1 1 0
1 0 0 1
0 0 0 1
1 1 0 1 0 1 0 1
1 0 1 1 0 0 1 1
1 1 1 1 1 1 1 1
167
Réalisation de la fonction de la somme
S i A i .B i .R i 1 (0) A i .Bi .Ri 1 (1) A i .Bi .R i 1 (1) A i .Bi .Ri 1 (0) Ai .B i .R i 1 (1) Ai .B i .Ri 1 (0)
Ai .Bi .R i 1 (0) Ai .Bi .Ri 1 (1)
: On pose
C2=Ai
C1=Bi
C0=Ri-1
E0=0, E1=1, E2=1, E3=0, E4=1, E5=0, E6=0, E7=1
168
Réalisation de la fonction de la retenue
: On pose
C2=Ai
C1=Bi
C0=Ri-1
E0=0, E1=0, E2=0, E3=1, E4=0, E5=1, E6=1, E7=1
169
Réalisation d’un additionneur complet avec des
multiplexeurs 81
’1‘
’1‘
’0‘
’0‘
E7 E6 E5 E4 E3 E2 E1 E0
ri-1 C0 E7 E6 E5 E4 E3 E2 E1 E0
C1 Mux 8 1 ri-1 C0
bi C1 Mux 8 1
C2 bi
C2
ai
ai
Ri
Si
170
6. Demultiplexeurs
• Il joue le rôle inverse d’un multiplexeurs, il permet de
faire passer une information dans l’une des sorties selon
les valeurs des entrées de commandes.
• Il possède :
– une seule entrée
– 2n sorties
– N entrées de sélection ( commandes)
C0 DeMux 1 4
C1
S3 S2 S1 S0
171
6.1 Demultiplexeur 14
S0 S1 S2 S3 C0 C1
S 0 C1.C 0.( I )
S1 C1.C 0.( I )
i 0 0 0 0 0
S 2 C1.C 0.( I )
0 i 0 0 1 0
S 3 C1.C 0.( I )
0 0 i 0 0 1
I
0 0 0 i 1 1
C0 DeMux 1 4
C1
S3 S2 S1 S0
172
7. Le décodeur binaire
• C’est un circuit combinatoire qui est constitué de :
– N : entrées de données
– 2n sorties
– Pour chaque combinaison en entrée une seule sortie
est active à la fois
S0
A S1
S2
B S3
S4
C S5
S6
S7
S3 S2 S1 S0 B A V
S0
A
S1
0 0 0 0 X X 0 B
S2
0 0 0 1 0 0 1 S3
V
0 0 1 0 1 0 1
0 1 0 0 0 1 1
S 0 ( A.B ).V
1 0 0 0 1 1 1
S1 ( A.B ).V
S 2 ( A.B ).V
174
S 3 ( A.B ).V
Décodeur 38 A
S0
S1
S2
B S3
S4
C S5
S6
S7
S7 S6 S5 S4 S3 S2 S1 S0 C B A
0 0 0 0 0 0 0 1 0 0 0 V
0 0 0 0 0 0 1 0 1 0 0
S 0 A.B.C
0 0 0 0 0 1 0 0 0 1 0
S1 A.B.C
0 0 0 0 1 0 0 0 1 1 0 S 2 A.B.C
0 0 0 1 0 0 0 0 0 0 1 S 3 A.B.C
0 0 1 0 0 0 0 0 1 0 1 S 4 A.B.C
0 1 0 0 0 0 0 0 0 1 1 S 5 A.B.C
1 0 0 0 0 0 0 0 1 1 1 S 6 A.B.C
175
S 7 A.B.C
Décodeur 3 vers 8
4
Une seule sortie à la fois
est 0 et est choisie par le 5
.code abc
6
7
a.b.c = 4
176 c c b b aa
Réalisation d’un additionneur complet
avec des décodeurs binaire 38
Ri S 3 S 5 S 6 S 7
S i S1 S 2 S 4 S 7 177
8. L’encodeur binaire
• Il joue le rôle inverse d’un décodeur
– Il possède 2n entrées
– N sortie
– Pour chaque combinaison en entrée on va avoir sont
numéro ( en binaire) à la sortie.
I0
x
I1
Encodeur 42 y
I2
I3
178
L’encodeur binaire ( 42)
y x I3 I2 I1 I0
0 0 0 0 0 0 I0
x
I1
0 0 x x x 1 y
I2
I3
1 0 x x 1 0
0 1 x 1 0 0
X I 0.I1.( I 2 I 3)
1 1 1 0 0 0
Y I 0.( I1 .I 2.I 3)
179
9. Le transcodeur
• C’est un circuit combinatoire qui permet de transformer
un code X ( sur n bits) en entrée en un code Y ( sur m
bits) en sortie.
E1 S1
E2 S2
transcodeur ..
..
En Sm
180
Exemple : Transcodeur BCD/EXESS3
T Z Y X D C B A
1 1 0 0 0 0 0 0
0 0 1 0 1 0 0 0
1 0 1 0 0 1 0 0
0 1 1 0 1 1 0 0
1 1 1 0 0 0 1 0
0 0 0 1 1 0 1 0
1 0 0 1 0 1 1 0
0 1 0 1 1 1 1 0
1 1 0 1 0 0 0 1
0 0 1 1 1 0 0 1
x x x x 0 1 0 1
x x x x 1 1 0 1
x x x x 0 0 1 1
x x x x 1 0 1 1
x x x x 0 1 1 1
x x x x 1 1 1 1 181
Additionneur BCD
182
183
184
Chapitre 5 : Les circuits
séquentiels
•Introduction
•Notion d’horloge (système synchrone et système
asynchrone)
•Les bascules
–RS
– RST
–T
– D et D latch
– JK
•Les registres
•Les compteurs/decompteurs
185
[Link]
Un circuit combinatoire est un circuit
numérique dont les sorties dépendent
uniquementS des
f (Eentrées:
)
L’étatdu système ne dépend pas de l’état
interne du système.
Pas de mémoration de l’état du système.
186
[Link] circuits séquentiels
Un circuit séquentiel est un circuit numérique (logique) dont
l’état à l’instant t+1 est une fonction des entrées en même
instant t+1 et de l’état précédente du système ( l’instant t)
S t 1 f ( E , S t )
Circuit
E séquentiel S
S f (E, S )
187
Exemple d’un circuit séquentiel
Circuit
C séquentiel L
L+ L C
Mémoire L X 0
basculement 1 0 1
basculement 0 1 1
188
[Link]ème synchrone( Notion de
l’horloge)
Une horloge est une variable logique qui passe
successivement de 0 à 1 et de 1 à 0 d’une façon périodique.
Cette variable est utilisée souvent comme une entrée des
circuits séquentiels le circuit est dit synchrone.
L’horloge est notée par h ou ck ( clock).
1 1 1 1 1 1 1
h 0 0 0 0 0 0 0
E0
Circuit séquentiel S1
E1
synchrone S2
H
189
L’horloge
Niveau Haut: 1
1
0 0
Niveau Bas : 0
Front
Front
descendant La période T
montant
La période T est en
seconde
Fréquence F f 1
T
E
191
4. Les systèmes Asynchrones
E0
Circuit séquentiel S1
E1
asynchrone S2
E2
192
[Link] bascules ( flip-flops)
Les bascules sont les circuits de bases de la logique séquentiel .
Une bascule peut posséder une horloge (synchrone ) ou non
(asynchrone)
Q Q
Chaque bascule possède des entrées et deux sorties et .
Une bascule possède la fonction de mémoration et de
basculement.
E0
E1 Q
…… Une bascule Q F ( Ei, Q )
E2 Q
R Q
Une bascule
S RS
Q
R S Q- Q+
0 0 0 0
R S Q+ Etat mémoire
0 0 1 1
0 0 Q- 0 1 0 1
Remise à 1
0 1 1 0 1 1 1
1 0 0 1 0 0 0
Remise à 0
1 0 1 0
1 1 X
1 1 0 X
État interdite
1 1 1 X 194
Chronogramme d’une bascule RS
mémoire
195
5.3 Les bascules RST
T R S Q+
0 X X Q
R Q 1 0 0 Q
Une bascule
S RST
Q 1 0 1 1
T
1 1 0 0
1 1 1 X
196
5.7 Les bascules J.K en mode
synchrone
Une bascule avec deux entrée J , K et une horloge
( front montant ou descendant)
h J K Q+
0/1 x x Q-
J Q
0 0 Q-
h Bascule JK
0 1 0 Q
K
1 0 1
1 1 Q
197
Chronogramme d’une bascule J.K
0 1 0
J
0 0 0
K
Q
198
Les bascules J.K en mode asynchrone
Deux entrées Pr ( preset ) et cl ( clear) asynchrone
Plus prioritaire que l’horloge
Pr et Cl fonctionne avec la logique negative.
J Pr Q
Sur front montant h Bascule JK
Q
K Cl
J Pr
Q
Sur front descendant h Bascule JK
Q
K Cl 199
Table de transition d’une bascule
JK
Onconnait les valeurs des sorties , comment
determiner les valeurs des entrées JK ?
K J Q+ Q
futur présent
Remise à 1 ou basculement X 1 1 0
Remise à 0 ou basculement 1 X 0 1
200
5.3 Les bascules T
C’est un cas particulier de la bascule JK
(T=J=K)
Q T Q+
Une bascule
T T
Q 0 Q
1 Q
201
5.4 Les bascules D latch
C’estune bascule synchrone (utilise une horloge)
sur niveau Haut ou niveau Bas
D
Q h D Q+
Une bascule
D latch Q
h 0 0 Q-
1 0 0
D
Q 1 1 1
Une bascule
D latch Q
h
Si h=1 Q+=D
Sur niveau bas 202
Chronogramme d’une bascule D latch (niveau
haut )
203
5.6 Les bascules D
0/1 0 Q- Q
D Une bascule
D
0/1 1 Q- h Q
0 0
1 1
Q
D Une bascule
D
h Q
1
D 0
1
0
Q
205
Exercice
Réaliserle circuit qui permet de réaliser le cycle
suivant 0,1,2,3 à l’aide de bascules JK?
0
1
3
2
206
Solution
Q0+ Q1+ K0 J0 K1 J1 Q0 Q1
1 0 X 1 X 0 0 0 J0=K0=1
J1=K1=Q0
0 1 1 X X 1 1 0
1 1 X 1 0 X 0 1
0 0 1 X 1 X 1 1
207
Solution (schéma)
5V 5V
J1 Pr Q1 J0 pr Q0
h Bascule JK Bascule JK
K1
Q1 Q0
cl K0
cl
5V
5V 5V
Q1 Q0
208
Les registres
209
1. Définition
• Une bascule est l’élément de base de la logique
séquentielle.
• Une bascule permet de mémoriser un seul bit.
• Un registre est ensemble un ordonné de n bascules.
• Un registre permet de mémoriser ( sauvegarder) une
information sur n bits.
• Exemple :
210
2. Type de registres
• Il existe plusieurs types de registres :
– Registre à entrées parallèles et sorties parallèles
(Registre à chargement parallèle ).
– Registre à entrée série et sortie série
– Registre à entrée série et sortie parallèle.
– Registre à entrée parallèle et sortie série.
– Registre à décalage circulaire.
211
2.1 Registre à entrées parallèles et sorties parallèles
(Registre à chargement parallèle ).
212
2.2 Registre à entrée série et sortie série
213
registre à entrée série à droite et à sortie
série à gauche.
214
Registre à entrée série et sortie parallèle.
215
Registre à entrée parallèle et sortie série.
216
2.5 Registre à décalage circulaire
217