Pierwsze kroki w cyfrówce cz16.pdf

(270 KB) Pobierz
1128551 UNPDF
Układy cyfrowe
w cyfrówce
część 16
W tym odcinku przedstawione są
sposoby skracania cyklu zliczania.
Sposoby takie są stosowane
w większości liczników dziesiętnych.
Liczniki dziesiętne
A teraz kolejna istotna sprawa. Naj−
pierw wydawało ci się, że liczniki nieroze−
rwalnie związane są z kodem dwójko−
wym, potem namieszałem ci jakimś tam
„dżonsonem”, który nie dość, że jest jak−
by rejestrem, to jeszcze daje na wyjściu
swego wewnętrznego dekodera nie kod
dwójkowy, tylko tak zwany kod 1 z 10 (je−
den z dziesięciu). Prawdopodobnie nurtu−
je cię jednak pytanie, jak to jest z licznika−
mi liczącymi do dziesięciu. Czy do realiza−
cji licznika dziesiętnego trzeba używać
„dżonsona”? Przecież stany na jego wy−
jściach nie mają praktycznie nic wspólne−
go z liczbami 0...9 zapisanymi w kodzie
dwójkowym.
Kiedyś, gdy byłem jeszcze bardzo mło−
dy, gdy pojawiały się pierwsze cyfrowe ze−
garki i elektroniczne kalkulatory (takie ze
świecącymi na czerwono wyświetlaczami
LED), wiedziałem już, że wszystkie układy
cyfrowe, także w zegarkach i kalkulatorach,
wykorzystują kod dwójkowy. Zastanawia−
łem się długo, jak „oni to zrobili”, że dwój−
kowy licznik zlicza do dziesięciu, a dwa ta−
kie liczniki mogą zliczać do dwunastu, dwu−
dziestu czterech, czy sześćdziesięciu. Było
to dla mnie nieprzeniknioną tajemnicą. Mo−
że i ty, młody Czytelniku masz podobny
problem. Jeśli tak, dokładnie zapoznaj się
z poniższymi informacjami.
Prostym sposobem uzyskania licznika zli−
czającego do 10 jest po prostu skrócenie
cyklu zliczania licznika czterobitowego. Czte−
robitowe liczniki z rysunków 1 i 6 zliczają do
16. Do szesnastu? Tu niektórzy zaprotestu−
ją! Ściśle biorąc, czterobitowe liczniki dwój−
kowe (binarne) mają 16 różnych stanów wy−
jściowych, a najwyższą zawartością jest licz−
ba 15, czyli 1111 B . Tak jest! Nigdy nie zapo−
minaj, że w elektronice i informatyce zlicza−
nie zaczyna się od zera, a nie od jedności.
Stąd oczywiście jeśli licznik ma mieć dzie−
sięć stanów wyjściowych, to trzeba skrócić
cykl pracy, by licznik liczył od 0 do 9, a potem
znów zaczynał od zera. Na rysunku 113 mo−
żesz zobaczyć oczekiwane stany licznika.
Tylko jak skrócić cykl, by po liczbie
9 (1001 B ) pojawiła się liczba zero (0000 B )?
Zasada jest prosta: w momencie, gdy
licznik przechodzi do następnego stanu,
czyli liczby 10 (1010 B ), wszystkie prze−
rzutniki zostają wyzerowane i cykl pracy
rozpoczyna się od nowa. Jedno z najpros−
tszych rozwiązań pokazane jest na rysun−
ku 114. Bramka AND pełni rolę dekodera,
wykrywa pojawienie się w liczniku liczby
1010 B , i zeruje przerzutniki. Proste?
Może zastanawiasz się, dlaczego wy−
stępuje tu tylko dwuwejściowa bramka
AND? Przecież zerowanie nastąpi nie tyl−
ko po pojawieniu się liczby 1010B, ale
także 1011 B , 1110 B , 1111 B . Wpadłeś kole−
go! Przecież jeśli licznik zlicza w przód, to
nie ma siły – najpierw pojawi się liczba
1010 B i licznik zostanie wyzerowany. Żad−
na z liczb 1011 B , 1110 B , 1111 B wcale nie
pojawi się w liczniku w czasie normalnej
pracy (choć może przypadkowo
„wskoczyć” po włączeniu napięcia zasila−
jącego – zastanów się samodzielnie, jak
to wpłynie na cykl pracy licznika).
No i co?
Czy już zrozumiałeś, w jak prosty sposób
można z klasycznego licznika dwójkowego
wykonać licznik o do−
wolnie krótszej dług−
ości cyklu? Czy już
wiesz, jak zrobić
dzielnik dzielący
częstotliwość przez
dowolną liczbę?
Wystarczy do te−
go licznik dwójkowy
o długości cyklu
większej, niż ci po−
trzeba. Ten licznik musi mieć wejście ze−
rujące. Zasada jest oczywista: jeśli licznik
ma zliczać do jakiejś liczby N (a ściślej
mieć N różnych stanów wyjściowych,
łącznie z zerem), to należy przedstawić
liczbę N w postaci dwójkowej, a następ−
nie zbudować prosty dekoder, który wy−
zeruje licznik w momencie pojawienia się
na wyjściach liczby N. Inaczej mówiąc, na
wyjściach pojawiać się będą kolejne licz−
by od zera do N−1, a pojawienie się liczby
N momentalnie wyzeruje licznik. Można
powiedzieć, że w zasadzie liczba N nie
pojawi się w liczniku (w rzeczywistości
pojawi się tylko na kilkadziesiąt nanose−
kund). Zastanów się czy dobrze rozu−
miesz ostatnie zdanie.
Na rysunku 115 zobaczysz proste spo−
soby dowolnego skracania długości cyklu
liczników asynchronicznych z rodzaju
4020, 4024, 4040, 4060 i w ogóle wszys−
tkich liczników mających wejście zerują−
ce. Pokazany dwunastobitowy licznik nor−
malnie zlicza do 4096 (0...4095), ale w po−
kazanym układzie cykl został skrócony do
101001101011 B czyli 2667. W liczniku
występują liczby 0...2666, pojawienie się
liczby 2667 zeruje licznik. Zgadza się?
Czy dokładnie rozumiesz dlaczego przy
ustawieniu dekodera na 2667, licznik zli−
cza od 0 do 2666? Musisz to dobrze po−
jąć. No i znów kłania się „oscyloskop
w oku”. Czy już widzisz kolejne niebez−
pieczeństwo?
Jeszcze nie?
Mądre książki ostrzegają, iż przy takich
najprostszych sposobach istnieje pewne
ryzyko, że nie wszystkie przerzutniki zo−
Rys.. 113
Rys.. 114
18
E LEKTRONIKA DLA WSZYSTKICH 7/98
Pierwsze kroki
1128551.021.png
Układy cyfrowe
Rys.. 115
Rys.. 116
staną należycie wyzerowane. Przecież
pojawienie się określonego stanu wy−
jściowego (liczby 2667) spowoduje mo−
mentalne wyzerowanie licznika i w efek−
cie stan ten zaniknie z wejścia zerującego
dosłownie po kilkunastu czy kilkudziesię−
ciu nanosekundach. Taki króciutki, nano−
sekundowy impuls może okazać się zbyt
krótki do wyzerowania wszystkich stopni
licznika. W praktyce sposoby z rysunku
116 zdają egzamin, jeśli cały licznik za−
warty jest w tym samym układzie scalo−
nym. Tylko w przypadku, gdy do budowy
licznika użyte byłoby kilka połączonych
układów scalonych, rozrzuty ich paramet−
rów mogłyby spowodować błędy. Wtedy
wspomniane ryzyko można w prosty spo−
sób wyeliminować, stosując przerzutnik
RS według rysunku 116a. Zauważ, że
tym razem nie ma ryzyka. Pojawienie się
stanu wysokiego w punkcie A ustawia
dodatkowy przerzutnik RS (z bramek
NOR) i zeruje licznik. Pomimo, że impuls
w punkcie A zanika po kilkudziesięciu na−
nosekundach, przerzutnik nadal jest usta−
wiony, aż do pojawienia się stanu wyso−
kiego w przebiegu wejściowym. Zoba−
czysz to na rysunku 116b. Zwróć uwagę,
że mamy tu do czynienia z typowym licz−
nikiem asynchronicznym z aktywnym
zboczem opadającym. Na rysunku 116b
nie zaznaczyłem opóźnienia. Zobaczysz je
pod lupą na rysunku 116c. Pamiętaj
o tych opóźnieniach, bo ograniczają one
maksymalną częstotliwość pracy licznika
– stany na wszystkich wyjściach muszą
się ustalić przed przyjściem na wejście
zegarowe następnego aktywnego zbocza
( układy z rys. 115) lub dodatniej połów−
ki przebiegu (w układzie z rysunku 116).
Właśnie tu masz przykład, że ze wzglę−
du na sumowanie się opóźnień, licznik
asynchroniczny będzie miał znacznie
mniejszą maksymalną częstotliwość
pracy, niż licznik synchroniczny o podob−
nej pojemności.
A co z błędnymi kodami na wyjściu
licznika asynchronicznego? Czy nie spo−
wodują błędnego działania i przedwczes−
nego skracania cyklu? Coś takiego mog−
łoby wynikać z rysunku 109a (w majo−
wym numerze EdW).
Spróbuj udowodnić, że licznik będzie
pracował poprawnie pomimo występo−
wania błędnych kodów wyjściowych. To
jest dość trudne, więc podpowiem ci: za−
stanów się, jakie błędne kody będą się
pojawiać przy zliczaniu w przód.
W scalonych licznikach zliczających do
dziesięciu stosuje się jeszcze inne sposoby
skracania cyklu. Nie musisz ich wcale znać,
ale jeśli cię to interesuje, dwa przykłady ta−
kich liczników znajdziesz na rysunku 117.
Masz tu dekadowy licznik asynchroniczny
(rysunek 117a) oraz synchroniczny (117b).
Zachęcam cię, byś samodzielnie przeanali−
zował ich działanie i narysował przebiegi.
Czy rzeczywiście są to liczniki liczące w ko−
dzie dwójkowym od 0 do 9, mające prze−
biegi według rysunku 113?
Rys.. 117
a))
b))
E LEKTRONIKA DLA WSZYSTKICH 7/98
19
1128551.022.png 1128551.023.png 1128551.024.png 1128551.001.png 1128551.002.png 1128551.003.png 1128551.004.png 1128551.005.png 1128551.006.png 1128551.007.png 1128551.008.png 1128551.009.png 1128551.010.png 1128551.011.png 1128551.012.png
Układy cyfrowe
Rys.. 118
że i w miarę możliwości powi−
nien zliczać impulsy przez we−
jście CL, natomiast następne
siłą rzeczy muszą wykorzysty−
wać końcówkę EN jako we−
jście, jak to pokazano na ry−
sunku 119.
Rysunek 119 pokazuje syn−
chroniczne liczniki 4518 połą−
czone są w najprostszy sposób
– kaskadowo. W ten sposób
choć każdy licznik jest synchro−
niczny, poszczególne liczniki
pracują w sposób asynchronicz−
ny, to znaczy zmiany stanów na
ich wyjściach nie następują
w jednej chwili, tylko kolejno,
w odstępie kilkudziesięciu na−
nosekund. W ogromnej więk−
szości zastosowań nie jest to
wadą i układ z rysunku 119 jest
Zgadza się? Nie zdziwisz się zapewne,
jeśli dowiesz się, że mniej więcej tak zre−
alizowane są niektóre liczniki scalone, np.
7490, 74160, 74190 czy 74192.
Rysunek 118 przedstawia schemat
wewnętrzny bodaj najczęściej używane−
go licznika dekadowego z rodziny CMOS
– kostki 4518. Jak widać, jest to licznik
synchroniczny. Możesz spróbować prze−
analizować jego działanie, ale nie to jest
najważniejsze – chcę ci pokazać kolejną
sprawę praktyczną.
Być może już zauważyłeś przeglądając
katalog, że sporo liczników CMOS ma
jakby podwójne wejście. W zasadzie je−
dno z tych wejść jest „prawdziwym” we−
jściem zegarowym, oznaczonym CL lub
T, a drugie jest wejściem zezwalającym,
oznaczonym zwykle EN od enable – ze−
zwalać lub STROBE. Podanie na wejście
EN stanu wysokiego umożliwia zliczanie
impulsów podawanych na wejście CL,
podanie stanu niskiego na EN uniemożli−
wia zliczanie, ale nie zeruje licznika. W ta−
kim układzie licznik zwiększa swą zawar−
tość przy wystąpieniu na wejściu CL ros−
nącego zbocza.
Przemyślni twórcy liczników
zadbali o to, by licznik mógł
zwiększać swą zawartość także
przy zboczu opadającym, co jak
się za chwilę okaże, jest nie−
zbędne przy łączeniu kilku takich
liczników. Tak zaprojektowali ob−
wody wejściowe, by po dołącze−
niu wejścia CL do masy i poda−
niu przebiegu na wejście EN,
licznik zmieniał stan przy zboczu
opadającym. Taką budowę wejścia ma
nie tylko kostka 4518 czy bliźniacza 4520,
zliczająca do 16. Taki sam obwód we−
jściowy ma nasz ulubieniec – układ 4017.
Dla zwiększenia uniwersalności we−
jście CL zazwyczaj jest wyposażone
w układ Schmitta, czyli może pracować
także z sygnałami o bardzo łagodnych
zboczach. Jeśli chodzi o wejście EN, to
katalogi zawierają mętne informacje:
z niektórych źródeł wynikałoby, że tak−
że na wejściu EN umieszczono układ
Schmitta, ale inne źródła o tym nie
wspominają. Lepiej przyjąć, że tylko
wejście CL wyposażone jest w układ
Schmitta. Dlatego pierwszy licznik mo−
najczęściej używanym licznikiem dzie−
siętnym (z kostkami 4518). Identycznie
wygląda schemat licznika z licznikami
dwójkowymi 4520, ale tych kostek uży−
wa się rzadko, wykorzystując zamiast
nich dwójkowe liczniki asynchroniczne,
takie jak 4060, 4040 czy 4020.
Synchroniczne liczniki 4520 (i 4518)
można też łączyć, by cały zespół praco−
wał synchroniczne. Jeśli byłoby to abso−
lutnie konieczne, można wykorzystać
układ z rysunku 120.
W tym i poprzednim odcinku oprócz
informacji o działaniu liczników, próbo−
wałem cię oswoić z różnymi sposoba−
mi oznaczania wejść, wyjść i rysowa−
nia schematów. Zwróć uwagę, że ry−
sunek 120 też jest przykładem od−
miennego (szczerze mówiąc, trochę
niejasnego) narysowania schematu
licznika. Porównaj też wcześniejsze ry−
sunki, byś w przyszłości nie zgubił się
w rozmaitości oznaczeń i sposobów
rysowania.
Tyle podstawowych informacji o licz−
nikach. W następnym miesiącu bliżej
zapoznasz się z następnymi popularny−
mi licznikami dwójkowymi i licznikami
BCD.
Rys.. 120
Piiotr Góreckii
20
E LEKTRONIKA DLA WSZYSTKICH 7/98
Rys.. 119
1128551.013.png 1128551.014.png 1128551.015.png 1128551.016.png 1128551.017.png 1128551.018.png 1128551.019.png 1128551.020.png
Zgłoś jeśli naruszono regulamin