3. Automaty skończone

3.1. Zegar

Zegar systemu cyfrowego (ang. clock) to układ elektroniczny generujący napięciowy przebieg zegarowy (sygnał zegarowy). Sygnał zegarowy czasem jest również dla uproszczenia nazywany zegarem.

Sygnał zegarowy to prostokątny przebieg okresowy o kształcie pokazanym na Rys.1. Chwile kiedy pojawia się narastające zbocze wyznaczają dyskretne chwile czasu, w których może zachodzić zmiana stanu układu cyfrowego. Możemy powiedzieć, że system cyfrowy działa krok za krokiem w dyskretnych chwilach w takt zegara.

Podobnie chwile kiedy pojawia się zbocze opadające sygnału zegarowego można przyjąć za dyskretne chwile czasu, w których może zachodzić zmiana stanu układu cyfrowego. Trzecim sposobem jest przyjęcie że dyskretne chwile mogą być wyznaczone zarówno przez zbocza narastające jak i opadające.

W abstrakcyjnym opisie systemu cyfrowego wygodnie jest te chwile utożsamiać z liczbami naturalnymi lub całkowitymi. Na ogół w systemie cyfrowym jest jeden zegar i jest to bardzo wygodne. Czasami jednak konieczne jest zastosowanie kilku zegarów w systemie.

Zasadniczymi parametrami charakteryzującymi prostokątny przebieg zegarowy są częstotliwość f oraz wypełnienie d. Wypełnienie (ang. duty cycle) okresowego przebiegu prostokątnego to stosunek d=\frac{T_1}{T}, gdzie T=\frac{1}{f} jest okresem przebiegu a czas T_1 jest czasem trwania „pojedynczego impulsu” por. Rys.1. Typowy przebieg zegarowy ma wypełnienie ½ , ale nie jest to reguła.

Istotna jest w systemach cyfrowych stałość częstotliwości generowanego przebiegu zegarowego. Dlatego też najczęściej jako generatory przebiegu zegarowego wykorzystuje się tzw. generatory kwarcowe wykazujące wyjątkowo dobrą stałość częstotliwości. W sytuacjach specjalnych gdy musimy mieć zegar zsynchronizowany z jedynie słusznym zegarem wszechświatowym (np. w tzw. stemplowaniu czasem dokumentów) to stosuje się synchronizację generatorów kwarcowych z sygnałami czasu systemu GPS.

Częstotliwość zegara f może być bardzo różna. Od dołu praktycznie nie mamy żadnych ograniczeń choć istotna jest stromość zboczy przebiegu prostokątnego. Jeśli chodzi o wartości maksymalne to we współczesnych systemach mikroprocesorowych (np. w Pentium 4) częstotliwość zegara przekracza już 3 GHz a w systemach stosujących technologie specjalne 10 GHz.

Z reguły moc wydzielana w układzie cyfrowym jest wprost proporcjonalna do częstotliwości zegara (zależność ta jest w przybliżeniu liniowa). Dzieje się tak dlatego, że bramki logiczne pobierają prąd z układu zasilania głównie w chwilach przełączeń czyli na narastających i opadających zboczach sygnału zegarowego (dotyczy to zarówno bramek TTL jak i NMOS i CMOS).

Z kolei tzw. moc obliczeniowa systemu cyfrowego (jeśli to pojęcie ma sens dla konkretnego systemu cyfrowego) jest na ogół proporcjonalna do częstotliwości zegara.

Ponieważ jednak moc wydzielająca się w układzie rośnie wraz z częstotliwością, to stosowanie wysokich częstotliwości zegara prowadzi do konieczności stosowania specjalnych układów chłodzących (radiatory, wiatraczki a czasem nawet chłodzenie wodne podobne do samochodowego). Układy pracujące z wysokimi częstotliwościami zegara muszą być bardzo starannie zaprojektowane od strony cieplnej każdy bowiem układ ma swoją graniczną temperaturę pracy, której przekroczenie grozi nieodwracalnym zniszczeniem układu.

Ogólnie rzecz biorą systemy cyfrowe dzielimy na synchroniczne tzn. działające w takt zegara i asynchroniczne, w których chwile zmiany stanu układu są wyznaczone przez zmiany stanu wejść. Wszystkie duże systemy cyfrowe takie jak np. mikroprocesory są systemami cyfrowymi synchronicznymi. Sygnał zegarowy albo generowany jest wewnątrz systemu albo doprowadzany jest z zewnątrz.

Rys. 1. Przebieg prostokątny będący sygnałem zegarowym systemu cyfrowego