Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

1 CHAPITRE I Circuits Arithmétiques

Télécharger au format pdf ou txt
Télécharger au format pdf ou txt
Vous êtes sur la page 1sur 4

CHAPITRE I

OPERATIONS ARITHMETIQUES ET CIRCUITS ASSOCIES

I ADDITION
Les règles d’addition sont les suivantes :
0+0=0
0+1=1
1+0=1
1 + 1 = 0 avec retenue 1
Le résultat de l’addition comporte deux parties : la somme Σ et la retenue C.
Exemple : soit à additionner les nombres suivants (+35) 10 et (+64)10
(0010 0011)2 + (0100 0000)2 = (0110 0011)2 soit (+99)10

II SOUSTRACTION
II.1 Soustraction directe
Les règles de la soustraction sont les suivantes :
0-0=0
0 - 1 = 1 avec emprunt 1
1-0=1
1+1=0
Le résultat de la soustraction comporte deux parties : la différence D et l’emprunt E.
Exemple : soit à effectuer l’opération suivante en binaire :
(+64)10 – (+35)10 = (0001 1101)2 soit (+29)10

II.2 Addition du complément vrai


La soustraction B – A peut s’écrire B + (-A), on peut donc ajouter le complément vrai de A au
nombre B.
Exemple : soit à effectuer l’opération suivante en binaire : (+64)10 – (+35)10
(+35)10 = (0010 0011)2 => (-35)10 = (1101 1101)2 => résultat 1(0001 1101)2 . Le 1 ne rentre pas
dans le registre à 8 bits, c’est la retenue finale.
Remarque :
Quelque soit la méthode utilisée, si le résultat d’une opération est négative (i. e. comporte un 1
au MSB), il suffit de complémenter ce résultat à 2 pour retrouver son module.

III CIRCUITS ASSOCIES


III.1 Circuit d’addition de deux nombres à 1 bit
Ce circuit est obtenu directement à partir des règles de l’addition
Soient deux nombres binaires à 1 bit B et A :
Σ  B  A et C  BA
C’est le demi-additionneur.

III.2 Circuit d’addition de deux nombres à n bits


Soient deux nombres binaires :
B = bn-1 bn-2 … bi+1 bi bi-1 … b1 b0
A = an-1 an-2 … ai+1 ai ai-1 … a1 a0
L’addition de ces deux nombres revient à faire successivement l’addition des bits de rang 0 i.e.
b0 et a0 pour avoir une somme Σ0 et une retenue c0 puis additionner b1 et a1 pour obtenir Σ1 et
c1, etc…..
On retrouve alors un système itératif dont le schéma est le suivant :

bn-1 an-1 bn-2 an-2 bi ai bi-1 ai-1 b1 a1 b0 a0

Sn-1 Sn-2 Si Si-1 S1 S0


c-1 = 0
… …

cn-1 cn-2 ci ci-1 c1 c0


Σn-1 Σn-2 Σi Σi-1 Σ1 Σ0

Le sous-système Si représentatif de tous les sous-systèmes bi ai ci-1 Σi ci


identiques a comme cahier de charges suivant : 000 0 0
 troix entrées bi, ai et ci-1 (retenue provenant des opérations 001 1 0
d’addition des rangs précédents) qu’il faudrait additionner ; 010 1 0
 deux sorties Σi qui est la somme de l’addition et la retenue c i. 011 0 1
100 1 0
d’où la TdV ci-contre et les équations : 101 0 1
Σ b  a c 110 0 1
i i i i 1
111 1 1
c b a  c (b  a )
i i i i 1 i i
Le sous-système Si est appelé un additionneur complet.

1er cas :
Pour réaliser le système itératif complet, il suffit de mettre en série n sous-systèmes identiques
comme indiqué sur le schéma précédent.
On appelle ce montage un circuit d’addition à retenue propagée (ripple-carry adder) ou à
retenue série. Le problème est que les temps de propagation s’ajoutent.

