GELE2442 Chapitre 7 : Registres et compteurs - … · Compteur synchrone: une horloge commune est...

21
GELE2442 Chapitre 7 : Registres et compteurs Gabriel Cormier, Ph.D., ing. Universit´ e de Moncton Hiver 2015 Gabriel Cormier (UdeM) GELE2442 Chapitre 7 Hiver 2015 1 / 21

Transcript of GELE2442 Chapitre 7 : Registres et compteurs - … · Compteur synchrone: une horloge commune est...

Page 1: GELE2442 Chapitre 7 : Registres et compteurs - … · Compteur synchrone: une horloge commune est branch ee aux entr ees CLK de toutes les bascules. Gabriel Cormier (UdeM) GELE2442

GELE2442 Chapitre 7 :Registres et compteurs

Gabriel Cormier, Ph.D., ing.

Universite de Moncton

Hiver 2015

Gabriel Cormier (UdeM) GELE2442 Chapitre 7 Hiver 2015 1 / 21

Page 2: GELE2442 Chapitre 7 : Registres et compteurs - … · Compteur synchrone: une horloge commune est branch ee aux entr ees CLK de toutes les bascules. Gabriel Cormier (UdeM) GELE2442

Contenu

1 Registres et compteurs

2 Registre a decalage

3 Compteurs

4 Compteurs synchrones

Gabriel Cormier (UdeM) GELE2442 Chapitre 7 Hiver 2015 2 / 21

Page 3: GELE2442 Chapitre 7 : Registres et compteurs - … · Compteur synchrone: une horloge commune est branch ee aux entr ees CLK de toutes les bascules. Gabriel Cormier (UdeM) GELE2442

Registres et compteurs

Registres et compteurs

Registre: groupe de bascules qui partagent une horloge commune

Un registre a n bits est un groupe de n bascules qui peuvent stockern bits

Compteur: registre qui passe a travers une sequence ordonnee d’etatsbinaires

Le compteur produit toujours la meme sequence d’etats

Gabriel Cormier (UdeM) GELE2442 Chapitre 7 Hiver 2015 3 / 21

Page 4: GELE2442 Chapitre 7 : Registres et compteurs - … · Compteur synchrone: une horloge commune est branch ee aux entr ees CLK de toutes les bascules. Gabriel Cormier (UdeM) GELE2442

Registre a decalage

Registre a decalage

Permet de decaler de l’information binaire d’une cellule a une autredans une direction specifique

Constitue d’une serie de bascules en cascade, ou la sortie d’unebascule est branchee a l’entree de la bascule suivante

Gabriel Cormier (UdeM) GELE2442 Chapitre 7 Hiver 2015 4 / 21

Page 5: GELE2442 Chapitre 7 : Registres et compteurs - … · Compteur synchrone: une horloge commune est branch ee aux entr ees CLK de toutes les bascules. Gabriel Cormier (UdeM) GELE2442

Registre a decalage

Registre a decalage: exemple

QD

C Q’

QD

C Q’

QD

C Q’

QD

C Q’

EntreeSerie

SortieSerie

CLK

Figure 1 : Registre a decalage de 4 bits unidirectionnel

Gabriel Cormier (UdeM) GELE2442 Chapitre 7 Hiver 2015 5 / 21

Page 6: GELE2442 Chapitre 7 : Registres et compteurs - … · Compteur synchrone: une horloge commune est branch ee aux entr ees CLK de toutes les bascules. Gabriel Cormier (UdeM) GELE2442

Registre a decalage Transfert seriel

Transfert seriel

Un systeme numerique est dit seriel si l’information est transformee etmanipulee 1 bit a la fois.

L’information est transferee un bit a la fois du registre source auregistre de destination

Gabriel Cormier (UdeM) GELE2442 Chapitre 7 Hiver 2015 6 / 21

Page 7: GELE2442 Chapitre 7 : Registres et compteurs - … · Compteur synchrone: une horloge commune est branch ee aux entr ees CLK de toutes les bascules. Gabriel Cormier (UdeM) GELE2442

Registre a decalage Transfert seriel

Transfert seriel: exemple

Registre A Registre B

CLKCLK

SOB

Horloge

CTRL

Horloge

CTRL

CLKT1 T2 T3 T4

Figure 2 : Transfert seriel

Gabriel Cormier (UdeM) GELE2442 Chapitre 7 Hiver 2015 7 / 21

