Bity w elektronice
Licznik asynchroniczny


Bramki logiczne
Cyfrowe układy scalone TTL i CMOS
Zasilanie układów TTL i CMOS
Układy kombinatoryczne z bramek cyfrowych
Przerzutniki
  Zastosowania
Przerzutnik RS
Przerzutnik D
Przerzutnik J-K
Licznik asynchroniczny
Licznik synchroniczny
Licznik rewersyjny
Rejestr
Rejestr przesuwający

 

Binarny licznik cyfrowy (ang. binary counter) to urządzenie zliczające impulsy zegarowe. Posiada on wejście zegarowe  C (ang. clock input) oraz wyjścia, na których w kodzie binarnym 8421 pojawia się stan licznika, czyli liczba zliczonych impulsów zegarowych.

 

 

 

 

 

Zastosowanie liczników jest bardzo szerokie. Stosuje się je powszechnie w zegarach cyfrowych, urządzeniach pomiarowych, a nawet w mikroprocesorze, o czym przekonasz się później.

Elektronicy wymyślili całą gamę różnych liczników cyfrowych, my jednakże zajmiemy się tylko najbardziej podstawowymi układami. Na początek zdefiniujmy podstawowy element zliczający, czyli przerzutnik T (ang. Toggle - zmiana, przeskok).

 

T Q
0 Qn-1
1 Qn-1
1→0 Qn-1

 

Przerzutnik T przy każdym ujemnym (istnieją również rozwiązania przerzutnika T wyzwalane zboczem dodatnim) zboczu sygnału zegarowego (przejściu ze stanu 1 do stanu 0) zmienia stany wyjść na przeciwne. Przerzutnik T nie jest produkowany w formie układu scalonego. Jednakże nie stanowi to żadnego problemu, gdyż można go w prosty sposób zbudować z przerzutnika D lub J-K.

 

Przerzutnik T
z przerzutnika D
          Przerzutnik T
z przerzutnika J-K

 

Przerzutnik T zbudowany z przerzutnika D jest wyzwalany zboczem dodatnim (przejściem sygnału zegarowego z poziomu 0 na 1). Przerzutnik T zbudowany z przerzutnika J-K jest wyzwalany zboczem ujemnym. Należy na to zwrócić uwagę przy konstrukcji liczników cyfrowych.

Licznik asynchroniczny powstaje, gdy kilka przerzutników T połączymy szeregowo ze sobą tak, aby wyjście Q jednego przerzutnika łączyło się z wejściem T następnego. Nazwa asynchroniczny (czyli niejednoczesny) pochodzi stąd, iż wyjścia przerzutników nie zmieniają się równocześnie, tylko kaskadowo - stan licznika ustala się dopiero po czasie równym sumie czasów propagacji poszczególnych przerzutników.

Poniżej umieściliśmy symulację 4 bitowego licznika w kodzie 8421.

 

 

Stan licznika odczytujemy z wyjść Q poszczególnych przerzutników. Z boku mamy wykres przebiegów poszczególnych sygnałów w liczniku. Kolorem czerwonym w sygnale zegarowym zaznaczyliśmy ujemne zbocza, które wyzwalają zmiany w pierwszym przerzutniku T. Ten z kolei steruje drugim przerzutnikiem T, itd. Po zliczeniu 16 impulsów licznik się zeruje.

Liczniki binarne są produkowane w postaci gotowych układów scalonych. Poniżej opisujemy przykład takiego układu z licznikiem binarnym.

SN7493 - asynchroniczny licznik binarny

Układ scalony SN7493 zawiera 4 przerzutniki J-K Master/Slave połączone w taki sposób, iż tworzą dwa niezależne liczniki - jedno bitowy oraz trzybitowy. Wszystkie przerzutniki mogą być wspólnie zerowane - w tym celu należy podać na wejścia R0(1) i R0(2) stan wysoki.

Aby uzyskać licznik 4 bitowy, należy wyjście QA (z licznika 1 bitowego) połączyć z wejściem CKB (wejście zegarowe licznika 3 bitowego). Zliczane impulsy należy podawać na wejście CKA.

 

 

Układ SN7493 ma wiele ciekawych zastosowań. Poniżej opisujemy niektóre z nich.

 

Liczniki modulo n

Operacja modulo n daje w wyniku resztę z dzielenia przez n. Na przykład:

 

8 mod 5 = 3, gdyż 5 mieści się w 8 jeden raz i zostaje reszta 3.

 

Reszta z dzielenia jest zawsze mniejsza od n i daje wyniki mieszczące się w przedziale od 0 do n - 1. Liczbę n nazywamy modułem.

Licznik modulo n jest układem cyfrowym, który zlicza n - 1 impulsów zegarowych, a przy n-tym impulsie zeruje się. W wyniku wartości zliczone przez licznik tworzą ciąg 0, 1, 2, ..., n-1 (wartości te są reprezentowane w kodzie binarnym 8421). Na przykład licznik modulo 5 będzie przyjmował następujące stany dla kolejnych impulsów zegarowych:

 

modulo 5 : 000 → 001 → 010  → 011  → 100  → 000  → 001 ...

 

Po osiągnięciu stanu 100, który w kodzie 8421 oznacza liczbę 4, kolejny impuls zegarowy zeruje licznik i cykl zliczania rozpoczyna się od nowa.

