Vous êtes sur la page 1sur 19

KARIM Mohammed www.fsdmfes.ac.

ma

Chapitre 6 : Compteurs

Introduction
Un compteur binaire modulo N est un ensemble ordonné de bascules JK qui
parcourt les valeurs de 0 jusqu'à N-1. A chaque front actif du signal d’horloge, le
compteur s’incrémente de 1. Lorsque le compteur atteint la valeur maximale N-1,
l’impulsion d’horloge suivante le ramène à 0.
Chaque bascule de rang i lui correspond le poids 2i de façon à représenter les
nombres selon la forme polynomiale habituelle.

I. Compteur asynchrone

I.1. Compteur asynchrone complet (N = 2n)

Un compteur asynchrone complet est un compteur binaire modulo N=2n. L’exposant de cette
puissance fournit le nombre de bascules JK à utiliser. Il reste à étudier comment connecter
ces bascules pour concevoir un tel compteur.
A titre d’illustration, prenons l’exemple d’un compteur modulo 8. Pour cela, il faut 3 bascules
JK dont les sorties sont respectivement Q2,Q1,Q0 que nous supposons à front descendant.
Ce compteur décrit le cycle 0,1,2,3,4,5,6,7.
Nous allons dresser la tableau d’évolution qui fournit dans l’ordre les états successifs des
sorties Q2,Q1,Q0 dans un cycle ainsi que leur équivalent décimal.
KARIM Mohammed www.fsdmfes.ac.ma

Q2 Q1 Q0
0 0 0 0
1 0 0 1
2 0 1 0
3 0 1 1
4 1 0 0
5 1 0 1
6 1 1 0
7 1 1 1

Figure n°1 : tableau d’évolution d’un compteur binaire modulo 8

Afin d'obtenir une représentation de l'évolution des signaux générés par le compteur et de
les comparer, on utilise des graphiques dans lesquels l'axe horizontal ou axe des abscisses
est gradué en fonction du temps. L'axe vertical ou axe des ordonnées est gradué en niveaux
de tension variant entre le niveau haut et le niveau bas (H et L).

Ainsi, on déduit facilement de ce tableau les chronogrammes suivants :

Q0

Q1

Q2

Figure n°2

On constate que :
- Q0 (LSB) change d’état à chaque front descendant du signal d’horloge H.
- Q1 change d’état à chaque front descendant de Q0.
- Q2 change d’état à chaque front descendant de Q1.
KARIM Mohammed www.fsdmfes.ac.ma

Cela suppose intuitivement que :


- Ji = Ki = 1 : condition nécessaire à la commutation.
- CLK0 = H, CLK1 = Q0, CLK2 = Q1 avec CLKi : entrée d’horloge pour la
bascule de rang i.

Ceci conduit au câblage suivant :

Figure n°3 : compteur asynchrone modulo 8

Les équations ci-dessus peuvent être généralisées pour un compteur asynchrone complet à
n bascules (modulo N=2n) sous une forme récurrente :
- Ji = Ki = 1 : condition nécessaire à la commutation.
- CLK0 = H,
- CLKi = Qi-1 : la sortie de la bascule de rang i-1 (Qi-1) sert comme entrée
d’horloge pour la bascule de rang i (CLKi).

I.2. Compteur asynchrone incomplet (N < 2n)

Un compteur asynchrone incomplet modulo N (N < 2n) est un compteur qui parcourt une
partie de son cycle complet (soient N états parmi 2n). Il est conçu de la même manière qu’un
compteur asynchrone complet, sauf qu’il faut agir sur ce dernier pour qu’il passe
immédiatement à zéro une fois qu’il atteint N. Il suffit donc, de détecter la valeur transitoire N
qui sert à remettre le compteur à 0 au lieu de progresser en agissant sur les entrées Clear
des bascules JK. Pour cela, On rajoute une porte NAND supplémentaire dont les entrées
sont les sorties des bascules qui sont à 1 pour N et dont la sortie va à leurs entrées Clear.
KARIM Mohammed www.fsdmfes.ac.ma
Exemple : compteur asynchrone modulo 6 (< 23)
La puissance de 2 immédiatement supérieure à 6 est 23 = 8. D’où la nécessité de trois
bascules JK Q2, Q1, Q0 que nous supposons à front descendant.
On câble ces bascules de la même manière qu’un compteur asynchrone complet modulo 8
auquel on ajoute une porte NAND qui détecte l’état transitoire 6 pour remettre le compteur à
zéro. Les entrées de la porte NAND sont les sorties des bascules qui sont à 1 pour N = 6 =
(110)2 : soient Q1 et Q2. La sortie de la porte NAND va aux entrées Clear des bascules Q1 et
Q2. La figure n°4 illustre le schéma du compteur asynchrone modulo 6.

