Circuits Logiques
Circuits Logiques
Systèmes Logiques et
Architecture des Ord
inateurs
Introduction
• Les machines numériques sont constituées d’un ensemble
de circuits électroniques.
• Chaque circuit fournit une fonction logique bien
déterminée (addition, soustraction, comparaison ,….).
A
F(A,B)
Circuit
B
3
Systèmes Logiques et
Architecture des Ord
inateurs
Introduction
• Une fonction logique de base est réalisée à l’aide des
portes logiques qui permettent d'effectuer des opérations
élémentaires.
• Ces portes logiques sont aujourd'hui réalisées à l'aide de
transistors.
• Pour concevoir et réaliser ce circuit on doit avoir un
modèle mathématique de la fonction réalisée par ce
circuit.
• Ce modèle doit prendre en considération le système
binaire.
• Le modèle mathématique utilisé est celui de Boole.
4
Systèmes Logiques et
Architecture des Ord
inateurs
Algèbre de Boole
• George Boole est un mathématicien
anglais
( 1815-1864).
• Il a fait des travaux dont les quels il
parle :
d’algèbre binaire
De variables booléennes : que ne prennent
que deux valeurs VRAI ou FAUX.
D’opérateurs décrits par une table de
vérité
Et d’opérateurs réalisés par des portes
logiques
5
Systèmes Logiques et
Architecture des Ord
inateurs
Variable 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 :
Une lampe : allumée L=1
éteinte L=0
▫ Premier interrupteur ouvert : I1 =1
fermé : I1 =0
▫ 2éme interrupteur ouvert : I2=1
fermé : I2=0
6
Systèmes Logiques et
Architecture des Ord
inateurs
Fonction Table
Symbole
A de
S vérité
S = F(A) = A 0 0
1 1
7
Systèmes Logiques et
Architecture des Ord
inateurs
Fonction Table
Symbole
de vérité
A S A S
S = F(A) = Non A = A 0 1
1 0
8
Systèmes Logiques et
Architecture des Ord
inateurs
Porte logique : OU
• Le OU est un opérateur binaire (deux variables) , a pour
rôle de réaliser la somme logique entre deux variables
logiques.
• Le OU fait la disjonction entre deux variables.
Fonction Table
Symbole A B S
0 0de 0vérité S
S = F(A,B) = A +B 0 1 1
1 0 1
1 1 1
9
Systèmes Logiques et
Architecture des Ord
inateurs
Porte logique : ET
• Le ET est un opérateur binaire ( deux variables) , a pour
rôle de réaliser le Produit logique entre deux variables
booléennes.
• Le ET fait la Conjonction entre deux variables.
Fonction Table
Symbole A
A B
de S
vérité S
S = F(A,B) = A . B 0 0 0 B
0 1 0
1 0 0
1 1 1
10
Systèmes Logiques et
Architecture des Ord
inateurs
Fonction Table
Symbole
de vérité
S = F(A,B) = A . B A B S
0 0 1 S
0 1 1
1 0 1
1 1 0
11
Systèmes Logiques et
Architecture des Ord
inateurs
Fonction Table
Symbole
de vérité
S = F(A,B) = A + B A B S
0 0 1
0 1 0
S
1 0 0
1 1 0
12
Systèmes Logiques et
Architecture des Ord
inateurs
Fonction Table
Symbole
de vérité
A B S
A
S = F(A,B) = A B 0 0 0 S
B
=A.B+A.B 0 1 1
1 0 1
1 1 0
13
Systèmes Logiques et
Architecture des Ord
inateurs
Fonction Table
Symbole
de vérité
S = F(A,B) = A B A B S
0 0 1 S
0 1 0
1 0 0
1 1 1
SCHÉMATISATION DES OPÉRATEURS
LOGIQUES
Notation Américaine
15
Systèmes Logiques et
Architecture des Ord
inateurs
Fonction logique
• C’est une fonction qui relie N variables logiques avec un
ensemble d’opérateurs logiques de base.
Systèmes Logiques et
Architecture des Ord
inateurs
Systèmes Logiques et
Architecture des Ord
inateurs
• Exemple :
F(A, B, C) ABC A CB ABC
Systèmes Logiques et
Architecture des Ord
inateurs
• Exemple :
F ( A, B, C ) A . B . C A . B . C A . B . C A . B . C
Systèmes Logiques et
Architecture des Ord
inateurs
F(A, B, C) ( A B C) (A B C)(A B C) (A B C)
20
Systèmes Logiques et
Architecture des Ord
inateurs
Remarques
• On peut toujours ramener n’importe qu’elle fonction
logique à l’une des formes canoniques.
Systèmes Logiques et
Architecture des Ord
inateurs
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
22
Systèmes Logiques et
Architecture des Ord
inateurs
Systèmes Logiques et
Architecture des Ord
inateurs
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)
24
Systèmes Logiques et
Architecture des Ord
inateurs
Exercice
• Déterminer la première et la deuxième forme
canonique à partir de la TV suivante ?
A B F
0 0 0
0 1 1
1 0 1
1 1 0
25
Systèmes Logiques et
Architecture des Ord
inateurs
Logigramme
• Schéma d’un circuit logique (Logigramme) : C’est la
traduction de la fonction logique en un schéma
électronique.
• Le principe consiste à remplacer chaque opérateur
A qui lui correspond.
logique par la porte logique
• Exemple :
B F
F ( A, B, C ) A.B B.C
C
26
Systèmes Logiques et
Architecture des Ord
inateurs
Exercice
• Donner le logigramme des fonctions suivantes
F(A,B,C)=(A+B).(A+C)
F(A,B,C)=(A+B).(A+C).
(B+C)
27
Systèmes Logiques et
Architecture des Ord
Exercice
inateurs
Systèmes Logiques et
Architecture des Ord
Correction
inateurs
Correction
Systèmes Logiques et
Architecture des Ord
inateurs
32
33
Propriétés de ET,OU,NON
Les méthodes algébriques
• Elément neutre
a+0 = a
a.1 = a
• Elément absorbant
a+1 =1
a.0 = 0
• Inverse
a+a = 1
a.a = 0
34
Propriétés de
1) ET,OU,NON
Les méthodes algébriques
• Commutativité • Idempotence
a+b = b+a a+a = a
a.b = b.a a.a = a
• Associativité • Absorption
a+(b+c) = (a+b)+c a+a.b = a
a.(b.c) = (a.b).c a.(a+b) = a
• Distributivité • Involution
a.(b+c) = a.b+a.c a=a
a+(b.c) = (a+b).(a+c)
35
Propriétés de ET,OU,NON
Règles de simplification
• Le terme superflu
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
36
Propriétés de ET,OU,NON
Exercice 1:
Démontrez la proposition suivante :
3
7
Correction
ABC ABC ABCD AB (C C) ABCD
AB ABCD
A ( B B (CD))
A ( B CD)
AB ACD
A.B A.B
•Les deux termes possèdent les même variables.
La seule différence est l’état de la variable B qui
change.
•Si on applique les règles de simplification :
AB A B A( B B ) A
Description de la table de
karnaugh
•La méthode consiste à mettre en évidence par une méthode
graphique (un tableau ) tous les termes qui sont adjacents
(qui ne différent que par l’état d’une seule variable).
A AB
B C
AB
CD
42
43
U=0 U= 1
44
Exemple
AB
F1(A, B, C) (1,2,5,7) C
00 01 11
10
0 1
1 1 1 1
AB
F 2( A, B, C ) (0,2,6,3) C
10
00 01 11
0 0 0 0
1 0
47
Méthode de simplification
ABC ABC AB
ABC A BC AC
F ( A, B, C ) AB AC BC
48
Tableaux de
Karnaugh
Exemple : 3 variables
AB
C 00 01 11 10
0 0 0 1 0
1 1 1 1 1
F ( A, B, C) C
AB
4
9
Tableaux de
Karnaugh
Exemple : 4 variables
AB
CD 00 01 11 10
00 0 0 0 1
01 1 1 1 1
11 0 0 0 0
10 0 1 0 0
F ( A , B , C , D ) C . D A.B.C
A.B.C.D 5
0
Tableaux de
Karnaugh
Exemple : 4 variables
AB
CD 00 01 11 10
00 1 1
01 1 1 1
11 1
10 1 1
F ( A, B,C, D) AB BD 5
BCD 1
Tableaux de Karnaugh
Exemple 4 : 5 variables
AB AB
CD 00 01 11 10 CD 00 01 11 10
00 1 00 1
01 1 1 01 1 1
11 1 1 11 1 1
10 1 10 1 1
U=0 U= 1
10 1 1 1 1
5
3
54
•
Cas d’une fonction non totalement
définie
A B C D S
0 0 0 0 0
0 0 0 1 0
0 0 1 0 0
•Pour les cas impossibles ou 0 0 1 1 1
interdites Il faut mettre un X dans 0 1 0 0 0
la T.V . 0 1 0 1 1
0 1 1 0 1
0 1 1 1 1
1 0 0 0 0
1 0 0 1 X
1 0 1 0 1
1 0 1 1 X
1 1 0 0 1
1 1 0 1 X
1 1 1 0 1
1 1 1 1 X
55
56
AB CD BD AC 51
Exercice 1
Trouver la fonction
logique simplifiée à
partir de la table
suivante ?
57
Exercice 2
58
59
Conclusion
• Généralement la description d’un circuit est donnée
sous une forme textuelle.
• Pour faire l’étude et la réalisation d’un circuit il
faut suivre le étapes suivantes :
▫ Il faut bien comprendre le fonctionnement du système.
▫ Il faut définir les variables d’entrée.
▫ Il faut définir les variables de sortie.
▫ Etablir la table de vérité.
▫ Ecrire les équations algébriques des sorties ( à partir
de la table de vérité ).
▫ Effectuer des simplifications ( algébrique ou par
Karnaugh).
▫ Faire le schéma avec un minimum de portes logique.
60
Schéma Bloc
• C’est possible d’utiliser des circuits combinatoires pour
réaliser d’autres circuits plus complexes.
Les circuits combinatoires
■ Les opérateurs arithmétiques
• les additionneurs
• les multiplieurs
• les unités arithmétiques et logiques
■ Les opérateurs d’aiguillage
• les multiplexeurs
• les démultiplexeurs
■ Les opérateurs de comparaison
■ Les opérateurs de transcodage
• les codeurs
• les décodeurs
• les transcodeurs
62
A S
B DA
R
A B R S
0 0 0 0 De la table de vérité on
trouve :
0 1 0 1 R A.B
1 0 0 1 S A.B A.B A B
1 1 1 0
64
R A.B
S A B
A S
B
R
65
r4 r3 r2 r1 r0= 0 ri-1
a4 a3 a2 a1 Ai
+ b4 b3 b2 b1 + bi
r4 s4 s3 s2 s1 ri Si
66
ai Si
Additionneur
bi
complet
ri-1 Ri
67
ai bi ri-1 ri si
Table de vérité d’un additionneur
complet sur 1 bit 0 0 0 0 0
0 0 1 0 1
0 1 0 0 1
0 1 1 1 0
1 0 0 0 1
1 0 1 1 0
1 1 0 1 0
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
69
R i A i .Bi R i 1.(Bi A i )
Si A i Bi R i 1
Les opérateurs arithmétiques:
Additionneur 4 bits
r4 r3 r2 r1
r0= 0 a4 a3
+
a2 a1 b4
b3 b2
r4 r 4 s4 r 3 s3 r 2 s2 r 1 s1
b1
r4 s4 s3 s2 s1
12
71
1 0 1 1 1 1 1 0
72
Les opérateurs arithmétiques : Soustraction
● demi-soustracteur:Il obéit aux quatre opérations de la
soustraction binaire et possède deux sorties: la
différence des entrées A et B (A-B) et un empreint
E
➢ table de vérité
Le schéma bloc
Logique Combinatoire
opérande opérande
Les n entrées de
sélection ou de
code
opérateur UAL commande
permettent de
sélectionner une
résultat opération parmi 2n.
Les opérateurs arithmétiques :
les Unités Arithmétiques et Logiques
(UALs)
Exemple : le circuit xx382
S2 S1S0
Les entrées de commande S2 S1 S0
permettent de sélectionner une opération
parmi 8. Cn
Opérations arithmétiques: A plus B, A
moins B, B moins A A3...
AL
A0 F3 …F0
Opérations logiques: XOR(A,B), A ou U
B, A et B 382
OVR
Mise à 0 (Clear), Mise à 1 (Preset)
Opérandes: A et B sur 4 bits.
• Il possède 3 sorties
▫ fe : égalité ( A=B)
▫ fi : inférieur ( A < B)
▫ fs : supérieur (A > B)
80
A B fs fe fi
0 0 0 1 0
fs A.B
fi AB
0 1 0 0 1
fe AB AB A B fs fi
1 0 1 0 0
1 1 0 1 0
81
fs A.B
fi AB
fe fs fi
A fs
fe
B fi
82
A1
fi
Comparateur fe
A2
2 bits
fs
B1
B2
83
A2 A1 B2
Systèmes Logiques et
B1 fs fe fi
1. A=B si Architecture des Ord
inateurs
0 0 0 0 0 1 0
A2=B2 et A1=B1 0 0 0 1 0 0 1
0 0 1 0 0 0 1
fe ( A2 B 2).( A1 B1) 0 0 1 1 0 0 1
0 1 0 0 1 0 0
0 1 0 1 0 1 0
2. A>B si 0 1 1 0 0 0 1
A2 > B2 ou (A2=B2 et 0 1 1 1 0 0 1
A1>B1) 1 0 0 0 1 0 0
fs A2.B 2 ( A2 B 2).( A1.B1) 1 0 0 1 1 0 0
1 0 1 0 0 1 0
1 0 1 1 0 0 1
3. A<B si
1 1 0 0 1 0 0
A2 < B2 ou (A2=B2 et 1 1 0 1 1 0 0
A1<B1) 1 1 1 0 1 0 0
1 1 1 1 0 1 0
fi A2.B 2 ( A2 B 2).( A1.B1)
84
Systèmes Logiques et
A2=B2 et A1=B1
3. A<B si
A2 < B2 ou (A2=B2 et
A1<B1)
fi A2.B2 (A2 B2).(A1.B1) fi2 fe2.fi1
86
a2 b2 a1 b1
fs fe fi
Les opérateurs d'aiguillage :Le Multiplexeur
Lorsqu'on désire transmettre des informations en parallèle, cela exige autant de lignes
d'informations. Pour simplifier la liaison ou pour la rendre moins coûteuse, on réunit au
départ les informations sur une seule ligne, c'est le multiplexage, et à l'arrivée, on
répartit ces informations sur plusieurs lignes, c'est le démultiplexage.
87
Les opérateurs d'aiguillage : Le Multiplexeur
90
Les opérateurs d'aiguillage:
Multiplexeur 4 e n t r é e s e n 1
sortie
Les opérateurs d'aiguillage Demultiplexeurs
Le démultiplexeur est un circuit possédant une ou
plusieurs entrées et plusieurs sorties. Suivant la valeur de
l'adresse, une entrée est transmise vers l'une des sorties.
92
Demultiplexeur 1 entrée 2 sorties
Suivant la valeur de l'adresse A, l'entrée E est transmise vers l'une des deux sorties S 0 et
S1.
Supposons: si A=0 alors S0=E
si A=1 alors S1=E
Les opérateurs d'aiguillage
Demultiplexeur 1 entrée 2 sorties
Les opérateurs de
transcodage : définition
Un opérateur de transcodage est un circuit transformant une
information présente en entrée sous une forme donnée (code 1) en
la même information en sortie mais sous une autre forme (code 2)
n n n1 n2
2n 2n
2n1 N 2n
Exemple: codeur décimal vers binaire (10 entrées vers 4 sorties)
E0
E1 A0
E2 A1 sorties
entrées codeur A2
A3
E9
Ex: si E5=1 et Ei=0 pour toutes les autres entrées, alors les
sorties affichent (A3,A2,A1,A0)=(0,1,0,1).
Les opérateurs de transcodage :
les codeurs prioritaires
Ce type de codeur fixe un ordre de priorité entre les entrées.
Pour un codage en binaire pur, le codeur prioritaire donne en
principe la priorité à l’entrée de poids le plus élevé.
Exemple: codeur prioritaire (4 entrées vers 2 sorties)
E3 E2 E1 E0 A1 A0 E0
1 X X X 1 1
E1 A0
0 1 X X 1 0 entrées encodeur sorties
prioritaire A1
0 0 1 X 0 1 E2
0 0 0 1 0 0 E3
Équations de sortie :
A0 = E3 + E2.E1 A1 = E3 + E2
Les opérateurs de transcodage :
les décodeurs 0
n entrées de données 1
An-1 2
N sorties avec N 2n 3
Une seule sortie est active à la fois
A0
Quand un nombre est codé en n
binaire pur à l’entrée, c’est la sortie 2 -1
correspondante qui est activée.
Exemple de décodeur binaire "1 parmi 8"
Equations de sortie
<e2,e 1,e 0> ss01 s0 e2 e1 e0
E . s1 e2 e1e0
sorties
3 . s2 e2e1 e0
s7
etc.
Les opérateurs de transcodage :
les transcodeurs
Exemple: le transcodeur BCD/7 segments
0
1 A
S0
0
1 S1
0 B
C S2
01
0 S3
0 D
S4
TranscodeurS5
0 BCD / 7 segments
0 S6
Il est souvent nécessaire de visualiser une information codée en binaire sur des
afficheurs (7 segments) => convertisseur BCD (Binary-Coded Decimal) / 7 segments
=> convertisseur binaire pur / 7 segments
Les opérateurs de transcodage :
les transcodeurs
Exemple: le transcodeur BCD/7 segments
7 segments
Table Code BCD
S6 S5 S4 S3 S2 S1 S0
de
vérité 0 0 0 0 1 0 1 1 1 1 1
0 0 0 1 1 0 1 0 0 0 0
S0 0 0 1 0 1 1 0 1 1 0 1
0 0 1 1 1 1 1 1 0 0 1
S1 S6 0 1 0 0 1 1 1 0 0 1 0
S5 0 1 0 1 0 1 1 1 0 1 1
0 1 1 0 0 1 1 1 1 1 1
S2 S4
0 1 1 1 1 0 1 0 0 0 1
1 0 0 0 1 1 1 1 1 1 1
S3
1 0 0 1 1 1 1 1 0 1 1