Académique Documents
Professionnel Documents
Culture Documents
CHAPITRE II:
CIRCUITS COMBINATOIRES
Cours n°4-5: 20 Octobre 2013
AROUSSI Sana
2
INTRODUCTION
3
PLAN DU CHAPITRE II
•Additionneur
Circuits •Soustracteur
•Multiplieur
arithmétiques •Diviseurs
• Comparaison
•UAL
Circuit •Multiplexeur
d’aiguillage •Démultiplexeur
Circuit de •Codeurs
•Décodeurs
transcodage •Transcodeurs
4
ADDITIONNEUR
Un additionneur est un circuit capable de faire l’addition de deux
nombre de n bits. Une addition génère deux résultats : la somme et la
retenue
Commençons par l’addition de deux bits Ai et Bi en entrée, avec en
sortie la somme Si et la retenue Ri.
Ai ( 1 bit) Si ( 1 bit)
Demi-Additionneur
Bi ( 1 bit) Ri ( 1 bit)
Demi-Additionneur
Bi ( 1 bit) Ri ( 1 bit)
Ai
XOR Si
Bi
AND Ri
Les équations Si = Ai Bi 6
Ri = Ai Bi,
ADDITIONNEUR COMPLET À UN BIT
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
9
ADDITIONNEUR COMPLET À UN BIT
Ri -1( 1 bit) Si ( 1 bit)
Ai ( 1 bit) Additionneur
Complet à un bit
Bi ( 1 bit) Ri ( 1 bit)
Le schéma
Ai
Bi
Si
Ri-1
Ri
10
ADDITIONNEUR COMPLET
Ri-1 ( 1 bit) Si ( 1 bit)
Ai ( 1 bit) Additionneur
Complet à un bit
Bi ( 1 bit) Ri ( 1 bit)
11
ADDITIONNEUR COMPLET À UN BIT
Solution de l’exercice 1: Faire le circuit de l’additionneur complet
à un bit en utilisant deux demi-additionneurs
13
ADDITIONNEUR COMPLET À N BITS PAR PROPAGATION
DE LA RETENUE
A ( n bit) S ( n bit)
Additionneur
B ( n bit) Complet à n bits R ( 1 bit)
Rôle : Additionner A et B
14
ADDITIONNEUR COMPLET À N BITS PAR PROPAGATION
DE LA RETENUE
Bn An Rn-1 B3 A3 B2 A2 B 1 A1
R0= 0
Rn Sn R3 S3 R2 S2 R1 S1
15
SOUSTRACTEUR À N BITS
Exercice 2:
= A + CA1 (B) + 1
16
MULTIPLIEUR À 4 BITS
Exercice 3:
17
COURS N°6-7: 27 OCTOBRE 2013
COMPARATEUR À UN BIT
Ai ( 1 bit) fi ( 1 bit)
Comparateur à un fe ( 1 bit)
bit
Bi ( 1 bit) fs ( 1 bit)
A B fs fe fi
Les équations
0 0 0 1 0 fs A.B
0 1 0 0 1 fi AB
1 0 1 0 0
fe AB AB A B fs fi
1 1 0 1 0
19
COMPARATEUR À UN BIT
Ai ( 1 bit) fi ( 1 bit)
Comparateur à un fe ( 1 bit)
bit
Bi ( 1 bit) fs ( 1 bit)
A fs
fe
B fi
20
COMPARATEUR À 2 BITS
Ai ( 2 bit) fi ( 1 bit)
Comparateur à 2 fe ( 1 bit)
bit
Bi ( 2 bit) fs ( 1 bit)
Exercice 4:
21
COMPARATEUR À 2 BITS
A2 A1 B2 B1 fs fe fi
0 0 0 0 0 1 0
1. A=B si A2=B2 et
0 0 0 1 0 0 1
A1=B1
0 0 1 0 0 0 1
0 0 1 1 0 0 1 fe ( A2 B2).( A1 B1)
0 1 0 0 1 0 0
0 1 0 1 0 1 0 2. A>B si A2 > B2 ou
0 1 1 0 0 0 1 (A2=B2 et A1>B1)
0 1 1 1 0 0 1
1 0 0 0 1 0 0
1 0 0 1 1 0 0 fs A2.B2 ( A2 B2).( A1.B1)
1 0 1 0 0 1 0
1 0 1 1 0 0 1 3. A<B si A2 < B2 ou
1 1 0 0 1 0 0 (A2=B2 et A1<B1)
1 1 0 1 1 0 0 22
1 1 1 0 1 0 0
1 1 1 1 0 1 0
fi A2.B2 ( A2 B2).( A122.B1)
COMPARATEUR À 2 BITS
Ai ( 2 bit) fi ( 1 bit)
Comparateur à 2 fe ( 1 bit)
bit
Bi ( 2 bit) fs ( 1 bit)
Exercice 5:
23
COMPARATEUR À 2 BITS
a2 b2 a1 b1
25
fs fe fi
COMPARATEUR AVEC DES ENTRÉES DE MISE
EN CASCADE
On remarque que :
A B Es Eg Ei fs fe fi A B
A>B X X X 1 0 0
Comp Es ( >)
Eg ( =)
A<B X X X 0 0 1 Ei ( <)
fs fe fi
1 0 0 1 0 0
A=B 0 1 0 0 1 0
fs= (Ai>Bi) ou (Ai=Bi).Es
0 0 1 0 0 1
fi= ( Ai<Bi) ou (Ai=Bi).Ei
fe= (Ai=Bi).Eg 27
COMPARATEUR À DEUX BITS AVEC DES ENTRÉES DE MISE
EN CASCADE
‘0’
Comp Comp
Es Es
Eg Eg ‘1’
fs2 fe2 fi2 fs1 fe1 fi1
Ei Ei
28
COMPARATEUR À N BITS AVEC DES ENTRÉES DE MISE EN
CASCADE
Bn An Bn-1 An-1 B1 A1
‘0’
Compn Esn
Compn-1 Comp1 ‘1’
Egn
fsn fen fin fsn-1fen-1fin-1 fs1 fe1 fi1
Ein
fs fe fi 29
CIRCUITS D'AIGUILLAGE
DÉFINITION
Multiplexeur Démultiplexeur
. sortie .
2n entrées entrée
. . 2n sorties
n commandes n commandes
C0 S E1 E0
0 E0
C0 Mux 2 1
1 E1
S C0 .E 0 C0 .E1
31
MULTIPLEXEUR 4 BITS VERS 1
C1 C0 S
0 0 E0
E3 E2 E1 E0
0 1 E1 C0
C1 Mux 4 1
1 0 E2
1 1 E3
S
S C1.C 0.( E 0) C1.C 0.( E1) C1.C 0.( E 2) C1.C 0.( E3)
32
MULTIPLEXEUR 4 BITS VERS 1
C1 C0 S1 S2 S3 E3 E2 E1 E0
0 0 E0 E2 E0 C0 M1 M2
0 1 E1 E3 E1
S2 S1
C1 M3
1 0 E0 E2 E2
1 1 E1 E3 E3
33
APPLICATIONS DES MULTIPLEXEURS
de 2N vers 1
34
APPLICATIONS DES MULTIPLEXEURS
E7 E6 E5 E4 E3 E2 E1 E0
C0
C1 Mux 8 1
C2
S 35
MULTIPLEXEUR 8 BITS VERS 1
C2 C1 C0 S
0 0 0 E0
0 0 1 E1
0 1 0 E2 E7 E6 E5 E4 E3 E2 E1 E0
C0
0 1 1 E3 C1 Mux 8 1
1 0 0 E4 C2
1 0 1 E5
1 1 0 E6
1 1 1 E7
S i Ai .B i .R i 1 (0) Ai .Bi .Ri 1 (1) Ai .Bi .R i 1 (1) Ai .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)
APPLICATIONS DES MULTIPLEXEURS
Ai Bi Ri-1 Ri
0 0 0 0 E0
0 0 1 0 E1
0 1 0 0 E2
‘1’
0 1 1 1 E3
Ri ‘0’
1 0 0 0 E4 E7 E6 E5 E4 E3 E2 E1 E0
Ri-1
1 0 1 1 E5 Bi Mux 8 1
Ai
1 1 0 1 E6
1 1 1 1 E7
C0 C1 C2
Ri
E1 S1
E2 S E S2
. MUX DEMUX .
. . .
.
. . . .
.
E 2n S2n
39
DÉMULTIPLEXEUR 4 BITS VERS 1
C1 C0 S3 S2 S1 S0
C0 DEMUX 1 4
C1
S3 S2 S1 S0
0 0 0 0 0 E
0 1 0 0 E 0
1 0 0 E 0 0 S 0 C1.C 0.( E )
1 1 E 0 0 0
S1 C1.C 0.( E )
S 2 C1.C 0.( E )
S 3 C1.C 0.( E ) 40
CIRCUIT DE TRANSCODAGE
DÉFINITION
Code 1 Code 2
Circuit de
Transcodage
41
CIRCUIT DE TRANSCODAGE
TYPES
42
CODEUR BINAIRE
E0
E3 E2 E1 E0 S1 S0
COD 4 2
1 0 0 0 1 1 E1 S1
0 1 0 0 1 0
E2 S0
0 0 1 0 0 1
0 0 0 1 0 0 E3
43
CODEUR PRIORITAIRE
Pour éviter les conflits, les codeurs fixent généralement
de priorité parmi les entrées. La priorité est
habituellement donnée au bit de poids le plus élevé
E3 E2 E1 E0 S1 S0 E0
COD-P 4 2
1 X X X 1 1
E1 S1
0 1 X X 1 0
0 0 1 X 0 1 E2 S0
0 0 0 1 0 0
E3
44
DÉCODEUR
Le décodeur possède n entrées et 2n sorties dont une
seule sortie est activée à la fois. Il est souvent doté d’une
entrée de validation « V » qui sert à valider son
fonctionnement.
Exemple 1 : Décodeur binaire (ou élémentaire) à 2 bits qui
active la sortie correspond au numéro de l’entrée.
S0
V E1 E0 S3 S2 S1 S0
DEC 2 4
0 X X 0 0 0 0 E1 S1
1 0 0 0 0 0 1
E0 S2
1 0 1 0 0 1 0
1 1 0 0 1 0 0 S3 45
1 1 1 1 0 0 0
V
DÉCODEUR 2 4
Exemple 1 : Décodeur binaire (ou élémentaire) à 2 bits qui
active la sortie correspond au numéro de l’entrée.
S0
V E1 E0 S3 S2 S1 S0
DEC 2 4
0 X X 0 0 0 0 E1 S1
1 0 0 0 0 0 1
E0 S2
1 0 1 0 0 1 0
1 1 0 0 1 0 0 S3
1 1 1 1 0 0 0
V
S 0 ( E1.E0 ).V
S1 ( E1.E0 ).V
S 2 ( E1.E0 ).V 46
S 3 ( E1.E0 ).V
DÉCODEUR 3 8
S0
E0 S1
S2
E1 S3
S4
V E2 E1 E0 S0 S1 S2 S3 S4 S5 S6 S7 E2 S5
S6
0 X X X 0 0 0 0 0 0 0 0 S7
1 0 0 0 1 0 0 0 0 0 0 0 V
1 0 0 1 0 1 0 0 0 0 0 0
S 0 V ( E2 .E1.E0 )
1 0 1 0 0 0 1 0 0 0 0 0
S1 V ( E2 .E1.E0 )
1 0 1 1 0 0 0 1 0 0 0 0 S 2 V ( E2 .E1.E0 )
1 1 0 0 0 0 0 0 1 0 0 0 S 3 V ( E2 .E1.E0 )
1 1 0 1 0 0 0 0 0 1 0 0 S 4 V ( E2 .E1.E0 )
1 1 1 0 0 0 0 0 0 0 1 0 S 5 V ( E2 .E1.E0 )
1 1 1 1 0 0 0 0 0 0 0 1 S 6 V ( E2 .E1.E0 )
47
S 7 V ( E2 .E1.E0 )
DÉCODEUR 4 16
ACCROISSEMENT DE CAPACITÉ PAR ASSOCIATION DE CIRCUITS
S0
E0 S1
E1 .
E2 .
E3 .
S15
48
V E3 E2 E1 E0 Sortie Activé
0 X X X X Aucune
1 0 0 0 0 S0
1 0 0 0 1 S1
1er décodeur
1 0 0 1 0 S2
1 0 0 1 1 S3
5ème
décodeur 1 0 1 0 0 S4
pour 1 0 1 0 1 S5
sélectionner 2ème décodeur
un des 1 0 1 1 0 S6
quatre 1 0 1 1 1 S7
décodeurs 1 1 0 0 0 S8
1 1 0 0 1 S9
3ème décodeur
1 1 0 1 0 S10
1 1 0 1 1 S11
1 1 1 0 0 S12
1 1 1 0 1 S13
4ème décodeur 49
1 1 1 1 0 S14
1 1 1 1 1 S15
DÉCODEUR 4 16
ACCROISSEMENT DE CAPACITÉ PAR ASSOCIATION DE CIRCUITS
E1 E0 E1 E0 E1 E0 E1 E0
50
S0 S1 S2 S3 S4 S5 S6 S7 S8 S9 S10 S11 S12 S13 S14 S15
DÉCODEUR 4 16
ACCROISSEMENT DE CAPACITÉ PAR ASSOCIATION DE CIRCUITS
S0
E0 S1
E1 .
E2 .
E3 .
S15
51
V E3 E2 E1 E0 Sortie Activé
0 X X X X Aucune
1 0 0 0 0 S0
1 0 0 0 1 S1
1 0 0 1 0 S2
1 0 0 1 1 S3
Le bit E3 1er décodeur
1 0 1 0 0 S4
sélectionne
les sorties 1 0 1 0 1 S5
de décodeur 1 0 1 1 0 S6
qui doit être
1 0 1 1 1 S7
actif
1 1 0 0 0 S8
1 1 0 0 1 S9
1 1 0 1 0 S10
1 1 0 1 1 S11
2ème décodeur
1 1 1 0 0 S12
1 1 1 0 1 S13
52
1 1 1 1 0 S14
1 1 1 1 1 S15
DÉCODEUR 4 16
ACCROISSEMENT DE CAPACITÉ PAR ASSOCIATION DE CIRCUITS
Solution: deux décodeurs traitent en parallèle les bits E2, E1, E0.
Le bit E3 sélectionne les sorties de décodeur qui doit être actif
E3
E2 E1 E0 E2 E1 E0
A ET B,
A OU B
55
A + B (addition arithmétique).
APPLICATIONS DES DÉCODEURS
A B U.A.L
Non A
NOT
ET
A et B
ET
ET
S
OU
OU A ou B
ET
A+B
D-A
ET
S0 S1 S2 S3
Décodeur 56
C0 C1
APPLICATIONS DES DÉCODEURS
MÉMOIRE PRINCIPALE
Un décodeur est un dispositif essentiel à l’entrée de la
mémoire principale.
Mémoire Principale
2n sorties N° ligne Contenu
0 23
n entrées
1 21
2 12
Décodeur
d’adresse
. .
. .
.
Bus
2n-1 28
2n 31
Sélectionner 57
un mot
mémoire
APPLICATIONS DES DÉCODEURS
MÉMOIRE PRINCIPALE
Exemple: Sélectionner une cellule (colonne) [L, C] de la
mémoire principale.
0
1
2
Décodeur
. .
(L)2
. .
. .
2n-1
(1) 2n
Sélectionner
la ligne (2)
(C)2 Multiplexeur Sélectionner58
la colonne
TRANSCODEUR
Un transcodeur est un dispositif qui permet de faire
passer une information écrite dans le code C1 à un autre
Code C2.
la conversion de code
60
TRANSCODEUR BCD/XS3
Chiffre Entrées (BCD) Sorties [XS 3]
converti E3 E2 E1 E0 S3 S2 S1 S0
0 0 0 0 0 0 0 1 1
1 0 0 0 1 0 1 0 0
2 0 0 1 0 0 1 0 1
3 0 0 1 1 0 1 1 0
4 0 1 0 0 0 1 1 1
5 0 1 0 1 1 0 0 0
6 0 1 1 0 1 0 0 1
7 0 1 1 1 1 0 1 0
8 1 0 0 0 1 0 1 1
9 1 0 0 1 1 1 0 0
- 1 0 1 0 x x x x
- 1 0 1 1 x x x x
- 1 1 0 0 x x x x
- 1 1 0 1 x x x x 61
- 1 1 1 0 x x x x
- 1 1 1 1 x x x x
TRANSCODEUR BCD/XS3
E1 E0 00 01 11 10 E1 E0 00 01 11 10
E3 E2 E3 E2
00 0 0 0 0 00 0 1 1 1
01 0 1 1 1 01 1 0 0 0
11 X X X X 11 X X X X
10 1 1 X X 10 0 1 X X
S3 = E3 + E2 E0 + E2 E1
S2 = E2 E1 E0 + E2 E0 + E2 E1
E1 E0 00 01 11 10 E 1 E0 00 01 11 10
E3 E2 E3 E2
00 1 0 1 0 00 1 0 0 1
01 1 0 1 0 01 1 0 0 1
11 X X X X 11 X X X X
10 1 0 X X 10 1 0 X X 62
S1 = E1 E0 + E1 E0 = E1 E0 S0 = E0
TRANSCODEUR HEXA/7 SEGMENTS
Exercice 11: Les 16 chiffres 0-9 et A-F sont affichés au moyen d’un
dispositif appelé afficheur à 7 segments. Cet afficheur est un ensemble
de diodes électroluminescentes (D.E.L) disposés comme le montre la
figure suivante:
S0
S0
S1 S6
S1
E0 S2 S5
E1 Hexa/7 Segments S3
E2 S4
E3 S5 S2 S4
S6
S3
63
TRANSCODEUR HEXA/7 SEGMENTS
S0
S0
S1 S6
S1
E0 S2 S5
E1 Hexa/7 Segments S3
E2 S4
E3 S5 S2 S4
S6
S3
64
AFFICHEUR 7 SEGMENTS
Chiffre Entrées Sorties
converti E3 E2 E1 E0 S6 S5 S4 S3 S2 S1 S0
0 0 0 0 0 1 0 1 1 1 1 1
1 0 0 0 1 1 0 1 0 0 0 0
2 0 0 1 0 1 1 0 1 1 0 1
3 0 0 1 1 1 1 1 1 0 0 1
4 0 1 0 0 1 1 1 0 0 1 0
5 0 1 0 1 0 1 1 1 0 1 1
6 0 1 1 0 0 1 1 1 1 1 1
7 0 1 1 1 1 0 1 0 0 0 1
8 1 0 0 0 1 1 1 1 1 1 1
9 1 0 0 1 1 1 1 1 0 1 1
A 1 0 1 0 1 1 1 0 1 1 1
B 1 0 1 1 0 1 1 1 1 1 0
C 1 1 0 0 0 0 0 1 1 1 1
D 1 1 0 1 1 1 1 1 1 0 0 65
E 1 1 1 0 0 1 0 1 1 1 1
F 1 1 1 1 0 1 0 0 1 1 1
EXERCICES
Exercice 12: En utilisant uniquement des additionneurs
complets à un bit, faire le schéma du circuit C de la figure
suivante qui permet de déterminer le nombre (S2 S1 S0)2
de bits à « 1 » de l’information (I5 .... I0) en entrée
I5 I4 I3 I2 I1 I0
S2 S1 S0 66
EXERCICES
Exercice 13: On veut afficher le résultat de la
comparaison de deux nombre binaire A (4 bits) et B (4 bits)
avec un afficher 7 segment. Étudier le circuit qui permet de
rendre lumineux les segments de façon à écrire
S0 S0
S1 S1 S1
S5 S5
Si A > B Si A = B Si A < B
S4 S2 S2
67
S3 S3
EXERCICES
Exercice 14: En se basant sur l’algorithme et les exemples donnés
en fin d’exercice, proposer à base d’un minimum de circuits
combinatoires et de portes logiques, le schéma de réalisation d’une
additionneur de deux nombres positifs A (4 bits) et B (4 bits) exprimés
en code BCD (Binary Coded Decimal).
68
EXERCICES
Exercice 14: En se basant sur l’algorithme et les exemples donnés
en fin d’exercice, proposer à base d’un minimum de circuits
combinatoires et de portes logiques, le schéma de réalisation d’une
additionneur de deux nombres positifs A (4 bits) et B (4 bits) exprimés
en code BCD (Binary Coded Decimal).
69
SOURCES DE CE COURS
Cours d’Architecture des ordinateurs, École nationale Supérieure d’Informatique
public.enst-bretagne.fr/~douillar/ELP304/Cours2.pdf
monsite.com/medias/files/cours-elec-num-3.pdf
psud.fr/~roger/Enseigne/DUT_S2_Info_Instrum/09_C4_Logique_combinatoire.pdf
http://www.ai.univ-paris8.fr/~audibert/ens/7-CIRCUITS%20COMBINATOIRES.pdf