Flip-flop-ul JK este un element de bază în electronica digitală, utilizat pe scară largă pentru stocarea datelor, contoare și proiectare logică secvențială. Depășește limitările flip-flop-ului SR prin eliminarea stărilor nevalide și furnizarea de funcții de control flexibile, cum ar fi Set, Reset, Hold și Toggle. Acest articol explică principiul său de funcționare, structura internă, tabelele de adevăr, tipurile, aplicațiile și utilizarea practică.

Prezentare generală JK Flip-Flop
Un flip-flop JK este un circuit logic secvențial bistabil care stochează un bit de date folosind două stări stabile. Are două intrări (J pentru Set, K pentru Reset), două ieșiri (Q și Q′) și o intrare de ceas (CLK). Intrările opționale Preset (PR) și Clear (CLR) permit controlul asincron.
Flip-flop-urile JK acceptă două moduri de operare:
• Mod sincron – ieșirea se modifică numai la intrarea ceasului.
• Mod asincron – Presetarea și Ștergerea anulează imediat schimbările de ceas și forțează ieșirea.
Spre deosebire de un flip-flop SR, flip-flop-ul JK evită starea invalidă. Când J = K = 1, efectuează o operațiune de comutare, ieșirea pornește fiecare impuls de ceas datorită feedback-ului intern.
JK Flip-flop Truth Table și Table de Stat
Tabel de adevăr (cu intrări asincrone)
Acest tabel arată modul în care ieșirea răspunde la intrările ceasate și la condițiile asincrone de presetare/ștergere.
| PR | CLR | CLK | J | K | Q(n+1) | Funcționare |
|---|---|---|---|---|---|---|
| 0 | 1 | X | X | X | 1 | Set asincron |
| 1 | 0 | X | X | X | 0 | Resetare asincronă |
| 1 | 1 | 0 | X | X | Qn | Fără schimbare |
| 1 | 1 | ↑ | 0 | 0 | Qn | Țineți apăsat |
| 1 | 1 | ↑ | 1 | 0 | 1 | Set |
| 1 | 1 | ↑ | 0 | 1 | 0 | Resetare |
| 1 | 1 | ↑ | 1 | 1 | Î̅n | Comută |
Tabele de stare (tabele caracteristice și de excitație)
Tabelul de adevăr poate fi simplificat în două tabele de stare importante utilizate în proiectare și analiză.
Tabel caracteristic
Definește ieșirea stării următoare pe baza intrărilor și a stării curente.
| J | K | Î(n) | Q(n+1) |
|---|---|---|---|
| 0 | 0 | Qn | Qn (Menținere) |
| 1 | 0 | Qn | 1 (Set) |
| 0 | 1 | Qn | 0 (Resetare) |
| 1 | 1 | Qn | Î̅n (Comutare) |
Ecuație caracteristică:
Q(n+1) = J· Q̅n + K̅· În
Tabel de excitație
Definește intrările necesare (J, K) pentru a realiza o tranziție specifică.
| Î(n) | Q(n+1) | J | K |
|---|---|---|---|
| 0 | 0 | 0 | X |
| 0 | 1 | 1 | X |
| 1 | 0 | X | 1 |
| 1 | 1 | X | 0 |
(X = nu-mi pasă)
Diagrama blocurilor JK Flip-Flop

Diagrama bloc a unui flip-flop JK arată modul în care intrările sale cheie și feedback-ul intern interacționează pentru a-și controla ieșirea. Intrările J și K determină acțiunile de setare și resetare, permițând ieșirii să stocheze sau să schimbe starea pe baza logicii de intrare. Semnalul de ceas (CLK) sincronizează aceste operațiuni astfel încât modificările să aibă loc numai la anumite tranziții de ceas, asigurând o sincronizare previzibilă în circuitele digitale.
În plus față de aceste intrări primare, flip-flop-ul JK poate include și intrări de control asincrone: Preset (PR) și Clear (CLR). Aceste intrări pot forța imediat ieșirea la logica 1 sau logica 0, indiferent de starea ceasului, făcându-le utile pentru inițializarea circuitelor. O caracteristică distinctivă a flip-flop-ului JK este calea sa internă de feedback, unde ieșirea curentă Q este reintrodusă înapoi în rețeaua logică. Acest feedback permite acțiunea de comutare atunci când atât J, cât și K sunt setate la 1, permițând ieșirii să alterneze stări pe fiecare impuls de ceas.
Simbol logic JK Flip-flop și diagramă Pin

