ForHosting KIT · Ingénierie et construction

Calculateur d'états compteur Johnson

Quatre bascules montées en compteur Johnson donnent 8 états uniques, soit le double du nombre d'étages. Indiquez le nombre d'étages pour obtenir ce chiffre, celui d'un compteur en anneau simple et, jusqu'à 53 étages, celui d'un compteur binaire. Gratuit dans votre navigateur.

  • Gratuit
  • Fonctionne dans votre navigateur
  • Sans inscription
  • Vos données restent sur votre appareil
Utilisez-le depuis WebAPIE-mailTelegramApp bientôt
Si vous saisissez
Étages
4
Vous obtenez
États uniques
8
États du compteur en anneau
4
Module
8
États du compteur binaire
16

Un compteur Johnson, aussi appelé compteur annulaire tordu ou compteur de Möbius, est un circuit séquentiel de type registre à décalage dans lequel la sortie inversée de la dernière bascule alimente le premier étage. Contrairement à un compteur binaire libre qui peut parcourir 2 puissance n codes avec n bascules, ou à un compteur en anneau simple qui ne cycle que n motifs one-hot, la topologie Johnson parcourt systématiquement exactement 2n états distincts avant de se répéter. Concepteurs numériques, étudiants et programmeurs FPGA ont besoin de ce chiffre 2n immédiatement pour dimensionner un module, choisir un décodeur ou comparer des styles de compteurs sur une fiche technique. Ce calculateur accepte le nombre d'étages de bascules et renvoie le nombre d'états uniques avec la formule du manuel, plus le décompte anneau simple en parallèle et, lorsqu'il est exact, la taille du compteur binaire pour le même nombre d'étages.

Qu'est-ce qu'un compteur Johnson annulaire tordu et pourquoi 2n états

Partez de n bascules D câblées en registre à décalage : à chaque front d'horloge le bit de l'étage i passe à l'étage i plus un. Dans un compteur en anneau simple, la sortie non inversée du dernier étage revient à l'entrée du premier, de sorte qu'un un (ou un zéro) circulant produit un cycle de longueur n—la séquence classique one-hot ou one-cold. Un compteur Johnson tord cette rétroaction : le complément du dernier étage pilote le premier.

Cette inversion double le parcours dans le graphe d'états. Depuis un reset à zéro, la machine enchaîne n motifs montants qui remplissent des uns depuis une extrémité, puis n motifs descendants qui les effacent, pour une orbite fermée de longueur 2n sans codes intermédiaires invalides si l'on part d'une graine légale. Tout code légal est un bloc contigu de uns suivi de zéros ou de zéros suivi de uns vu comme décalage circulaire de la chaîne tordue—il existe exactement 2n de ces chaînes pour une largeur n.

C'est pourquoi le nombre d'états uniques d'un compteur Johnson est toujours le double du nombre d'étages, indépendamment de la fréquence d'horloge ou du nœud technologique. Les concepteurs utilisent ce module 2n pour des horloges divide-by-2n, des générateurs décade ou multiphase avec n égal à cinq (dix états), et des contrôleurs de séquence à faible coût logique qui décodent avec une poignée de portes à deux entrées plutôt qu'un arbre décodeur binaire complet.

Contrôles en cours et laboratoire

Les étudiants saisissent le nombre n d'étages de bascules et vérifient qu'un compteur Johnson annulaire tordu a exactement 2n états uniques avant de comparer avec les compteurs anneau (n) et binaires (2^n).

Notation automatique d'examens et LMS

Notez les questions de logique numérique sur le module du compteur Johnson avec un oracle déterministe 2n plutôt qu'une simulation complète de bascules.

Dimensionnement FPGA et conception de séquences

Choisissez n de sorte que 2n corresponde au rapport de division ou au nombre de pas multiphase requis avant d'écrire le HDL pour la chaîne de décalage et le décodeur.

Combien d'états uniques un compteur Johnson possède-t-il ?

Un compteur Johnson (anneau tordu) avec n étages de bascules a exactement 2n états uniques.

En quoi un compteur Johnson diffère-t-il d'un compteur en anneau ?

Un compteur en anneau simple réinjecte le dernier étage sans inversion et a n états uniques. Un compteur Johnson inverse cette rétroaction et a 2n états uniques.

Combien de bascules faut-il pour un compteur Johnson diviseur par 10 ?

Cinq. Un compteur Johnson à 5 étages parcourt 10 états avant de se répéter : c'est le montage décimal courant des compteurs de décades et des générateurs d'ondes multiphases.

Quelle séquence un compteur Johnson parcourt-il ?

Après une remise à zéro, il se remplit de uns depuis une extrémité, un étage par coup d'horloge, puis les efface de la même façon. On obtient n motifs montants et n descendants, et chaque code valide est un bloc de uns accolé à un bloc de zéros.

Pourquoi un compteur Johnson est-il facile à décoder ?

