Électronique Numérique
Chapitre 6
Composants séquentiels
Bilan de l’offre commerciale, Le reste du combinatoire (add, alu, comparateur),
Mémoires, Bascules, Registre à décalage universel, Compteurs asynchrones et
synchrones, Cascadage des compteurs
Cours d’électronique numérique dispensé à l’ENSPS.
Auteurs :
Yannick Hervé - MCF HDR Université Louis Pasteur
Wilfried Uhring - MCF Université Louis Pasteur
Jihad Zallat – MCF Université Louis Pasteur
05/03/06 11:49 Yannick Herve, Wilfried Uhring, Jihad Zallat 1
Les familles de circuits logiques
•Circuits Standards (combinatoires et séquentiels)
Logique câblée (glue logique)
•Microprocesseurs, microcontrôleurs, DSP (2A)
•Circuits périphériques de microprocesseurs (2A)
•Circuits mémoires (2A)
Logique programmée (à programme enregistré)
•ASICs (Application Specific Integrated Circuit) (2A)
Logique programmable
Cellules précaractérisées, Circuits prédiffusés
Circuit à la demande (full custom)
05/03/06 11:49 Yannick Herve, Wilfried Uhring, Jihad Zallat 2
Vocabulaire
Intégration : SSI, MSI, LSI, VLSI, … (Scale of Integration)
Technologie : TTL (Transistor Transistor Logic)
CMOS (Complementary Metal Oxyd SC)
ECL (Emiter Coupled Logic)
I2L (Integrated Injection Logic)
BiCMOS
...
Sous familles : TTL-LS, TTL-ALS, TTL-S ...
CMOS-4000, CMOS-HCT, CMOS-AHCT...
05/03/06 11:49 Yannick Herve, Wilfried Uhring, Jihad Zallat 3
Offre commerciale : glue logic
(rubriques du « data book »)
Gates (inv, nand, nor, and, or, xor, xnor)
Multiplexors (Quad-2-in, Dual-4-in, 8-in ..)
Decoders, Demultiplexors (Dual 1 of 4, 1 of 8,BCD-7seg …)
Comparators (4 bits, 8 bits)
Arithmetics (4 bit ALU, Carry generator, 6 bit multiplier …)
Latches (RS, D)
Flip-flops (D, JK, Dual, Quad …)
Counters (Synchronous, asynchronous, up/down …)
Shift registers (Serial In-Parallel Out, General ...)
Miscellaneous (priority encoder, error detection, arbitror …)
« analogique » (buffer, driver, tranceivers ..)
05/03/06 11:49 Yannick Herve, Wilfried Uhring, Jihad Zallat 4
Le reste du combinatoire
Additionneur
a b ri S ro
ab S r 000 00
00 0 0 010 10 S a b ri
01 1 0 100 10
10 1 0 r0 a.b ri .(a b )
110 01
11 0 1 001 10 Additionneur
011 01 complet
S a b
101 01
r a. b
111 11
Demi-additionneur
(addition modulo 2)
05/03/06 11:49 Yannick Herve, Wilfried Uhring, Jihad Zallat 5
Additionneur : architecture
ri
a
b =1 =1 S
& &
S a b ri ro
>1
rO a.b ri .(a b )
05/03/06 11:49 Yannick Herve, Wilfried Uhring, Jihad Zallat 6
Additionneur n bits : propagation
a3 b3 a2 b2 a1 b1 a0 b0
S4 = r4 Add Add Add Add r0
S3 S2 S1 S0
Avantage : simplicité, modularité
Inconvénient : temps de calcul dépend de n
05/03/06 11:49 Yannick Herve, Wilfried Uhring, Jihad Zallat 7
Additionneur n bits : anticipation
Remarque générale : les architecture à accumulation de temps
de propagation sont néfastes à la croissance des systèmes
ri 1 a i . bi ri .( a i bi ) Pas d’utilisation
Gi ri . Pi itérative
Pi Gi ri+1
0 0 0Q qsoit r G = Génération
i Gi ai .bi
0 1 1
Pi ai bi
1 0 ri P = Propagation
1 1 impossible
Les Pi et Gi ne dépendent que des ai et bi
05/03/06 11:49 Yannick Herve, Wilfried Uhring, Jihad Zallat 8
Anticipation (2)
Equations de calcul des retenues
r1 = G0 + r0.P0
r2 = G1 + r1.P1 = G1 + G0.P1 + r0.P0.P1
r3 = G2 + G1.P2 + G0.P1.P2 + r0.P0.P1.P2
....
On calcule toutes les retenues en même temps en parallèle.
05/03/06 11:49 Yannick Herve, Wilfried Uhring, Jihad Zallat 9
Anticipation (3) : architecture
a b Temps de calcul indépendant de n
n n
Gi ai .bi
Calcul des P et G 1 porte
Pi ai bi
P G
r1 = G0 + r0.P0
r0 Calcul des retenues 2 portes r2 = G1 + r1.P1
r3 = G2 + G1.P2 +
r a b G0.P1.P2 + r0.P0.P1.P2
Calcul des sommes 1 porte Si ai bi ri
Look Ahead Carry S
Il existe d’autres
techniques
05/03/06 11:49 Yannick Herve, Wilfried Uhring, Jihad Zallat 10
Applications : 74181
a0-a3 b0-b3 a4-a7 b4-b7
Propagation =
dégradation des
performances
temporelles
74181 ALU 4 bits
Architecture interne
de type «look-ahead»
05/03/06 11:49 Yannick Herve, Wilfried Uhring, Jihad Zallat 11
Application : 74181+74182
a0-a3 b0-b3 a4-a7 b4-b7
r0 .... ....
S0-S3 S4-S7
PG PG PG PG
74182 (look ahead carry generator)
PG (pour cascadage)
Un 74182 peut prendre en charge quatre 74181
Ils sont cascadables en arborescence
05/03/06 11:49 Yannick Herve, Wilfried Uhring, Jihad Zallat 12
Comparateur (1)
a/ Egalité de 2 nombres binaires
b/ Le plus grand ou le plus petit
Principes :
- Soustraction A-B > 0 implique A > B
A-B = 0 implique A = B
(difficile à implémenter facilement)
- Comparaison bit à bit (dans les CI du commerce)
sur n bits : A > B si An-1 > Bn-1
ou si An-1 = Bn-1 et An-2 > Bn-2
ou si An-1 = Bn-1 et An-2 = Bn-2 et An-3 > Bn-3
ou ...
Exemple : A=111010 B=110010
05/03/06 11:49 Yannick Herve, Wilfried Uhring, Jihad Zallat 13
Comparateur (2)
Comparateur d’égalité : A = a3a2a1a0 B = b3b2b1b0
A = B si a3=b3 et a2=b2 et a1=b1 et a0= b0
Fonction associée :
(a 3 b3 ).(a 2 b2 ).(a1 b1 ).(a0 b0 )
05/03/06 11:49 Yannick Herve, Wilfried Uhring, Jihad Zallat 14
Comparateur complet
Comparateur en cascade OU Comparateur parallèle
Comparateur en cascade : cellule de base
Ei+1
ai Si
bi &
OU Ei
&
& II
i
05/03/06 11:49 Yannick Herve, Wilfried Uhring, Jihad Zallat 15
Comparateur en cascade
A = a2a1a0 B = b2b1b0
1 S
a2 E
b2 I
A>B
OU
S
a1 E
b1 I
A<B
S OU
a0 E
I A=B
b0
05/03/06 11:49 Yannick Herve, Wilfried Uhring, Jihad Zallat 16
Comparateur parallèle (1)
Cellule de base et architecture : tps de calcul indépendant de n
Tous les Ei Tous les Si
Si A>B
avec j>i OU
ai
bi & Tous les Ei
Ei A=B
OU
&
Ii Tous les Ii
A<B
Tous les Ei OU
&
avec j>i vers les cellules j<i
05/03/06 11:49 Yannick Herve, Wilfried Uhring, Jihad Zallat 17
Comparateur : 7485
a4-7 a0-3
4 4
A
0 A>B A>B A>B A>B
1 A=B A=B A=B A=B
0 A<B A<B A<B A<B
4
B 4
Cascade série (cascade parallèle possible à partir de 10 bits)
05/03/06 11:49 Yannick Herve, Wilfried Uhring, Jihad Zallat 18
Unité arithmétique et logique
Cin UAL ou ALU
5 fils de prog (S)
n 32 fonctions
A n
R
P 16 fct logiques(bit à
n G
bit)
B A=B R A, R A B, R A . B
R 0, R A. B , R A B
Cout
S ....
16 fct arithmét. (nombres)
Anecdote : 74181
R A , R A B, R A B
ALU 4bits = 63 portes
R 1, R A A. B, R A B 1
....
05/03/06 11:49 Yannick Herve, Wilfried Uhring, Jihad Zallat 19
Composants séquentiels : base
Mémoires, Bascules (voir le cours précédent)
RS, DT / D-edge, JK
Registre : ensemble de D-edge avec la même horloge
D D D D
Q Q Q Q
05/03/06 11:49 Yannick Herve, Wilfried Uhring, Jihad Zallat 20
Registre à décalage
Registre + connexions + combinatoire de gestion
H
Entrée D Q D Q D Q D Q Sortie
Série Série
E Q0 Q1 Q2 Q3
a x x x x
b a x x x
c b a x x
d c b a x
t e d c b a
05/03/06 11:49 Yannick Herve, Wilfried Uhring, Jihad Zallat 21
Types de registres
Chargement Déplacement des données
E Série Parallèle Décalage
S G/D
Série Rotation
Parallèle
G/D
05/03/06 11:49 Yannick Herve, Wilfried Uhring, Jihad Zallat 22
Applications
• Retard numérique (série/série)
– RD 8 bits (FH = 1 MHz) retard de 8 µs
• Convertisseur de données série/parallèle
• Interfaces USB, SATA (disque dur), I2C (télévision),
CAN (automobile), …
• Simulation physique des files d’attente :
chaînes de production
Etc.
05/03/06 11:49 Yannick Herve, Wilfried Uhring, Jihad Zallat 23
Registre universel
E0-En-1
ESG ESD
General Shift
H Register
S0S1 S0-Sn-1 S0 Sortie série gauche
S0S1 Sn-1 Sortie série droite
0 0 Stop
0 1 Shift right Attention piège:
1 0 Shift left ESG(Français) = RSI(anglais)
1 1 Load
05/03/06 11:49 Yannick Herve, Wilfried Uhring, Jihad Zallat 24
Registre universel : architecture
Ei
I0 I0 I0
I1 I1 I1
I3 I3 I3
D Q D Q D Q
I2 Qi-1 I2 Qi I2 Qi+1
S1S0
05/03/06 11:49 Yannick Herve, Wilfried Uhring, Jihad Zallat 25
Les compteurs
1er compteur =1932 Rappel : 1ère bascule =1906.
Définition : N sorties qui parcourent un code au rythme
d’une horloge (!! pas forcément comptage naturel)
Utilité : comptage d’événements
suite d’états
....
Deux techniques : Mise en cascade de diviseurs par deux
Comptage asynchrone
Calcul de transition
Comptage synchrone
05/03/06 11:49 Yannick Herve, Wilfried Uhring, Jihad Zallat 26
Compteurs asynchrones : principe (1)
Cascade de diviseurs de fréquence par deux sur fronts montants
1 T Q T Q T Q Décompteur
H binaire
Q0 Q1 Q2
H
Q0
Q1
Q2
0 7 6 5 4 3 2 ...
05/03/06 11:49 Yannick Herve, Wilfried Uhring, Jihad Zallat 27
Compteurs asynchrones : principe (2)
Cascade de diviseurs de fréquence sur fronts descendants
1 T Q T Q T Q Compteur
H binaire
Q0 Q1 Q2
H
Q0
Q1
Q2
0 1 2 3 4 5 6 ...
05/03/06 11:49 Yannick Herve, Wilfried Uhring, Jihad Zallat 28
Compteurs asynchrones : problèmes
Accumulation des temps de propagation
Exemple : passage de 7 à 8
H
Q0 tp
Q1 Tmin > n.tp+marge
Q2
Q3
7 6 4 0 8
Si n bascules changent d’état : n-1 états transitoires
05/03/06 11:49 Yannick Herve, Wilfried Uhring, Jihad Zallat 29
Compteurs synchrones (1)
Remarque : en comptage binaire un bit change d’état
si tous les bits précédents sont à 1 (ex:0111 à 1000)
Synchrone : même horloge pour toutes les bascules
t00 t01 t10 t11
T 0 1 1 0
Q3
1 T Q T Q & T Q & T Q
Q0 Q1 Q2
H
Compteur synchrone à report série
05/03/06 11:49 Yannick Herve, Wilfried Uhring, Jihad Zallat 30
Compteur synchrones (2)
Report Série : Tmin > Tp(bascule) + (n-2) * Tp(porte ET)
Report parallèle :
Q3
1 T Q T Q & T Q & T Q
Q0 Q1 Q2
H
Pour n bits il faut
Tmin > Tp(bascule) + Tp(porte ET) 1 porte ET à
n-1 entrées
05/03/06 11:49 Yannick Herve, Wilfried Uhring, Jihad Zallat 31
Présentation du 74161
74161 compteur intégré synchrone 4 bits binaire
programmable cascadable de la famille TTL (16 broches (pins))
LD E0-3
CP : horloge (front montant)
ENT Q0-3 : sorties du compteur
ENP 74161 Co E0-3 : entrées parallèles (de prog)
CP
CLR : RAZ asynchrone active à 0
LD : chargt parallèle synchrone
CLR Vcc+Gnd actif au niveau bas
Q0-3 prioritaire sur le comptage
ENP/ENT : autorisation de comptage
comptage si ENP.ENT=1
Co : retenue =1 si Q3Q2Q1Q0.ENT=1
05/03/06 11:49 Yannick Herve, Wilfried(ENT agitZallat
Uhring, Jihad sur Co en asynchrone)
32
Présentation du 74161
Chronogramme de fonctionnement
05/03/06 11:49 Yannick Herve, Wilfried Uhring, Jihad Zallat 33