Vous êtes sur la page 1sur 6

Chapitre 7

Chapitre 7 Registres et compteurs Un circuit sequentiel´ synchrone est constitue´ d’un groupe de bascules et
Chapitre 7 Registres et compteurs Un circuit sequentiel´ synchrone est constitue´ d’un groupe de bascules et

Registres et compteurs

Un circuit sequentiel´

synchrone est constitue´ d’un groupe de bascules et circuits com-

binatoires ayant une horloge. Les bascules sont essentielles, puisque sans elles le circuit devient purement combinatoire. Un circuit compose´ de bascules est un circuit sequentiel´

memeˆ

quement classifies´ selon leur fonction. On verra ici deux fonctions des circuits sequentiels´ des registres et des compteurs.

s’il n’y a pas de portes combinatoires. Les circuits contenant des bascules sont typi-

:

Un registre est un groupe de bascules qui partagent une horloge commune et qui peut stocker un bit. Un registre a` n bits est un groupe de n bascules qui peuvent stocker n bits. Un registre peut aussi avoir des portes combinatoires qui permettent de mieux traiter les

bits. Les bascules dont le stockage de l’information, et les portes determinent´ l’information est transfer´ ee´ dans le registre.

comment

Un compteur est un registre qui passe a` travers une sequence´

ordonnee´ d’etats´

binaires.

Les portes du compteur sont branchees´ de sorte que le compteur produit toujours la memeˆ sequence´ d’etats.´ Memeˆ si un compteur est un registre specialis´ e,´ il est commun de les dierentier.´

7.1 Registre a` decalage´

Un registre qui peut decaler´

de l’information binaire d’une cellule a` une autre dans une

est constitue´

de bascules en cascade, ou` la sortie d’une bascule est branchee´ a` l’entree´ de la

direction specifique´

d’une serie´

bascule suivante. Un exemple est montre´ a` la figure 7.1.

est appele´ un registre a` decalage´

. Un registre a` decalage´

1

CHAPITRE 7. REGISTRES ET COMPTEURS

Entree´

Serie´

CLK

 

D

Q

 

D

Q

 

D

Q

 

D

Q

 
CLK Q’ CLK Q’ CLK Q’ CLK Q’

CLK

Q’

CLK Q’ CLK Q’ CLK Q’ CLK Q’
CLK Q’ CLK Q’ CLK Q’ CLK Q’

CLK

Q’

CLK Q’ CLK Q’ CLK Q’ CLK Q’
CLK Q’ CLK Q’ CLK Q’ CLK Q’

CLK

Q’

CLK Q’ CLK Q’ CLK Q’ CLK Q’
CLK Q’ CLK Q’ CLK Q’ CLK Q’

CLK

Q’

CLK Q’ CLK Q’ CLK Q’ CLK Q’
Q   D Q   D Q   D Q   CLK Q’ CLK Q’ CLK
Q   D Q   D Q   D Q   CLK Q’ CLK Q’ CLK
Q   D Q   D Q   D Q   CLK Q’ CLK Q’ CLK

Figure 7.1 – Registre a` decalage´

de 4 bits

Sortie

Serie´

Dans le circuit de la figure 7.1, le contenu de chaque bascule est transfer´ e´ a` la bascule

1 bit de gauche vers la droite. Le

suivante a` chaque pulse d’horloge. Chaque pulse transfere`

circuit de la figure 7.1 est unidirectionnel : seul un transfert de gauche a` droite est permis.

7.1.1 Transfert seriel´

Un systeme`

numerique´

est dit seriel´

si l’information est transformee´

et manipulee´

1

bit a` la fois. L’information est transfer´ ee´ un bit a` la fois du registre source au registre de

pour controlerˆ

quand l’information est transfer´ ee´ : on a une entree´ d’activation. L’entree´ CTRL permet de

controlerˆ quand l’horloge globale est passee´ aux registres, ce qui permet de controlerˆ le transfert des donnees.´

destination. Un exemple est montre´ a` la figure 7.2, ou` on a aussi un systeme`

Registre A Registre B SO B CLK CLK Horloge CTRL Horloge
Registre A
Registre B
SO B
CLK
CLK
Horloge
CTRL
Horloge

CTRL

CLK

Registre B SO B CLK CLK Horloge CTRL Horloge CTRL CLK T 1 T 2 T
T 1 T 2 T 3 T 4
T 1
T 2
T 3
T 4

Figure 7.2 – Transfert seriel´

Le tableau de la figure 7.3 montre un exemple de transfert de donnees,´ si les deux

`

registre de la figure 7.2 sont de 4 bits. A chaque pulse T 1 , T 2 , T 3 et T 4 , un bit est transfer´ e´

du registre A au registre B. Dans cet exemple, on suppose que la valeur initiale du registre

`

A est 1011 et la valeur initiale du registre B est 0010. A chaque pulse d’horloge, 1 bit est

CHAPITRE 7. REGISTRES ET COMPTEURS

transfer´ e´ de A a` B. Apres` 4 pulses, la valeur de A est inscrite dans B, et la valeur de A est revenue a` la valeur initiale.

Pulse

Registre A

 

Registre B

 

Valeur initiale

1

0

1

1

0

0

1

0

Apres` T 1

1

1

0

1

1

0

0

1

Apres` T 2

1

1

1

0

1

1

0

0

Apres` T 3

0

1

1

1

0

1

1

0

