Vous êtes sur la page 1sur 48

Chapitre 4 : Les circuits combinatoires

Objectifs
Apprendre la structure de quelques circuits
combinatoires souvent utiliss ( demi additionneur ,
additionneur complet,..).
Apprendre comment utiliser des circuits combinatoires
pour concevoir dautres circuits plus complexes.

1. Les Circuits combinatoires


Un circuit combinatoire est un circuit numrique dont les
sorties dpendent uniquement des entres.
Si=F(Ei)
Si=F(E1,E2,.,En)
S1

E1
E2
..

Circuit
combinatoire

S2
..
Sm

En

Schma Bloc

Cest possible dutiliser des circuits combinatoires pour


raliser dautres circuits plus complexes.
2

Exemple de Circuits combinatoires


1.
2.
3.
4.
5.
6.
7.

Demi Additionneur
Additionneur complet
Comparateur
Multiplexeur
Demultiplexeur
Encodeur
Dcodeur

2. Demi Additionneur

Le demi additionneur est un circuit combinatoire qui permet de


raliser la somme arithmtique de deux nombres A et B chacun sur
un bit.
A la sotie on va avoir la somme S et la retenu R ( Carry).

A
B

DA

S
R

Pour trouver la structure ( le schma ) de ce circuit on doit en


premier dresser sa table de vrit
4

En binaire laddition sur un


seul bit se fait de la manire
suivante:

La table de vrit associe :


A B

R S

De la table de vrit on trouve :

R A.B
S A.B A.B A B
5

R A.B
S A B

3. Ladditionneur complet
En binaire lorsque on fait une addition il faut tenir en
compte de la retenue entrante.

r4
+
r4

r3

r2

r1

r0= 0

a4

a3

a2

a1

b4

b3

b2

b1

s4

s3

s2

s1

ri-1
ai
+

bi
ri si

3.1 Additionneur complet 1 bit


Ladditionneur complet un bit possde 3 entres :
ai : le premier nombre sur un bit.
bi : le deuxime nombre sur un bit.
ri-1 : le retenue entrante sur un bit.
Il possde deux sorties :
Si : la somme
Ri la retenue sortante
ai
bi
ri-1

Additionneur
complet

Si

Ri
8

Table de vrit dun additionneur


complet sur 1 bit

ai

bi

ri-1

ri

si

Si Ai .Bi .Ri 1 Ai .Bi .R i 1 Ai .B i .R i 1 Ai .Bi .Ri 1


Ri Ai Bi Ri 1 Ai B i Ri 1 Ai Bi R i 1 Ai Bi Ri 1
9

Si on veut simplifier les quations on obtient :

S i Ai .Bi .Ri 1 Ai .Bi .R i 1 Ai .B i .R i 1 Ai .Bi .Ri 1


S i Ai .( Bi .Ri 1 Bi .R i 1 ) Ai .( B i .R i 1 Bi .Ri 1 )
S i Ai ( Bi Ri 1 ) Ai .( Bi Ri 1 )
S i Ai Bi Ri 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
10

3.3 Schma dun additionneur complet


R i A i .Bi R i 1.(Bi A i )
Si A i Bi R i 1

11

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 :
Ri Y T
Si Z
On remarque que X et Y sont les sorties dun demi additionneur
ayant comme entres A et B
On remarque que Z et T sont les sorties dun demi additionneur
ayant comme entres X et Ri-1

12

X A i Bi
Y A i Bi
Z X R i 1
T R i 1.X
Ri Y T
Si Z

13

3.4 Additionneur sur 4 bits

Un additionneur sur 4 bits est un circuit qui permet de faire laddition de


deux nombres A et B de 4 bits chacun
A(a3a2a1a0)
B(b3b2b1b0)
En plus il tient en compte de la retenu entrante

En sortie on va avoir le rsultat sur 4 bits ainsi que la retenu ( 5 bits en


sortie )

Donc au total le circuit possde 9 entres et 5 sorties.

Avec 9 entres on a 29=512 combinaisons !!!!!! Comment faire pour


reprsenter la table de vrit ?????

Il faut trouver une solution plus facile et plus efficace pour concevoir ce
circuit ?
14

Lorsque on fait laddition en binaire , on additionne bit par bit en


commenant partir du poids fiable et chaque fois on propage la
retenue sortante au bit du rang suprieur.
Laddition sur un bit peut se faire par un additionneur complet sur 1
bits.

r3

r2

r1

r0= 0

a4

a3

a2

a1

b4

b3

b2

b1

r4 s4 r3 s3 r2 s2 r1 s1
r4

s4

s3

s2

s1

Rsultat final
15

3.4.1 Additionneur 4 bits ( schma )

16

Exercice
Soit une information binaire sur 5 bits ( i4i3i2i1i0). Donner
le circuit qui permet de calculer le nombre de 1 dans
linformation en entre en utilisant uniquement des
additionneurs complets sur 1 bit ?
Exemple :
Si on a en entre linformation ( i4i3i2i1i0) =( 10110) alors en
sortie on obtient la valeur 3 en binaire ( 011) puisque il
existe 3 bits qui sont 1 dans linformation en entre .