2ème cas :
Une autre solution est le circuit d’addition à retenue anticipée (carry look-ahead adder) :
Son principe réside dans le calcul direct des retenues à partir des données.
On a : c  b a  c (b  a )
i i i i 1 i i
Calcul de la retenue anticipée :
c  G  P .c avec G  b .a et P  b  a
i i i i 1 i i i i i i
Ensuite on développe ci par récurrence. Calculons par exemple les 4 premières retenues :
G0 = b0.a0 , P0 = b0  a0 => c0 = G0 + P0.c-1 or c-1 = 0 d’où c0 = G0
c1 = G1 + P1.c0 => c1 = G1 + P1.G0
c2 = G2 + P2.c1 => c2 = G2 + P2.(G1 + P1.G0) = G2 + P2.G1 + P2.P1.G0
c3 = G3 + P3.c2 => c3 = G3 + P3.G2 + P3.P2.G1 + P3.P2.P1.G0
Une fois calculées les différentes retenues ci , on obtient les sommes correspondantes

Σ b  a  c P  c
i i i i 1 i i 1
D’où le schéma du circuit d’addition :
Avantage : les calculs se font en parallèle, d’où un gain en rapidité
Inconvénient : plus de portes logiques, d’où un coût en complexité matérielle.

III.3 Circuit de soustraction de deux nombres à 1 bit


Ce circuit est obtenu directement à partir des règles de la soustraction.
Soient deux nombres binaires à 1 bit B et A :

D  B  A et E  BA
C’est le demi-soustracteur.

III.4 Circuit de soustraction de deux nombres à n bits


Soient deux nombres binaires :
B = bn-1 bn-2 … bi+1 bi bi-1 … b1 b0
A = an-1 an-2 … ai+1 ai ai-1 … a1 a0
La soustraction de ces deux nombres revient à34. faire successivement
c la soustraction des bits de
rang 0 i.e. a0 de b0 pour avoir une différence d0 et un emprunt éventuel e0 puis soustraire a1 de
3
b1 pour obtenir d1 et e1, etc.
On retrouve alors un système itératif dont le schéma est le suivant :

bn-1 an-1 bn-2 an-2 bi ai bi-1 ai-1 b1 a1 b0 a0

Sn-1 Sn-2 Si Si-1 S1 S0 e-1 = 0


… …

en-1 en-2 ei ei-1 e1 e0


dn-1 dn-2 di di-1 d1 d0
Le sous-système Si représentatif de tous les sous-systèmes identiques a comme cahier de
charges suivant :
 troix entrées bi, ai et ei-1 (emprunt provenant des opérations de soustraction des rangs
précédents) qu’il faudrait retrancher ;
 deux sorties di qui est la différence et l’emprunt ei.
d’où la TdV suivante :
bi ai ei-1 di ei
000 0 0
001 1 1
010 1 1
011 0 1
100 1 0
101 0 0
110 0 0
111 1 1
et les équations :
d b a e
i i i i 1
e b a  e (b  a )
i i i i 1 i i
Le sous-système Si est appelé un soustracteur complet.

Pour réaliser un système de soustraction à n bits, il suffit de mettre en série n sous-systèmes


identiques comme indiqué sur le schéma précédent.

REMARQUE : les circuits informatiques n’utilisent pas dans la plupart des cas des circuits de
soustraction mais plutôt des circuits d’addition et les compléments à 2 plus faciles à construire.

Circuit intégré : SN74LS283 4-Bit Binary Full Adder with Fast Carry

LES CIRCUITS DE COMPARAISON

I DEFINITION
Un comparateur est un circuit qui permet de détecter si A est supérieur à B ou A est égal à B
ou A est inférieur à B.
Si on pose E = 1 si B = A, S = 1 si B > A, I = 1 si B < A et D = 1 si B ≠ A.

B A E S I D
0 0 1 0 0 0
0 1 0 0 1 1
1 0 0 1 0 1
1 1 1 0 0 0

Circuit Intégré : SN74LS85 : C’est un circuit destiné à la comparaison de deux nombres à


4 bits avec 3 sorties donnant soit l’égalité soit la supériorité soit l’infériorité de l’un par rapport à
l’autre. Le constructeur a prévu aussi la mise en cascade de plusieurs circuits pour avoir un
système itératif.

Vous aimerez peut-être aussi