Minimalizacja automatu

Slides:



Advertisements
Podobne prezentacje
I część 1.
Advertisements

Automaty asynchroniczne
Joanna Sawicka Wydział Nauk Ekonomicznych, Uniwersytet Warszawski
Układy sekwencyjne - pojęcie automatu
Modelem układu sekwencyjnego jest AUTOMAT
POWIAT MYŚLENICKI Tytuł Projektu: Poprawa płynności ruchu w centrum Myślenic poprzez przebudowę skrzyżowań dróg powiatowych K 1935 i K 1967na rondo.
Metoda simpleks Simpleks jest uniwersalną metodą rozwiązywania zadań programowania liniowego. Jest to metoda iteracyjnego poprawiania wstępnego rozwiązania.
Liczby pierwsze.
Domy Na Wodzie - metoda na wlasne M
Michał Łasiński Paweł Witkowski
UŁAMKI DZIESIĘTNE porównywanie, dodawanie i odejmowanie.
PREPARATYWNA CHROMATOGRAFIA CIECZOWA.
Metoda simpleks opracowanie na podstawie „Metody wspomagające podejmowanie decyzji w zarządzaniu” D. Witkowska, Menadżer Łódź Simpleks jest uniwersalną.
I T P W ZPT 1 Jak smakuje Espresso I T P W ZPT 2.
UKŁADY SZEREGOWO-RÓWNOLEGŁE
Jak usprawnić obliczanie MKZ?
Ogólnopolski Konkurs Wiedzy Biblijnej Analiza wyników IV i V edycji Michał M. Stępień
minimalizacja automatów
O relacjach i algorytmach
Podstawy układów logicznych
Układy sekwencyjne - pojęcie automatu
Synteza układów sekwencyjnych z (wbudowanymi) pamięciami ROM
Wyrażenia algebraiczne
Problem kodowania stanów w układach sekwencyjnych (automatach)
Problem kodowania stanów w układach sekwencyjnych (automatach)
Zadanie treningowe… …do wykładów ULOG cz. 6 i cz. 7 Rozwiązanie: E S 1
Problem kodowania x s 1 A B C D Wariant I A = 00 B = 01 C = 10 D = 11
Minimalizacja funkcji boolowskich
Minimalizacja funkcji boolowskich
Minimalizacja automatu
Modelowanie i Identyfikacja 2011/2012 Metoda propagacji wstecznej Dr hab. inż. Kazimierz Duzinkiewicz, Katedra Inżynierii Systemów Sterowania 1 Warstwowe.
w ramach projektu Szkoła z Klasą 2.0
I T P W ZPT 1 Minimalizacja automatu abcdabcd ACBCA0111 BCCA–011– CBCAB0001 xSxS abcdabcd S1 –S3S4S2–111 S4–––0––– S3 S6 ––01–– S4 –S6S1S5–001 ––S2–––1–
1. Pomyśl sobie liczbę dwucyfrową (Na przykład: 62)
Problematyka wykładu Podział rejestrów i liczników
Metoda klasyczna ... to metoda tablicowa, graficzna, której podstawowe
Analiza matury 2013 Opracowała Bernardeta Wójtowicz.
  Prof.. dr hab.. Janusz A. Dobrowolski Instytut Systemów Elektronicznych, Politechnika Warszawska.