Figure n°4
N.B. : On a rajouté un inverseur car les entrées Clear de ces bascules sont actives à 1.

Tant que l’état 6 n’est pas détecté, la sortie de la porte NAND est à 1 et n’a aucun effet sur le
fonctionnement du compteur. Une fois l’état 6 est détecté, la sortie de la porte NAND prend 0
et remet à 0 le compteur d’une manière prioritaire.

Remarque : l’état transitoire 6 n’a aucun effet sur le fonctionnement puisqu’il n’apparaît que
momentanément avant la remise à zéro. C’est ce que nous montre la figure n°5.

I.3. Compteur asynchrone intégré : CI7493

Le compteur 7493 est constitué de quatre bascules notées QA,QB,QC,QD dont QA peut être
utilisée séparément comme un compteur modulo 2. Les trois autres bascules sont câblées
de manière à constituer un compteur modulo 8.
Il dispose de deux entrées d’horloge A et B qui sont sensibles aux fronts descendants du
signal d’horloge qui leur est appliqué. Sa remise à zéro est asynchrone et assurée par les
deux entrées R0 et R1.
KARIM Mohammed www.fsdmfes.ac.ma
La figure n°5 reproduit le brochage ainsi que le schéma de principe du 7493 tels qu’ils
apparaissent dans la fiche technique du fabriquant.
KARIM Mohammed www.fsdmfes.ac.ma
Pour obtenir un compteur modulo 16 à l’aide du 7493 par exemple, il suffit de mettre en
cascade les deux compteurs modulo 2 et modulo 8. Pour cela, nous devons relier la sortie
QA à l’entrée B et appliquer le signal d’horloge sur l’entrée A.

Pour réaliser des modulo différents de 16 (par exemple 10) à l’aide du 7493, on met en
cascade les deux compteurs modulo 2 et modulo 8 de la même manière qu’auparavant, sauf
qu’il faut agir sur le compteur pour qu’il passe immédiatement à zéro une fois qu’il atteint 10.
Il suffit donc, de détecter la valeur transitoire 10 qui sert à remettre le compteur à 0 au lieu de
progresser en agissant sur les deux entrées de mise à zéro asynchrone. Pour cela, il suffit
de connecter les sorties QB et QD aux deux entrées R0 et R1
Tant que l’état 10 n’est pas détecté, la sortie de la porte NAND intégrée dans le 7493 est à 1
et n’a aucun effet sur le fonctionnement du compteur. Une fois l’état 10 est détecté, la sortie
de la porte NAND prend 0 et remet à 0 le compteur d’une manière prioritaire.

Retard de propagation dans les compteurs asynchrones :


Les compteurs asynchrones sont simples à concevoir mais ils ne peuvent pas être utilisés à
n’importe quelle fréquence. En effet, à cause du retard de propagation  introduit par
chaque bascule, la sortie Q0 n'est délivrée qu'après un temps , la sortie Q1 n'est délivrée

qu'après 2 et ainsi de suite. Autrement dit, les retards de propagation introduits par les
bascules s'additionnent de sorte que la sortie Qn-1 n'est obtenue qu'après un retard de n (n

: nombre de bascules à utiliser).

Un bon fonctionnement impose que :

n.  Te
1 1
  Fe
n. Te
1
Donc Fe   Fmax
n.
Te : période du signal d’horloge H.
Fe : fréquence du signal d’horloge H.

Evidemment, à mesure qu'augmente n, la fréquence limite de fonctionnement (Fmax) diminue.


A titre d’exemple, pour un compteur modulo 100 utilisant 7 bascules ayant  = 50 ns, sa
fréquence maximale de fonctionnement sera :
KARIM Mohammed www.fsdmfes.ac.ma

