TC Moduł 8: Różnice pomiędzy wersjami
Z Studia Informatyczne
Przejdź do nawigacjiPrzejdź do wyszukiwania
Nie podano opisu zmian |
Nie podano opisu zmian |
||
(Nie pokazano 1 pośredniej wersji utworzonej przez tego samego użytkownika) | |||
Linia 142: | Linia 142: | ||
|width="500px" valign="top"|[[Grafika:TC_M8_Slajd18.png|thumb|500px]] | |width="500px" valign="top"|[[Grafika:TC_M8_Slajd18.png|thumb|500px]] | ||
|valign="top"| | |valign="top"| | ||
Na tej planszy tablicę następników zapisujemy w formie uproszczonej. Na przykład poprzednio obliczone następniki: <math>3, 3, –\,</math> zapiszemy po prostu jako <math>3\,</math>. | |||
Analizując wypisane w tak zmodyfikowanej tablicy następniki łatwo zauważyć, że zbiory <math>\{2,5,8\}</math>, <math>\{4,6,7\}</math> oraz <math>\{1,3\}</math> spełniają warunek pokrycia i zamkniętości. Na planszy podana jest również konstrukcja tablicy przejść-wyjść automatu minimalnego o stanach wewnętrznych <math>A, B, C\,</math>. | |||
|} | |} | ||
Linia 148: | Linia 151: | ||
|width="500px" valign="top"|[[Grafika:TC_M8_Slajd19.png|thumb|500px]] | |width="500px" valign="top"|[[Grafika:TC_M8_Slajd19.png|thumb|500px]] | ||
|valign="top"| | |valign="top"| | ||
Celem kolejnego przykładu jest omówienie całego procesu syntezy automatu tj. począwszy od etapu syntezy abstrakcyjnej. Naszym zadaniem będzie zaprojektowanie układu sekwencyjnego tzw. detektora sekwencji. Opis działania tego układu podany jest na planszy. | |||
Celem etapu syntezy abstrakcyjnej jest zapisanie działania automatu w formie tablicy lub grafu przejść wyjść. Zazwyczaj konstruowanie grafu jest wygodniejsze. W przypadku detektora sekwencji w pierwotnym grafie wyróżnić należy <math>7\,</math> stanów. Przykładowo: w stanie <math>1\,</math> po pojawieniu się sygnału wejściowego <math>x = 0</math> automat przechodzi do stanu <math>2\,</math> , a po pojawieniu się <math>x = 1</math> automat przechodzi do stanu <math>3\,</math>. W obu przypadkach generowany na wyjściu automatu sygnał <math>y\,</math> może być dowolny, co symbolicznie zaznaczono „kreską”. Właściwa sekwencja jest wykrywana po przejściu przez stany <math>1, 2, 4\,</math> i tylko wtedy na wyjściu automatu generowany jest sygnał o wartości <math>1\,</math>. W pozostałych przypadkach odpowiedź automatu jest <math>0\,</math>. | |||
|} | |} | ||
Linia 155: | Linia 161: | ||
|width="500px" valign="top"|[[Grafika:TC_M8_Slajd20.png|thumb|500px]] | |width="500px" valign="top"|[[Grafika:TC_M8_Slajd20.png|thumb|500px]] | ||
|valign="top"| | |valign="top"| | ||
Na podstawie uzyskanego w ten sposób grafu automatu łatwo utworzyć odpowiednią tablicę przejść wyjść. Łatwo spostrzec, że w utworzonej tablicy stany <math>5, 6\,</math> i <math>7\,</math> (zacienione na czerwono) są sobie równoważne i w takim razie można je zredukować do jednego stanu. W tej sytuacji upraszcza się zarówno tablica przejść wyjść automatu jak też jego graf. | |||
|} | |} | ||
Linia 162: | Linia 169: | ||
|width="500px" valign="top"|[[Grafika:TC_M8_Slajd21.png|thumb|500px]] | |width="500px" valign="top"|[[Grafika:TC_M8_Slajd21.png|thumb|500px]] | ||
|valign="top"| | |valign="top"| | ||
I jest zrozumiałe, że dalszej syntezie poddamy taki częściowo już zminimalizowany automat. | |||
Po wypełnieniu odpowiedniej tablicy trójkątnej i wykreśleniu zgodnej warunkowo pary <math>2,3\,</math> stwierdzamy, że w tym automacie jest dużo par zgodnych. Ale pary sprzeczne są tylko dwie. Warto więc liczyć maksymalne klasy zgodne metodą wg par sprzecznych. | |||
|} | |} | ||
Linia 169: | Linia 178: | ||
|width="500px" valign="top"|[[Grafika:TC_M8_Slajd22.png|thumb|500px]] | |width="500px" valign="top"|[[Grafika:TC_M8_Slajd22.png|thumb|500px]] | ||
|valign="top"| | |valign="top"| | ||
Obliczone pary sprzeczne zapisujemy w postaci wyrażenia boolowskiego typu iloczyn (koniunkcja) dwuskładnikowych sum <math>(2\lor 3)(4\lor 5)</math>, które po wymnożeniu uzyskuje postać | |||
:<math>24\lor 25\lor 34\lor 35</math> | |||
Odejmując od zbioru <math>S = \{1, 2, 3, 4, 5\}</math> wszystkich stanów zbiory zapisane poszczególnych składnikach uzyskujemy rodzinę wszystkich MKZ: | |||
:<math>\{1, 3, 5\}</math> | |||
:<math>\{1, 3, 4\}</math> | |||
:<math>\{1, 2, 5\}</math> | |||
:<math>\{1, 2, 4\}</math> | |||
|} | |} | ||
Linia 175: | Linia 194: | ||
|width="500px" valign="top"|[[Grafika:TC_M8_Slajd23.png|thumb|500px]] | |width="500px" valign="top"|[[Grafika:TC_M8_Slajd23.png|thumb|500px]] | ||
|valign="top"| | |valign="top"| | ||
Warunek pokrycia spełniają dwa zbiory: <math>\{1, 3, 5\}</math> oraz <math>\{1, 2, 4\}</math>. Niestety nie spełniają one warunku zamknięcia. Dobierając trzeci zbiór, a mianowicie <math>\{1, 2, 5\}</math> uzyskujemy spełnienie obu warunków. Na tej podstawie tworzymy tablicę przejść wyjść automatu minimalnego. | |||
|} | |} | ||
Linia 182: | Linia 202: | ||
|width="500px" valign="top"|[[Grafika:TC_M8_Slajd24.png|thumb|500px]] | |width="500px" valign="top"|[[Grafika:TC_M8_Slajd24.png|thumb|500px]] | ||
|valign="top"| | |valign="top"| | ||
Dla tak uzyskanego automatu należy dokonać kodowania stanów a następnie wykonać syntezę kombinacyjną. Warto jednak zauważyć, że uzyskany automat minimalny był już realizowany na planszach od <math>16\,</math> do <math>22\,</math> w module <math>7\,</math>. | |||
|} | |} | ||
<hr width="100%"> | <hr width="100%"> |
Aktualna wersja na dzień 22:22, 7 wrz 2006
![]() |
Minimalizacja liczby stanów automatu |
![]() |
Ze względu na to, że para zgodna warunkowo może – po dalszej analizie – okazać się parą zgodną albo sprzeczną w obliczaniu wszystkich par zgodnych posługujemy się tzw. tablicą trójkątną. |
![]() |
Minimalnym zbiorem klas stanów zgodnych, spełniającym warunek pokrycia jest zbiór . |
![]() |
Zbiór ten nie jest jednak zamknięty, gdyż warunkami dla klasy są i , które nie są spełnione, gdyż żadna z tych klas nie jest zawarta w żadnej z obu klas zbioru minimalnego. |
![]() |
Z uzyskanych par zgodnych obliczamy (najłatwiej metodą bezpośrednią) maksymalne klasy zgodności: , , , , , , , . |