Apres` T 4

1

0

1

1

1

0

1

1

Figure 7.3 – Exemple de transfert seriel´

7.1.2 Addition serielle´

La plupart des operations´

dans un ordinateur sont eectuees´

en parallele,`

parce que

les calculs sont plus rapides. Cependant, ceci necessite´

gros. Dans des circuits ou` la taille est importante, on utilise parfois des operations´

plutotˆ que parallele.`

des circuits plus complexes et plus

serielles´

On utilise des registres pour faire

l’addition bit par bit. Le report de sortie est transfer´ e´ a` une bascule D, qui devient ensuite le report d’entree´ pour les 2 bits suivants.

Le circuit de la figure montre un additionneur seriel.´

SI CTRL Registre A x S Horloge y FA z C Entree´ SI serie´ Registre
SI
CTRL
Registre A
x
S
Horloge
y FA
z C
Entree´
SI
serie´
Registre B
Q
D
CLK
Clear

Figure 7.4 – Additionneur seriel´

CHAPITRE 7. REGISTRES ET COMPTEURS

7.2

Compteurs

Un registre qui passe a` travers une sequence´ pred´ efinie´ d’etats´ suite a` l’application d’un pulse d’entree´ est un compteur. L’entree´ peut etreˆ un pulse d’horloge, ou provenir d’une source externe. La sequence´ d’etats´ n’a pas besoin d’etreˆ une sequence´ numerique´ (0-1-2-etc). N’importe quelle sequence´ pred´ efinie´ est acceptable. Un compteur qui suit une sequence´ numerique´ est un compteur binaire. Un compteur binaire a` n bits est constitue´ de n bascules et peut compter de 0 a` 2 n 1.

Il existe deux types de compteurs binaires : les compteurs en cascade (ripple counter) et

d’horloge CLK ne

les compteurs synchrones. Dans les compteurs en cascade, les entrees´

sont pas activees´

Dans un compteur synchrone, une horloge commune est branchee´ toutes les bascules.

par une horloge commune, mais plutotˆ par la sortie des autres bascules.

aux entrees´

CLK de

7.2.1 Compteur binaire en cascade

Un compteur binaire en cascade est une serie´ de bascules ou` la sortie d’une bascule

est branchee´ a` l’entree´ CLK de la bascule suivante. La bascule qui contient le bit le moins significatif rec¸oit les pulses d’entree.´ Un exemple de compteur a` 4 bits avec des bascules

`

D est montre´ a` la figure 7.5. A chaque fois que A 0 change de 1 a` 0, la valeur de A 1 est

complement´

ainsi de suite.

et

ee.´

`

A chaque fois que A 1 change de 1 a` 0, la valeur de A 2 est complement´

ee,´

7.2.2 Compteur DCB en cascade

Un compteur decimal´

Il faut 4 bascules pour creer´

montree´ a` la figure 7.6.

va passer a` travers la sequence´

de 0 a` 9 puis recommencer a` 0.

4 bits. La sequence´

est

ce circuit, puisque le DCB necessite´

On peut combiner des compteurs DCB pour realiser´

sont le bit Q 8 de l’etage´

prec´ edent.´

des compteurs de plus de 10. Un

des

exemple de compteur pouvant aller jusqu’a` 999 est montre´ a` la figure 7.7. Les entrees´

decades´ superieures´

CHAPITRE 7. REGISTRES ET COMPTEURS

D Q A 0 Compte C Q’ R D Q A 1 C Q’ R
D
Q
A 0
Compte
C
Q’
R
D
Q
A 1
C
Q’
R
D
Q
A 2
C
Q’
R
D
Q
A 3
C
Q’
R
Reset
Figure 7.5 – Compteur binaire en cascade a` 4 bits
0000 0001 0010 0011 0100 1001 1000 0111 0110 0101 Figure 7.6 – Diagramme d’etat´
0000
0001
0010
0011
0100
1001
1000
0111
0110
0101
Figure 7.6 – Diagramme d’etat´
d’un compteur DCB

7.3 Compteurs synchrones

Les compteurs synchrones sont dierents´ des compteurs en cascade parce que l’horloge est appliquee´ a` toutes les bascules. Une horloge commune active toutes les bascules

CHAPITRE 7. REGISTRES ET COMPTEURS

Q 8 Q 4 Q 2 Q 1

Q 8 Q 4 Q 2 Q 1

Q 8 Q 4 Q 2 Q 1

Compteur Compteur Compteur Compte DCB DCB DCB
Compteur
Compteur
Compteur
Compte
DCB
DCB
DCB

10

2

10

1

10

0

Figure 7.7 – Compteur DCB a` trois decades´

simultanement,´ plutotˆ qu’une a` la fois. Un exemple est montre´ a` la figure 7.8 avec des bascules T. Le circuit possede` aussi une entree´ d’activation globale (CNTEN). Chaque bascule T va seulement inverser si CNTEN = 1. Il faut quand memeˆ faire attention a` la vitesse de l’horloge : si l’horloge est trop rapide, il est possible qu’un changement au LSB n’ait pas le temps de se propager au MSB.

CNTEN T Q Q 0 CLK C Q’ Q T Q 1 C Q’ Q
CNTEN
T
Q
Q
0
CLK
C
Q’
Q
T
Q
1
C
Q’
Q
T
Q
2
C
Q’
Q
T
Q
3
C
Q’
Figure 7.8 – Compteur binaire synchrone a` 4 bits