Vous êtes sur la page 1sur 36

lectronique numrique FI1

Cours 3me partie :


Arithmtique binaire

dominique.thers@subatech.in2p3.fr

Prsentation de larithmtique binaire


Portes NAND ou NOR : portes universelles
Ensemble de portes NAND ou NOR : ensemble complet permettant de
raliser toutes les oprations de larithmtique binaire.
Objectif: Dgrossir les possibilits avec des exemples gnraux afin
dacqurir des bases de rflexion .
Exemples et applications:
- Compteurs/Dcompteurs
- Comparateurs
- Codeurs/Dcodeurs
- Multiplexeurs/Demultiplexeurs
- Additionneur/Soustracteur
- Multiplicateur
- Convertisseur analogique-numrique
dominique.thers@subatech.in2p3.fr

1-Exemple de chronogramme gnr par un


ensemble de bascules
1

Q1

>h

/Q1

D
h
Q
D
Q1
h

t
Ensemble complet !!! Tout problme a au moins une solution
dominique.thers@subatech.in2p3.fr

2-Compteurs/Dcompteurs
2.1 Compteurs

A0
1

Entre

Q0

A1
1

>h

Q1

>h

A= A1A0 = nombres de fronts descendants de lentre


Pour chaque front descendant de lentre, A est incrment !
Le front descendant dune valeur de Qi gnre une
inversion sur la sortie de la bascule suivante

A1
A0
Entre

t
Notons que pour un compteur constitu de n bascules JK, au bout de 2n fronts descendants, le
compteur commence un nouveau cycle. On a donc un compteur modulo 2n.
dominique.thers@subatech.in2p3.fr

2-Compteurs/Dcompteurs
2.2 Dcompteurs
1
Entre

A0
J

Q0

A1
1

>h

Q1

>h

A= A1A0 = dcompte des fronts montants de lentre


Pour chaque front montant de lentre, A est dcrment !
Le front montant dune valeur de Qi gnre une
inversion sur la sortie de la bascule suivante

A1
A0
Entre

t
Notons que pour un dcompteur constitu de n bascules JK, au bout de 2n fronts montants, le
dcompteur commence un nouveau cycle. On a donc un dcompteur modulo 2n.
dominique.thers@subatech.in2p3.fr

2-Compteurs/Dcompteurs
2.3 Composant compteur modulo 2n
/R
1

Entre
1

A0

An-1
1

/R Q0

>h

/R Qn-1

>h

An-1

INC

Compteur

/R

J=1, K=0 pour la gestion du dbordement


/R pour initialiser le comptage
dominique.thers@subatech.in2p3.fr

/R

>h

A0 A1

K
Dbordement

Dbordement

2-Compteurs/Dcompteurs
2.4 Frquence maximale de fonctionnement dun compteur
Temps de raction proportionnel au nombre de bascules mis en cascade
Apparition derreurs sur sortie frquence trop leve
Exemple avec compteur modulo 16 (5 bascules JK):
temps de rponse dune bascule: 40 ns
temps de rponse dune porte NOT: 10 ns

Temps de rponse du compteur: 240 ns


fmax ~ 4 MHz

dominique.thers@subatech.in2p3.fr

3-Les Comparateurs
3.1 Oprateur galit sur 1 bit

a
b

=1

S=1 a=b

dominique.thers@subatech.in2p3.fr

3-Les Comparateurs
3.2 Oprateur galit sur n bits

a=an-1a1a0

an-1
bn-1

=1

b=bn-1b1b0
a1
b1

=1

a0
b0

=1

S=1 a=b
dominique.thers@subatech.in2p3.fr

&

3-Les Comparateurs
3.3 Oprateur suprieur sur 1 bits

a
b

&

S=1 b>a

dominique.thers@subatech.in2p3.fr

3-Les Comparateurs
3.4 Oprateur suprieur sur n bits
Sur 2 bits:

a=an-1a1a0

a1
b1

&

b=bn-1b1b0
=1
&
a0
b0

S=1 b>a
dominique.thers@subatech.in2p3.fr

&

4-Codeurs/Dcodeurs
4.1 Dcodeurs
Le dcodeur est un circuit logique qui tablit la correspondance entre un code
dentre binaire de N bits et M (2N max) lignes de sortie; pour chacune des
combinaisons possibles des entres, une seule ligne de sortie est valide.

Dcodeur

N entres
2N codes dentre

M sorties
Une seule est 1
pour chaque code
dentre

dominique.thers@subatech.in2p3.fr

