JK Flip-Flop spiegato: tabella della verità, diagramma a blocchi, tempi e usi

nov 02 2025
Fonte: DiGi-Electronics
Naviga: 817

Il flip-flop JK è un elemento costitutivo di base dell'elettronica digitale, ampiamente utilizzato per l'archiviazione dei dati, i contatori e la progettazione logica sequenziale. Supera i limiti del flip-flop SR eliminando gli stati non validi e fornendo funzioni di controllo flessibili come Imposta, Reset, Hold e Toggle. Questo articolo ne spiega il principio di funzionamento, la struttura interna, le tabelle di verità, i tipi, le applicazioni e l'uso pratico.

Figure 1. JK Flip-Flop

Panoramica delle infradito JK

Un JK flip-flop è un circuito logico sequenziale bistabile che memorizza un bit di dati utilizzando due stati stabili. Dispone di due ingressi (J per Set, K per Reset), due uscite (Q e Q') e un ingresso di clock (CLK). Gli ingressi opzionali Preset (PR) e Clear (CLR) consentono il controllo asincrono.

Le infradito JK supportano due modalità operative:

• Modalità sincrona – L'uscita cambia solo sull'ingresso del clock.

• Modalità asincrona: Preset e Clear sovrascrivono il clock e forzano immediatamente le modifiche all'uscita.

A differenza di un flip-flop SR, il flip-flop JK evita lo stato non valido. Quando J = K = 1, esegue un'operazione di commutazione, l'uscita commuta ad ogni impulso di clock a causa del feedback interno.

Tabella della verità JK Flip-Flop e tabella di stato

Tabella di verità (con ingressi asincroni)

Questa tabella mostra come l'uscita risponde agli ingressi temporizzati e alle condizioni di preimpostazione/cancellazione asincrone.

Pubbliche RelazioniCLRCLKJKQ(n+1)Funzionamento
01XXX1Set asincrono
10XXX0Reset asincrono
110XXQnNessun cambiamento
1100QnTenere premuto
11101Imposta
11010Ripristina
1111Q̅nAttiva/disattiva

Tabelle degli stati (tabelle delle caratteristiche e delle eccitazioni)

La tabella di verità può essere semplificata in due importanti tabelle di stato utilizzate nella progettazione e nell'analisi.

Tabella caratteristica

Definisce l'output dello stato successivo in base agli input e allo stato corrente.

JKQ(n)Q(n+1)
00QnQn (tieni premuto)
10Qn1 (Insieme)
01Qn0 (Ripristina)
11QnQ̅n (Attiva/disattiva)

Equazione caratteristica:

Q(n+1) = J· Q̅n + K̅· Qn

Tabella di eccitazione

Definisce gli input necessari (J, K) per ottenere una transizione specifica.

Q(n)Q(n+1)JK
000X
011X
10X1
11X0

(X = non mi interessa)

Schema a blocchi di JK Flip-Flop

Figure 2. Block Diagram of JK Flip-Flop

Il diagramma a blocchi di un flip-flop JK mostra come i suoi input chiave e il feedback interno interagiscono per controllare la sua uscita. Gli ingressi J e K determinano le azioni di impostazione e reset, consentendo all'uscita di memorizzare o modificare lo stato in base alla logica di ingresso. Il segnale Clock (CLK) sincronizza queste operazioni in modo che le modifiche avvengano solo in corrispondenza di specifiche transizioni di clock, garantendo una temporizzazione prevedibile nei circuiti digitali.

Oltre a questi ingressi primari, il flip-flop JK può includere anche ingressi di controllo asincroni: Preset (PR) e Clear (CLR). Questi ingressi possono forzare immediatamente l'uscita a 1 logico o 0 logico, indipendentemente dallo stato del clock, rendendoli utili per l'inizializzazione dei circuiti. Una caratteristica distintiva del flip-flop JK è il suo percorso di retroazione interno, in cui l'uscita di corrente Q viene reimmessa nella rete logica. Questo feedback abilita l'azione di commutazione quando sia J che K sono impostati su 1, consentendo all'uscita di alternare gli stati su ciascun impulso di clock.

Simbolo logico JK Flip-Flop e diagramma dei pin

Figure 3. JK Flip-Flop Logic Symbol

Simbolo logico

Il simbolo logico evidenzia:

• Due ingressi: J (Set) e K (Reset)

• Un ingresso clock con indicatore di attivazione del bordo (simbolo triangolo, spesso con bolla se attivo-basso)

• Ingressi asincroni opzionali: PR (Preset) e CLR (Clear)

• Due uscite: Q e Q' (complementari)

Diagramma dei pin (esample: IC flip-flop 74LS76 JK)

Figure 4. 74LS76 JK Flip-Flop IC Pinout

Un diagramma a pin mostra come i flip-flop JK sono implementati in pacchetti IC come DIP-14.

Numero pinNome pinDescrizione
1CLR₁Cancellazione asincrona (Active LOW) per Flip-Flop 1
2K₁Ingresso K per Flip-Flop 1
3J₁Ingresso J per Flip-Flop 1
4CLK₁Ingresso orologio per Flip-Flop 1
5PR₁Preset asincrono (attivo LOW) per Flip-Flop 1
6Q₁Uscita Q per Flip-Flop 1
7GNDTerra
8Q₂Uscita Q per Flip-Flop 2
9PubblicitàPreset asincrono (attivo LOW) per Flip-Flop 2
10CLK₂Ingresso orologio per Flip-Flop 2
11J₂Ingresso J per Flip-Flop 2
12K₂Ingresso K per Flip-Flop 2
13CLR₂Cancellazione asincrona (Active LOW) per Flip-Flop 2
14VCCTensione di alimentazione positiva

Infradito JK padrone-schiavo

Figure 5. Master–Slave JK Flip-Flop

Una sfida comune nei flip-flop JK è la condizione di race-around, che si verifica quando entrambi gli ingressi sono HIGH (J = K = 1) e l'impulso di clock rimane HIGH abbastanza a lungo da consentire all'uscita di alternarsi ripetutamente all'interno di un ciclo. Questo porta a un comportamento instabile.

La configurazione Master-Slave garantisce una sola variazione di uscita per impulso di clock e previene oscillazioni indesiderate anche quando J = K = 1. Questo metodo controlla il problema della gara dividendo l'operazione in due fasi: il Master risponde quando CLK = HIGH e lo Slave si aggiorna quando CLK = LOW.

Per metodi di controllo dell'orologio più avanzati che prevengono anche la gara, vedere la Sezione 9 (Metodi di attivazione).

Metodi di attivazione JK Flip-Flop

Un flip-flop JK diretto che utilizza clock attivati dal livello può soffrire di un problema chiamato race-around, che si verifica quando J = K = 1 mentre il clock rimane HIGH abbastanza a lungo da consentire all'uscita di commutare ripetutamente all'interno di un singolo impulso di clock. Questo porta a un funzionamento instabile.

Per eliminare questo problema, vengono utilizzate due strategie di attivazione:

Tipo di triggerDescrizionePrevenzione delle gare in giroUtilizzo
Master-Slave JKDue chiavistelli a cascata; Master attivo su clock HIGH, Slave su LOWLimita l'impostazione di una volta per cicloCircuiti didattici, velocità moderata
JK attivato da EdgeCattura l'input solo sul fronte di clock ↑ o ↓Elimina completamente il race-aroundModerni sistemi sincroni

Tabella del comportamento del fronte di clock

Bordo dell'orologioJKQ(n+1)
Nessun bordoXXQn (tieni premuto)
↑ o ↓00Qn
↑ o ↓101 (Insieme)
↑ o ↓010 (Ripristina)
↑ o ↓11Q̅n (Attiva/disattiva)

I flip-flop JK attivati dall'edge dominano i pratici design digitali perché garantiscono transizioni pulite e compatibilità con le architetture di clock sincrone.

Diagramma dei tempi JK Flip-Flop

Figure 6. JK Flip-Flop Timing Diagram

Un diagramma di temporizzazione mostra come l'uscita di un flip-flop JK cambia in risposta alle variazioni del clock (CLK) e dei segnali di ingresso (J e K) nel tempo. È uno strumento prezioso per comprendere il comportamento del flip-flop nei circuiti sincroni.

Durante ogni fronte di clock attivo (comunemente il fronte di salita, ↑), il flip-flop campiona gli ingressi e aggiorna l'uscita Q secondo queste regole:

• J = 0, K = 0 → Stato di mantenimento (l'uscita rimane invariata)

• J = 1, K = 0 → Insieme (Q diventa 1)

• J = 0, K = 1 → Reset (Q diventa 0)

• J = 1, K = 1 → Toggle (Q passa al valore opposto)

Un tipico diagramma di temporizzazione JK flip-flop include:

• Forma d'onda di clock (CLK): definisce quando si verificano gli aggiornamenti dell'output

• Segnali di ingresso (J e K): mostra gli stati di ingresso nel tempo

• Segnali di uscita (Q e Q'): le transizioni di stato del display sono chiaramente basate sull'ingresso e sul clock

Questo diagramma aiuta a visualizzare la sequenza dei cambiamenti di stato, semplificando l'analisi dei problemi di temporizzazione, la verifica del comportamento sincrono e la comprensione dei requisiti di configurazione e tempo di mantenimento nella progettazione digitale.

JK Flip-Flop con porte NAND

Figure 7. JK Flip-Flop Using NAND Gates

Un flip-flop JK può essere costruito utilizzando porte NAND di base, che rivelano come funziona il dispositivo internamente a livello di gate. Questa implementazione è comunemente utilizzata nell'insegnamento della logica digitale perché dimostra come il feedback e il controllo del clock funzionino per creare circuiti sequenziali stabili.

La logica interna è costruita utilizzando:

• Due porte NAND accoppiate a croce che formano il chiavistello bistabile di base.

• Due porte NAND aggiuntive per elaborare gli ingressi J e K insieme al feedback di uscita precedente.

• Porte NAND controllate da clock che consentono cambi di stato solo quando il segnale di clock è attivo, garantendo il funzionamento sincrono.

Comportamenti funzionali

• La logica di retroazione impedisce gli stati non validi – A differenza del latch SR, la configurazione JK gestisce in modo sicuro tutte le combinazioni di ingressi.

• Azione di commutazione per J = K = 1 – Il feedback interno alterna lo stato di uscita su ogni impulso di clock attivo.

• Funzionamento sincrono – L'ingresso del clock assicura che l'uscita cambi solo in orari definiti, consentendo l'integrazione con altri circuiti logici sequenziali.

Questa costruzione a livello di cancello aiuta a spiegare perché il flip-flop JK è considerato universale e affidabile. Tuttavia, a causa della sua struttura relativamente complessa e del ritardo di propagazione, i sistemi digitali pratici utilizzano comunemente flip-flop JK attivati dal bordo o versioni IC integrate invece di costruirli da gate discreti.

Mentre il flip-flop JK a livello di gate spiega la logica interna, i pratici sistemi digitali devono anche affrontare problemi di cronometraggio come il race-around. Ciò porta a migliorare le tecniche di innesco discusse di seguito.

Circuiti integrati flip-flop JK popolari

I flip-flop JK sono disponibili come circuiti integrati (IC) in entrambe le famiglie TTL (Transistor-Transistor Logic) e CMOS. Questi circuiti integrati sono comunemente utilizzati in contatori, divisori di frequenza, registri a scorrimento e circuiti di controllo della memoria.

Numero ICFamiglia LogicaDescrizione
74LS73TTLDoppio flip-flop JK con Clear asincrono; Utilizzato in applicazioni di logica sequenziale di base
74LS76TTLDoppio flip-flop JK con Preset e Clear asincroni; Consente il controllo esterno degli stati iniziali
74LS107TTLDoppio flip-flop JK con funzionalità di cancellazione e attivazione/disattivazione attiva-disattiva; Ideale per banchi dividi per 2
CD4027BCMOSDoppio infradito JK con Set e Reset; offre un basso consumo energetico e un'ampia gamma di tensioni

Applicazioni delle infradito JK

I flip-flop JK sono ampiamente utilizzati perché possono funzionare come elementi di memoria, dispositivi di commutazione e contatori sincroni. Le applicazioni comuni includono:

• Divisione di frequenza e contatori – Dividi la frequenza di clock per 2 in modalità di commutazione

• Registri a scorrimento – Utilizzati nella conversione di dati seriale-parallela

• Macchine a stati (FSM) – Logica di sequenza di controllo nei sistemi digitali

• Condizionamento del segnale – Interruttori meccanici antirimbalzo

• Clock Pulse Shaping – Genera segnali a onda quadra

Confronto tra infradito JK e infradito SR, D e T

Figure 8. JK Flip-Flop vs SR, D, and T Flip-Flops Comparison

CaratteristicaJK InfraditoSR InfraditoD InfraditoT Infradito
IngressiJ, KS, RDE
Stato non validoNessunoS=R=1 non validoNessunoNessuno
Modalità di funzionamentoImposta, ripristina, alternaImposta, RipristinaTrasferimento datiAttiva/disattiva solo
Caso d'usoContatori, RegistriChiusura sempliceMemoria, registri a scorrimentoContatori
ComplessitàModeratoSempliceSempliceMolto semplice
Supporto per l'attivazione di Edge

Il flip-flop JK è il più flessibile tra tutti i flip-flop. Può simulare le funzioni dei flip-flop SR, D e T ed è ampiamente utilizzato nei contatori e nei circuiti di controllo digitale.

Risoluzione dei problemi ed errori di progettazione comuni

Problema comuneDescrizioneSoluzione
Errore di sincronizzazione dell'orologioPiù flip-flop che utilizzano orologi non sincronizzati causano discrepanze di temporizzazioneUtilizzare un'unica sorgente di clock globale**
Rumore di ingresso o rimbalzo dell'interruttoreIngressi rumorosi o interruttori meccanici causano falsi allarmiAggiungi circuiti antirimbalzo o filtri RC
Pin mobili preimpostati/cancellati (PR/CLR)Gli ingressi asincroni non collegati causano uscite imprevedibiliCollegare PR/CLR inutilizzati a livelli logici definiti
Violazioni del tempo di configurazione e attesaCambiare J/K troppo vicino alla transizione di clock porta alla metastabilitàMantieni stabili gli ingressi prima e dopo il fronte di clock

Conclusione

Il flip-flop JK rimane un dispositivo versatile e affidabile nei moderni sistemi digitali grazie alla sua capacità di alternare gli stati e gestire operazioni sincrone e asincrone. Sia che venga implementato utilizzando porte logiche o circuiti integrati, viene utilizzato in contatori, registri e circuiti di controllo. La comprensione del suo comportamento e della sua tempistica consente di progettare applicazioni di logica sequenziale stabili ed efficienti.

Domande frequenti [FAQ]

Perché un infradito JK è chiamato "infradito universale"?

Il flip-flop JK è chiamato flip-flop universale perché può svolgere le funzioni dei flip-flop SR, D e T semplicemente configurando i suoi ingressi J e K. Questo lo rende adattabile a varie applicazioni di logica sequenziale.

Qual è la principale differenza tra le infradito JK con attivazione di livello e quelle con attivazione di bordo?

Un flip-flop JK attivato dal livello risponde all'intero livello HIGH o LOW dell'impulso di clock, mentre un flip-flop JK attivato dal bordo aggiorna la sua uscita solo al fronte di salita o discesa, prevenendo problemi di race-around.

Come si converte un flip-flop JK in un flip-flop D?

Un flip-flop JK può funzionare come un flip-flop D collegando J = D e K = D'. In questo modo l'output viene forzato a seguire l'input, imitando il comportamento di trasferimento dei dati di un flip-flop D.

Quali sono le cause della metastabilità nelle infradito JK?

La metastabilità si verifica quando gli ingressi J e K cambiano troppo vicino alla transizione del clock, violando il tempo di configurazione o di mantenimento. Ciò può comportare stati di uscita imprevedibili o oscillanti.

Le infradito JK possono essere utilizzate per la divisione di frequenza?

Sì. Quando entrambi gli ingressi J e K sono legati HIGH (J = K = 1), il flip-flop JK commuta la sua uscita ad ogni impulso di clock. Questo divide la frequenza di clock per 2, rendendola utile nei contatori digitali e nei divisori di frequenza.