EGZAMINU GIMNAZJALNEGO 2013
EcoCondens Kompakt BBK 7-22 E.
EcoCondens BBS 2,9-28 E.
Prezentacja Multimedialna
User experience studio Użyteczna biblioteka Teraźniejszość i przyszłość informacji naukowej.
WYNIKI EGZAMINU MATURALNEGO W ZESPOLE SZKÓŁ TECHNICZNYCH
Podstawy Techniki Cyfrowej
Obliczalność czyli co da się policzyć i jak Model obliczeń sieci liczące dr Kamila Barylska.
Testogranie TESTOGRANIE Bogdana Berezy.
Jak Jaś parował skarpetki Andrzej Majkowski 1 informatyka +
Bramki logiczne i układy kombinatoryczne
Dr hab. Renata Babińska- Górecka
Systemy dynamiczne 2014/2015Obserwowalno ść i odtwarzalno ść  Kazimierz Duzinkiewicz, dr hab. in ż. Katedra In ż ynierii Systemów Sterowania 1 Obserwowalność.
Działania w systemie binarnym
1 Używanie alkoholu i narkotyków przez młodzież szkolną w województwie opolskim w 2007 r. Na podstawie badań przeprowadzonych przez PBS DGA (w pełni porównywalnych.
Przerzutniki bistabilne
Kalendarz 2020.
Współrzędnościowe maszyny pomiarowe
Elementy geometryczne i relacje
Strategia pomiaru.
I T P W ZPT 1 Kodowanie stanów to przypisanie kolejnym stanom automatu odpowiednich kodów binarnych. b =  log 2 |S|  Problem kodowania w automatach Minimalna.
I T P W ZPT Konwerter BIN2BCD 1 LK „8” DEC LK = 0 LOAD1 R3R2R1  K S3 S2S1 A B „5” K  5 MUX 1 0 A R4 LOAD2 Y = LD B LB „3” US Układ wykonawczy Układ sterujący.
I T P W ZPT 1 Minimalizacja funkcji boolowskich c.d. Pierwsze skuteczne narzędzie do minimalizacji wieloargumentowych i wielowyjściowych funkcji boolowskich.
ZPT f Gate ArrayStandard Cell Programmable Logic Devices PAL, PLA 1 Omówione do tej pory metody syntezy dotyczą struktur bramkowych… Dekompozycja funkcji.
ZPT 1 Dekompozycja nierozłączna Pojęcie r - przydatności Dekompozycja zrównoważona Dekompozycja równoległa.
Pojęcia podstawowe c.d. Rachunek podziałów Elementy teorii grafów
I T P W ZPT 1 Jak usprawnić obliczanie MKZ? W celu sprawniejszego obliczania MKZ wprowadzimy skuteczniejszą metodę wg par zgodnych Znamy metodę wg par.
Pojęcia podstawowe Algebra Boole’a … Tadeusz Łuba ZCB 1.
Minimalizacja automatu
Metoda klasyczna (wg książki Sasao)
Układy asynchroniczne
Podstawy Automatyki Człowiek- najlepsza inwestycja
Zapis prezentacji:

Minimalizacja automatu Minimalizacja automatu to minimalizacja liczby stanów. Jest to transformacja automatu o danej tablicy przejść-wyjść na równoważny mu (pod względem przetwarzania sygnałów cyfrowych) automat o mniejszej liczbie stanów wewnętrznych. Jest to prawie zawsze możliwe, gdyż w procesie pierwotnej specyfikacji często wprowadzane są stany nadmiarowe lub równoważne. Minimalizacja liczby stanów x S a b c d S1 – S3 S4 S2 1 S6 S5 a b c d A C B 1 – Czysty zysk – zamiast trzech przerzutników tylko dwa!

Minimalizacja liczby stanów Kluczem do rozwiązania tego problemu jest: Relacja zgodności na zbiorze stanów S: (pary stanów zgodnych) Maksymalne zbiory stanów zgodnych (Maksymalne Klasy Zgodności) Selekcja zbiorów zgodnych spełniających tzw.:  warunek pokrycia  warunek zamknięcia Wyselekcjonowane w ten sposób zbiory reprezentują stany automatu minimalnego

Jak wyznaczać relację zgodności stanów? Dwa stany wewnętrzne Si, Sj są zgodne, jeżeli dla każdego wejścia v mają one niesprzeczne stany wyjść, a ich stany następne są takie same lub niesprzeczne. x S a b c d 1 – 3 4 2 6 5 Stany zgodne warunkowo Stany zgodne Stany sprzeczne Dwa stany wewnętrzne Si, Sj są zgodne warunkowo, jeżeli ich stany wyjść są niesprzeczne oraz dla pewnego v  V para stanów następnych do Si, Sj (ozn. Sk, Sl): (Si, Sj)  (Sk, Sl) Stany Si, Sj są sprzeczne, jeżeli dla pewnego v  V ich stany wyjść są sprzeczne.

Relacja zgodności 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ą. Tablica trójkątna zawiera tyle kratek, ile jest wszystkich możliwych par stanów. Na przykład dla automatu o 5 stanach:

Tablica trójkątna v x (i,j) Kratki tablicy wypełniamy symbolami: 2 3 4 5 1 v – jeżeli para stanów jest zgodna, v x – jeżeli para stanów jest sprzeczna, lub x (i,j) - parą (parami stanów następnych), jeżeli jest to para zgodna warunkowo. (i,j) Kratki tablicy wypełniamy symbolami:

Tablica trójkątna - przykład 1 – 3 4 2 6 5 2 3 4 5 6 1 v 36 46 v 24 v v 34 v 1,2; 3,5

Tablica trójkątna - przykład Po wypełnieniu tablicy sprawdzamy, czy pary stanów sprzecznych (zaznaczone ) nie występują przypadkiem jako pary stanów następnych. Jeśli są takie pary, to należy je skreślić (czyli zaznaczyć ). Proces ten trzeba powtarzać tak długo, aż sprawdzone zostaną wszystkie krzyżyki. Wszystkie kratki niewykreślone odpowiadają parom zgodnym: 2  3 3,6 4,6 4  5 2,4 6 3,4 1,2; 3,5 1 (1,2); (1,3); (1,5); (2,3); (2,4); (2,5); (3,5); (3,6); (4,6).

Obliczanie MKZ Po wyznaczenie zbioru par stanów zgodnych, przystępujemy do obliczenia: Maksymalnych zbiorów stanów zgodnych. Maksymalne klasy zgodności (MKZ) ...znamy metodę obliczania MKZ wg par sprzecznych ale w wielu przypadkach wygodniejsza jest metoda bezpośrednia…

Metoda bezpośrednia Pary zgodne: a, b b, c a, c {a, b, c} a, b, c a, b, d b, c, d a, c, d {a, b, c, d} i.t.d. 9

...wracamy do przykładu MKZ = {{1,2,3,5}, {2,4}, {3,6}, {4,6}} Pary zgodne: (1,2); (1,3); (1,5); (2,3); (2,4); (2,5); (3,5); (3,6); (4,6) v MKZ: 1,2,3,5 1,2 1,3 1,5 2,3 2,4 2,5 3,5 3,6 4,6 1,2,3 1,2,5 1,3,5 2,4 3,6 4,6 2,3,5 MKZ = {{1,2,3,5}, {2,4}, {3,6}, {4,6}}

Algorytm minimalizacji 1) Wyznaczenie par stanów zgodnych, 2) Obliczenie maksymalnych zbiorów stanów zgodnych (MKZ), 3) Selekcja zbiorów spełniających tzw. warunek pokrycia (a) i zamknięcia (b): a) każdy stan musi wchodzić co najmniej do jednej klasy; b) dla każdej litery wejściowej wszystkie następniki (stany następne) danej klasy muszą wchodzić do jednej klasy.