A1

A0

&

S0

&

S1

&

S2

&

S3

4-Codeurs/Dcodeurs
4.1 Codeurs
Si le dcodage est un processus partir duquel une reprsentation de N bits produit
un signal sur une et seulement une des lignes de sortie, alors le processus inverse
est le codage et il utilise un circuit logique appel codeur.
E0
E1

Codeur

S0

S1

E2
M entres
Une seule est 1
pour chaque code
dentre

Reprsentation
des sorties de
N bits.

dominique.thers@subatech.in2p3.fr

E3

5-Multiplexeurs/Dmultiplexeurs
5.1 Multiplexeurs

Aiguillage vers une sortie unique de lune des


entres
Choix de lentre partir dune adresse de
slection
&

E0

A1

A0

E0

E1

E2

E3

&

E1

&

E2

&

E3

A1

A0
dominique.thers@subatech.in2p3.fr

5-Multiplexeurs/Dmultiplexeurs
5.2 Dmultiplexeurs

Aiguillage vers lune des sorties de lunique


entre
Choix de la sortie partir dune adresse de
slection
&
&

E A1

S0
S1

&

S2

&

S3

A0

dominique.thers@subatech.in2p3.fr

A1

A0

S0

S1

S2

S3

La valeur de la sortie active est E


Les sorties inactives sont 0

5-Multiplexeurs/Dmultiplexeurs
5.3 Dmultiplexeurs avec LATCH
S0

D
LATCH

&

D
LATCH

&
D

S2

LATCH

&

D
&

S1

LATCH

S3

Donne
Validation A1

A0

dominique.thers@subatech.in2p3.fr

Aiguillage vers lune des sorties de lunique entre


Choix de la sortie partir dune adresse de slection
Sorties figes entre chaque signal de validation

6-Additionneur
6.1 Principe
An

An-1

An-2

A1

A0

Bn

Bn-1

Bn-2

B1

B0

Rn

Cn

Cn-1

Cn-2

C1

C0

Rn= Retenue de laddition An + Bn + Rn-1


Toutes les retenues doivent tre values en partant du bit de poids faible
jusquau bit de poids fort
Ai
Opration effectue laide de
n oprateurs lmentaires

Bi

ADD
Ci

Ri-1
dominique.thers@subatech.in2p3.fr

Ri

6-Additionneur
6.2 Exemple: combinaison pour une addition sur 3 bits

A2

R2

B2
A1

R1

B1
A0
B0

ADD

ADD

R0
ADD

0
C0

dominique.thers@subatech.in2p3.fr

C1

C2

6-Additionneur
6.3 Cblage de loprateur lmentaire-1

Ai
Bi

Ri
ADD
Ci

Ri-1

dominique.thers@subatech.in2p3.fr

Ai

Bi

Ri-1

Ci

Ri

0
0

0
1

0
0

0
1

0
0

1
0

0
1

1
1

1
1

0
1

1
1

6-Additionneur
6.3 Cblage de loprateur lmentaire-2
Ci

Ri

Ri-1
AiBi

00

01
11
10

1
0
1

0
1
0

Ai

Bi

Ri-1

Ci

Ri

0
0

0
1

0
0

0
1

0
0

1
0

0
1

1
1

1
1

0
1

1
1

Ci =Ai/Bi/Ri-1 + AiBiRi-1 + /AiBi/Ri-1+ /Ai/BiRi-1

dominique.thers@subatech.in2p3.fr

Ri-1
AiBi

00

01

11

10

Ri =AiBi + AiRi-1 + BiRi-1

6-Additionneur
6.3 Montage de loprateur lmentaire-3
Ci =Ai/Bi/Ri-1 + AiBiRi-1 + /AiBi/Ri-1+ /Ai/BiRi-1
Ri =AiBi + AiRi-1 + BiRi-1

Ai
Bi

Ri
ADD

&

Ci
Ri-1

&

Ri

Ci

&
Ai
Bi

&
Ri-1
&

&
&
dominique.thers@subatech.in2p3.fr

6-Additionneur
6.4 Temps de raction dun additionneur srie

Calcul du temps ncessaire la ralisation dune addition sur 8 bits :


- temps de raction de chaque porte lmentaire 20 ns
- temps de raction de ladditionneur sur 1 bit : 2 x 20 ns
- temps de raction de ladditionneur sur 8 bits : 8 x 40 ns
La frquence dhorloge pour un additionneur srie 8 bits est donc limite ~ 3 MHz