Comme ses états suivent ce motif en blocs, chacun se reconnaît avec quelques portes à deux entrées au lieu d'un arbre décodeur binaire complet. La logique reste ainsi peu coûteuse dans les séquenceurs et les diviseurs d'horloge par 2n.

Tout sur cette page est disponible par programmation. Cette section s'adresse aux équipes qui veulent l'intégrer à leurs systèmes ; les autres peuvent simplement utiliser l'outil ci-dessus.

POSThttps://api.kit.forhosting.com/elec/johnson-counter

Authentification par jeton Bearer : un seul POST met la tâche en file d’attente, et le résultat vous parvient par webhook ou lien signé.

curl -X POST https://api.kit.forhosting.com/elec/johnson-counter \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"stages":4}'
{
  "stages": 4
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "elec.johnson_counter",
  "status": "queued",
  "_links": {
    "result": "/tasks/tsk_…/result"
  }
}

L’API est asynchrone : chaque appel renvoie un task_id immédiatement, puis vous interrogez l’état à raison d’une requête par seconde.

par requête$0.002

Le prix est publié, sans tokens ni crédits. Une tâche qui échoue n’est pas facturée.

HTTPCodeSignification
401unauthorizedClé API absente ou invalide : vérifiez l’en-tête Authorization.
402insufficient_balanceSolde insuffisant : rechargez votre compte pour lancer cette tâche.
404unknown_typeType de tâche inconnu : vérifiez le champ type de votre requête.
429rate_limitedTrop de requêtes : ralentissez la cadence, puis réessayez.

Contrat d'entrée, champs de réponse et règles de validation

Exemple : stages égal à quatre donne huit états Johnson uniques, quatre d'anneau et seize binaires. Exemple : stages égal à cinq donne dix états uniques—l'arrangement Johnson décade courant pour compteurs décade et générateurs multiphase. Envoyez un corps JSON avec un champ obligatoire : stages, un entier positif n de un à dix mille. Les chaînes numériques sont acceptées ; les alias n, flip_flops, flipflops, stages_n, ff et count pointent vers le même paramètre pour que clients SDK et widgets de formulaire restent souples. stages manquant, valeurs non finies, non entières, zéro, négatives ou au-dessus du plafond échouent avec invalid_input et ne sont pas facturés. En succès le corps répète stages, indique unique_states comme deux fois stages, ring_counter_states comme stages pour la comparaison non tordue, et modulus égal à unique_states afin que le vocabulaire de diviseur de fréquence soit à un champ. La chaîne formula réaffirme unique_states égal à deux fois stages pour l'affichage à côté du nombre. Lorsque stages vaut au plus cinquante-trois, binary_counter_states est aussi renvoyé comme deux puissance stages afin de contraster la capacité linéaire Johnson avec la binaire exponentielle via des entiers IEEE exacts ; pour un n plus grand ce champ de comparaison est omis plutôt qu'arrondi ou mis à null, selon la règle de la plateforme selon laquelle les sorties optionnelles disparaissent au lieu de porter null.

Où une API d'états du compteur Johnson apporte de la valeur

Les notes de cours et manuels de laboratoire demandent le nombre d'états uniques d'un compteur Johnson à quatre ou cinq bits ; les tuteurs ont besoin d'un oracle déterministe qui répond toujours 2n sans confondre anneau, Johnson et binaire. Les architectes FPGA et ASIC esquissent des modules—huit, dix, douze, seize—avant d'engager des LUT ou cellules standard, et un calculateur à un champ est plus rapide qu'un testbench HDL pour une simple vérification de théorie de comptage. Une validation échouée ne consomme pas le solde. Les générateurs d'examens et plugins LMS appellent un petit endpoint parse pour noter des réponses libres sans simulateur de circuit. L'implémentation étant pure parse de niveau A, chaque appel réussi coûte le prix de base publié $0.002 sans jetons de modèle ni réseau sortant. Gardez stages petit et entier, figez unique_states dans les tests, et vous obtiendrez des réponses reproductibles pour devoirs, tableaux de fiche technique et workers en bordure sans déployer votre propre simulateur de logique séquentielle.

Quelle entrée le calculateur exige-t-il ?

Un entier positif stages de 1 à 10000 (alias : n, flip_flops, flipflops, stages_n, ff, count). Non-entiers, zéro, négatifs ou valeurs manquantes renvoient invalid_input.

Pourquoi binary_counter_states manque-t-il parfois ?

Il n'est inclus que lorsque stages ≤ 53 afin que 2^stages soit un entier sûr exact. Pour un n plus grand le champ optionnel est omis plutôt qu'approximé ou mis à null.

Combien coûte le calculateur d'états du compteur Johnson ?

L'outil navigateur est gratuit. Les requêtes API utilisent le solde KIT prépayé à $0.002 par appel réussi ; une entrée invalide n'est pas facturée.

Consulter la documentation complète du KIT →