Page 8: GELE2442 Chapitre 7 : Registres et compteurs - … · Compteur synchrone: une horloge commune est branch ee aux entr ees CLK de toutes les bascules. Gabriel Cormier (UdeM) GELE2442

Registre a decalage Transfert seriel

Transfert seriel: exemple

Systeme pour controler quand l’information est transferee: on a uneentree d’activation

L’entree CTRL permet de controler quand l’horloge globale est passeeaux registres

Gabriel Cormier (UdeM) GELE2442 Chapitre 7 Hiver 2015 8 / 21

Page 9: GELE2442 Chapitre 7 : Registres et compteurs - … · Compteur synchrone: une horloge commune est branch ee aux entr ees CLK de toutes les bascules. Gabriel Cormier (UdeM) GELE2442

Registre a decalage Transfert seriel

Transfert seriel: exemple

A chaque pulse T1, T2, T3 et T4, un bit est transfere du registre A auregistre B

La valeur initiale du registre A est 1011 et la valeur initiale du registreB est 0010

Pulse Registre A Registre B

Valeur initiale 1 0 1 1 0 0 1 0Apres T1 1 1 0 1 1 0 0 1Apres T2 1 1 1 0 1 1 0 0Apres T3 0 1 1 1 0 1 1 0Apres T4 1 0 1 1 1 0 1 1

Figure 3 : Exemple de transfert seriel

Gabriel Cormier (UdeM) GELE2442 Chapitre 7 Hiver 2015 9 / 21

Page 10: GELE2442 Chapitre 7 : Registres et compteurs - … · Compteur synchrone: une horloge commune est branch ee aux entr ees CLK de toutes les bascules. Gabriel Cormier (UdeM) GELE2442

Registre a decalage Addition serielle

Addition serielle

La plupart des operations dans un ordinateur sont effectuees enparallele, parce que les calculs sont plus rapides.

Necessite des circuits plus complexes et plus gros

Dans des circuits ou la taille est importante, on utilise parfois desoperations serielles plutot que parallele

Gabriel Cormier (UdeM) GELE2442 Chapitre 7 Hiver 2015 10 / 21

Page 11: GELE2442 Chapitre 7 : Registres et compteurs - … · Compteur synchrone: une horloge commune est branch ee aux entr ees CLK de toutes les bascules. Gabriel Cormier (UdeM) GELE2442

Registre a decalage Addition serielle

Addition serielle

Registre A

Registre B

FA

DQ

C

x

y

z C

Clear

S

SI

CTRLHorloge

SIEntreeserie

Figure 4 : Additionneur seriel

Gabriel Cormier (UdeM) GELE2442 Chapitre 7 Hiver 2015 11 / 21

Page 12: GELE2442 Chapitre 7 : Registres et compteurs - … · Compteur synchrone: une horloge commune est branch ee aux entr ees CLK de toutes les bascules. Gabriel Cormier (UdeM) GELE2442

Compteurs

Compteurs

Compteur: registre qui passe a travers une sequence predefinie d’etatssuite a l’application d’un pulse d’entree

L’entree peut etre un pulse d’horloge, ou provenir d’une sourceexterne

La sequence d’etats n’a pas besoin d’etre une sequence numerique(0-1-2-etc)

Un compteur qui suit une sequence numerique est un compteurbinaire

Un compteur binaire a n bits est constitue de n bascules et peutcompter de 0 a 2n − 1.

Gabriel Cormier (UdeM) GELE2442 Chapitre 7 Hiver 2015 12 / 21

Page 13: GELE2442 Chapitre 7 : Registres et compteurs - … · Compteur synchrone: une horloge commune est branch ee aux entr ees CLK de toutes les bascules. Gabriel Cormier (UdeM) GELE2442

Compteurs

Compteurs

Deux types principaux:

Compteur en cascade (ripple counter): les entrees d’horloge CLK nesont pas activees par une horloge commune, mais par la sortie desautres bascules

Compteur synchrone: une horloge commune est branchee aux entreesCLK de toutes les bascules.

Gabriel Cormier (UdeM) GELE2442 Chapitre 7 Hiver 2015 13 / 21

Page 14: GELE2442 Chapitre 7 : Registres et compteurs - … · Compteur synchrone: une horloge commune est branch ee aux entr ees CLK de toutes les bascules. Gabriel Cormier (UdeM) GELE2442

Compteurs Compteur binaire en cascade

Compteur binaire en cascade

La sortie d’une bascule est branchee a l’entree CLK de la basculesuivante

La bascule qui contient le bit le moins significatif recoit les pulsesd’entree

