Compteurs anneau et compteurs Johnson : conception, fonctionnement et applications pratiques
Un compteur anneau est un type particulier de registre à décalage où la sortie du dernier étage est réinjectée dans le premier. Lorsque des impulsions d'horloge sont appliquées, le motif de données circule indéfiniment.
Par exemple, dans un compteur anneau à quatre étages, le motif se répète toutes les quatre impulsions d'horloge, mais le registre doit d'abord être chargé avec un mot de données. Charger un seul « 1 » (par exemple 1000) est le plus courant et fournit un motif facilement visualisable.

Après le chargement de 1000, la forme d'onde de chaque étage est identique excepté un retard d'un cycle d'horloge, comme montré ci-dessous.

Cette configuration agit comme un diviseur par 4 ; en comparant l'horloge d'entrée avec n'importe quelle sortie, on observe un rapport de fréquence de 4:1.
Division par des facteurs arbitraires
Pour obtenir un diviseur par 10, dix étages sont requis. Un seul « 1 » circulera toutes les dix impulsions d'horloge.

Exigences d'initialisation
Les compteurs anneau doivent être initialisés à la mise sous tension car l'état initial de chaque bascule est indéfini. Une fois initialisés, le motif devrait persister ; cependant, le bruit peut corrompre l'état au fil du temps, brisant potentiellement la séquence.
Un compteur binaire synchrone conventionnel peut s'auto-corriger et est donc souvent plus fiable en fonctionnement à long terme.

Comparaison avec les compteurs conventionnels
Le compteur binaire utilise deux étages et nécessite des portes de décodage, tandis que le compteur anneau est auto-décodé mais nécessite plus d'étages. Si des sorties décodées sont requises et que la plupart de la logique réside dans un seul boîtier de registre à décalage, un compteur anneau peut être attractif ; sinon, le compteur binaire plus simple est préférable.

Les formes d'onde décodées d'un compteur binaire synchrone correspondent à celles du compteur anneau : (QA QB) parcourt 00, 01, 10, 11.
Compteurs Johnson
Aussi appelé compteur anneau à queue inversée, un compteur Johnson surmonte plusieurs limitations du compteur anneau. En réinjectant le complément (Q′) du dernier étage dans le premier, un compteur Johnson ne nécessite que la moitié du nombre d'étages pour un rapport de division donné.
Par exemple, un compteur Johnson à quatre étages divise l'horloge d'entrée par huit, alors qu'un compteur anneau à quatre étages divise par quatre.
Les compteurs Johnson sont généralement mis à zéro à la mise sous tension pour établir un état connu.

Lorsqu'un seul « 1 » est introduit, le compteur progresse à travers une séquence de quatre zéros suivis de quatre uns, produisant un cycle à huit états.

Génération de sorties multiphases
Un compteur Johnson à quatre étages fournit quatre phases chevauchantes à 50 % de rapport cyclique. Un compteur Johnson à trois étages, piloté par une horloge à 360 Hz, génère trois ondes carrées déphasées de 120° à 60 Hz.
Décodage des états
Chaque état d'un compteur Johnson peut être décodé avec de simples portes à deux entrées. Pour un compteur à 4 étages, huit états sont décodés à l'aide de huit portes ET à deux entrées.

Seules des portes de décodage à 2 entrées sont nécessaires quelle que soit la longueur du compteur. L'inversion des entrées des portes ET peut simplifier la logique, mais le diagramme ci-dessous suit de près la fiche technique du CD4022B.

Les huit sorties décodées (G0–G7) restent chacune active à l'état haut pendant une période d'horloge dans le cycle de 8 horloges. Par exemple, G0 est haut lorsque QA et QD sont tous deux bas.

États interdits et correction d'erreur
Parce qu'un registre à décalage à 4 étages peut représenter 16 états binaires, seuls huit sont valides pour le compteur Johnson. Les huit restants sont interdits. Le CD4022B inclut un détecteur d'état interdit composé de deux portes NOR.
En pratique, le compteur est réinitialisé à la mise sous tension pour éviter d'entrer dans un état interdit. Si un état interdit est rencontré (par exemple 010), les portes NOR forcent l'entrée suivante à zéro, convertissant l'état en un état permis (par exemple 000).
Après quelques horloges, tout état interdit sera corrigé. Cependant, pour les applications critiques, réinitialisez toujours le compteur à la mise sous tension.
Dispositifs compteurs Johnson
Des circuits intégrés avec sorties décodées sont disponibles pour les séries 4000 et 74HC. Le CD4017 offre dix sorties décodées (modulo-10), tandis que le CD4022 en fournit huit (modulo-8). Les variantes 74HC fonctionnent à des tensions plus basses (2 V–6 V) et offrent un courant de sortie plus élevé.
- CD4017 compteur Johnson avec 10 sorties décodées (CD4022 compteur Johnson avec 8 sorties décodées)
- 74HC4017 compteur Johnson, 10 sorties décodées

Applications pratiques
La figure 1 montre un 74HC4017 pilotant dix LEDs, une s'allumant chaque cinquième de seconde autour d'un anneau. La capacité de sortie de 4 mA du 74HC4017 (VOH = 4,6 V à 4 mA) suffit pour allumer des LEDs, bien que les courants typiques de LED soient de 10 à 20 mA.

Un temporisateur 555 fournit les impulsions d'horloge ; un tampon supplémentaire peut être inséré si le 555 ne peut pas piloter l'entrée d'horloge du compteur de manière fiable.
Les compteurs Johnson peuvent également générer des ondes carrées triphasées. En sélectionnant P1 = QA, P2 = QC, P3 = QB′, les sorties sont espacées de 120°. Un filtrage passe-bas et une amplification peuvent les transformer en ondes sinusoïdales triphasées pour alimentations ou entraînements moteurs.

Pour les moteurs pas à pas triphasés, les sorties chevauchantes sont décodées en formes d'onde non chevauchantes (P0, P1, P2) adaptées aux circuits drivers tels que ULN2003 ou paires Darlington discrètes.

En utilisant un seul CD4017, le compteur peut être réinitialisé après le troisième comptage, assurant que chaque état dure une période d'horloge complète avant la prochaine réinitialisation.

Fiches de travail associées
- Fiche de travail sur les compteurs
- Fiche de travail sur les registres à décalage
Technologie industrielle
- Circlips (bagues de retenue) : Comprendre leur design et applications
- Module de compteur : Algorithmes optimisés pour systèmes modernes
- Python Counter dans collections : comptage efficace, mise à jour et opérations arithmétiques
- Compteur 4 bits : Comptage Binaire Efficace de 0 à 15
- Conception d'un Compteur Mod-N en Verilog : Module Paramétré et Testbench
- Module Compteur Gray en Verilog – Générateur de Code Gray 4 bits
- Comprendre les clous à anneaux : avantages et utilisations en construction
- ToughMet® 3AT Anneau AT (C72900) – Alliage de cuivre à haute résistance, résistant à la corrosion
- Comprendre les pompes à anneau liquide : fonctionnement et importance