Dzielniki częstotliwości

Transkrypt

Dzielniki częstotliwości
Dzielniki częstotliwości
Przerzutniki zrobione z dwóch bramek, takie jak na rysunkach 8.47 i 8.50, znane są ogólnie jako przerzutniki RS (ang. set-reset) albo asynchroniczne (ang. jam loaded).
Wymuszenie jednego lub drugiego stanu takiego przerzutnika jest możliwe w dowolnej chwili przez doprowadzenie do właściwego wejścia odpowiedniego sygnału
wejściowego. Stosuje się je do usuwania drgań zestyków i w wielu innych układach. Jednak najczęściej używane przerzutniki wyglądają nieco inaczej. Zamiast dwóch
wejść asynchronicznych mają dwa wejścia "danych" i jedno wejście "zegarowe". Stan wyjścia może się zmieniać lub pozostać nie zmieniony; zależy to od stanu linii
wejściowych (danych) tylko w czasie trwania impulsu zegara. Schemat najprostszego przerzutnika taktowanego (synchronicznego) przedstawiono na rysunku 8.51.
Rys. 8.51.
Przerzutnik taktowany.
Jest to po prostu zwykły przerzutnik RS i para bramek (sterowanych przebiegiem taktującym), które odblokowują wejścia zerujące i ustawiające. Łatwo sprawdzić, że
jego tablicą prawdy jest:
SR
0 0
Qn+1
Qn
0 1
0
1 0
1
1 1 nieokreślony
gdzie Qn+1oznacza stan wyjścia po przejściu impulsu zegara, a Qn - stan wyjścia przed pojawieniem się impulsu zegara. Podstawowa różnica między tym i poprzednimi
przerzutnikami polega na tym, że R i S mają teraz charakter wejść danych. Stan tych wejść w czasie trwania impulsu zegara wymusza zachowanie się wyjścia Q.
Przerzutnik ten ma jednak jedną niewygodną właściwość. Stan wyjścia może zmieniać się w odpowiedzi na stan wejść, gdy sygnał taktujący jest w stanie wysokim. W
tym sensie jest to w dalszym ciągu przerzutnik asynchroniczny (znany jest pod nazwą "przezroczystego zatrzasku", ang. transparent latch, ponieważ jego wyjście
"widzi" wejście, gdy sygnał taktujący jest w stanie wysokim)5). Prawdziwie pożyteczne przerzutniki to układy o nieco innych strukturach: przerzutnik dwuzboczowy
(ang. master-slave flip flop) i przerzutnik wyzwalany zboczem (ang. edge-triggered flip-flop).
Przerzutniki dwuzboczowe i wyzwalane zboczem
Są to najbardziej popularne przerzutniki. Dane ustalone w liniach wejściowych tuż przed zmianą stanu zegara, czyli jego "zboczem", wyznaczają stan wyjść ustalający
się po przejściu impulsu taktującego. Z uwagi na to, że są powszechnie dostępne w postaci tanich układów scalonych, nie konstruuje się ich nigdy samodzielnie. Warto
jednak zaznajomić się z ich strukturą wewnętrzną, co pomoże zrozumieć zasadę ich działania. Na rysunku 8.52 przedstawiono odpowiednie schematy ideowe.
1
Rys. 8.52.
Przerzutniki D wyzwalane zboczem
Oba układy to przerzutniki typu D. Stan wejścia D pojawi się na wyjściu po zakończeniu impulsu zegara. Zasada działania przerzutnika dwuzboczowego będzie
prawdopodobnie łatwiejsza do zrozumienia. Oto jak on działa. Kiedy sygnał taktujący jest w stanie wysokim, bramki 1 i 2 są odblokowane, wymuszając na pierwszym
przerzutniku - wykonanym z bramek 3 i 4 i nazywanym głównym (ang. master) - taki sam stan, jaki panuje na wejściu D: M = D, M' = D'. Bramki 5 i 6 są zablokowane,
więc drugi przerzutnik - wykonany z bramek 6 i 7 i nazywany pomocniczym (ang. slave) - zachowuje poprzedni stan. Kiedy na wejściu zegarowym pojawia się
opadające zbocze impulsu, wejścia przerzutnika głównego są odłączone od wejścia D, jednocześnie wejścia przerzutnika pomocniczego są dołączone do wyjść
przerzutnika głównego. Wobec tego przerzutnik główny przekazuje swój stan przerzutnikowi pomocniczemu. Na wyjściu nie zachodzą żadne inne zmiany, ponieważ
pierwszy przerzutnik został już "zatrzaśnięty". Przy następnym narastającym zboczu zegara przerzutnik pomocniczy zostanie zablokowany i zachowa swój stan, podczas
gdy przerzutnik główny będzie ponownie reagował na stan wejścia. Przerzutnik wyzwalany zboczem zachowuje się na zewnątrz tak samo, ale jego wewnętrzne działanie
jest nieco inne. Analiza pracy takiego przerzutnika nie jest trudna. Schemat przedstawiony na rysunku 8.52b pokazuje uproszczoną strukturę wewnętrzną przerzutnika D
wyzwalanego narastającym zboczem impulsu zegara, którego dwa egzemplarze zamknięte w jednej obudowie tworzą popularny układ scalony oznaczany symbolem '74.
Wcześniej omówiony przerzutnik typu master-slave przekazuje informację na wyjście zboczem opadającym. Istnieją przerzutniki wyzwalane zarówno zboczem
dodatnim, jak i ujemnym. Co więcej, większość przerzutników ma także wejścia asynchroniczne typu SET (ustawiające) i CLEAR (zerujące). Zerowanie i ustawianie
może być wykonywane poziomem niskim lub wysokim, zależnie od typu przerzutnika. Kilka popularnych przerzutników pokazano na rysunku 8.53.
Rys. 8.53.
Przerzutniki D i JK
Mały klin oznacza "wyzwalany zboczem", małe kółeczko oznacza "negację" lub uzupełnienie. Tak więc układ '74 jest podwójnym przerzutnikiem typu D, wyzwalanym
zboczem narastającym, z wejściami asynchronicznymi SET i CLEAR aktywnymi poziomem niskim. Układ 4013 (CMOS) jest podwójnym przerzutnikiem typu D,
wyzwalanym zboczem narastającym, z wejściami asynchronicznymi SET i CLEAR aktywnymi poziomem wysokim. Układ '112 jest podwójnym przerzutnikiem typu
JK, w którym przekazywanie danych na wyjście odbywa się na zboczu opadającym i który ma wejścia asynchroniczne SET i CLEAR aktywne poziomem niskim.
Przerzutnik JK. Zasada działania przerzutnika JK jest podobna do zasady działania przerzutnika D z tą różnicą, że ma on dwa wejścia danych. Oto tablica prawdy:
J K Qn+1
0 0 Qn
01
0
10
1
2
1 1 Q'n
Wynika z niej, że jeżeli stany na wejściach J i K są różne, to przy następnym aktywnym zboczu zegara wyjście Q znajdzie się w stanie określonym przez J. Jeżeli J i K są
w stanie niskim, to stan wyjścia się nie zmieni. Jeżeli J i K są w stanie wysokim, to stan wyjścia będzie się zmieniał na przeciwny przy każdym kolejnym impulsie
zegara.
O s t r z e ż e n i e : w niektórych starszych przerzutnikach JK występuje efekt "łapania jedynek" (ang. ones-catching). Tego określenia nie znajdzie się w danych
katalogowych, ale dla nie uprzedzonego użytkownika sprawa może mieć ponure konsekwencje. Problem polega na tym, że jeżeli wejście J lub wejście K (lub oba)
zmieni na chwilę swój stan w czasie trwania impulsu taktującego, to mimo przywrócenia jego stanu początkowego przed kolejnym zboczem impulsu zegara, przerzutnik
"zapamięta" ten chwilowy stan i zachowa się tak, jakby ten stan się utrzymywał. Wobec tego przerzutnik może zmieniać stan na następnym zboczu zegara, chociaż stan
wejść J i K w momencie pojawienia się zbocza wskazuje na konieczność pozostawienia przerzutnika w tym samym stanie. Może to spowodować co najmniej osobliwe
działanie układu. Problem wziął się stąd, że przerzutniki dwuzboczowe projektowano z myślą o ich taktowaniu bardzo krótkimi impulsami, podczas gdy zazwyczaj
taktuje się je czymkolwiek. Trzeba więc zachować ostrożność, gdy stosuje się przerzutniki master-slave, albo unikać ich zupełnie i zastępować prawdziwymi
przerzutnikami wyzwalanymi zboczem. Prawdziwe przerzutniki wyzwalane zboczami są zawarte w układach '112 i '109. Każdy z tych układów składa się z dwóch
przerzutników JK, a każdy przerzutnik ma dodatkowe wejścia asynchroniczne: zerujące i ustawiające, aktywne stanem niskim. Przerzutniki z układu '112 są wyzwalane
zboczem ujemnym, natomiast przerzutniki z układu '109 - zboczem dodatnim. Konstruktorzy układu '109 sprawili użytkownikowi interesującą niespodziankę: zawarte w
nim przerzutniki są przerzutnikami typu JK', tzn. stan sygnału doprowadzanego do wejścia K' trzeba zmienić na przeciwny, aby otrzymać prawdziwy przerzutnik typu
JK. Połączenie ze sobą wejść J i K' daje przerzutnik typu D, a ustalenie na wejściu K' stanu niskiego, a na wejściu J stanu wysokiego, daje układ zliczający do dwóch
(dzielnik częstotliwości przez 2).
Dzielnik częstotliwości przez 2
Wykorzystując właściwość przerzutnika, polegającą na zmianie stanu po każdym impulsie zegara, można łatwo wykonać układ dzielenia częstotliwości przez 2. Dwa
przykłady takiego układu pokazano na rys. 8.54.
Rys. 8.54.
Przerzutniki w układach dzielników częstotliwości przez 2
Przerzutnik JK zmienia stan na przeciwny po każdym impulsie zegara, gdy jego oba wejścia utrzymywane są w stanie wysokim. Tę samą funkcję spełnia również drugi
układ, ponieważ do wejścia D przerzutnika jest doprowadzany sygnał z jego własnego wyjścia Q'. Wobec tego w momencie nadejścia impulsu zegara przerzutnik D
widzi na wejściu negację swojego własnego stanu. W każdym przypadku częstotliwość przebiegu wyjściowego jest dwukrotnie mniejsza od częstotliwości przebiegu
wejściowego.
Uzależnienia czasowe
Z ostatnim układem związane jest ciekawe pytanie: czy układ aby na pewno zachowa się zgodnie z oczekiwaniami, skoro stan na wejściu D zmienia się niemal
natychmiast po zboczu zegara? Innymi słowy: czy układ nie straci orientacji, gdy na wejściu dzieją się takie niezwykłe rzeczy? Odpowiedź na te pytania zawarta jest w
odpowiedzi na pytanie: kiedy dokładnie, w odniesieniu do impulsu zegara, przerzutnik D (albo jakikolwiek inny) bada swój stan wejściowy? Odpowiedź tkwi w dwóch
podstawowych parametrach czasowych każdego układu taktowanego. Są nimi czas ustalenia danych - ts (ang. setup time) i czas przetrzymania danych - th (ang. hold
time). Aby układ działał prawidłowo, informacja wejściowa musi być obecna i nie ulegać zmianie co najmniej przez czas ts przed zboczem zegara i przez czas th po
zboczu zegara. Na przykład, dla układu 74HC74 jest ts = 20 ns i th = 3 ns (rys. 8.55).
3
Rys. 8.55.
Definicja czasu ustalenia i czasu przetrzymania
Wobec tego w przedstawionym jako ostatni dzielniku częstotliwości przez 2 warunek czasu ustalenia będzie spełniony, jeśli stan wyjść ustala się co najmniej na 20 ns
przed narastającym zboczem następnego impulsu zegara. Na pierwszy rzut oka wydaje się, że nie jest spełniony warunek czasu przetrzymania, ale tutaj też wszystko jest
w porządku. Minimalny czas propagacji sygnału od wejścia zegarowego do wyjścia wynosi 10 ns, co zapewnia utrzymywanie się stanu na wejściu D co najmniej przez
10 ns po przejściu zbocza zegara. Większość współczesnych urządzeń ma zerowy czas przetrzymania danych. Jeśli stan wejścia D zmienia się w odcinku czasu
odpowiadającym czasowi ustalenia, może wydarzyć się coś interesującego. Może mianowicie wystąpić tzw. stan metastabilny, w którym przerzutnik nie potrafi
zadecydować, do którego z dwóch stanów stabilnych powinien przejść.
Dzielniki częstotliwości
Łącząc kaskadowo kilka dzielników przez 2 (tzn. łącząc wyjście Q każdego przerzutnika z wejściem zegarowym następnego przerzutnika) uzyskuje się układ dzielnika
przez 2n, czyli licznika binarnego. Na rysunku 8.56 pokazaliśmy 4-stopniowy licznik asynchroniczny z przeniesieniem szeregowym (ang. ripple counter) oraz jego
przebiegi czasowe.
Rys. 8.56.
Licznik 4-bitowy:
a) schemat, b) przebiegi czasowe
Jeżeli wejścia zegarowe są sterowane sygnałami z wyjść Q, trzeba użyć przerzutników wyzwalanych zboczem opadającym (wskazują na to symbole negacji). Pokazany
układ jest licznikiem zliczającym do 16, albo inaczej - dzielnikiem częstotliwości sygnału zegarowego przez 16. Sygnał wyjściowy ostatniego przerzutnika jest falą
prostokątną o częstotliwości równej 1/16 częstotliwości wejściowego sygnału taktującego. Układ taki nazywa się licznikiem, ponieważ informacja obecna na czterech
wyjściach Q, odczytywana jako 4-bitowa liczba binarna, przyjmuje w kolejnych taktach zegara kolejne wartości binarne od 0 do 15, ulegając za każdym razem
zwiększeniu o jeden. Ilustrują ten fakt pokazane na rysunku 8.56 przebiegi czasowe. W ich opisie skrótami MSB i LSB oznaczono odpowiednio najbardziej i najmniej
znaczący bit licznika. Wygięte strzałki wskazują uzależnienia między sygnałami, co ułatwia zrozumienie zasady działania układu. Licznik jest tak pożytecznym układem
funkcjonalnym, tak że doczekał się wykonania w postaci scalonej w wielu wersjach, w tym jako licznik 4-bitowy, BCD i wielocyfrowy. Łącząc kaskadowo wiele takich
liczników i wyświetlając wynik zliczania na wyświetlaczu cyfrowym (np. wykorzystującym diody świecące) można stosunkowo łatwo zbudować licznik zdarzeń.
Jeżeli ciąg impulsów będzie doprowadzany do wejścia takiego licznika dokładnie przez 1 sekundę, uzyskamy częstościomierz, który wyświetla częstotliwość (liczbę
okresów na sekundę), zliczając naprawdę liczbę okresów w ciągu jednej sekundy. W rzeczywistości istnieją już scalone jednoukładowe częstościomierze, zawierające
generator wzorcowy, licznik, układy sterowania i wyświetlania. Odpowiedni przykład przedstawiono na rysunku 8.71. W praktyce prosta metoda kaskadowego łączenia
liczników, polegająca na łączeniu wyjść Q każdego przerzutnika z wejściem zegarowym następnego przerzutnika, prowadzi do pojawienia się kilku interesujących
problemów związanych z kumulującymi się opóźnieniami, które powstają w czasie "przenoszenia się" sygnału przez łańcuch przerzutników. Liczniki "synchroniczne"
(w których wszystkie wejścia zegarowe widzą ten sam sygnał taktujący) są zwykle lepsze. Wobec tego zajmijmy się teraz systemami taktowanymi synchronicznie.
4

Podobne dokumenty