1 1
Fmax    2 MHz
n 10  50ns

Nous venons de voir que les compteurs asynchrones présentent un inconvénient majeur
(limitation de fréquence de fonctionnement) dû au principe de leur fonctionnement
asynchrone. On contourne cette limitation en utilisant des compteurs synchrones dont le
signal d’horloge est le même pour toutes les bascules.

II. Compteurs synchrones


Dans ce type de compteurs synchrones, toutes les bascules sont connectées au même
signal d’horloge. L’état du compteur dépend des entrées Ji et Ki des bascules JK.

II.1. Compteur synchrone complet


Nous allons raisonner de la même manière sur un compteur synchrone complet modulo 8 et
les équations obtenues pour les entrées Ji et Ki seront généralisées par la suite à un
compteur modulo N =2n avec n quelconque.

Le compteur modulo 8 décrit le cycle 0,1,2,3,4,5,6,7. Il nécessite trois bascules JK (8 =2 3)


dont les entrées d’horloge sont connectées au même signal d’horloge H. Nous supposons
que les bascules sont à front descendant.

D’après les chronogrammes d’un compteur modulo 8 (figure n°6), on peut faire les
observations suivantes :

Q0

Q1

Q2

Figure n°6
KARIM Mohammed www.fsdmfes.ac.ma
- Q0 change d’état à chaque front descendant du signal d’horloge H.
- Q1 change d’état au prochain front descendant du signal d’horloge H si Q0 est à 1. Sinon,
elle maintient son état.
- Q2 change d’état au prochain front descendant du signal d’horloge H si Q0 et Q1 sont à 1.
Sinon, elle maintient son état.

D’après le fonctionnement d’une bascule JK, ceci conduit aux équations suivantes pour un
compteur synchrone modulo 8 :
- CLKi = H  i
- J0 = K0 = 1
- J1 = K1 = Q0
- J2 = K2 = Q0.Q1

Ces équations peuvent être généralisées pour un compteur synchrone modulo N=2n sous
une forme récurrente :
- J0 = K0 = 1
- Ji = Ki = Q0.Q1......Qi-1 (pour 0 i  n-1).
- CLKi = H  i

La figure n°7 montre le schéma d’un compteur synchrone modulo 8.

Figure n°7

II.2. Compteur synchrone incomplet modulo N


La méthode de synthèse d’un compteur synchrone incomplet consiste à :
1) Dresser un tableau de transition des états présents et futurs des n bascules JK constituant
le compteur (n est l’exposant de la puissance de 2 immédiatement supérieure à N). On
remplie ce tableau par les valeurs à appliquer sur les entrées Ji et Ki pour obtenir une
KARIM Mohammed www.fsdmfes.ac.ma
transition déterminée sur la sortie de chaque bascule en se servant du tableau de
transition d’une bascule JK (figure n°).

QN QN+1 J K
0 0 0 X
0 1 1 X
1 0 X 1
1 1 X 0

QN : état présent de la bascule


QN+1 : état futur de la bascule
Figure n° : tableau de transition d’une bascule JK

2) En déduire les équations simplifiées des entrées Ji et Ki grâce aux tableaux de Karnaugh
en considérant les états interdits comme indifférents.

3) Examiner l’évolution des états interdits connaissant les équations des entrées Ji
et Ki. Si il existe un état interdit qui n’évolue pas vers un état du cycle normal
après un certain nombre d’impulsions d’horloge, il doit être détecté en
provoquant une remise à 0 asynchrone (Clear) de toutes les bascules constituant
le compteur.
Si tous les états interdits évoluent vers le cycle normal, on dit que le compteur est
auto-correcteur.

II.3. Exemple : compteur synchrone modulo 6


A titre d'illustration, nous allons concevoir un compteur synchrone modulo 6.
Ce compteur nécessite 3 bascules JK Q2, Q1, Q0 dont les entrées d’horloge sont connectées
au même signal H. Il dispose d’un cycle normal de 6 états allant de 0 à 5.

1) Nous allons dresser le tableau de transition des états présents et futurs des 3 bascules
Q2, Q1, Q0 cons tituant le compteur modulo 6.
KARIM Mohammed www.fsdmfes.ac.ma

Etat présent Etat futur


