ForHosting KIT · Ingegneria e costruzioni

Calcolatore stati contatore Johnson

Quattro flip-flop collegati come contatore Johnson danno 8 stati unici, il doppio del numero di stadi. Inserisca quanti stadi ha e ottenga quella cifra, quella del contatore ad anello semplice e, fino a 53 stadi, quella del binario per confronto. Gratis nel suo browser.

  • Gratis
  • Funziona nel suo browser
  • Senza registrazione
  • I suoi dati restano sul dispositivo
Usalo da WebAPIEmailTelegramApp presto
Se inserisce
Stadi
4
Ottiene
Stati unici
8
Stati del contatore ad anello
4
Modulo
8
Stati del contatore binario
16

Un contatore Johnson, detto anche contatore ad anello contorto o contatore di Möbius, è un circuito sequenziale a registro a scorrimento in cui l'uscita invertita dell'ultimo flip-flop alimenta il primo stadio. A differenza di un contatore binario libero che può visitare 2 elevato a n codici con n flip-flop, o di un contatore ad anello semplice che cicla solo n pattern one-hot, la topologia Johnson percorre sistematicamente esattamente 2n stati distinti prima di ripetersi. Progettisti digitali, studenti e programmatori FPGA hanno bisogno di quella cifra 2n all'istante quando dimensionano un modulo, scelgono un decodificatore o confrontano stili di contatore su un data sheet. Questo calcolatore accetta il numero di stadi di flip-flop e restituisce il conteggio degli stati unici con la formula da manuale, più il conteggio ad anello semplice a fianco e, quando esatto, la dimensione del contatore binario per lo stesso numero di stadi.

Cos'è un contatore Johnson ad anello contorto e perché ha 2n stati

Si parta da n flip-flop D cablati come registro a scorrimento: a ogni fronte di clock il bit dello stadio i passa allo stadio i più uno. In un contatore ad anello semplice l'uscita non invertita dell'ultimo stadio torna all'ingresso del primo, così un uno (o uno zero) circolante produce un ciclo di lunghezza n—la sequenza classica one-hot o one-cold. Un contatore Johnson contorce quella retroazione: il complemento dell'ultimo stadio pilota il primo.

Quella inversione raddoppia il percorso nel grafo degli stati. Da un reset a zero la macchina attraversa n pattern crescenti che riempiono uni da un'estremità, poi n pattern decrescenti che li cancellano, per un'orbita chiusa di lunghezza 2n senza codici intermedi non validi se si parte da un seme legale. Ogni codice legale è un blocco contiguo di uni seguito da zeri o di zeri seguito da uni visto come scorrimento circolare della catena contorta—esistono esattamente 2n di tali stringhe per larghezza n.

Ecco perché il numero di stati unici di un contatore Johnson è sempre il doppio del numero di stadi, indipendentemente dalla frequenza di clock o dal nodo tecnologico. I progettisti usano questo modulo 2n per clock divide-by-2n, generatori decade o multifase con n uguale a cinque (dieci stati) e controllori di sequenza a basso costo logico che decodificano con una manciata di gate a due ingressi invece di un albero decodificatore binario completo.

Controlli in aula e laboratorio

Gli studenti inseriscono il numero n di stadi di flip-flop e verificano che un contatore Johnson ad anello contorto abbia esattamente 2n stati unici prima di confrontarlo con contatori ad anello (n) e binari (2^n).

Correzione automatica di esami e LMS

Si valutino domande di logica digitale sul modulo del contatore Johnson con un oracolo deterministico 2n invece di una simulazione completa di flip-flop.

Dimensionamento FPGA e progetto di sequenze

Si scelga n in modo che 2n corrisponda al rapporto di divisione o al numero di passi multifase richiesti prima di scrivere l'HDL per la catena a scorrimento e il decodificatore.

Quanti stati unici ha un contatore Johnson?

Un contatore Johnson (anello contorto) con n stadi di flip-flop ha esattamente 2n stati unici.

In che modo un contatore Johnson differisce da un contatore ad anello?

Un contatore ad anello semplice riaggancia l'ultimo stadio senza inversione e ha n stati unici. Un contatore Johnson inverte quella retroazione e ha 2n stati unici.

Quanti flip-flop servono per un contatore Johnson che divide per 10?

Cinque. Un contatore Johnson a 5 stadi percorre 10 stati prima di ripetersi: è la disposizione a decade comune nei contatori decimali e nei generatori di forme d'onda multifase.