Warunek pokrycia - przykład b c d 1 – 3 4 2 6 5 MKZ = {{1,2,3,5}, {3,6}, { 2,4}, 4,6}} Aby spełnić warunek pokrycia wystarczy wybrać klasy: {1,2,3,5}, {4,6}

Warunek zamknięcia - przykład b c d 1 – 3 4 2 6 5 Dla wybranych klas {1,2,3,5},{4,6}} obliczamy ich następniki: a b c d 1,2,3,5 4,6 4,6 3,6 3,6! 2,4 2,4! 2 3 6 1,2 3,5 Nie jest spełniony warunek zamknięcia !

Warunek pokrycia i zamknięcia – druga próba 1 – 3 4 2 6 5 MKZ = {{1,2,3,5}, {3,6}, { 2,4}, {4,6}} Wybór: {1,2}, {3,5}, {4,6} a b c d A 1,2 B 3,5 C 4,6 4 3 2 1 6 2 – 1 – 3 6 1,2 3,5 1 a b c d A C B 1 – O.K.

Jeszcze jeden przykład 1 2 6 3 – 4 5 7 8 2 3 4 5 6 7 8 1 46 56 45 v v v 37 v v 37 68 48 58 v v v v v

Jeszcze jeden przykład c.d. 2 3 4 5 6 7 8 1 37 46 56 68 45 48 58 v Wypisujemy Pary Zgodne: Obliczamy MKZ: 1,3 1,7 2,5,8 Łatwo zauważyć, że z uzyskanych trójek nie złożymy już żadnej czwórki 3,4,5 2,5 2,8 v 3,4,6 3,4 3,5 3,6 4,5,7 4,6,7 1,3 1,7 6,8 4,5 4,6 4,7 5,7 5,8 6,7 6,8

Jeszcze jeden przykład c.d. 1 2 6 3 – 4 5 7 8 MKZ: 2,5,8 3,4,5 3,4,6 4,5,7 4,6,7 1,3 1,7 6,8 Spośród klas zgodnych trzeba wybrać minimalną rodzinę spełniającą warunek pokrycia i zamknięcia 2,5,8 3,4,5 3,4,6 4,5,7 4,6,7 1,3 1,7 6,8 (0,Si) (1,Si) 33– – –3 – –7 –3– –7– 2– 2– 7– 1– – 45– 45– 5–8 5–8 64 68 – –

Jeszcze jeden przykład c.d. 1 2 6 3 – 4 5 7 8 Automat minimalny: X S 1 A C B A B C 2,5,8 3,4,5 3,4,6 4,5,7 4,6,7 1,3 1,7 6,8 (0,Si) 3 7 2 (1,Si) 1 45 58 46 68 –

