You are on page 1of 15

Additionneur

A et B : cumulande et cumulateur
Addition de deux bits S : somme R : retenue
(demi-additionneur binaire)

S = A⊕ B R = AB
A B S R
A
S
0 0 0 0 B

0 1 1 0
R
1 0 1 0
1 1 0 1

1
Additionneur
rn−1 r3 r2 r1
Addition de deux
an −1 L a3 a2 a1 a0 nombres binaires :

+ bn −1 L b3 b2 b1 b0

rn sn −1 L s3 s2 s1 s0

an-1 bn-1 a2 b2 a1 b1 a0 b0

rn-1 r3 r2 r1
r0 = 0
Σ Σ Σ Σ

rn sn-1 Additionneur s2 s1 s0
binaire
complet 2
Additionneur
Additionneur binaire complet aibi
00 01 11 10

0 0 1 0 1
ri ai bi si ri +1 ri
1 1 0 1 0

0 0 0 0 0
0 0 1 1 0
si = ri ai bi + ri ai bi + ri ai bi + ri ai bi
0 1 0 1 0
aibi
0 1 1 0 1
00 01 11 10
1 0 0 1 0
0 0 0 1 0
1 0 1 0 1 ri
1 1 0 0 1 1 0 1 1 1
1 1 1 1 1
ri +1 = ri ai + ri bi + ai bi
3
Additionneur

si = ri ai bi + ri ai bi + ri ai bi + ri ai bi

( ) (
= ri ai bi + ai bi + ri ai bi + ai bi )
= ri ( ai ⊕ bi ) + ri ( ai ⊕ bi ) = ri ⊕ ( ai ⊕ bi )

ri +1 = ri ai + ri bi + ai bi ou ri ai bi + ri ai bi + ai bi aibi
00 01 11 10

( )
= ri ai bi + ai bi + ai bi 0 0 0 1 0
ri
= ri ( ai ⊕ bi ) + ai bi 1 0 1 1 1

4
Additionneur
ai

bi
si = ri ⊕ ( ai ⊕ bi )
ri

ri +1 = ri ( ai ⊕ bi ) + ai bi

Inconvénient : Délai de propagation des retenues

5
Additionneur
Circuit d’anticipation des retenues
(« Carry Lookahead Network »)

ri +1 = ri pi + gi où pi = ai ⊕ bi (ou bien ai + bi ) et gi = ai bi

r1 = r0 p0 + g 0
r2 = r1 p1 + g1 = ( r0 p0 + g 0 ) p1 + g1 = r0 p0 p1 + g 0 p1 + g1

r3 = r2 p2 + g 2 = ( r0 p0 p1 + g 0 p1 + g1 ) p2 + g 2 = r0 p0 p1 p2 + g 0 p1 p2 + g1 p2 + g 2

rn = r0 p0 p1 p2 L pn −1 + g 0 p1 p2 L pn −1 + g1 p2 L pn −1 + g 2 p3 L pn −1 + L
L + g n − 4 pn −3 pn − 2 pn −1 + g n −3 pn − 2 pn −1 + g n − 2 pn −1 + g n −1

6
Additionneur
Circuit d’anticipation des retenues pour un additionneur à 4 bits
(avec r0= 0)
r1
g0
p1 r2
g1
p2
g2
p3 r3
g3

r4

7
Additionneur
Additionneur à 4 bits (avec r0= 0)

a0 a1 a2 a3
b2 s0
b0 b1 b3

s1

s2

s3
g0 p1 g1 p2 g2 p3 g3

Circuit d’anticipation des retenues r4


r1 r2 r3 r4

8
Additionneur
Arithmétique binaire : application du complément à deux

Réalisation de la soustraction [ an−1 an−2 L a2 a1 a0 ] − [bn−1bn−2 L b2 b1b0 ]

bn-1 b2 b1 b0

an-1 a2 a1 a0

rn-1 r3 r2 r1
r0 = 1
Σ Σ Σ Σ

rn sn-1 s2 s1 s0

9
Additionneur
⎧0 , addition
Unité arithmétique binaire avec commande de l’opération c=⎨
⎩1 , soustraction

bn-1 b2 b1 b0

an-1 a2 a1 a0

rn-1 r3 r2 r1
Σ Σ Σ Σ r0

rn sn-1 s2 s1 s0

d
détection de débordement 10
Comparateur

an-1 a2 a1 a0 bn-1 b2 b1 b0

sE

COMPARATEUR sG
sP

⎧100 si [ an −1 an − 2 L a2 a1 a0 ] = [bn −1 bn − 2 L b2 b1 b0 ]

sE sG sP = ⎨010 si [ an −1 an − 2 L a2 a1 a0 ] > [bn −1 bn − 2 L b2 b1 b0 ]
⎪ 001 si a a L a a a < b b L b b b
⎩ [ n−1 n−2 2 1 0 ] [ n−1 n−2 2 1 0 ]

11
Comparateur
Comparateur : réalisation avec des comparateurs à un bit

a0 b0 ai bi an-1 bn-1

E0 E1 Ei Ei+1 En-1 En
sE
G0 COMPARATEUR G1 Gi COMPARATEUR Gi+1 Gn-1 COMPARATEUR Gn
(UN BIT) (UN BIT) (UN BIT)
sG
P0 P1 Pi Pi+1 Pn-1 Pn
sP

Note : E0 = 1 et G0 = P0 = 0

12
Comparateur
ai bi Ei Gi Pi Ei +1 Gi +1 Pi +1

0 0 1 0 0 1 0 0
ai bi
0 0 0 1 0 0 1 0
0 0 0 0 1 0 0 1
Ei Ei+1
0 1 1 0 0 0 0 1
0 1 0 1 0 0 0 1
Gi COMPARATEUR Gi+1
(UN BIT) 0 1 0 0 1 0 0 1
Pi Pi+1 1 0 1 0 0 0 1 0
1 0 0 1 0 0 1 0
1 0 0 0 1 0 1 0
1 1 1 0 0 1 0 0
1 1 0 1 0 0 1 0
1 1 0 0 1 0 0 1

( Tous les autres cas sont facultatifs )

13
Comparateur

( )
Ei +1 = ai bi Ei + ai bi Ei = ai bi + ai bi Ei = ( ai ⊕ bi )Ei = ( ai bi ) Ei

Gi +1 = bi Gi + ai Gi + ai bi ou ai bi Gi + ai bi Gi + ai bi

( )
= ai bi + ai bi Gi + ai bi = ( ai bi ) Gi + ai bi

Pi +1 = bi Pi + ai Pi + ai bi ou ai bi Pi + ai bi Pi + ai bi

( )
= ai bi + ai bi Pi + ai bi = ( ai bi ) Pi + ai bi

14
Comparateur
ai bi

Ei+1

Ei

Gi+1
Gi

Pi

Pi+1

15

You might also like