Il existe des solutions pour aller plus vite !!!!

Additionneur parallle (voir TD et TP )

dominique.thers@subatech.in2p3.fr

7-Soustracteur
7.1 criture de nombres signs-1
Pour mmoriser un nombre binaire de n bits, on utilise habituellement un registre
6 bascules (cf registre verrouillage )
Pour les nombres ngatifs, il faut adopter une nouvelle convention de manire
reprsenter le signe du nombre ( + ou - ). Gnralement, on ajoute un autre bit au
nombre, appel le bit de signe. La convention la plus courante consiste attribuer au
nombre positif le bit de signe 0 et au nombre ngatif le bit de signe 1 .
Notation en grandeur exacte: bit de poids fort pour le signe, les autres pour la norme du
nombre
Notation en complment 1 : bit de poids fort pour le signe, les autres sont tous
complments ( 0 devient 1 et rciproquement) si le signe est ngatif.
Notation en complment 2 : bit de poids fort pour le signe, mme transformation
pour les autres bits que pour le complment a 1 si le signe est ngatif mais on ajoute
1 en plus au bit de poids faible.
dominique.thers@subatech.in2p3.fr

7-Soustracteur
7.1 criture de nombres signs-2
Exemples :
Notation en
grandeur exacte

Notation en
complment 1

Notation en
complment 2

+ 57

0 111001

0 111001

0 111001

- 57

1 111001

1 000110

1 000111

Bits de signe

dominique.thers@subatech.in2p3.fr

7-Soustracteur
7.2 Addition en notation complment 2 -1
- Cas 1, addition de deux nombres positifs:
+9
+4

0 1001
0 0100

0 1101
- Cas 2, addition dun nombre positif et dun nombre ngatif plus petit:
+9
-4

0 1001
1 1100

1 0 0101
- Cas 3, addition dun nombre positif et dun nombre ngatif plus grand:
-9
+4

1 0111
0 0100
1 1011

- Cas 4, addition de deux nombres ngatifs:


-9
-4
dominique.thers@subatech.in2p3.fr

1 0111
1 1100
1 1 0011

7-Soustracteur
7.2 Addition en notation complment 2 -2
- Cas 5, addition de 2 nombres opposs:
+9
-9

0 1001
1 0111

1 0 0000
Dans tous les cas, le signe et la norme des sommes effectues sont exactes.
(Attention au cas o le bit de signe indique un signe ngatif, complmentation
2 inverse pour retrouver la valeur code )
Pour les cas 2 , 4 et 5 , il y a dpassement du registre. Les nombres que
lon a additionn comportaient 1 bit de signe et 4 bits de grandeur, les rponses
aussi. Tout report fait sur un bit de sixime rang est rejete.
De mme, laddition de +9 et +8 conduit un dpassement sur le bit de signe.
Le dpassement du registre ne conduit aucune erreur En revanche, le
dpassement sur le bit de signe doit tre systmatiquement dtect afin dviter
les erreurs de calcul (Comparaison du bit de signe du rsultat par rapport aux
bits de signe des nombres additionns)
dominique.thers@subatech.in2p3.fr

8-Multiplicateur
8.1 La multiplication binaire. Une extrapolation de ladditionneur.
On multiplie les nombres binaires de la mme faon que les nombres dcimaux.
En ralit, le processus est plus simples puisque les chiffres du multiplicateur
sont systmatiquement 0 ou 1 .
Exemple:

1001
x 1011

9
11

1001
+
1001
+ 0000
+ 1001
1100011

99

La plupart des machines numriques peuvent additionner seulement deux


nombres binaires la fois. Cest la raison pour laquelle les produits partiels
dune multiplication ne peuvent tre additionns ensemble en une seule fois. Ils
sont plutt additionns 2 par 2; cest dire que le premier est additionn au
second, que leur somme est additionne au troisime, etc.
dominique.thers@subatech.in2p3.fr

8-Multiplicateur
8.2 Multiplication binaire par une puissance de 2
Proprit: Multiplication par 2n quivalent un dcalage vers la gauche n fois.
Exemple: 5x22
2 dcalages vers la gauche
000101
5 = 4+1

010100
x 22

20 = 16 + 4

Utilisation dun registre dcalage comme multiplicateur

dominique.thers@subatech.in2p3.fr

8-Multiplicateur
8.3 Multiplication de deux nombres grce au registre dcalage
Procdure : 1/ Dcomposition du premier nombre sous la forme dune somme de
puissance de 2.
2/ Somme de produits entre chaque terme de cette dcomposition et
le second membre.
Exemple: 7x5
1/ 7 = 22+21+20
2/ 5 = 000101