Detektor sekwencji 011001001101010 4 2 5 1 6 3 - - 0 - - 1 - - 1 - - 0 Zaprojektować układ sekwencyjny Mealy’ego o jednym wejściu binarnym i jednym wyjściu binarnym. Układ ma badać kolejne „trójki” symboli wejściowych. Sygnał wyjściowy pojawiający się podczas trzeciego skoku układu ma wynosić 1, gdy „trójka” ma postać 001, a 0, gdy „trójka” jest innej postaci. Sygnał pojawiający się podczas pierwszego i drugiego skoku układu może być nieokreślony. 0/0 4 0/- 1/1 2 1/- 0/0 0/- 5 1/0 1 0/0 6 011001001101010 1/- 3 0/- 1/0 - - 0 - - 1 - - 1 - - 0 - - 0 0/0 7 1/- 1/0

Detektor sekwencji S 1 2 3 - 4 5 6 7 S 1 2 3 - 4 5 0/0 1 2 3 4 5 6 7 0/- 1/- 1/0 1/1 0/0 0/- 1/- 1 2 3 4 5 1/0 1/1 1/- 0/- S 1 2 3 - 4 5 6 7 S 1 2 3 - 4 5

Minimalizacja detektora sekwencji X S 1 2 3 – 4 5 2 2 4, 3 5 3 2 5, 3 5 45 4 1 2, 1 3 1 4, 1 5 1 5 5  1 Bardzo dużo par zgodnych! Do wyznaczenia MKZ wykorzystamy pary sprzeczne, których jest znacznie mniej (dwie).

Minimalizacja detektora sekwencji Pary sprzeczne zapisujemy w postaci wyrażenia boolowskiego typu iloczyn (koniunkcja) dwu-składnikowych sum. W detektorze sekwencji pary sprzeczne są: (2, 3); (4, 5). Na tej podstawie zapisujemy wyrażenie: (2  3) (4  5), które po wymnożeniu uzyskuje postać: (2  3) (4  5) = 2 4  2 5  3 4  3 5 Odejmując od zbioru S = {1, 2, 3, 4, 5} wszystkich stanów zbiory zapisane w poszczególnych składnikach uzyskujemy rodzinę wszystkich MKZ. {1, 2, 3, 4, 5} – {2, 4} = {1, 3, 5} {1, 2, 3, 4, 5} – {2, 5} = {1, 3, 4} {1, 2, 3, 4, 5} – {3, 4} = {1, 2, 5} {1, 2, 3, 4, 5} – {3, 5} = {1, 2, 4}

Minimalizacja detektora sekwencji X S 1 2 3 - 4 5 MKZ: {1, 3, 5}, {1, 3, 4}, {1, 2, 5}, {1, 2, 4} Klasy {1, 3, 5}, {1, 2, 4} spełniają warunek pokrycia, X S 1 135 125 134 124 Funkcja przejść dla wszystkich MKZ ale nie spełniają warunku zamknięcia – stany następne: {1,2,5} ! Dokładamy klasę {1,2,5} Klasy: {1,3,5}, {1, 2, 4}, {1, 2, 5} spełniają warunek pokrycia i zamkniętości X S 1 A B C X S 1 A 135 125 135 B 125 124 C 124 Automat minimalny!

Omówiliśmy cały proces syntezy ! ...a to już było X S 1 A B C Uzyskany automat był już realizowany na przerzutnikach i bramkach – wykład cz6, plansze 15 do 21. Omówiliśmy cały proces syntezy ! Zaprojektować układ sekwencyjny Mealy’ego o jednym wejściu binarnym i jednym wyjściu binarnym. Układ ma badać kolejne „trójki” symboli wejściowych. Sygnał wyjściowy pojawiający się podczas trzeciego skoku układu ma wynosić 1, gdy „trójka” ma postać 001, a 0, gdy „trójka” jest innej postaci. Sygnał pojawiający się podczas pierwszego i drugiego skoku układu może być nieokreślony. CLK x Y

...intuicyjne utworzenie grafu też możliwe X S 1 A B C 1/0 0/0 1/0 A B 0/0 0/0 C 1/1

Minimalizacja automatu zupełnego (Szczególny przypadek minimalizacji automatu niezupełnego) Relacja zgodności Relacja równoważności Pary zgodne Pary równoważne Klasy zgodności Klasy równoważności Sprawdzamy tylko warunek pokrycia. Nie ma potrzeby sprawdzania warunku zamknięcia ! 26

Minimalizacja automatu zupełnego - przykład B C D E F G A S 1 A F D B C E G CF,BF CE,FG EF,BG AC,DF AF,BD AE,DG FG,BD AF AG,BD AF, AG, BD, CE, FG AFG, BD, CE 27

Minimalizacja automatu zupełnego - przykład AFG, BD, CE S 1 A F D B C E G S 1 AFG BD CE FG AF P Q R S 1 P Q R 28