17

4. Le Comparateur

Cest un circuit combinatoire qui permet de


comparer entre deux nombres binaire A et B.
Il possde 2 entres :
A : sur un bit
B : sur un bit
Il possde 3 sorties
fe : galit ( A=B)
fi : infrieur ( A < B)
fs : suprieur (A > B)

A
B

fi
Comparateur
1 bit

fe
fs

18

4.1 Comparateur sur un bit


A B

fs fe fi

fs A.B
fi AB
fe AB AB A B fs fi

19

Schma dun comparateur dur un bit


fs A.B
fi AB
fe fs fi

20

4.2 Comparateur 2 bits


Il permet de faire la comparaison entre deux nombres A
(a2a1) et B(b2b1) chacun sur deux bits.

A1
A2

fi
Comparateur
2 bits

fe
fs

B1
B2

21

A2

A1

B2

B1

3. A<B si

A2 < B2 ou (A2=B2 et A1<B1)

0
22

1. A=B si
A2=B2 et A1=B1

fe ( A2 B 2).( A1 B1)
2. A>B si
A2 > B2 ou (A2=B2 et A1>B1)

fs A2.B 2 ( A2 B 2).( A1.B1)

fi A2.B 2 ( A2 B 2).( A1.B1)

fs fe fi

4.2.2 comparateur 2 bits avec des comparateurs 1 bit


Cest possible de raliser un comparateur 2 bits en utilisant des
comparateurs 1 bit et des portes logiques.
Il faut utiliser un comparateur pour comparer les bits du poids faible
et un autre pour comparer les bits du poids fort.
Il faut combiner entre les sorties des deux comparateurs utiliss
pour raliser les sorties du comparateur final.
a 2 b2

Comparateur 1 bit
fs2 fe2 fi2

a1

b1

Comparateur 1 bit
fs1 fe1 fi1

23

1. A=B si
A2=B2 et A1=B1

fe ( A2 B2).(A1 B1) fe2.fe1


2. A>B si
A2 > B2 ou (A2=B2 et A1>B1)

fs A2.B2 (A2 B2).(A1.B1) fs2 fe2.fs1


3. A<B si
A2 < B2 ou (A2=B2 et A1<B1)

fi A2.B2 (A2 B2).(A1.B1) fi2 fe2.fi1


24

25

4.2.3 Comparateur avec des entres de


mise en cascade
On remarque que :
Si A2 >B2 alors A > B
Si A2<B2 alors A < B

Par contre si A2=B2 alors il faut tenir en compte du


rsultat de la comparaison des bits du poids faible.
Pour cela on rajoute au comparateur des entres qui
nous indiquent le rsultat de la comparaison prcdente.
Ces entres sont appeles des entres de mise en
cascade.
26

A2
A2>B2

B2 Es Eg Ei
X

fs fe fs
1

A2

B2

0
Comp

A2<B2

A2=B1

fs

fe

fi

Es ( >)
Eg ( =)
Ei ( <)

fs= (A2>B2) ou (A2=B2).Es


fi= ( A2<B2) ou (A2=B2).Ei
fe=(A2=B2).Eg
27

28

Exercice
Raliser un comparateur 4 bits en utilisant
des comparateurs 2 bits avec des entres
de mise en cascade?

29

5. Le Multiplexeur
Un multiplexeur est un circuit combinatoire qui permet de
slectionner une information (1 bit) parmi 2n valeurs en
entre.
Il possde :
2n entres dinformation
Une seule sortie
N entres de slection ( commandes)

Em
C0
C1

.........
Mux 2n 1

E3 E1 E0
V

Cn-1
S
30

5.1 Multiplexeur 2 1
V

C0

0
E1

1
1

0
1

E0

E0

C0
Mux 2 1

E1
S

S V .(C 0 .E 0 C 0 .E1)
31

5.2 Multiplexeur 4 1
C1

C0

E0

E1

E2

E3

E3
C0
C1

E2

E1

E0

Mux 4 1

S C1.C 0.( E 0) C1.C 0.( E1) C1.C 0.( E 2) C1.C 0.( E 3)


32

5.3 Multiplexeur 81
C2

C1

C0

E0

E1

E2

E3

C0
C1

E4

C2

E5

E6

E7

E7 E6 E5 E4 E3

E2

E1 E0

Mux 8 1

S C 2.C1.C 0.( E 0) C 2.C1.C 0( E1) C 2.C1.C 0( E 2) C 2.C1.C 0( E 3)


C 2.C1.C 0( E 4) C 2.C1.C 0( E 5) C 2.C1.C 0( E 6) C 2.C1.C 0( E 7)

33

Exemple : Ralisation dun additionneur complet