000101
000101
000101

22

21

x 20

010100
001010
000101
Somme : 100011
35 = 32 + 2 + 1

Utilisation de registres dcalage et dadditionneurs pour


raliser un multiplicateur
dominique.thers@subatech.in2p3.fr

8-Multiplicateur
8.4 Multiplication et complment 2
3 cas :
1/ les 2 nombres sont positifs: multiplication telle quelle

2/ les 2 nombres sont ngatifs:


- complmentation inverse 2 des 2 nombres
- multiplication telle quelle Bit de signe 0

3/ les 2 nombres sont de signes opposs:


- complmentation inverse du nombre ngatif
- multiplication telle quelle
- bit de signe 1 et complmentation 2 du produit.

dominique.thers@subatech.in2p3.fr

9-Convertisseur Analogique-Numrique
9.1 A quoi a sert ?
Les CAN/CNA servent faire le lien entre le monde extrieur
prdominance analogique et un systme purement numrique.

Entres
analogiques CAN

Systme numrique
(par ex. ordinateur)

CNA

Sorties
analogiques

9.2 Convertisseur Numrique-Analogique: comment a marche ?


1/ On fourni au convertisseur une valeur numrique sur un intervalle
dtermin.
2/ Un signal de validation lance la conversion.
3/ Le composant fourni alors en sortie, aprs un temps de raction, une
valeur analogique; par exemple une tension comprise entre 0 et 7 V.

dominique.thers@subatech.in2p3.fr

9-Convertisseur Analogique-Numrique
9.3 Convertisseur Numrique-Analogique: mode de reprsentation.
Dfinition: Un convertisseur numrique-analogique (CNA) transpose une valeur dj
exprime selon une reprsentation numrique (comme le binaire naturel) en un tension
ou un courant proportionnel cette valeur numrique.
Exemple: convertisseur CBA (3 bits)
C

Vout

0
0

0
0

0
1

1
1

1
1

dominique.thers@subatech.in2p3.fr

C
poids fort

B
A
poids faible

Convertisseur
CBA (CNA)

Vout

9-Convertisseur Analogique-Numrique
9.4 Convertisseur Numrique-Analogique: montage.
Ralisation:
RF=1 k

C
poids fort

B
A
poids faible

1 k
2 k
4 k

AO idal

Vout

Ampli-oprationnel en montage sommation:


Vout = -[VC x (RF/RC) + VB x (RF/RB) + VA x (RF/RB)]

dominique.thers@subatech.in2p3.fr

9-Convertisseur Analogique-Numrique
9.5 Convertisseur Analogique-Numrique: comment a marche ?

1/ On donne lordre au composant de raliser lacquisition du signal extrieur


et sa conversion.
2/ Lorsque la conversion est ralise, le composant indique quil est prt par
un signal binaire.
3/ Le signal prcdent tant dtect, on procde la lecture de la valeur
numrique (en srie ou en parallle suivant le composant utilis).

La conversion AN est gnralement plus complexe et plus longue que la conversion NA.
Diffrentes mthodes de conversion AN ont t mises au point et sont utilises. Pour
beaucoup dentre elle, on retrouve un convertisseur NA.

dominique.thers@subatech.in2p3.fr

9-Convertisseur Analogique-Numrique

9.6 Convertisseur Analogique-Numrique: exemple de ralisation.


VA

Unit de
commande
-

Commande dbut
Horloge

Comparateur

VA

Convertisseur
NA

Registre

Tant que VA VA : une cadence dtermine par le signal dhorloge, lunit de commande
modifie sans arrt le nombre binaire mmoris par le registre.
Lorsque VA= VA : le registre a mmoris la valeur numrique correspondant la tension VA
dominique.thers@subatech.in2p3.fr

Exercices 5ime srie : cration dun multiplicateur


On souhaite raliser un multiplicateur parallle de deux nombres a et b de 4 bits chacun.
0n notera a=a3a2a1a0 , b =b3b2b1b0 et p leur produit.
On dispose :
- de portes lmentaires
- dadditionneur 4 bits

j3

i3

j2

i2

C-OUT

j1

i1

j0

i0
C-IN

ADD

k3

k2

k1

k0

A/ Proposer un montage ralisant le calcul souhait


B/ Dterminer le temps de traverse du montage en fonction des temps de traverse des
constituants.
dominique.thers@subatech.in2p3.fr