Bity w elektronice
Zjawisko hazardu w sieciach logicznych


 

Opis

Stan na wyjściu bramki cyfrowej nie zmienia się natychmiast po zmianie stanu wejść, lecz z pewnym opóźnieniem, zwanym czasem propagacji sygnału. Spowodowane jest to tym, iż elementy elektroniczne, tworzące bramkę cyfrową, pracują ze skończoną szybkością. Dla współczesnych układów cyfrowych czasy propagacji wynoszą od 1ns (nano sekunda = jedna miliardowa część sekundy) do kilkunastu ns.

 

Na rysunku po prawej stronie obserwujemy efekt propagacji sygnału w bramce logicznej. Pomimo zmiany stanu wejść, na wyjściu bramki AND wciąż utrzymuje się przez krótką chwilę poprzedni stan, zaznaczony na wykresie kolorem czerwonym. Konsekwencje tego faktu są bardzo poważne.

Rozważmy następujący przykład prostej sieci logicznej:

 

 

Sieć realizuje funkcję:

 

Y = A + A = 1

 

Wynika z tego, iż na wyjściu bramki OR powinien się utrzymywać poziom logiczny 1 bez względu na poziom logiczny wejścia A. Tak by faktycznie było, gdyby bramki przełączały się natychmiast.

Załóżmy, iż na wejściu A panuje poziom logiczny 1. Stan sieci jest następujący:

 

 

Teraz załóżmy, iż wejście A zmienia swój poziom z 1 na 0. Sieć przechodzi w następujący stan:

 

 

Stan 0 dochodzi do wejść obu bramek, lecz z uwagi na opóźnienie działania, nie zmieniają one swoich stanów wyjściowych. Wciąż mamy tam poprzednie poziomy logiczne.

 

 

Po upływie czasu propagacji stany wyjściowe obu bramek zmieniają się, aby odzwierciedlić realizowane przez nie funkcje logiczne. Zwróć uwagę, iż na wyjściu bramki OR pojawia się 0, ponieważ jej oba wejścia przez chwilę były w stanie 0 ze względu na czas propagacji bramki NOT. Stan 0 na wyjściu bramki OR nie powinien się pojawić zgodnie z funkcją logiczną, a jednak pojawił się - sieć przez krótką chwilę nie realizuje swojej funkcji logicznej.

 

 

Po propagacji sygnałów wejściowych przez bramkę OR na jej wyjściu ustala się prawidłowy poziom logiczny 1. Z przedstawionej analizy wynika, iż podany układ logiczny generuje krótki impuls o wartości 0 przy każdej zmianie poziomu logicznego wejścia A z 1 na 0.

Z tego prostego przykładu wyciągamy wniosek, iż stan sieci ustala się po czasie równym sumie czasów propagacji bramek połączonych szeregowo (wyjście jednej bramki jest połączone z wejściem następnej). Czasy propagacji bramek zwykle różnią się nieznacznie od siebie. Jeśli sieć jest skomplikowana, to powstałe opóźnienia mogą powodować na wyjściach bramek nawet całe serie zmian poziomów logicznych - mówimy, iż stan sieci jest nieustalony. Takie zachowanie sieci nazywamy hazardem.

Hazard czasami może być użyteczny. Oto przykład prostego generatora impulsów prostokątnych. Dzięki opóźnieniom wnoszonym przez poszczególne bramki w pętli sprzężenia zwrotnego powstają impulsy prostokątne o okresie równym podwojonej sumie czasów propagacji wszystkich użytych bramek NOT.

 

 

Zauważ, iż pod względem logicznym ta sieć jest sprzeczna! To właśnie dlatego powstaje generator impulsów - stan wyjścia jest zawsze nieustalony.

Hazardy są szczególnie dokuczliwe w sieciach logicznych pracujących dynamicznie - np. w układach zliczających impulsy. Z powodu hazardów układy te mogą zliczać dodatkowe impulsy powstałe w czasie stanów nieustalonych w sieci. Jednym ze sposobów eliminacji tych niedogodności jest zastosowanie taktowania. Sieć pracuje synchronicznie w takt impulsów zegarowych. Sygnał zegarowy jest sygnałem logicznym, który rytmicznie zmienia swój stan w czasie z 0 na 1 i z 1 na 0. Sieć może rozpocząć przetwarzanie danych przy sygnale zegarowym o poziomie 0, w trakcie trwania tego poziomu zanikają stany nieustalone w sieci, a przy poziomie wysokim sygnału zegarowego można odczytywać wyniki pracy sieci. Jeśli okres sygnału zegarowego zostanie właściwie dobrany, to hazardy nie będą miały żadnego wpływu na pracę sieci logicznej.

Sygnał zegarowy pozwala również wykonywać kolejno różne operacje. To rozwiązanie zastosowane jest właśnie we współczesnych komputerach, które pracują zgodnie z taktami swoich sygnałów zegarowych. W poszczególnych taktach zegarowych sieć logiczna komputera (złożona z milionów bramek logicznych) pobiera rozkazy z pamięci komputera, dekoduje je i wykonuje określone tymi rozkazami polecenia. Dzięki sygnałom zegarowym wszystko w komputerze współpracuje ze sobą w czasie. Bez nich panowałby chaos, który nawet trudno sobie wyobrazić.

Na pewno słyszałeś o podkręcaniu częstotliwości pracy procesorów w komputerach - dzięki tej technice procesor działa kilkanaście procent szybciej. Ja jednak jestem przeciwny takim praktykom. Oto dwa powody:

  1. Zwiększanie częstotliwości taktowania procesora skraca czas na zanik stanów nieustalonych w sieci logicznej procesora. Ponieważ nie zmniejszymy czasów propagacji bramek logicznych tworzących tę sieć (parametr ten zależy od użytych materiałów oraz od zastosowanej technologii i nie mamy na niego żadnego wpływu), to może się okazać, iż procesor stanie się w pewnych sytuacjach niestabilny - producent nie bez powodu ustala określoną częstotliwość pracy układów. Jest to częstotliwość, przy której mamy 100% gwarancję, iż w trakcie taktu zegarowego stan sieci ustali się. Oczywiście jest pewien margines bezpieczeństwa. Zmniejszając go, można właśnie podnieść częstotliwość taktowania.
  2. Bramki logiczne pobierają najwięcej energii podczas przełączania swoich stanów logicznych - wymaga to przeładowania ładunków elektrycznych w elementach elektronicznych tworzących bramkę. Zwiększenie częstotliwości powoduje wzrost liczby przełączeń bramek w sieci, a co za tym idzie również wzrost traconej w nich energii elektrycznej, która zamienia się w ciepło. Dlatego układy taktowane wyższymi częstotliwościami bardziej się grzeją. Wymagają zatem lepszego chłodzenia. Jednakże konstrukcja układów cyfrowych została zaprojektowana na odprowadzanie tylko pewnej, ustalonej ilości ciepła ze struktury. Nawet jeśli zastosujemy lepszy radiator, to może on nie nadążyć z odprowadzaniem ciepła wytwarzanego w układzie. W efekcie niektóre elementy sieci logicznej mogą się znacznie przegrzewać, co w efekcie doprowadzi do skrócenia ich żywotności - innymi słowy, pewnego pięknego dnia po włączeniu komputera monitor pozostanie czarny...

 



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.