Vous êtes sur la page 1sur 22

Registre

 Un registre est ensemble de I0 D Q Q0


bascules permettant de R
stocker une information sous
forme de mots binaires de n I1 D Q Q1
bits et, pour certains types de
registres, d'effectuer des R
translations ou décalages sur I2 Q2
D Q
ces mots
R
Exemple : registre mémoire 4 bits
Au top de l’horloge, les 4 bits présents I3 D Q Q3
en entrée sont transférés en sortie.
CLK
↑Clk Q3Q2Q1Q0 = I3I2I1I0 R
Reset
Registre
I0 D Q Q0
CLK
I3 R
I2 I1 D Q Q1
I1
R
I0
Q3 I2 D Q Q2
Q2 R
Q1
I3 D Q Q3
Q0
CLK
R
Reset
Registre
Registre à chargement parallèle (entrées parallèles
et sorties parallèles ).

Permet de charger une information sur N bits en


même temps
Load Q7+Q6+…Q0+
I7 D7 Q7 0 Q7Q6…Q0
I6 D6 R Q6 1 I7I6…I0
I5 D5 E Q5
G Qi+ = Load.Qi + Load.Ii
I4 D4 Q4
I Load = 0  état mémoire,
I3 D3 Q3
S Load = 1  chargement en //
I2 D2 T Q2
I1 D1 R Q1
Qi
I0 D0 E Q0 I0 MUX Qi+
Ii Y
I1 S
Load
Registre à chargement parallèle

I0 MUX
Y D Q Q0
I0 I1 S

I0 MUX
Y D Q Q1
I1 I1 S

I0 MUX
Y D Q Q2
I2 I1 S

I0 MUX
Y D Q Q3
I3 I1 S

Load CLK
Load = 0  état mémoire,
Load = 1  chargement en //

Load = 0 Figée Load = 1 Chg en //


Registre à entrée série et sortie série
Din
Dout
Registre à décalage
Clk

Entrée Din Dout


D0 Q0 D1 Q1 D2 Q2 D3 Q3
Série Sortie
Série

CLK
Fonction décalage à gauche Di = Qi-1
Q3+ Q2+ Q1+ Q0+ = Q2 Q1 Q0 D0

Din est sur Q3 après 4 fronts actifs de CLK


Registre à décalage Q3+ Q2+ Q1+ Q0+ = Din Q3 Q2 Q1
Q3 Q2 Q1 Q0
Din D3 Q3 D2 Q2 D1 Q1 D0 Q0 Dout

CLK

CLK
Din
Q3
Q2
Q1
Q0

Fonction décalage à droite Di = Qi+1


Registre à décalage a gauche Q3+ Q2+ Q1+ Q0+ = Q2 Q1 Q0 Din

PS NS
Q3 Q2 Q1 Q0 Din Q3+ Q2+ Q1+ Q0 Din est sur Q3
Top
après 4 fronts
↑Clk 0 0 0 0 1 0 0 0 1 actifs de CLK
↑Clk 0 0 0 1 0 0 0 1 0
↑Clk 0 0 1 0 0 0 1 0 0
↑Clk 0 1 0 0 0 1 0 0 0
Q3+ Q2+ Q1+ Q0+ = Din Q3 Q2 Q1
Registre à décalage a droite

PS NS
Top Q3 Q2 Q1 Q0 Din Q3+ Q2+ Q1+ Q0 Din est sur Q0 après
↑Clk 0 0 0 0 1 1 0 0 0
4 fronts actifs de
CLK
↑Clk 1 0 0 0 0 0 1 0 0
↑Clk 0 1 0 0 0 0 0 1 0
↑Clk 0 0 1 0 0 0 0 0 1
Transfert série

SI Registre à décalage A
SO SI Registre à décalage B

Clock CLK CLK


Shift
Control
Clock

Shift
Control
CLK
Registre à décalage Universel

Entrée Parallèle - Sortie Parallèle


Entrée Série – Sortie Série
Entrée Série - Sortie Parallèle
Entrée Parallèle - Sortie Série

D Q D Q D Q D Q
Registre à décalage Universel
Control
Q3 Q2 Q1 Q0 CLR Fonction réalisée
S1 S1 S0
S0 USR 0 0 Figée
SRin D3 D2 D1 D0 SLin 0 1 Décalage à droite
1 0 Décalage à gauche
1 1 Chg en //

Control décalage à gauche Di = Qi-1


Q3+ Q2 + Q1 + Q0 +
S1 S0 décalage à gauche Di = Qi+1
0 0 Q3 Q2 Q1 Q0 Q3 I0
Dd Mux Q3+
0 1 Dd Q3 Q2 Q1 I1
Q2 I2 2x1
1 0 Q2 Q1 Q0 Dg
E3 I3 S1 S0
1 1 E3 E2 E1 E0
S2S1=00  Mémorisation

S2S1=01  Décalage à droite


S2S1=10  Décalage à gauche

S2S1=10  Chargement en //
Registre en utilisant des bascules JK
J K Q n+1 D Qn+1
0 0 Qn 0 0
0 1 0 1 1
1 0 1
1 1 Q’ n

J K Q n+1
0 0 Qn
D D’ D
1 1 Q’ n

Control S1S0 JK Q3+ Q2+ Q1+ Q0+


Fonction réalisée
S1 S0 00 J=k’ Q3 Q2 Q1 Q0
0 0 Figée 01 J=k’ Dd Q3 Q2 Q1
0 1 Décalage à droite 10 J=k’ Q2 Q1 Q0 Dg
1 0 Décalage à gauche 11 J=k’ E3 E2 E1 E0
1 1 Chg en //
Compteur Binaire à chargement en Parallèle

E3 Q3
CLR LD Count Fonction réalisé
E2 Q2
0 x x Mise à 0
E1 Q1
1 0 0 Mémorisation
E0 Q0
1 0 1 comptage
LD
1 1 x Chg en //
Count
CLR
Compteur Binaire à chargement en Parallèle
PS NS Entrées Fonctions réalisées
Q3 Q2 Q1 Q0 Q3+ Q2+ Q1+ Q0 Clr LD
Count
0 0 0 0 0 0 0 1 1 0 1
0 0 0 1 0 0 1 0 1 0 1
0 0 1 0 0 0 1 1 1 0 1
0 0 1 1 0 1 0 0 1 0 1
0 1 0 0 0 1 0 1 1 0 1 Comptage

0 1 0 1 0 1 1 0 1 0 1
0 1 1 0 0 1 1 1 1 0 1
1 0 0 0 1 0 0 1 1 0 1
1 0 0 1 0 0 0 0 1 1 X Chg en // de 0000
Donc Clr = 1,
LD= Q3Q0
Count =1
19 / 28
Exemple de Compteur BCD

LD
Donc Clr = 1,
0 E3 Q3
LD= Q3Q0
Count =1 0 E2 Q2
0 E1 Q1
0 E0 Q0
1
Count
CLR

1 CLK
Compteur 2bit

00 01 10 11

T3 T2 T1 T0 CLK
T0
Décodeur 2x4 T1
T2
Compteur 2-bit T3

Vous aimerez peut-être aussi