Cours 6 Logique squentielle (2)
ELP 304 : Electronique Numrique
Bascules tudies au cours 5
Q*
Q*
CK
Q*
Bascule RS asynchrone
Bascule D latch ou verrouillage synchronisation sur niveau
Bascule D flip-flop ou dclenchement sur fronts synchronisation sur fronts
Dpartement Electronique
Qu'est-ce qu'un registre ?
Ensemble de bascules permettant
de stocker une information sous forme de mots binaires de n bits et, pour certains types de registres, d'effectuer des translations ou dcalages sur ces mots,
Les registres de mmorisation
stockage
Les registres dcalage
stockage et dcalage
Dpartement Electronique
Le registre de mmorisation ou registre tampon
E1 E2 En-1 En
bascule 1
CK
bascule 2
CK
bascule n-1
CK
bascule n
CK
H Q1 Q2 Qn-1 Qn
Ralisation avec des bascules D latches ou D flip-flops
Dpartement Electronique
Les registres dcalage (I)
Les bascules sont interconnectes
=> Utilisation exclusive de flip-flops (cf. PC 6-7)
Fonction dcalage droite
E
D Q D Q D Q D Q D Q
bascule 1
CK
bascule i-1
CK
bascule i
CK
bascule i+1
CK
bascule n
CK
Di = Qi 1
=> E sur Qn aprs n fronts actifs de H
5 Dpartement Electronique
Les registres dcalage (II)
Fonction dcalage gauche
E
Q1
bascule 1
CK
bascule i-1
CK
bascule i
CK
bascule i+1
CK
bascule n
CK
Di = Qi +1
=> E sur Q1 aprs n fronts actifs de H
Dpartement Electronique
Les registres dcalage (III)
Fonction de chargement parallle
EP1 LOAD ES
1
0
EP2 LOAD
D Q
1
0
EP3 LOAD
D Q
1
0
EP4 LOAD
D Q
1
0
bascule 1
CK
bascule 2
CK
bascule 3
CK
bascule 4
CK
LOAD = 1 , (EP1, ... , EPn) est charg dans le registre LOAD = 0, mode dcalage
Dpartement Electronique
Les registres dcalage (IV)
Initialisation du registre
1 1 CL*
Q
CL*
CL*
Q
CL*
Q
bascule 1
CK PR*
bascule 2
CK PR*
bascule 3
CK PR* 1
bascule 4
CK PR*
registre initialis 0101 si INIT = 0
H
1
INIT
Rappel : entres prioritaires asynchrones des bascules
CLEAR ou RESET : Q est forc 0 SET ou PRESET : Q est forc 1
La commande d'initialisation ne doit pas tre active pendant le fonctionnement normal (synchrone) du circuit
8 Dpartement Electronique
Le registre "universel"
Dans les catalogues de circuits standard : registres multi-fonctions
E1 E2 ESD entre srie droite MODE SENS H INIT SSG sortie srie gauche Q1 Q2 Qn-1 Qn SSD sortie srie droite En-1 En
} entres parallles
ESG entre srie gauche
REGISTRE UNIVERSEL
} sorties parallles
chargement srie ou parallle (MODE, ESD, ESG, Ei) dcalage droite et gauche (SENS) lecture srie ou parallle (SSD, SSG, ou Qi) initialisation (INIT)
Dpartement Electronique
Le registre "universel" : structure
Exemple de ralisation de la cellule de base d'un registre universel
Ei
(Q n+1 = ESG) Q i +1
0 0 1 1
D Q
Qi
Q i -1 (Q 0 = ESD)
bascule i
CK
SENS
MODE H
MODE = 0, chargement parallle MODE = 1, dcalage SENS = 1, dcalage droite SENS = 0, dcalage gauche
10 Dpartement Electronique
INIT
Les registres : applications (I)
Mmorisation temporaire d'une information Conversion parallle-srie de mots binaires
chargement parallle puis dcalage
E1 E2 En-1 En
n=4
H
(i =1, 2, 3, 4)
f
Xi X2 X1 Y4 Yi Y3 Y2 Y1 Zi Z4
Ei
f/4 f
S MODE
11
Dpartement Electronique
Les registres : applications (II)
Conversion srie-parallle d'un train binaire
mode dcalage et rcupration des mots binaires sur Q1 ... Qn
E H
n=4
Q1 Q2
Qn-1 Qn
H E Q1 Q2 Q3 Q4
X3 X2 X1 W4 W3 X4 X3 X2 X1 W4 Y1 X4 X3 X2 X1 Y2 Y1 X4 X3 X2 Y3 Y2 Y1 X4 X3 Y4 Y3 Y2 Y1 X4 Z1 Y4 Y3 Y2 Y1
f f
f/4
X
12 Dpartement Electronique
Les registres : applications (III)
Ligne retard numrique
permet de retarder un train binaire de n priodes d'horloge
E H S
Division et multiplication par 2n
dcalage droite de n bits : division par 2n
0 1 0 1 1 0 22 : tat initial
11 : aprs 1 front actif de H
0
13
5 : aprs 2 fronts actifs de H
Dpartement Electronique
Les registres : applications (IV)
dcalage gauche de n bits : multiplication par 2n
7 : tat initial
14 : aprs 1 front actif de H
28 : aprs 2 fronts actifs de H
14
Dpartement Electronique
Les registres : applications (V)
Ralisation de gnrateurs de squences pseudo-alatoires
registre dcalage + OU exclusifs
h1
h2
h3
hn-1
hn
D ck CK
D Q CK
D CK
D CK
D CK
Polynme gnrateur
P ( X ) = 1 + h1 X + h2 X 2 +L+ hn 1 X n 1 + hn X n , hi {0;1}
15 Dpartement Electronique
Les registres : applications (VI)
Exemple de gnrateur pseudo-alatoire
P( X ) = 1 + X + X 4
D
ck
D CK
Q1
D CK
D CK
CK
Q2
Q3
1000 1100 1110 1111 ...
Q4
1111 0111 1011 0101
1010 1101 0110 0011
1001 0100 0010 0001
16
Dpartement Electronique
Les compteurs
Dfinition
Un compteur est un circuit dont la valeur des sorties est directement lie au nombre d'impulsions appliques sur son entre d'horloge Le plus souvent, numration du code binaire naturel
Deux catgories de compteurs
compteurs asynchrones compteurs synchrones
Un systme squentiel est synchrone (sur fronts) <=> les changements d'tat du systme (hors initialisation) sont conditionns par les fronts actifs du signal d'horloge
Exemple : les registres sont des circuits synchrones
Sinon, il est asynchrone
17 Dpartement Electronique
Le diviseur (de frquence) par 2
C'est le compteur le plus simple : comptage binaire modulo 2
H H D=Q Q
CK Q*
f f/2 f/2
contrainte : t p (CK Q ) > t hold(toujours vrifi)
18
Dpartement Electronique
Compteurs asynchrones modulo 2n
Compteur asynchrone modulo 8 Q2 Q1
D Q D Q D
Q3
Q
H H
LSB
CK Q*
CK Q*
CK Q*
Q1 Q2
MSB
Q3 (Q3 Q2 Q1) 000 001 010 011 100 101 110 111 000 001
19 Dpartement Electronique
Dcompteurs asynchrones modulo 2n
Dcompteur asynchrone modulo 8
Q1
D Q D Q
Q2
D Q
Q3
H H
LSB
CKQ*
CK Q*
CK Q*
Q1 Q2
MSB
Q3
(Q3 Q2 Q1) 000 111 110 101 100 011 010 001 000 111
20 Dpartement Electronique
Analyse temporelle des sorties d'un compteur / dcompteur asynchrone
Cumul des temps de propagation des bascules
H Q1
t p ( CK Q) basc1
Passage de l'tat 011 100 du compteur modulo 8
Q2 Q3
010
t p ( CK Q ) basc1 + t p ( CK Q) basc2
t p ( CK Q ) basc1 + t p ( CK Q ) basc2
011
000
100
+ t p ( CK Q) basc3
t ptotal n
les compteurs de grande taille sont lents tats transitoires parasites
21 Dpartement Electronique
Bilan sur l'utilisation des compteurs asynchrones
Intrt principal
leur simplicit
Leurs (nombreux) inconvnients
vitesse de fonctionnement limite pour les compteurs de grande taille prsence d'tats transitoires indsirables sur les sorties aprs chaque front de l'horloge pas de mthode fiable pour raliser des cycles incomplets ( 2 n ) ou dautres numrations que le code binaire naturel
22
Dpartement Electronique