10.3. Contor sincron
10.3. Contor sincron
Contoarele sincrone sunt numite așa, deoarece intrarea de ceas a tuturor flip-flop-urilor individuale din contor sunt cuplate simultan, în același timp, la același semnal de ceas.
În tutorialul contor asincron binar precedent, am văzut că ieșirea dintr-un etaj de contor este conectată direct la intrarea de ceas a următorului etaj de contor și așa mai departe de-a lungul lanțului.
Rezultă că contorul asincron suferă de ceea ce se numește "Delay propagation", în care semnalul de sincronizare întârzie o fracțiune prin fiecare flip-flop.
Totuși, cu contorul sincron, semnalul de ceas extern este conectat la intrarea de ceas de la fiecare Flip-flop individual din cadrul contorului, astfel încât toate flip-flop-urile sunt tactate împreună simultan (în paralel), la același timp dând o relație de timp fixă. Cu alte cuvinte, modificările în ieșire apar în "sincronizare" cu semnalul de ceas.
Rezultatul acestei sincronizări constă în faptul că toți biții de ieșire individuali schimbă starea la exact același timp, ca răspuns la semnalul de ceas comun, fără efect de ripple și, prin urmare, fără întârziere de propagare.
Contor Up binar sincron pe 4 biți
Se poate observa mai sus că impulsurile de ceas extern (impulsurile care urmează să fie numărate) sunt direcționate direct către fiecare JK-flip-flop din lanțul contorului și că ambele intrări J și K sunt toate legate împreună în modul toggle (de comutare), dar numai în primul flip-flop, flip-flop FFA (LSB) sunt conectate HIGH, logic "1" permițând flip-flop-ului să basculeze pe fiecare impuls de ceas. Deci, contorul sincron urmărește o secvență predeterminată de stări ca răspuns la semnalul de ceas comun, avansând o stare pentru fiecare impuls.
Intrările J și K ale flip-flop FFB sunt conectate direct la ieșirea QA a flip-flop FFA, dar intrările J și K ale bistabilelor FFC și FFD sunt acționate de porți AND separate care sunt alimentate cu semnale de la intrarea și ieșirea etajului anterior. Aceste porți AND suplimentare generează logica necesară pentru intrările JK ale etajului următor.
Dacă permitem fiecărui flip-flop JK să basculeze pe baza faptului dacă sau nu toate ieșirile flip-flop (Q) precedente sunt "HIGH", putem obține aceeași secvență de numărare ca în cazul circuitului asincron, dar fără efectul de undă (ripple), deoarece fiecare flip-flop din acest circuit va fi tactat exact în același timp.
Atunci, deoarece nu există o întârziere de propagare inerentă în contoarele sincrone, deoarece toate etajele sunt declanșate în paralel în același timp, frecvența maximă de operare a acestui tip de contor de frecvență este mult mai mare decât cea pentru un circuit contor-asincron similar.
Diagrama de contorizare a contorului sincron pe 4 biți
Deoarece acest contor sincron pe 4 biți contorizează secvențial pe fiecare impuls de ceas, ieșirile rezultate se numără în sus de la 0 (0000) la 15 (1111). Prin urmare, acest tip de contor este cunoscut și ca un contor-up sincron pe 4 biți.
Dar, putem construi ușor un contor-down sincron pe 4 biți, prin conectarea porților AND la ieșirea NOT-Q a flip-flop-urilor, așa cum se arată, pentru a produce o diagramă de contorizare a formei de undă, inversă celei de mai sus. Aici contorul pornește cu toate ieșirile HIGH (1111) și contorizează în jos la aplicarea fiecărui impuls de ceas la zero (0000), înainte de a repeta din nou.
Contor-down binar sincron pe 4-biți
Deoarece contoarele sincrone se formează prin conectarea împreună a flip-flop-urilor și orice număr de flip-flop-uri poate fi conectat în "cascadă" pentru a forma un contor binar "divide-cu-n", numărul modulo sau "MOD" pentru contoarele asincrone se aplică încă. Tot ceea ce avem nevoie pentru a mări numărul MOD al unui contor sincron up sau down este un flip-flop suplimentar și poarta AND pe acesta.
Contor sincron decadic pe 4 biți
Un contor sincron decadic de 4 biți poate fi construit folosind contoare binare sincrone pentru a produce o secvență de numărare de la 0 la 9. Un contor binar standard poate fi convertit într-un contor decadic (10 zecimal) cu ajutorul unei anumite logici suplimentare pentru a implementa secvența de stare dorită. După ce a ajuns la numărătoarea "1001", contorul revine înapoi la "0000". Acum avem un contor decadic sau Modulo-10.
Porțile AND adiționale detectează când secvența de numărare atinge „1001“, (10 binar) și determină flip-flop FF3 să basculeze pe următorul impuls de ceas. Flip-flop FF0 comută pe fiecare impuls de ceas. Astfel, contorul este resetat și pornește din nou la "0000", producând un contor sincron decadic.
Am reușit destul de ușor să rearanjăm porțile AND suplimentare din circuitul contor de mai sus pentru a produce alte numere de numărat, cum ar fi un contor Mod-12 care numără 12 stări de la "0000" la "1011" (0-11) și apoi se repetă, făcându-l potrivit pentru ceasuri etc.
Declanșarea unui contor sincron
Contoarele sincrone utilizează flip-flop-uri declanșate pe front care schimbă stările fie pe frontul "pozitiv" (front în creștere), fie pe frontul "negativ" (front în scădere) a impulsului de ceas de pe intrarea de control, rezultând un singur număr când intrarea ceasului se modifică.
În general, contoarele sincrone numără pe frontul în creștere, care este tranziția low-high a semnalului de ceas, iar contoarele asincrone ripple se bazează pe frontul descendent, care este tranziția high-low a semnalului de ceas.
Poate părea neobișnuit ca contoarele ripple să folosească frontul descendent al ciclului de ceas pentru a schimba starea, dar acest lucru face mai ușor conectarea contoarelor, deoarece cel mai semnificativ bit (MSB) al unui contor poate comanda intrarea de ceas a următorului.
Acest lucru se datorează faptului că bitul următor trebuie să schimbe starea atunci când bitul precedent se schimbă de la high la low - punctul în care trebuie să aibă loc un transport (carry) la următorul bit. Contoarele sincrone au, uzual, un pin carry-out și unul carry-in pentru conectarea contoarelor fără a introduce întârzieri de propagare.
Rezumat Contor sincron
Pentru a rezuma câteva dintre principalele puncte despre contoare sincrone:
Contoarele sincrone pot fi realizate din flip-flopuri Toggle sau D-type.
Contoarele sincrone sunt mai ușor de proiectat decât contoarele asincrone.
Acestea se numesc contoare sincrone, deoarece intrarea de ceas a flip-flop-urilor sunt toate tactate împreună, în același timp, cu același semnal de ceas.
Datorită acestui impuls de ceas comun, toate stările de ieșire se comută sau se schimbă simultan.
Cu toate intrările de ceas conectate împreună, nu există o întârziere inerentă de propagare.
Contoarele sincrone sunt uneori numite contoare paralele deoarece ceasul este trimis în paralel la toate flip-flop-urile.
Circuitul inerent de memorie ține evidența stării actuale a contoarelor.
Secvența de numărare este controlată utilizând porți logice.
Se poate realiza o funcționare mai rapidă în comparație cu contoarele asincrone.
În următorul tutorial despre Contoare vom analiza contoarele bidirecționale care pot număra atât într-o direcție ascendentă, cât și într-o direcție descendentă.