10. Liczniki
Licznikiem nazywany jest sekwencyjny układ cyfrowy służący do zliczania i pamiętania liczby impulsów podawanych w określonym przedziale czasu na jego wejście zliczające.
Rys. 10.1. Schemat blokowy licznika
Oprócz wejścia dla impulsów zliczanych, licznik ma zazwyczaj wejście ustawiające jego stan początkowy asynchronicznie względem impulsów zliczanych lub synchronicznie z nimi. Ustawienie wszystkich przerzutników wchodzących w skład licznika, w stan 0 nazywa się zerowaniem.
Liczbę stanów przyjmowanych przez licznik w jednym pełnym cyklu nazywa się długością cyklu lub pojemnością licznika. Długość cyklu licznika zależy od liczby przerzutników wchodzących w skład licznika. Jeśli licznik zawiera n przerzutników, to jego pojemność, zależna od sprzężeń logicznych między poszczególnymi przerzutnikami, zawierać się będzie w przedziale
<1, 2n>.
Każdemu określonemu stanowi licznika odpowiada jedna określona kombinacja stanów przerzutników, z których jest on zbudowany:
p = 2n.
Zapełnienie kończy cykl pracy licznika, po czym powraca do stanu początkowego:
S << 2n,
gdzie:
S - długość cyklu licznika (liczba stanów logicznych).
Jeżeli licznik ma pojemność p i długość cyklu S, a więc po zliczeniu p impulsów powraca do stanu zerowego, to nazywamy go licznikiem modulo „p”.
Jeżeli licznik ma S wyróżnialnych stanów, przez które przechodzi cyklicznie pod wpływem impulsów wejściowych, to licznik taki nazywa się licznikiem modulo „S”.
Jeśli natomiast licznik ma S wyróżnialnych stanów, przez które przechodzi jednokrotnie, to licznik taki nazywamy licznikiem do S.
Ze względu na długość cyklu liczniki dzieli się na:
liczniki o stałej długości cyklu,
liczniki o nastawnej długości cyklu.
Ze względu na sposób oddziaływania impulsów zliczanych na stan przerzutników, liczniki dzieli się na:
asynchroniczne (jeżeli zmiana stanu kolejnego przerzutnika następuje, gdy zmienia się stan poprzedni),
synchroniczne (zmiana stanu następuje synchronicznie z sygnałem wejściowym),
asynchroniczno-synchroniczny.
Ze względu na kierunek zliczania liczniki dzieli się na:
jednokierunkowe;
zliczające w przód,
zliczające wstecz,
dwukierunkowe (rewersyjne).
10.1. Liczniki asynchroniczne i synchroniczne
Szybkość działania liczników określiła się przez podanie maksymalnej dopuszczalnej częstotliwości fmax impulsów zaliczanych. Dla zapewnienia prawidłowego przebiegu liczenia w liczniku asynchronicznym wystarczy, aby maksymalna częstotliwość impulsów wejściowych nie przekraczała wartości katalogowej fmax pierwszego przerzutnika, natomiast maksymalny czas ustalania zawartości licznika jest sumą czasów propagacji tp wszystkich przerzutników.
Rys. 10.2. Schemat logiczny licznika asynchronicznego
Jeżeli ustalamy w czasie to zawartość licznika przed każdym impulsem zliczanym, to maksymalna częstotliwość wejściowa nie powinna przekraczać wartości:
fmax = (n ⋅ tmax + to)-1
gdzie:
n - liczba przerzutników wchodzących w skład licznika
tmax - maksymalna częstotliwość impulsów wejściowych,
t0 - czas ustalenia zawartości licznika.
W liczniku synchronicznym, z uwagi na to, że wejścia zegarowe wszystkich przerzutników są połączone razem, zapewniając jednoczesność zmian stanów przerzutników, maksymalny czas ustalania zawartości licznika jest równy sumie czasów propagacji sygnału przez układy kombinacyjne, realizujące zbiór funkcji przełączających, określonych w synchronicznych układach licznikowych mianem przeniesień.
Układ kombinacyjny, generujący odpowiednie przeniesienia dla wejść informacyjnych przerzutników, wchodzących w skład licznika synchronicznego, może być zrealizowany jako układ równoległy lub szeregowy. Stąd wynika podział liczników synchronicznych na:
liczniki synchroniczne z przeniesieniami równoległymi (Parallet Carry),
liczniki synchroniczne z przeniesieniami szeregowymi (Serial Carry).
Rys. 10.3. Schematy logiczne liczników synchronicznych
a - z przeniesieniami równoległymi, b - z przeniesieniami szeregowymi
Dla licznika synchronicznego dwójkowego z przeniesieniami równoległymi:
fmax = [tp max przerzutnika + tp max bramki AND]-1,
gdzie:
tp - czas propagacji przerzutników, czas propagacji bramek
fmax - maksymalna częstotliwość impulsów wejściowych.
a dla licznika synchronicznego dwójkowego z przeniesieniami szeregowymi:
fmax = [tp max przerzutnika + (n - 2)tp max bramki AND].
10.2. Licznik binarny - dwójkowy
Licznik binarny - dwójkowy złożony jest z czterech przerzutników typu „T”. Posiada wejście zerujące i zlicza w kodzie naturalnym (1, 2, 4, 8).
Rys. 10.4. Licznik binarny - dwójkowy
Aby wyrazić zliczone impulsy w systemie dziesiętnym, należy każdemu przerzutnikowi przyporządkować odpowiednią wagę:
przerzutnik 20
przerzutnik 21
przerzutnik 22
n-ty przerzutnik 2n-1
Jeżeli licznik czterobitowy przyjmuje stan 1101, to liczba zliczonych impulsów wyniesie:
N = 23 ⋅ 1 + 22 ⋅ 1 + 21 ⋅ 0 + 20 ⋅ 1 = 13.
Licznik binarny czterobitowy przyjmuje 16 stanów, a więc mamy do czynienia ze zliczaniem modulo 16.
Jeżeli wymaga się, aby licznik miał pojemność mniejszą niż wynosi liczba kombinacji:
p < 2n,
to sprzężenie zwrotne skraca cykl pracy licznika.
146