Quale sequenza percorre un contatore Johnson?

Dopo un azzeramento si riempie di uni da un'estremità, uno stadio per colpo di clock, poi li svuota allo stesso modo. Si ottengono n configurazioni in salita e n in discesa, e ogni codice valido è un blocco di uni accanto a un blocco di zeri.

Perché un contatore Johnson è facile da decodificare?

Poiché i suoi stati seguono quella semplice struttura a blocchi, ciascuno si riconosce con poche porte a due ingressi invece di un intero albero decodificatore binario. Così la logica resta economica nei controllori di sequenza e nei divisori di clock per 2n.

Tutto quello che vedi in questa pagina è disponibile anche via API. Questa sezione è per i team che vogliono integrarlo nei propri sistemi; chi non ne ha bisogno può semplicemente usare lo strumento qui sopra.

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

Autenticazione con Bearer token: un POST mette in coda l'attività e il risultato arriva via webhook o link firmato.

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 è asincrona: ricevi subito un task_id e puoi fare polling fino a 1 richiesta al secondo.

per richiesta$0.002

Prezzo pubblicato, senza token né crediti. Se l'attività fallisce, non paghi.

HTTPCodiceSignificato
401unauthorizedChiave API mancante o non valida: controlla l'header Authorization.
402insufficient_balanceCredito esaurito: ricarica per continuare a eseguire attività.
404unknown_typeTipo di attività sconosciuto: controlla il campo type della richiesta.
429rate_limitedTroppe richieste in poco tempo: rallenta e riprova tra qualche secondo.

Contratto di ingresso, campi di risposta e regole di validazione

Esempio: stages uguale a quattro produce otto stati Johnson unici, quattro ad anello e sedici binari. Esempio: stages uguale a cinque produce dieci stati unici—l'arrangiamento Johnson a decade comune nei contatori decade e nei generatori multifase. Si invii un corpo JSON con un campo obbligatorio: stages, un intero positivo n da uno a diecimila. In successo il corpo riecheggia stages, riporta unique_states come due volte stages, ring_counter_states come stages per il confronto non contorto, e modulus uguale a unique_states così il lessico del divisore di frequenza è a un campo di distanza. La stringa formula riafferma unique_states uguale a due volte stages per la visualizzazione accanto al numero. Quando stages è al massimo cinquantatré, viene restituito anche binary_counter_states come due elevato a stages per confrontare la capacità lineare Johnson con quella binaria esponenziale usando interi IEEE esatti; per n maggiori quel campo di confronto è omesso anziché arrotondato o null, secondo la regola della piattaforma per cui le uscite opzionali spariscono invece di portare null.

Dove un'API degli stati del contatore Johnson conviene

Appunti di lezione e manuali di laboratorio chiedono il numero di stati unici di un contatore Johnson a quattro o cinque bit; i tutor servono un oracolo deterministico che risponda sempre 2n invece di confondere anello, Johnson e binario. Architetti FPGA e ASIC abbozzano moduli—otto, dieci, dodici, sedici—prima di impegnare LUT o celle standard, e un calcolatore a un campo è più rapido di un testbench HDL solo per una verifica di teoria del conteggio. La validazione fallita non consuma saldo. Generatori di esami e plugin LMS chiamano un piccolo endpoint parse per correggere risposte aperte senza simulatori di circuito. Poiché l'implementazione è parse pura di livello A, ogni chiamata riuscita costa il prezzo base pubblicato $0.002 senza token di modello né rete in uscita. Si mantenga stages piccolo e intero, si fissi unique_states nei test e si ottengono risposte riproducibili per compiti, tabelle di data sheet e worker di edge senza erigere un simulatore di logica sequenziale proprio.

Quale ingresso richiede il calcolatore?

Un intero positivo stages da 1 a 10000 (alias: n, flip_flops, flipflops, stages_n, ff, count). Non interi, zero, negativi o valori mancanti restituiscono invalid_input.

Perché a volte manca binary_counter_states?

È incluso solo quando stages ≤ 53 affinché 2^stages sia un intero sicuro esatto. Per n maggiori il campo opzionale è omesso anziché approssimato o posto a null.

Quanto costa il calcolatore di stati del contatore Johnson?

Lo strumento nel browser è gratuito. Le richieste API usano saldo KIT prepagato a $0.002 per chiamata riuscita; l'ingresso non valido non viene fatturato.

Leggi la documentazione completa del KIT →