Simbol logic
Simbolul logic evidențiază:
• Două intrări: J (Set) și K (Reset)
• O intrare de ceas cu marker de declanșare a marginii (simbol triunghiular, adesea cu bule dacă activ-scăzut)
• Intrări asincrone opționale: PR (Preset) și CLR (Clear)
• Două ieșiri: Q și Q′ (complementare)
Diagrama pinilor (Exemplu: 74LS76 JK Flip-Flop IC)

O diagramă cu pini arată cum sunt implementate flip-flop-urile JK în pachete IC precum DIP-14.
| Număr PIN | Nume pin | Descriere |
|---|---|---|
| 1 | CLR₁ | Clear asincron (Active LOW) pentru Flip-Flop 1 |
| 2 | K₁ | Intrare K pentru flip-flop 1 |
| 3 | J₁ | Intrare J pentru flip-flop 1 |
| 4 | CLK₁ | Intrare ceas pentru flip-flop 1 |
| 5 | PR₁ | Presetare asincronă (Active LOW) pentru Flip-Flop 1 |
| 6 | Q₁ | Ieșire Q pentru flip-flop 1 |
| 7 | GND | Sol |
| 8 | Q₂ | Ieșire Q pentru Flip-Flop 2 |
| 9 | PR₂ | Presetare asincronă (Active LOW) pentru Flip-Flop 2 |
| 10 | CLK₂ | Intrare ceas pentru flip-flop 2 |
| 11 | J₂ | Intrare J pentru Flip-Flop 2 |
| 12 | K₂ | Intrare K pentru Flip-Flop 2 |
| 13 | CLR₂ | Ștergere asincronă (Active LOW) pentru Flip-Flop 2 |
| 14 | VCC | Tensiune de alimentare pozitivă |
Master-Slave JK Flip-Flop

O provocare comună la flip-flop-urile JK este condiția de cursă, care apare atunci când ambele intrări sunt HIGH (J = K = 1) și impulsul ceasului rămâne HIGH suficient de mult timp pentru ca ieșirea să comute în mod repetat într-un ciclu. Acest lucru duce la un comportament instabil.
Configurația Master-Slave asigură o singură schimbare de ieșire pe impuls de ceas și previne oscilațiile nedorite chiar și atunci când J = K = 1. Această metodă controlează problema race-around prin împărțirea operațiunii în două etape: Master răspunde când CLK = HIGH, iar Slave se actualizează când CLK = LOW.
Pentru metode mai avansate de control al ceasului care previn și cursa, consultați Secțiunea 9 (Metode de declanșare).
Metode de declanșare JK Flip-flop
Un flip-flop JK direct folosind ceasuri declanșate de nivel poate suferi de o problemă numită race-around, care apare atunci când J = K = 1 în timp ce ceasul rămâne HIGH suficient de mult timp pentru ca ieșirea să comute în mod repetat într-un singur impuls de ceas. Acest lucru duce la o funcționare instabilă.
Pentru a elimina această problemă, sunt utilizate două strategii de declanșare:
| Tip declanșator | Descriere | Prevenirea cursei | Utilizare |
|---|---|---|---|
| Stăpân-Sclav JK | Două zăvoare au căzut în cascadă; Master activ pe ceas HIGH, Slave pe LOW | Limitează comutarea la o dată pe ciclu | Circuite educaționale, viteză moderată |
| JK declanșat de margine | Captează intrarea numai pe ↑ sau ↓ marginea ceasului | Elimină complet cursele | Sisteme sincrone moderne |
Tabel de comportament a marginii ceasului
| Marginea ceasului | J | K | Q(n+1) |
|---|---|---|---|
| Fără margine | X | X | Qn (Menținere) |
| ↑ sau ↓ | 0 | 0 | Qn |
| ↑ sau ↓ | 1 | 0 | 1 (Set) |
| ↑ sau ↓ | 0 | 1 | 0 (Resetare) |
| ↑ sau ↓ | 1 | 1 | Î̅n (Comutare) |
Flip-flop-urile JK declanșate de margine domină design-urile digitale practice, deoarece asigură tranziții curate și compatibilitate cu arhitecturile de ceas sincrone.
Diagrama de sincronizare JK Flip-flop