Dec. Q2 Q1 Q0 J2 K2 J1 K1 J0 K0 Q2 Q1 Q0 Dec
.
0 0 0 0 0 X 0 X 1 X 0 0 1 1
1 0 0 1 0 X 1 X X 1 0 1 0 2
2 0 1 0 0 X X 0 1 X 0 1 1 3
3 0 1 1 1 X X 1 X 1 1 0 0 4
4 1 0 0 X 0 0 X 1 X 1 0 1 5
5 1 0 1 X 1 0 X X 1 0 0 0 0

2) Mise en équation des entrées Ji et Ki

J0 K0
Q1Q0 00 01 11 10 Q1Q0 00 01 11 10
Q2 Q2
00 1 X X 1 00 X 1 1 X
01 1 X X X 01 X 1 X X
J0  1 K0  1

J1 K1
Q1Q0 00 01 11 10 Q1Q0 00 01 11 10
Q2 Q2
0 0 1 X X 0 X X 1 0
1 0 0 X X 1 X X X X

J1  Q0 Q2 K1  Q0

J2 K2
Q1Q0 00 01 11 10 Q1Q0 00 01 11 10
Q2 Q2
0 0 0 1 0 0 X X X X
1 X X X X 1 0 1 X X
J 2  Q0 Q1 K 2  Q0
KARIM Mohammed www.fsdmfes.ac.ma

On en déduit les équations suivantes pour les entrées Ji et Ki


J0  1 K0  1

J1  Q0 Q2 K1  Q0
J 2  Q0 Q1 K 2  Q0

3) Vérification de l’évolution des 2 états interdits


Connaissant les équations des entrées Ji, et Ki, on va déterminer l’évolution des 2 états
interdits 6 et 7.

Etat présent Etat futur


Q2 Q1 Q0 J2 K2 J1 K1 J0 K0 Q2 Q1 Q0
6 1 1 0 0 0 0 0 1 1 1 1 1 7
7 1 1 1 1 1 0 1 1 1 0 0 0 0

Les deux états interdits ne sont pas des états de blocage. Donc le compteur est
auto-correcteur.
KARIM Mohammed www.fsdmfes.ac.ma

4) Montage

Figure n°8 : Compteur synchrone modulo 6 (à base de bascules JK)

III. Décompteur synchrone

Un décompteur synchrone fonctionne de la même manière qu’un compteur synchrone sauf


qu’à chaque front actif du signal d’horloge, il se décrémente de 1.
De la même manière, nous allons raisonner sur un décompteur synchrone modulo 8 et les
résultats obtenus seront étendus à un décompteur modulo N =2n avec n quelconque.
Le tableau n° illustre le cycle complet allant de 7 à 0. Soient Q2,Q1,Q0 les sorties des 3
bascules JK que nous supposons à front montant.

Déc. Q2 Q1 Q0
7 1 1 1
6 1 1 0
5 1 0 1
4 1 0 0
3 0 1 1
2 0 1 0
1 0 0 1
0 0 0 0
KARIM Mohammed www.fsdmfes.ac.ma

Ceci se traduit par les chronogrammes suivants :

Figure n°9

On constate que :
- Q0 change d’état à chaque front montant du signal d’horloge H.
- Q1 change d’état au prochain front montant du signal d’horloge H si Q0 est à 0. Sinon, elle
maintient son état.
- Q2 change d’état au prochain front montant du signal d’horloge H si Q0 et Q1 sont à 0.
Sinon, elle maintient son état.

D’après le fonctionnement d’une bascule JK, ceci conduit à :


 J 0  K0  1

 J1  K1  Q0

 J 2  K2  Q0 .Q1

Ces équations peuvent être généralisées sous une forme récurrente :


 J 0  K0  1

 J i  Ki  Q0 .Q1.......Qi 1 (pour i  1 )
KARIM Mohammed www.fsdmfes.ac.ma

La figure n°10 montre le schéma d’un décompteur synchrone modulo 8.

Figure n°10

Compteur synchrone intégré 7490 :


Parmi les compteurs synchrones intégrés existants, citons le 7490.
La figure n°11 reproduit son symbole, son schéma logique ainsi que son tableau de
fonctionnement tels qu’ils apparaissent dans la fiche technique du fabriquant.