Standardowo SN7493 jest licznikiem binarnym, który zlicza impulsy zegarowe w kodzie 8421. Jednakże wykorzystując fakt, iż układ zawiera dwa oddzielne liczniki binarne (jedno i trzybitowy) oraz dwa wejścia zerujące (R0(1) i R0(2)) można skonstruować liczniki binarne zliczające impulsy zegarowe do wartości n-1. Po osiągnięciu stanu n-1 licznik modulo n jest zerowany po kolejnym impulsie zegarowym i zliczanie rozpoczyna się od początku.

Zasada budowy liczników modulo n jest bardzo prosta. Otóż badamy stan bitów wyjściowych, które dla wartości równej n przyjmują poziom 1. Gdy tak się stanie, zerujemy licznik podając na wejścia R0(1) i R0(2) stany wysokie. W wielu przypadkach nawet nie musimy dołączać do układu SN7493 żadnych dodatkowych elementów - wykorzystujemy bity wyjściowe do bezpośredniego sterowania wejść zerujących. Dla przykładu rozważmy licznik modulo 3. Wykorzystujemy w nim człon licznika 3-bitowego.

 

 

Przeanalizujmy ten układ.

 

Sygnał zegarowy C jest doprowadzony do wejścia CKB, które jest wejściem zliczającym licznika 3 bitowego. Wejścia zerujące R0(1) i R0(2) są połączone z wyjściami QB i QC. Gdy nadejdzie pierwszy impuls zegarowy, to na jego zboczu opadającym wyjście QB zmieni swój stan z 0 na 1. Licznik zliczył pierwszy impuls i jest w stanie 1 (patrz, wykres obok układu licznika). Na zboczu opadającym drugiego impulsu zegarowego wyjście QB zmieni swój stan na 0, a z kolei wyjście QC przyjmie stan 1 - licznik ma stan 2. Przy trzecim impulsie zegarowym stan wyjścia QB znów zmieni się na 1 - licznik będzie w stanie 3. Jednakże teraz oba wejścia zerujące R0(1) i R0(2) są w stanie 1. Powoduje to wyzerowanie licznika, który przejdzie do stanu 0 i cały cykl rozpocznie się od nowa.

 

Zwróć uwagę, iż przez bardzo krótką chwilę na wyjściach licznika pojawia się stan 3 (oba wyjścia QB i QC są w stanie 1). Stan 3 wykorzystujemy do wysterowania wejść zerujących. Jest to cechą charakterystyczną asynchronicznych liczników modulo n.

Poniżej przedstawiamy układy liczników modulo n, które można zrealizować z licznika SN7493.

 

n Układ licznika modulo n   n Układ licznika modulo n   n Układ licznika modulo n
  2          7          12
3   8   13
4   9   14
5   10   15
6   11   16

 

Dzielniki częstotliwości przez n

Przez częstotliwość sygnału cyfrowego (ang. digital signal frequency) rozumiemy ilość impulsów (kolejnych zmian stanu z 0 na 1 i z powrotem z 1 na 0) w jednostce czasu. Jednostką częstotliwości jest Herz (Hz):

 

1 Hz to jeden impuls sygnału cyfrowego w ciągu jednej sekundy.

 

Jeśli zatem w ciągu jednej sekundy napłynie 15 impulsów, to powiemy, iż ten sygnał cyfrowy ma częstotliwość 15 Hz. W technice cyfrowej częstotliwości sygnałów mogą być bardzo duże. Dlatego wykorzystujemy większe jednostki:

 

1 kHz (kiloherz) = 1000 Hz
1 MHz (megaherz) = 1000 kHz = 1000000 Hz (milion)
1 GHz (gigaherz) = 1000 MHz = 1000000000 Hz (miliard)

 

Cyfrowy dzielnik częstotliwości (ang. digital frequency divider) jest układem, który generuje jeden impuls wyjściowy po każdych n impulsach zegarowych. Dzielnik częstotliwości można w prosty sposób uzyskać z licznika modulo n. Jeśli n jest potęgą liczby dwa - czyli podział częstotliwości następuje przez 2, 4, 8 itd, to sygnał wyjściowy po prostu pobieramy z odpowiedniego bitu wyjściowego licznika.

 

n Dzielnik częstotliwości   n Dzielnik częstotliwości
  2          8
4   16

 

Dla pozostałych n wykorzystujemy podane wyżej układy liczników modulo n. Sygnał wyjściowy W tworzymy z iloczynu sygnałów zerujących R0(1) i R0(2). Poniżej podajemy przykład dzielnika przez 10. Układ generuje krótkie, ujemne impulsy (dla impulsów dodatnich należy zastosować bramkę AND zamiast NAND) po każdych 10 impulsach zegarowych:

 

 

Moduły dzielników można łączyć ze sobą. Poniżej mamy przykład dzielnika przez 1000 zbudowanego z trzech dzielników przez 10:

 

 



List do administratora Serwisu Edukacyjnego Nauczycieli I LO

Twój email: (jeśli chcesz otrzymać odpowiedź)
Temat:
Uwaga: ← tutaj wpisz wyraz  ilo , inaczej list zostanie zignorowany

Poniżej wpisz swoje uwagi lub pytania dotyczące tego rozdziału (max. 2048 znaków).

Liczba znaków do wykorzystania: 2048

 

W związku z dużą liczbą listów do naszego serwisu edukacyjnego nie będziemy udzielać odpowiedzi na prośby rozwiązywania zadań, pisania programów zaliczeniowych, przesyłania materiałów czy też tłumaczenia zagadnień szeroko opisywanych w podręcznikach.



   I Liceum Ogólnokształcące   
im. Kazimierza Brodzińskiego
w Tarnowie

©2017 mgr Jerzy Wałaszek

Dokument ten rozpowszechniany jest zgodnie z zasadami licencji
GNU Free Documentation License.