O diagramă de sincronizare arată modul în care ieșirea unui flip-flop JK se schimbă ca răspuns la variațiile semnalelor de ceas (CLK) și de intrare (J și K) în timp. Este un instrument valoros pentru înțelegerea comportamentului flip-flopului în circuitele sincrone.
În timpul fiecărei margini de ceas active (de obicei marginea ascendentă, ↑), flip-flop-ul eșantionează intrările și actualizează ieșirea Q conform acestor reguli:
• J = 0, K = 0 → Stare de menținere (ieșirea rămâne neschimbată)
• J = 1, K = 0 → Set (Q devine 1)
• J = 0, K = 1 → Resetare (Q devine 0)
• J = 1, K = 1 → Toggle (Q comută la valoarea sa opusă)
O diagramă tipică de sincronizare a flip-flop-ului JK include:
• Forma de undă a ceasului (CLK) – definește când apar actualizări de ieșire
• Semnale de intrare (J și K) – afișează stările de intrare în timp
• Semnale de ieșire (Q și Q′) – afișează tranzițiile de stare în mod clar în funcție de intrare și ceas
Această diagramă ajută la vizualizarea secvenței de modificări de stare, facilitând analiza problemelor de sincronizare, verificarea comportamentului sincron și înțelegerea cerințelor de timp de configurare și menținere în proiectarea digitală.
Flip-flop JK folosind porți NAND

Un flip-flop JK poate fi construit folosind porți NAND de bază, care dezvăluie modul în care dispozitivul funcționează intern la nivel de poartă. Această implementare este utilizată în mod obișnuit în educația logică digitală, deoarece demonstrează modul în care feedback-ul și controlul ceasului funcționează pentru a crea circuite secvențiale stabile.
Logica internă este construită utilizând:
• Două porți NAND cuplate încrucișate care formează zăvorul bistabil de bază.
• Două porți NAND suplimentare pentru a procesa intrările J și K împreună cu feedback-ul de ieșire anterior.
• Porți NAND controlate prin ceas care permit schimbarea stării numai atunci când semnalul de ceas este activ, asigurând funcționarea sincronă.
Comportamente funcționale
• Logica de feedback previne stările nevalide – Spre deosebire de zăvorul SR, configurația JK gestionează în siguranță toate combinațiile de intrare.
• Acțiune de comutare pentru J = K = 1 – Feedback-ul intern alternează starea de ieșire pe fiecare impuls de ceas activ.
• Funcționare sincronă – Intrarea ceasului asigură modificările de ieșire numai la ore definite, permițând integrarea cu alte circuite logice secvențiale.
Această construcție la nivel de poartă ajută la explicarea de ce flip-flop-ul JK este considerat universal și fiabil. Cu toate acestea, datorită structurii sale relativ complexe și a întârzierii de propagare, sistemele digitale practice folosesc de obicei flip-flop-uri JK declanșate de margine sau versiuni IC integrate în loc să le construiască din porți discrete.
În timp ce flip-flop-ul JK la nivel de poartă explică logica internă, sistemele digitale practice trebuie să abordeze și probleme de sincronizare, cum ar fi cursa. Acest lucru duce la tehnici de declanșare îmbunătățite discutate în continuare.
IC-uri populare JK Flip-Flop
Flip-flop-urile JK sunt disponibile ca circuite integrate (IC) atât în familiile TTL (Transistor-Transistor Logic), cât și în CMOS. Aceste circuite integrate sunt utilizate în mod obișnuit în contoare, divizoare de frecvență, registre de deplasare și circuite de control al memoriei.
| Număr IC | Familia logică | Descriere |
|---|---|---|
| 74LS73 | TTL | Flip-flop dual JK cu Clear asincron; utilizat în aplicații logice secvențiale de bază |
| 74LS76 | TTL | Flip-flop dual JK cu presetare asincronă și Clear; permite controlul extern al stărilor inițiale |
| 74LS107 | TTL | Flip-flop dual JK cu activ-scăzut Clear și capacitate de comutare; Ideal pentru contoare de împărțire la 2 |
| CD4027B | CMOS | Flip-flop Dual JK cu Set și Reset; oferă un consum redus de energie și o gamă largă de tensiuni |
Aplicații ale șlapoților JK
Flip-flop-urile JK sunt utilizate pe scară largă, deoarece pot funcționa ca elemente de memorie, dispozitive de comutare și contoare sincrone. Aplicațiile comune includ:
• Diviziune de frecvență și contoare – Împărțiți frecvența ceasului la 2 în modul de comutare
• Registre de deplasare – Utilizate în conversia datelor serial-paralel
• Mașini de stare (FSM) – Logica secvenței de control în sistemele digitale
• Condiționarea semnalului – Comutatoare mecanice de debouncing
• Modelarea impulsurilor de ceas – Generați semnale cu undă pătrată
Comparație flip-flop JK vs flip-flops SR, D și T