Figure n°11 a) : Symbole du CI7490


KARIM Mohammed www.fsdmfes.ac.ma

Figure n°11 b) : Circuit logique du 7490

Figure n°11 c) : Tableau de fonctionnement du 7490


KARIM Mohammed www.fsdmfes.ac.ma
IV. Compteur bidirectionnel

IV.1. Compteur bidirectionnel avec deux signaux d’horloge

Un compteur bidirectionnel est un circuit qui fonctionne selon le mode comptage ou


décomptage. Il dispose de deux entrées d’horloge Hu et Hd. Il s’incrémente à chaque front
actif de l’horloge de comptage Hu et se décrémente à chaque front actif de l’horloge de
décomptage Hd.

Compteur bidirectionnel intégré 74193 :

Le 74193 est un compteur synchrone bidirectionnel programmable modulo 16. Il dispose de :


- Deux entrées d’horloge CPU (horloge de comptage) et CPD (horloge de décomptage) qui
sont sensibles aux fronts montants du signal d’horloge qui leur est appliqué.

- Une remise à zéro asynchrone permettant de forcer le compteur à 0 indépendamment du


signal d’horloge (MR).

- Un mode de chargement parallèle asynchrone; ce qui signifie que les sorties peuvent être
positionnées à des niveaux logiques que l’on veut à l’aide des entrées A,B,C,D en imposant
une impulsion basse sur l’entrée de chargement parallèle LOAD indépendamment du signal
d’horloge.

Pour en faciliter la mise en cascade, ces compteurs disposent en plus de deux sorties de
retenue : une sortie de retenue comptage qui délivre une impulsion négative une fois le
compteur atteint l’état 15 et une sortie retenue de décomptage une fois le décompteur
atteint l’état 0. Ces deux sorties ne sont validées que lorsque l’horloge est au niveau bas.

La figure n° illustre les circuits internes d’anticipation de retenue ainsi que les
chronogrammes.

IV.2. Compteur bidirectionnel avec une seule entrée d’horloge et une ligne de
commande X

Il dispose d’une seule entrée d’horloge et d’une ligne de commande X telle que :
- X = 0 entraîne le comptage,
- X = 1 entraîne le décomptage.
KARIM Mohammed www.fsdmfes.ac.ma
Exemple : compteur synchrone bidirectionnel modulo 8.
Nous avons vu au paragraphe II.1. que les équations d’un compteur synchrone modulo 8
sont :
- J0 = K0 = 1
- J1 = K1 = Q0
- J2 = K2 = Q0.Q1

Les équations d’un décompteur synchrone modulo 8 sont :


 J 0  K0  1

 J1  K1  Q0

 J 2  K2  Q0 .Q1

On en déduit les équations du compteur bidirectionnel synchrone modulo 8 en


fonction de la ligne de commande X :

J 0  K 0  1
J 1  K1  Q 0 . X  Q0 . X
 J 2  K 2  Q 0 . Q 1 . X  Q 0.Q1 . X

Ce qui se généralise facilement au cas du compteur bidirectionnel modulo 2n par :


 J 0  K0  1

 J i  Ki  Q0 .Q1 ......Qi 1 .X  Q0 .Q1......Qi 1.X (pour i  1).


KARIM Mohammed www.fsdmfes.ac.ma
Compteur bidirectionnel intégré 74191 :

Le 74191 est un compteur bidirectionnel synchrone modulo 16 avec une seule entrée
d’horloge et une ligne de commande X telle que X=0 entraîne le comptage et X=1 entraîne le
décomptage. Ce compteur dispose aussi d’un mode de chargement parallèle asynchrone à
l’aide des entrées parallèles et de l’entrée de chargement. Le compteur change d’état à
chaque front montant du signal d’horloge tant que l’entrée de validation est active (Val=0). Le
compteur est inhibé dès que cette entrée est mise à l’état 1 (Val=0). La valeur courante du
compteur reste constante.

Pour en faciliter l’extension, ce compteur possède une sortie RCE. Ces compteurs peuvent
facilement être mis en cascade en reliant la sortie RCE à l’entrée de validation de la puce de
rang supérieur.
KARIM Mohammed www.fsdmfes.ac.ma

Vous aimerez peut-être aussi