1. LICZNIKI CYFROWE
1.1. WIADOMOŚCI OGÓLNE
Licznikiem nazywamy sekwencyjny układ cyfrowy służący do zliczania i zapamiętywania liczby impulsów zero
jedynkowych, podawanych w określonym przedziale czasu na jego wejście zliczające. Licznik cyfrowy jest zbudowany z
odpowiednio ze sobą połączonych przerzutników TTL.
Ogólnie biorąc, licznik posiada wejścia dla impulsów zliczających, wejście ustawiające (zerują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. Symbol
graficzny licznika pokazano na rys. 7.1, na którym zaznaczono wejście impulsów zliczanych, wejście ustawiające stan
początkowy oraz wyjścia.
Wyjścia
Układ
Impulsy zliczane
sekwencyjny
Rys. 7.1 Symbol graficzny licznika.
s - stanowy
Impuls zerujÄ…cy
(ustawiajÄ…cy)
Na podstawie stanu wyjść można określić ile impulsów pojawiło się na wejściu układu od chwili, kiedy licznik był ostatnio w
stanie poczÄ…tkowym.
Każdy licznik posiada określoną pojemność (zwana długością cyklu), tzn. może zliczyć określoną liczbę impulsów,
co odpowiada liczbie stanów układu przyjmowanych przez licznik w jednym pełnym cyklu.
Licznik jest układem sekwencyjnym, zbudowany z przerzutników i układu kombinacyjnego zapewniającego takie ich
sterowanie, aby pod wpływem impulsu wejściowego przeszły do kolejnego stanu działania. Licznik posiada s stanów, a kolejne
stany licznika są ponumerowane liczbami: 0, 1, 2,... s 2, s 1. Każdemu określonemu stanowi licznika odpowiada jedna, ściśle
określona kombinacja stanów przerzutników, z których jest on zbudowany. Jeden przerzutnik może być w dwu stanach, dwa
przerzutniki mogÄ… dać kombinacjÄ™ 2Å"2 = 22 = 4 stanów, a n przerzutników może opisać 2n stanów. Dlatego do utworzenia
licznika o s stanach potrzeba n przerzutników:
(2n-1 s 2n)
Pojemność zależy od liczby przerzutników wchodzących w skład licznika.
Ze względu na długość cyklu liczniki można podzielić na:
1. Liczniki o stałej długości cyklu,
2. Liczniki o nastawionej długości cyklu.
Ze względu na sposób powtarzania cyklu liczniki można podzielić na:
Liczniki modulo s (dzielnik liczby lub częstotliwości impulsów przez s),
Liczniki do s.
Licznikiem modulo s nazywamy licznik posiadający s wyróżnialnych stanów, przez które przechodzi cyklicznie
(powtarza cykl) pod wpływem impulsów wejściowych.
Licznikiem do s nazywamy licznik posiadający s wyróżnialnych stanów, przez które przechodzi jednokrotnie. Jeśli
licznik do s, po osiągnięciu ostatniego stanu cyklu, ma mieć ponownie s wyróżnialnych stanów, to należy sprowadzić go do
stanu poczÄ…tkowego.
Ze względu na kierunek zliczania liczniki dzielimy na:
1. Liczniki jednokierunkowe:
- zliczające w przód, jeśli liczby reprezentujące zawartość informacyjną licznika wzrastają w trakcie liczenia kolejnych
impulsów,
- zliczające wstecz, jeśli liczby reprezentujące zawartość informacyjną licznika maleją w trakcie liczenia kolejnych
impulsów,
2. Liczniki dwukierunkowe
Liczniki dwukierunkowe (rewersyjne) są to liczniki zliczające impulsy zarówno w przód jak i wstecz.
Ze względu na sposób oddziaływania impulsów zliczanych na stan przerzutników licznika, liczniki można
sklasyfikować następująco:
1. Liczniki asynchroniczne (szeregowe),
2. Liczniki synchroniczne (równoległe).
W liczniku asynchronicznym impulsy zliczane są podawane tylko na jedno z wejść zegarowych przerzutników
licznika.
Wejścia
W liczniku synchronicznym impulsy zliczane są podawane na wejścia zegarowe wszystkich przerzutników
jednocześnie wchodzących w skład licznika.
Układ asynchronicznego licznika jest układem szeregowym (połączenie szeregowe). Natomiast układ
synchronicznego licznika jest układem równoległym. Dlatego liczniki asynchroniczne są nazywane licznikami szeregowymi, a
liczniki synchroniczne licznikami równoległymi.
Układ równoległy zapewnia jednoczesność zmian stanów przerzutnika, a więc najkrótszy czas propagacji i największą
częstotliwość impulsów wejściowych.
1.2. LICZNIKI ASYNCHRONICZNE
W licznikach asynchronicznych (szeregowych) zmiana stanu kolejnego przerzutnika odbywa się pod wpływem
zmiany stanu przerzutnika poprzedniego. Najprostszym przykładem licznika szeregowego jest kaskada n szeregowo połączonych
przerzutników.
Liczniki szeregowe realizujemy najczęściej na przerzutnikach typu T lub JK o zwartych wejściach informacyjnych.
Algorytm projektowania liczników szeregowych:
1. Ustalić liczbę przerzutników niezbędnych do realizacji licznika (w zależności od pojemności licznika 2n).
2. Na wejścia informacyjne T lub JK (zwarte) podać 1 .
3. Jeżeli licznik liczy w przód połączyć wejścia zegarowe następnego przerzutnika z wyjściem Q poprzedniego.
Przykład 7.1:
Na rys. 7.2 przedstawiono schemat logiczny licznika szeregowego zbudowanego z trzech przerzutników JK, zliczającego w
przód.
a)
Q1 Q2
Q0
1
1
1
J0 Q0 J1 Q1
J2 Q2
We
C C
C
K0 Q K1 Q
0 1
b) K2 Q
2
We Q0 Q1 Q2
0
0
1
1
0 0 0
0
1 1 0
0
2 0 0
1
3 1 0
1
4 0 1
0
5 1 1
6 0 1
7 1 1
8 0 0
c)
1 2 3 4 5 6 7 8
We
Q0
Q1 Rys. 7.2 Licznik szeregowy zliczający w przód o pojemności 8:
a) schemat logiczny, b) tablica stanów, c) przebiegi czasowe.
Q2
0 1 2 3 4 5 6 7
Wejścia synchroniczne przerzutników JK są przyłączone do jedynki logicznej. Czasami mogą być one nie użyte, co
jest równoznaczne z przyłączeniem ich do jedynki logicznej.
Impuls zliczany We jest wprowadzony na wejście zegarowe pierwszego przerzutnika. Wejścia zegarowe kolejnych
przerzutników są połączone z wyjściem Q poprzednich przerzutników. Zmienna Q0 reprezentuje wagę 20 czyli 1, waga
zmiennej Q1 wynosi 21 czyli 2, a zmiennej Q2 22, czyli 4.
W chwili początkowej wszystkie przerzutniki są w stanie 0 (Q0 = Q1 = Q2 = 0). Jeśli na wejście zegarowe pierwszego
przerzutnika zostanie podany impuls, to powoduje on zmianę stanu jego wyjścia Q0 z 0 na 1. Stan drugiego przerzutnika nie
ulegnie zmianie, ponieważ na wejściu zegarowym przerzutnika Q1 nie wystąpiła zmiana sygnału z 1 na 0.
Pod wpływem drugiego impulsu pierwszy przerzutnik zmieni stan z 1 na 0. Ta zmiana stanu powoduje zmianę stanu
drugiego przerzutnika z 0 na 1.
Pod wpływem trzeciego impulsu pierwszy przerzutnik zmieni stan z Q2 na 1. Ta zmiana nie powoduje zmiany stanu
przerzutnika drugiego.
Czwarty impuls zmieni stan przerzutnika pierwszego z 1 na 0. Zmiana ta powoduje zmianÄ™ stanu z 1 na 0 przerzutnika
drugiego, a ta z kolei zmianÄ™ stanu z 0 na 1 przerzutnika trzeciego.
Przed pojawieniem się ósmego impulsu wszystkie przerzutniki licznika są w stanie 1. Po ósmym impulsie pierwszy
przerzutnik zmieni stan z 1 na 0. Ta zmiana powoduje zmianÄ™ stanu z 1 na 0 drugiego przerzutnika, a ta z kolei zmianÄ™ stanu z 1
na 0 przerzutnika trzeciego.
Przedstawiony licznik charakteryzuje się więc ośmioma stanami. Przerzutnik pierwszy tego licznika zmienia swój
stan za każdym razem pojawienia się zmiany impulsu wejściowego z 1 na 0, a więc dzieli częstotliwość impulsów wejściowych
przez 2. Drugi przerzutnik zmienia swój stan za każdym pojawieniem się zmiany stanu z 1 na 0 przerzutnika pierwszego, a więc
na wyjściu Q1 otrzymuje się impulsy o częstotliwości cztery razy mniejszej, niż częstotliwość impulsów wejściowych. Natomiast
trzeci przerzutnik zmieni swój stan, jeśli poprzednie przerzutniki zmieniają swój stan z 1 na 0, otrzymując impulsy o
częstotliwości osiem razy mniejszej (pojawia się jeden impuls na osiem impulsów wejściowych).
Uzyskano w ten sposób kaskadę trzech przerzutników asynchronicznych pracująca zgodnie z przebiegami czasowymi
z rys. 7.2c.
Jeśli licznik ma liczyć w tył (odejmować) wejścia zegarowe łączymy z wyjściem poprzedniego.
Przykład 7.2:
Na rys. 7.3 przedstawiono przykład licznika szeregowego odejmującego, który pomniejsza swój stan w takt impulsu zliczanego
oraz przebiegi czasowe.
a)
Q1 Q2
Q0
Q0 Q1
Q2
We
C C
C
Q Q
b) 0 1 Q
2
1 2 3 4 5 6 7 8
We
Q0
Q1
Q2
7 6 5 4 3 2 1 0
Rys. 7.3 Szeregowy licznik odejmujący: a) schemat połączeń,
b) przebiegi czasowe.
Jeżeli chcemy zaprojektować licznik a s nie jest równe s = 2n.
Tworzymy licznik o większej liczbie stanów takiej, że s = 2n, ale jednocześnie s > 2n-1. Do takiego licznika dołącza
się bramki NAND lub AND w zależności od tego, na co reagują wejścia asynchroniczne przerzutników (NAND gdy na 0 ).
Bramki te służą do ograniczania impulsów zliczanych przez licznik.
Na bramkę podajemy z wyjść przerzutników impuls przy którym nastąpi zerowanie licznika. Natomiast wyjście
bramki łączymy z wejściami ustawiającymi.
Przykład 7.3:
Na rys. 7.4 przedstawiono licznik pracujący w dwóch kierunkach. Jest on połączeniem liczników z rys. 7.2 i 7.3. Zmiany
kierunku zliczania dokonuje się za pomocą sygnału K. Zmiana wartości K może spowodować wyzwolenie przerzutnika. Z tego
powodu po zmianie kierunku zliczania należy ustawić warunek początkowy, od którego licznik zaczyna swoją pracę.
Q0 Q1 Q2
s Q s Q s Q
X
C C C
r Q r Q r Q
Z
K
Rys. 7.5 Licznik szeregowy rewersyjny.
K zmienna programujÄ…ca kierunek zliczania.
Przykład 7.4:
Na rys. 7.5a przedstawiono licznik modulo 3. Do określenia liczby przerzutników zastosujemy zależność (2n-1 s 2n). Liczba n
spełniająca ten warunek wynosi 2.Tworzymy więc licznik binarny złożony z dwóch przerzutników.
a)
1 Q0 1 Q1
J0 Q0 J1 Q1
We
C C
K0 Q
0 R
R K1 Q
1
b)
1 2 3 1
We
Q0
Q1
R
0 1 2 0
3
Rys. 7.5 Licznik modulo 3: a) schemat połączeń,
b) przebiegi czasowe.
Zerowanie licznika nastąpi, gdy pojawi się impuls odpowiadający liczbie 3, czyli 112. Na wejścia bramki podajemy B
= A = 1, a na wyjściu bramki pojawi się stan niski ( 0 ) zerujący wszystkie przerzutniki licznika.
Jeśli stanem początkowym jest stan 0 (stan wyjść BA = 0), pod wpływem impulsu wejściowego wyjście A przechodzi
do stanu 1. Na wejściu bramki NAND są wówczas sygnały: 1, 0, a na jej wyjściu stan 1 (rys. 7.4b). Pod wpływem drugiego
impulsu wejściowego licznik przechodzi do stanu 2. Na wejściu bramki NAND są wówczas sygnały: 1, 0, a na jej wyjściu stan 1.
Pod wpływem następnego impulsu wejściowego na wyjściu licznika pojawi się stan 3. Wówczas na wyjściu bramki NAND, a
więc i na wejściu R pojawi się sygnał 0, który spowoduje wyzerowanie licznika, czyli powrót do stanu 0. Licznik ten ma trzy
stany, przez które przechodzi cyklicznie. Jest to więc licznik modulo 3.
Przykład 7.5:
Na rys. 7.6 pokazano licznik zliczający od 3 do 13 włącznie. Do zapisania liczb w zakresie od 3 do 13 w kodzie dwójkowym
potrzebne są cztery bity, czyli cztery przerzutniki. Na bramkę NAND podajemy z wyjść przerzutników impuls przy którym
następuje zerowanie licznika, czyli impuls 14, Q3Q2Q1Q0 = 1110.Natomiast wyjście bramki łączymy z wejściami ustawiającymi,
czyli początek zliczania zaczyna się od 3, Q3Q2Q1Q0 = 0011. Jeżeli jest 0, łączymy wyjście bramki z wejściem zerującym r ,
jeśli 1 z wejściem s .
0 1
1 1
Q0 Q3
Q1 Q2
1 1
0 0
1 T Q
1 T Q
1 T Q
1 T Q
s s
s s
C
C
C C
C C
Q Q
Q Q
r r
r r
Rys. 7.6 Licznik zliczajÄ…cy od 3 do 13.
Odmianą liczników są tzw. dzielniki częstotliwości tzn. układy, które po określonej liczbie impulsów zliczanych
generują jeden impuls wyjściowy.
Największy zakres zastosowań spośród wszystkich liczników asynchronicznych mają tzw. dekady liczące, tj. dzielniki
przez 10. Zwykle jest to połączenie dwójki liczącej z dzielnikiem przez 5. Przykładem takiego rozwiązania jest licznik
asynchroniczny 7490 przedstawiony na rys. 7.7a. Jest to licznik modulo 2 i licznik modulo5 z oddzielnymi wejściami i
wyjściami. Może on pracować jako dzielnik przez 10 zliczający w kodzie BCD (wyjście Q0 połączone z wejściem Q1Q3), lub
jako licznik modulo 10 z symetrycznym przebiegiem wyjściowym (wyjście Q3 połączone z wejściem Q0), o przebiegach
czasowych przedstawionych na rys. 7.7b.
a)
Q0 Q3
Q1 Q2
1 J Q
J Q
J Q
s s
s J s Q
We
C C C
C
Q0 K Q
K Q
K Q
K r Q
r r
r
1 1
1
b)
R9(1) = 0 R9(2) = 0 R0(1) = 0 R0(2) = 0 WeQ0 = 0
We
1 2
Q0 Q3 3 4 5 6 7 8 9 10 1
We Q1 Q3
Q1
R9(1) R9(2) R0(1) R0(2)
Q2
Q3, We Q0
Q1
Rys. 7.7 Scalony licznik asynchroniczny 7490: a) schemat połączeń,
b) przebiegi czasowe.
Licznik ten posiada dwa wejścia sterujące:
R9(1) i R9(2) ustawia (w dwójkową reprezentację liczby 9),
R0(1) i i zerowania.
Aby wyzerować wyjścia tego licznika, należy na oba wejścia R0(1) i R0(2) podać sygnał 1, natomiast aby ustawić
jego wyjścia w dwójkową reprezentację liczby 9, należy na oba wejścia R9(1) i R9(2) podać sygnał 1.
Zadanie:
1. Zaprojektować licznik liczący od 3 do 14 w przód (zerowanie przy impulsie 15).
2. Zaprojektować licznik liczący od 7 do 3 w przód (zerowanie przy impulsie 4).
3. Zaprojektować licznik liczący od 9 do 4 w tył (zerowanie przy impulsie 3).
1.3. LICZNIKI SYNCHRONICZNE
Liczniki synchroniczne (równoległe) są budowane z na dowolnym typie przerzutników w oparciu o siatki Karnaugha .
Zmiany stanów poszczególnych przerzutników odbywają się jednocześnie w takt impulsów zegarowych X wprowadzanych
równolegle na każdy z przerzutników.
Wartość zmiennej wyjściowej Qi określają wartość zmiennych wejściowych synchronicznych, określanych przez
kombinacyjny układ programujący (UP).
J0 Q0 J1 Q1
J2 Q2
C C
C
K0 Q K1 Q
0 1 K2 Q
2
A
UP
Rys. 7.8 Schemat blokowy licznika synchronicznego.
UP Kombinacyjny Układ Programujący.
Na rys. 7.8 przedstawiono schemat blokowy licznika synchronicznego, w którym układ tworzą niezależne
przerzutniki. Przejście licznika z jednego stanu do drugiego odbywa się na podstawie zadanych wzbudzeń zmiennych
informacyjnych. Wektor A reprezentuje dodatkowe zmienne programujące, pozwalające zmienić sposób pracy licznika.
W rozdziale 4 przedstawiono tablice ilustrujące działanie przerzutników synchronicznych. Przy projektowaniu
liczników synchronicznych należy wziąć pod uwagę tablice wzbudzeń. Zadane są przejścia przerzutników, bo zadany jest
program pracy licznika, natomiast należy ustalić wzbudzenia przerzutników dla zapewnienia tych przejść.
Tablice wzbudzeń wszystkich przerzutników synchronicznych przedstawiono na rys. 7.9.
Qit Qit+1 Tt Jt Kt Dt St Rt
0 0 0 0 - 0 0 -
1 1 - 1 1 0
0 1
1 - 1 0 0 1
1 0
0 - 0 1 - 0
1 1
Rys. 7.9 Tablica wzbudzeń przerzutników synchronicznych.
Układ programujący (UP) zawiera funkcje kombinacyjne określające wartości zmiennych informacyjnych
poszczególnych przerzutników w takcie t, które wymuszą zadaną wartość Qi w takcie t + 1, po przejściu impulsu taktującego.
Liczniki równoległe projektujemy następująco:
1. Ustalić liczbę przerzutników w zależności od pojemności licznika.
2. Ustalić i wykonać tabele stanów licznika (uwzględniając tabele wzbudzeń przerzutników, na których realizujemy licznik).
Polega to na rozpisaniu kolejności następujących po sobie stanów i odpowiadającym im stanów przerzutnika, czyli
wypełnienie tablicy stanów, a następnie na podstawie tablicy wzbudzeń przerzutnika wypełnia się tablicę Karnaugha,
osobno dla poszczególnych wejść informacyjnych każdego przerzutnika.
3. Zaprojektować układ kombinacyjny ograniczający zliczanie.
Przykład 7.6:
Zaprojektować licznik równoległy zliczający od 5 do 14 na przerzutnikach JK.
Do zapisania liczb od 5 do 14 w kodzie dwójkowym potrzeba czterech bitów, czyli cztery przerzutniki.
5 = 0101 = Q3Q2Q1Q0
14 = 1110 = Q3Q2Q1Q0
W tablicy stanów (rys. 7.10b) zapisujemy stany jakie będą występowały od 5 do 14 w kodzie dwójkowym. Stany
wyjściowe odpowiadają stanom przerzutników, które wyznaczamy na podstawie tablicy wzbudzeń (rys. 7.10a).
a)
Qn Qn+1 J K
0 0 0 -
0 1 1 -
1 0 - 1
1 1 - 0
b)
8 4 2 1
Stany J3 K3 J2 K2 J1 K1 J0 K0
Q3 Q2 Q1 Q0
5 0 1 0 1 0 - - 0 1 - - 1
6 0 1 1 0 0 - - 0 - 0 1 -
7 0 1 1 1 1 - - 0 - 1 - 1
8 1 0 0 0 - 0 0 1 0 - 1 -
9 1 0 0 1 - 0 0 - 1 - - 1
10 1 0 1 0 - 0 0 - - 0 1 -
11 1 0 1 1 - 0 1 - - 1 - 1
12 1 1 0 0 - 0 - 0 0 - 1 -
13 1 1 0 1 - 0 - 0 1 - - 1
14 1 1 1 0 - 1 - 0 - 1 1 -
Rys. 7.10 Licznik równoległy zliczający od 5 do 14:
a) tablica wzbudzeń przerzutnika JK,
b) tablica stanów.
Na przykład dla Q3 mamy (rys. 7.11):
Q3 J3
0 0
0 0
0 1
1 -
1 -
1 -
1 -
1 -
1 -
1 -
Rys. 7.11 Stany wyjściowe J3.
Aby otrzymać stan J3 5 łączymy stan 5 i 6 Q3 sygnału wyjściowego i mamy: 00 daje nam (z tablicy wzbudzeń dla
J) 0, 00 daje nam również 0, 01 otrzymujemy 1. Jako końcowy stan dla J3, łączymy ostatni stan 14 z pierwszym 5.
Na podstawie tablicy stanów sporządzamy tablice Karnaugha dla wejść informacyjnych poszczególnych
przerzutników (JnKn) (rys. 7.12a, b, c), a na podstawie tablic Karnaugha wyznaczamy funkcje sterujące dla wejść
informacyjnych.
Q 1Q0 00 01 11 10 Q1Q0 00 01 11 10
Q3Q2 - - - - Q300 2 - - - -
00 Q
01 - - - -
01 - 0 1 0
11 0 0 - 1
11 - - - -
10 0 0 0 0
10 - - - -
J3 = Q1Q0 K3 = Q2Q1
00 01 11 10 00 01 11 10
00 - - - -
00 - - - -
01 - 0 0 -
01 - - - -
11 0 0 - 0
11 - - - 1
10 1 0 - -
10 0 0 - 0
J2 = Q2 K2 = Q0 Å"Q2
00 01 11 10 00 01 11 10
00 - - - -
00 - - 0 0
01 - - 1 0
01 - 1 1 1
11 - - - 1
11 - - - -
10 - - 1 0
10 - - - -
J1 = Q2 K1 = Q3Q2 + Q0
J0 = 1
Q0 Q3
Q1 Q2
K0 = 1
1 J Q0
J1 Q1
0 J2 Q2 J3 Q3
C C
C C
K0 Q K1 Q
0 1 K2 Q K3 Q
2 3
C
Q0
Q1
Rys. 7.12 Synchroniczny licznik zliczający od 5 do 14: a), b), c), tablice Karnaugha dla poszczególnych wejść informacyjnych
przerzutników JK,
d) schemat połączeń.
Na podstawie funkcji sterujących projektujemy układ kombinacyjny ograniczający zliczanie (rys. 7.12d).
Przykładowo dla przerzutnika drugiego, w pole 0101 w tablicy J0 wpisujemy - , a w tablicy K0 wpisujemy 1. Licznik
jest w stanie 0101 to następnym jego stanem jest stan 0110, czyli stan na wyjściu Q0 zmieni się z 1 na 0, co zapewnia kombinacja
J0K0 = - 1. Podobnie w pole 1110 w tablicy J0 wpisujemy 1, a w tablicy K0 - .Licznik jest w stanie 1110, to następnym stanem
jest 0101, czyli na wyjściu Q0 stan zmieni się z 0 na 1, co zapewnia kombinacja J0K0 = 1 -.
& :::nobody the fallen one:::..
Wyszukiwarka
Podobne podstrony:
Moduł licznika 4 cyfrowegocyfrowy licznik obrotów do szmochoduPodstawy Cyfrowego Przetwarzania SygnalówFotografia cyfrowa w kryminalistyce aspekty techniczno prawneKodowanie V A G iem licznika do A4Fotografia cyfrowa Ćwiczenia praktycznePierwsze kroki w cyfrówce cz48 7 licznikiprzetwarzanie obraz w cyfrowych w praktyceWyklad e cyfrowa 4więcej podobnych podstron