| Caracteristică | Flip-flop JK | SR Flip-Flop | D Flip-flop | T Flip-Flop |
|---|---|---|---|---|
| Intrări | J, K | S, R | D | T |
| Stare nevalidă | Niciunul | S=R=1 invalid | Niciunul | Niciunul |
| Moduri de funcționare | Setați, resetați, comutați | Setare, resetare | Transfer de date | Comutare numai |
| Caz de utilizare | Contoare, registre | Zăvor simplu | Memorie, registre de deplasare | Contoare |
| Complexitate | Moderat | Simplu | Simplu | Foarte simplu |
| Suport pentru declanșarea marginilor | Da | Da | Da | Da |
Flip-flop-ul JK este cel mai flexibil dintre toți șlapii. Poate simula funcțiile flip-flop-urilor SR, D și T și este utilizat pe scară largă în contoare și circuite de control digital.
Depanare și greșeli comune de proiectare
| Problemă comună | Descriere | Soluție |
|---|---|---|
| Eroare de sincronizare a ceasului | Mai multe flip-flop-uri care folosesc ceasuri nesincronizate provoacă nepotriviri de sincronizare | Utilizați o singură sursă globală de ceas** |
| Zgomot de intrare sau respingere a comutatorului | Intrările zgomotoase sau întrerupătoarele mecanice provoacă declanșări false | Adăugați circuite de debouncing sau filtre RC |
| Pini presetați/ștergători flotanți (PR/CLR) | Intrările asincrone neconectate provoacă ieșiri imprevizibile | Legați PR/CLR neutilizat la nivelurile logice definite |
| Încălcări ale timpului de configurare și reținere | Schimbarea J/K prea aproape de tranziția ceasului duce la metastabilitate | Păstrați intrările stabile înainte și după marginea ceasului |
Concluzie
Flip-flop-ul JK rămâne un dispozitiv versatil și fiabil în sistemele digitale moderne datorită capacității sale de a comuta stările și de a gestiona operațiuni sincrone și asincrone. Indiferent dacă este implementat folosind porți logice sau circuite integrate, este utilizat în contoare, registre și circuite de control. Înțelegerea comportamentului și sincronizării acestuia vă ajută să proiectați aplicații logice secvențiale stabile și eficiente.
Întrebări frecvente [FAQ]
De ce un flip-flop JK este numit "flip-flop universal"?
Flip-flop-ul JK se numește flip-flop universal deoarece poate îndeplini funcțiile flip-flop-urilor SR, D și T prin simpla configurare a intrărilor sale J și K. Acest lucru îl face adaptabil pentru diverse aplicații logice secvențiale.
Care este principala diferență dintre flip-flop-urile JK declanșate de nivel și cele declanșate de margine?
Un flip-flop JK declanșat de nivel răspunde la întregul nivel HIGH sau LOW al pulsului ceasului, în timp ce un flip-flop JK declanșat de margine își actualizează ieșirea doar la marginea ascendentă sau descendentă, prevenind problemele de cursă.
Cum transformi un flip-flop JK într-un flip-flop D?
Un flip-flop JK poate funcționa ca un flip-flop D conectând J = D și K = D′. Acest lucru forțează ieșirea să urmeze intrarea, imitând comportamentul de transfer de date al unui flip-flop D.
Ce cauzează metastabilitatea în flip-flop-urile JK?
Metastabilitatea apare atunci când intrările J și K se schimbă prea aproape de tranziția ceasului, încălcând configurarea sau timpul de menținere. Acest lucru poate duce la stări de ieșire imprevizibile sau oscilante.
Pot fi folosiți șlapi JK pentru împărțirea frecvenței?
Da. Când ambele intrări J și K sunt legate HIGH (J = K = 1), flip-flop-ul JK comută ieșirea la fiecare impuls de ceas. Acest lucru împarte frecvența ceasului la 2, făcându-l util în contoare digitale și divizoare de frecvență.