introduction à l'électronique numérique
TRANSCRIPT
Présentation de l’arithmétique binaire
Portes « NAND » ou « NOR » : portes universelles
Ensemble de portes « NAND » ou « NOR »: ensemble complet permettant de réaliser toutes les opérations de l’arithmétique binaire.
Objectif: « Dégrossir » les possibilités avec des exemples généraux afin d’acquérir des bases de réflexion .
Exemples et applications:- Compteurs/Décompteurs- Comparateurs- Codeurs/Décodeurs- Multiplexeurs/Demultiplexeurs- Additionneur/Soustracteur- Multiplicateur- Convertisseur analogique-numérique
1-Exemple de chronogramme généré par un ensemble de bascules
D
D Q
h
J Q1
h>
K
1
1 /Q1
h
t
Q1
D
Q
Ensemble complet !!! Tout problème a au moins une solution …
2-Compteurs/Décompteurs2.1 Compteurs
J Q0
h>
K
1
1
J Q1
h>
K
1
1
Entrée
A0 A1
Entrée
t
A0
A1A= A1 A0 = nombres de fronts descendants de l’entrée
Pour chaque front descendant de l’entrée, A est incrémenté !Le front descendant d’une valeur de Qi génère une inversion sur la sortie de la bascule suivante …
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.
2-Compteurs/Décompteurs2.2 Décompteurs
J Q0
h>
K
1
1
J Q1
h>
K
1
1
Entrée
A0 A1
Entrée
t
A0
A1A= A1 A0 = décompte des fronts montants de l’entrée
Pour chaque front montant de l’entrée, A est décrémenté !Le front montant d’une valeur de Qi génère une inversion sur la sortie de la bascule suivante …
Notons que pour un décompteur constitué de n bascules JK, au bout de 2n fronts montants, le décompteur commence un nouveau cycle. On a donc un décompteur modulo 2n.
2-Compteurs/Décompteurs2.3 Composant « compteur modulo 2n»
EntréeJ Q0
h>
K
1
1
J Qn-1
h>
K
1
1
A0 An-1
J Q
h>
K
1
0
DébordementAn-1
Compteur
A0 A1
DébordementINC
/R
•J=1, K=0 pour la gestion du débordement•/R pour initialiser le comptage
/R /R /R
/R
2-Compteurs/Décompteurs2.4 Fréquence maximale de fonctionnement d’un compteur
Temps de réaction proportionnel au nombre de bascules mis en cascade Apparition d’erreurs sur sortie à fréquence trop élevée …
Exemple avec compteur modulo 16 (5 bascules JK):temps de réponse d’une bascule: 40 nstemps de réponse d’une porte NOT: 10 ns
Temps de réponse du compteur: 240 ns fmax ~ 4 MHz
3-Les Comparateurs3.1 Opérateur égalité sur 1 bit
0 0
0
0
1
11
1
1
0
0
1
a
ab
S
Sb
S=1 a=b
=1
3-Les Comparateurs3.2 Opérateur égalité sur n bits
an-1
bn-1
S=1 a=b
a=an-1 …a1 a0
b=bn-1 …b1 b0
a1
b1
a0
b0
&S
=1
=1
=1
3-Les Comparateurs3.3 Opérateur supérieur sur 1 bits
0 0
0
0
1
11
1
0
0
1
0
a
ab
S
Sb
S=1 b>a
&
3-Les Comparateurs3.4 Opérateur supérieur sur n bits
a1
b1
S=1 b>a
a=an-1 …a1 a0
b=bn-1 …b1 b0
a0
b0
S
&
&
=1
&
Sur 2 bits:
4-Codeurs/Décodeurs4.1 Décodeurs
Le décodeur est un circuit logique qui établit la correspondance entre un code d’entrée binaire de N bits et M (2N max) lignes de sortie; pour chacune des combinaisons possibles des entrées, une seule ligne de sortie est validée.
&
&
&
&
A0A1
S3
S2
S1
S0
Décodeur
N entrées2N codes d’entrée
M sortiesUne seule est à 1pour chaque coded’entrée
4-Codeurs/Décodeurs4.1 Codeurs
Si le décodage est un processus à partir duquel une représentation de N bits produitun signal sur une et seulement une des lignes de sortie, alors le processus inverseest le codage et il utilise un circuit logique appelé codeur.
Codeur
Représentation des sorties deN bits.
M entréesUne seule est à 1pour chaque coded’entrée
E0
E1
E2
E3
S0
S1
5-Multiplexeurs/Démultiplexeurs5.1 Multiplexeurs
0 0
0
0
1
11
1
E0
A1 SA0
E1
E2
E3
Aiguillage vers une sortie unique de l’une desentréesChoix de l’entrée à partir d’une adresse de sélection
S
&
&
&
&
E0
E1
E2
E3
A1 A0
5-Multiplexeurs/Démultiplexeurs5.2 Démultiplexeurs
0 0
0
0
1
11
1
S0
A1 SA0
S1
S2
S3
Aiguillage vers l’une des sorties de l’unique entréeChoix de la sortie à partir d’une adresse de sélection
&
&
&
&
A0A1
S3
S2
S1
S0
ELa valeur de la sortie active est « E »Les sorties inactives sont à « 0 »
5-Multiplexeurs/Démultiplexeurs5.3 Démultiplexeurs avec « LATCH »
Aiguillage vers l’une des sorties de l’unique entréeChoix de la sortie à partir d’une adresse de sélection Sorties figées entre chaque signal de validation
&
&
&
&
A0A1
S3
S2
S1
S0
Validation
LATCHD
h
LATCHD
h
LATCHD
h
LATCHD
h
Donnée
6-Additionneur6.1 Principe
Toutes les retenues doivent être évaluées en partant du « bit » de poids faible jusqu’au « bit » de poids fort
An An-1 An-2 A1 A0…
Bn Bn-1 Bn-2 B1 B0…+
Cn Cn-1 Cn-2 C1 C0…Rn
Rn = Retenue de l’addition An + Bn + Rn-1
Ai
Bi
Ri-1
Ri
Ci
ADDOpération effectuée à l’aide de n opérateurs élémentaires
6-Additionneur6.2 Exemple: combinaison pour une addition sur 3 bits
A0
B0
0
R0
C0
ADD
A1
B1
R1
C1
ADD
A2
B2
R2
C2
ADD
6-Additionneur6.3 Câblage de l’opérateur élémentaire-1
Ai
Bi
Ri-1
Ri
Ci
ADD
Ai Bi Ri-1 RiCi
0 000011
11
0
0
0
0
0
0
0
1
111
1
111
0 01 0
010 1
1 00
0
1
111
6-Additionneur6.3 Câblage de l’opérateur élémentaire-2
Ai Bi Ri-1 RiCi
0 000011
11
0
0
0
0
0
0
0
1
111
1
111
0 01 0
010 1
1 00
0
1
111
00
01
0 1
11
10
0
1
0
1 0
1
1
0
Ai Bi
Ri-1
00
01
0 1
11
10
0
0
1
0 1
1
0
1
Ai Bi
Ri-1
RiCi
Ri =Ai Bi + Ai Ri-1 + Bi Ri-1Ci =Ai /Bi /Ri-1 + Ai Bi Ri-1 + /Ai Bi /Ri-1 + /Ai /Bi Ri-1
6-Additionneur6.3 Montage de l’opérateur élémentaire-3
Ai
Bi
Ri-1
Ri
Ci
ADD &
&
&
&
&
&
&
Ci =Ai /Bi /Ri-1 + Ai Bi Ri-1 + /Ai Bi /Ri-1 + /Ai /Bi Ri-1
Ri =Ai Bi + Ai Ri-1 + Bi Ri-1
Ri-1
Bi
Ai
Ri
Ci
6-Additionneur6.4 Temps de réaction d’un additionneur série
Calcul du temps nécessaire à la réalisation d’une addition sur 8 bits :- temps de réaction de chaque porte élémentaire 20 ns- temps de réaction de l’additionneur sur 1 bit : 2 x 20 ns- temps de réaction de l’additionneur sur 8 bits : 8 x 40 ns
La fréquence d’horloge pour un additionneur série 8 bits est donc limitée à ~ 3 MHz
Il existe des solutions pour aller plus vite !!!!
Additionneur parallèle (voir TD et TP …)
7-Soustracteur7.1 Écriture de nombres signés-1
Pour mémoriser un nombre binaire de « n » bits, on utilise habituellement un registre à 6 bascules (cf registre à verrouillage …)Pour les nombres négatifs, il faut adopter une nouvelle convention de manière à représenter le signe du nombre (« + » ou « - »). Généralement, 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 négatif 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 complément à « 1 »: bit de poids fort pour le signe, les autres sont tous complémentés (« 0 » devient « 1 » et réciproquement) si le signe est négatif.
Notation en complément à « 2 »: bit de poids fort pour le signe, même transformation pour les autres bits que pour le complément a « 1 » si le signe est négatif mais on ajoute « 1 » en plus au bit de poids faible.
7-Soustracteur7.1 Écriture de nombres signés-2
Exemples :
Notation en grandeur exacte
Notation en complément à 1
Notation en complément à 2
+ 57
- 57
0 111001
1 111001
0 111001 0 111001
1 000110 1 000111
Bits de signe
7-Soustracteur7.2 Addition en notation complément à « 2 »-1
- Cas 1, addition de deux nombres positifs:+ 9+ 4
0 10010 01000 1101
- Cas 2, addition d’un nombre positif et d’un nombre négatif plus petit:
+ 9- 4
0 10011 1100
1 0 0101- Cas 3, addition d’un nombre positif et d’un nombre négatif plus grand:
- 9+ 4
1 01110 01001 1011
- Cas 4, addition de deux nombres négatifs:
- 9- 4
1 01111 1100
1 1 0011
7-Soustracteur7.2 Addition en notation complément à « 2 »-2
- Cas 5, addition de 2 nombres opposés:+ 9- 9
0 10011 0111
1 0 0000Dans tous les cas, le signe et la norme des sommes effectuées sont exactes.(Attention au cas où le bit de signe indique un signe négatif, complémentation à « 2 » inversée pour retrouver la valeur codée …)
Pour les cas « 2 », « 4 » et « 5 », il y a dépassement du registre. Les nombres que l’on a additionné comportaient 1 bit de signe et 4 bits de grandeur, les réponses aussi. Tout report fait sur un bit de sixième rang est rejetée.
De même, l’addition de +9 et +8 conduit à un dépassement sur le bit de signe.
Le dépassement du registre ne conduit à aucune erreur … En revanche, le dépassement sur le bit de signe doit être systématiquement détecté afin d’éviter les erreurs de calcul … (Comparaison du bit de signe du résultat par rapport aux bits de signe des nombres additionnés)
8-Multiplicateur8.1 La multiplication binaire. Une extrapolation de l’additionneur.
On multiplie les nombres binaires de la même façon que les nombres décimaux. En réalité, le processus est plus simples puisque les chiffres du multiplicateur sont systématiquement « 0 » ou « 1 ».
Exemple: 10011011x1001
10010000
1001
+++
1100011
911
99
La plupart des machines numériques peuvent additionner seulement deux nombres binaires à la fois. C’est la raison pour laquelle les produits partiels d’une multiplication ne peuvent être additionnés ensemble en une seule fois. Ils sont plutôt additionnés 2 par 2; c’est à dire que le premier est additionné au second, que leur somme est additionnée au troisième, etc.…
8-Multiplicateur8.2 Multiplication binaire par une puissance de 2
Propriété: Multiplication par 2n équivalent à un décalage vers la gauche « n » fois.
Exemple: 5x22
000101
Utilisation d’un registre à décalage comme multiplicateur …
2 décalages vers la gauche
0101005 = 4+1 x 22 20 = 16 + 4
8-Multiplicateur8.3 Multiplication de deux nombres grâce au registre à décalage …
Procédure : 1/ Décomposition du premier nombre sous la forme d’une somme de puissance de 2.
2/ Somme de produits entre chaque terme de cette décomposition et le second membre.
Exemple: 7x5
000101
Utilisation de registres à décalage et d’additionneurs pour réaliser un multiplicateur …
Somme : 100011
010100x 22
1/ 7 = 22+21+20
2/ 5 = 000101
000101 001010x 21
000101 000101x 20
35 = 32 + 2 + 1
8-Multiplicateur8.4 Multiplication et complément à 2 …
3 cas :1/ les 2 nombres sont positifs: multiplication telle quelle …
2/ les 2 nombres sont négatifs:- complémentation inverse à « 2 » des 2 nombres- multiplication telle quelle … Bit de signe à « 0 »
3/ les 2 nombres sont de signes opposés:- complémentation inverse du nombre négatif- multiplication telle quelle …- bit de signe à « 1 » et complémentation à « 2 » du produit.
9-Convertisseur Analogique-Numérique
9.2 Convertisseur Numérique-Analogique: comment ça marche ?
1/ On fourni au convertisseur une valeur numérique sur un intervalle déterminé.
2/ Un signal de validation lance la conversion.3/ Le composant fourni alors en sortie, après un temps de réaction, une
valeur analogique; par exemple une tension comprise entre 0 et 7 V.
9.1 A quoi ça sert ?
Les CAN/CNA servent à faire le lien entre le monde extérieur à prédominance analogique et un système purement numérique.
CAN CNASystème numérique(par ex. ordinateur)
Entréesanalogiques
Sortiesanalogiques
9-Convertisseur Analogique-Numérique9.3 Convertisseur Numérique-Analogique: mode de représentation.
Définition: Un convertisseur numérique-analogique (CNA) transpose une valeur déjà exprimée selon une représentation numérique (comme le binaire naturel) en un tension ou un courant proportionnel à cette valeur numérique.
B
00
0
0
11
11
C
000011
11
A
0
0
0
0
1
1
1
1
Vout
012345
67
ConvertisseurCBA (CNA)
C
B
A
Vout
Exemple: convertisseur CBA (3 bits)
poids fort
poids faible
9-Convertisseur Analogique-Numérique9.4 Convertisseur Numérique-Analogique: montage.
Réalisation:
Ampli-opérationnel en montage sommation:Vout = -[VC x (RF /RC ) + VB x (RF /RB ) + VA x (RF /RB )]
C
B
A
poids fort
poids faible
1 k
2 k
4 kVout
RF =1 k
-
+
AO idéal
9-Convertisseur Analogique-Numérique
9.5 Convertisseur Analogique-Numérique: comment ça marche ?
1/ On donne l’ordre au composant de réaliser l’acquisition du signal extérieur et sa conversion.
2/ Lorsque la conversion est réalisée, le composant indique qu’il est prêt par un signal binaire.
3/ Le signal précédent étant détecté, on procède à la lecture de la valeur numérique (en série ou en parallèle suivant le composant utilisé).
La conversion AN est généralement plus complexe et plus longue que la conversion NA. Différentes méthodes de conversion AN ont été mises au point et sont utilisées. Pour beaucoup d’entre elle, on retrouve un convertisseur NA.
9-Convertisseur Analogique-Numérique9.6 Convertisseur Analogique-Numérique: exemple de réalisation.
-
+VA
ConvertisseurNA
Registre
Unité de commande
Commande début
Horloge
Comparateur
V’A
Tant que VA V’A : à une cadence déterminée par le signal d’horloge, l’unité de commandemodifie sans arrêt le nombre binaire mémorisé par le registre.
Lorsque VA= V’A : le registre a mémorisé la valeur numérique correspondant à la tension VA
Exercices 5ième série : création d’un multiplicateur
On souhaite réaliser un multiplicateur parallèle de deux nombres « a » et « b » de 4 bits chacun.0n notera « a=a3 a2 a1 a0 », « b =b3 b2 b1 b0 » et « p » leur produit.On dispose :
- de portes élémentaires- d’additionneur 4 bits
A/ Proposer un montage réalisant le calcul souhaitéB/ Déterminer le temps de traversée du montage en fonction des temps de traversée des constituants.
i0
ADD
j0j1j2j3 i1i2i3
k3 k2 k1 k0
C-INC-OUT