Serwis Edukacyjny
w I-LO w Tarnowie
obrazek

Materiały dla uczniów liceum

  Wyjście       Spis treści       Wstecz       Dalej  

Autor artykułu: mgr Jerzy Wałaszek

©2020 mgr Jerzy Wałaszek
I LO w Tarnowie

Bity w elektronice

Zjawisko hazardu w sieciach logicznych

SPIS TREŚCI

Hazard

Stan na wyjściu bramki cyfrowej nie zmienia się natychmiast po zmianie stanu jej 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.

obrazek

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:

obrazek

Sieć realizuje funkcję:

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:

obrazek

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

obrazek

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.

obrazek

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.

obrazek

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, których ilość musi być nieparzysta.

Częstotliwość pracy takiego generatora jest bardzo niestabilna i nadaje się on tylko do bardzo prostych zastosowań, gdzie nie ma to znaczenia.

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...
Na początek:  podrozdziału   strony 

Zespół Przedmiotowy
Chemii-Fizyki-Informatyki

w I Liceum Ogólnokształcącym
im. Kazimierza Brodzińskiego
w Tarnowie
ul. Piłsudskiego 4
©2020 mgr Jerzy Wałaszek

Materiały tylko do użytku dydaktycznego. Ich kopiowanie i powielanie jest dozwolone
pod warunkiem podania źródła oraz niepobierania za to pieniędzy.

Pytania proszę przesyłać na adres email: i-lo@eduinf.waw.pl

Serwis wykorzystuje pliki cookies. Jeśli nie chcesz ich otrzymywać, zablokuj je w swojej przeglądarce.
Informacje dodatkowe.