Gabriel Cormier (UdeM) GELE2442 Chapitre 7 Hiver 2015 14 / 21

Page 15: GELE2442 Chapitre 7 : Registres et compteurs - … · Compteur synchrone: une horloge commune est branch ee aux entr ees CLK de toutes les bascules. Gabriel Cormier (UdeM) GELE2442

Compteurs Compteur binaire en cascade

Compteur binaire en cascade

QD

C Q’R

QD

C Q’R

QD

C Q’R

QD

C Q’R

A0

A1

A2

A3

Reset

Compte

Figure 5 : Compteur binaire en cascade a 4 bitsGabriel Cormier (UdeM) GELE2442 Chapitre 7 Hiver 2015 15 / 21

Page 16: GELE2442 Chapitre 7 : Registres et compteurs - … · Compteur synchrone: une horloge commune est branch ee aux entr ees CLK de toutes les bascules. Gabriel Cormier (UdeM) GELE2442

Compteurs Compteur DCB en cascade

Compteur DCB en cascade

Passe a travers la sequence de 0 a 9 puis recommence a 0

Il faut 4 bascules pour creer ce circuit, puisque le DCB necessite 4 bits

0000 0001 0010 0011 0100

01010110011110001001

Figure 6 : Diagramme d’etat d’un compteur DCB

Gabriel Cormier (UdeM) GELE2442 Chapitre 7 Hiver 2015 16 / 21

Page 17: GELE2442 Chapitre 7 : Registres et compteurs - … · Compteur synchrone: une horloge commune est branch ee aux entr ees CLK de toutes les bascules. Gabriel Cormier (UdeM) GELE2442

Compteurs Compteur DCB en cascade

Compteur DCB en cascade

On peut combiner des compteurs DCB pour realiser des compteurs deplus de 10

Les entrees des decades superieures sont le bit Q8 de l’etageprecedent.

Gabriel Cormier (UdeM) GELE2442 Chapitre 7 Hiver 2015 17 / 21

Page 18: GELE2442 Chapitre 7 : Registres et compteurs - … · Compteur synchrone: une horloge commune est branch ee aux entr ees CLK de toutes les bascules. Gabriel Cormier (UdeM) GELE2442

Compteurs Compteur DCB en cascade

Compteur DCB en cascade

CompteurDCB

CompteurDCB

CompteurDCB

100

Q1Q2Q4Q8

101

Q1Q2Q4Q8

102

Q1Q2Q4Q8

Compte

Figure 7 : Compteur DCB a trois decades

Gabriel Cormier (UdeM) GELE2442 Chapitre 7 Hiver 2015 18 / 21

Page 19: GELE2442 Chapitre 7 : Registres et compteurs - … · Compteur synchrone: une horloge commune est branch ee aux entr ees CLK de toutes les bascules. Gabriel Cormier (UdeM) GELE2442

Compteurs synchrones

Compteurs synchrones

Differents des compteurs en cascade: l’horloge est appliquee a toutesles bascules

Une horloge commune active toutes les bascules simultanement,plutot qu’une a la fois.

Gabriel Cormier (UdeM) GELE2442 Chapitre 7 Hiver 2015 19 / 21

Page 20: GELE2442 Chapitre 7 : Registres et compteurs - … · Compteur synchrone: une horloge commune est branch ee aux entr ees CLK de toutes les bascules. Gabriel Cormier (UdeM) GELE2442

Compteurs synchrones

Compteur synchrone: exemple

QT

C Q’

QT

C Q’

QT

C Q’

QT

C Q’

Q0

Q1

Q2

Q3

CNTEN

CLK

Figure 8 : Compteur binaire synchrone a 4 bits

Gabriel Cormier (UdeM) GELE2442 Chapitre 7 Hiver 2015 20 / 21

Page 21: GELE2442 Chapitre 7 : Registres et compteurs - … · Compteur synchrone: une horloge commune est branch ee aux entr ees CLK de toutes les bascules. Gabriel Cormier (UdeM) GELE2442

Compteurs synchrones

Compteur synchrone: exemple

Le circuit de la figure 8 possede aussi une entree d’activation globale(CNTEN)

Chaque bascule T va seulement inverser si CNTEN = 1

Attention a la vitesse de l’horloge: si l’horloge est trop rapide, il estpossible qu’un changement au LSB n’ait pas le temps de se propagerau MSB

Gabriel Cormier (UdeM) GELE2442 Chapitre 7 Hiver 2015 21 / 21