avec des multiplexeurs 81
Nous avons besoin dutiliser deux multiplexeurs :Le premier pour
raliser la fonction de la somme et lautres pour donner la retenue.

ai

bi

ri-1

ri

ai

bi

ri-1

Si

34

Ralisation 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)

S C 2.C1.C 0.( E 0) C 2.C1.C 0( E1) C 2.C1.C 0( E 2) C 2.C1.C 0( E 3)


C 2.C1.C 0( E 4) C 2.C1.C 0( E 5) C 2.C1.C 0( E 6) C 2.C1.C 0( E 7)

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
35

Ralisation de la fonction de la retenue


Ri Ai B i R i 1 .(0) Ai B i Ri 1 .(0) Ai Bi R i 1 .(0) Ai Bi Ri 1 .(1) Ai B i R i 1 .(0) Ai B i Ri 1 .(1)
Ai Bi R i 1 .(1) Ai Bi Ri 1 .(1)
S C 2.C1.C 0.( E 0) C 2.C1.C 0( E1) C 2.C1.C 0( E 2) C 2.C1.C 0( E 3)
C 2.C1.C 0( E 4) C 2.C1.C 0( E 5) C 2.C1.C 0( E 6) C 2.C1.C 0( E 7)

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
36

Ralisation dun additionneur complet avec des


multiplexeurs 81

0
ri-1
bi
ai

E7 E6 E5 E4 E3
C0
C1

Mux 8 1

C2

E2

E1 E0

0
ri-1
bi
ai

Ri

E7 E6 E5 E4 E3
C0
C1

E2

E1 E0

Mux 8 1

C2

Si
37

Exercice
Raliser le circuit qui permet de trouver le
maximum entre deux nombres A et B sur un Bit
en utilisant le minimum de portes logiques et de
circuits combinatoires?

38

6. Demultiplexeurs
Il joue le rle inverse dun multiplexeurs, il permet de
faire passer une information dans lune des sorties selon
les valeurs des entres de commandes.

Il possde :
une seule entre
2n sorties
N entres de slection ( commandes)
I

C0
C1

DeMux 1 4
S3

S2

S1

S0

39

6.1 Demultiplexeur 14
C1

C0

S3 S2

S1

S0

S 0 C1.C 0.( I )
S1 C1.C 0.( I )
S 2 C1.C 0.( I )
S 3 C1.C 0.( I )
I

0
C0
C1

DeMux 1 4
S3

S2

S1

S0

40

7. Le dcodeur binaire
Cest un circuit combinatoire qui est constitu de :
N : entres de donnes
2n sorties
Pour chaque combinaison en entre une seule sortie
est active la fois
S0
S1
S2
S3
S4
S5
S6
S7

A
B
C

Un dcodeur 38

41

Dcodeur 24
V
0
1

A
X
0

B
X
0

S0 S1
0
1

0
0

S2
0
0

S3
0

S1

S2

S0

S3
V

S 0 ( A.B ).V
S1 ( A.B ).V
S 2 ( A.B ).V
S 3 ( A.B ).V

42

Dcodeur 38

S0
S1
S2
S3
S4
S5
S6
S7

A
B
C

S0

S1

S2

S3

S4

S5

S6

S7

S1 A.B.C

S 2 A.B.C

S 3 A.B.C

S 4 A.B.C

S 5 A.B.C

S 6 A.B.C

S 0 A.B.C

43

S 7 A.B.C

Ralisation dun additionneur complet


avec des dcodeurs binaire 38
S i A i .Bi .Ri 1 A i .Bi .R i 1 Ai .B i .R i 1 Ai .Bi .Ri 1
0 0

1 0

Ri Ai Bi Ri 1 Ai B i Ri 1 Ai Bi R i 1 . Ai Bi Ri 1
0 1

0 1

1 1

On pose A=Ai , B =Bi , C=Ri-1

S 0 A.B.C , S1 A.B.C , S 2 A.B.C , S 3 A.B.C ,


S 4 A.B.C , S 5 A.B.C , S 6 A.B.C , S 7 A.B.C
Ri S 3 S 5 S 6 S 7
S i S1 S 2 S 4 S 7

44

8. Lencodeur binaire
Il joue le rle inverse dun dcodeur
Il possde 2n entres
N sortie
Pour chaque combinaison en entre on va avoir sont
numro ( en binaire) la sortie.
I0
Encodeur 42

I1
I2

x
y

I3
45

Lencodeur binaire ( 42)


I0

I1

I2

I3

x
0

y
0

I0
I1
I2

x
y

I3

X I 0.I1.( I 2 I 3)
Y I 0.( I1 .I 2.I 3)
46

9. Le transcodeur
Cest un circuit combinatoire qui permet de transformer
un code X ( sur n bits) en entre en un code Y ( sur m
bits) en sortie.

E1

S1

E2

S2

..
En

transcodeur

..
Sm

47

Exemple : Transcodeur BCD/EXESS3


A

48