Minimalizacja automatu

Slides:



Advertisements
Podobne prezentacje
Minimalizacja automatu
Advertisements

Podstawy Techniki Cyfrowej
Temat 2: Podstawy programowania Algorytmy – 1 z 2 _________________________________________________________________________________________________________________.
Proces doboru próby. Badana populacja – (zbiorowość generalna, populacja generalna) ogół rzeczywistych jednostek, o których chcemy uzyskać informacje.
1 Dr Galina Cariowa. 2 Legenda Iteracyjne układy kombinacyjne Sumatory binarne Sumatory - substraktory binarne Funkcje i układy arytmetyczne Układy mnożące.
OBOWIĄZKI INFORMACYJNE BENEFICJENTA Zintegrowane Inwestycje Terytorialne Aglomeracji Wałbrzyskiej.
Tworzenie odwołania zewnętrznego (łącza) do zakresu komórek w innym skoroszycie Możliwości efektywnego stosowania odwołań zewnętrznych Odwołania zewnętrzne.
Zajęcia 1-3 Układ okresowy pierwiastków. Co to i po co? Pojęcie masy atomowej, masy cząsteczkowej, masy molowej Proste obliczenia stechiometryczne. Wydajność.
Rozliczanie kosztów działalności pomocniczej
© Kazimierz Duzinkiewicz, dr hab. inż. Katedra Inżynierii Systemów Sterowania 1 Metody optymalizacji - Energetyka 2015/2016 Metody programowania liniowego.
© Matematyczne modelowanie procesów biotechnologicznych - laboratorium, Studium Magisterskie Wydział Chemiczny Politechniki Wrocławskiej, Kierunek Biotechnologia,
Excel 2007 dla średniozaawansowanych zajęcia z dnia
Wyrażenia Algebraiczne Bibliografia Znak 1Znak 2 Znak 3 Znak 4 Znak 5 Znak 6 Znak 7 Znak 8 Znak 9 Znak 10 Znak 11.
 Czasem pracy jest czas, w którym pracownik pozostaje w dyspozycji pracodawcy w zakładzie pracy lub w innym miejscu wyznaczonym do wykonywania pracy.
Wypadkowa sił.. Bardzo często się zdarza, że na ciało działa kilka sił. Okazuje się, że można działanie tych sił zastąpić jedną, o odpowiedniej wartości.
Analiza tendencji centralnej „Człowiek – najlepsza inwestycja”
Równowaga rynkowa w doskonałej konkurencji w krótkim okresie czasu Równowaga rynkowa to jest stan, kiedy przy danej cenie podaż jest równa popytowi. p.
„MATEMATYKA JEST OK!”. Figury Autorzy Piotr Lubelski Jakub Królikowski Zespół kierowany pod nadzorem mgr Joanny Karaś-Piłat.
Dodawania i odejmowanie sum algebraicznych. Mnożenie sumy algebraicznej przez jednomian. Opracowanie Joanna Szymańska Konsultacja Bożena Hołownia.
W KRAINIE TRAPEZÓW. W "Szkole Myślenia" stawiamy na umiejętność rozumowania, zadawania pytań badawczych, rozwiązywania problemów oraz wykorzystania wiedzy.
Algorytmy Informatyka Zakres rozszerzony
Matematyka przed egzaminem czyli samouczek dla gimnazjalisty Przygotowała Beata Czerniak FUNKCJE.
Menu Jednomiany Wyrażenia algebraiczne -definicja Mnożenie i dzielenie sum algebraicznych przez jednomian Mnożenie sum algebraicznych Wzory skróconego.
POLITECHNIKA RZESZOWSKA im. Ignacego Łukasiewicza WYDZIAŁ ELEKTROTECHNIKI I INFORMATYKI ZAKŁAD METROLOGII I SYSTEMÓW POMIAROWYCH METROLOGIA Andrzej Rylski.
I T P W ZPT 1 Realizacje funkcji boolowskich Omawiane do tej pory metody minimalizacji funkcji boolowskich związane są z reprezentacją funkcji w postaci.
Optymalna wielkość produkcji przedsiębiorstwa działającego w doskonałej konkurencji (analiza krótkookresowa) Przypomnijmy założenia modelu doskonałej.
Metody sztucznej inteligencji - Technologie rozmyte i neuronowe 2015/2016 Perceptrony proste nieliniowe i wielowarstwowe © Kazimierz Duzinkiewicz, dr hab.
Ogólne zasady ruchu drogowego – ruch pojazdów na autostradzie i drodze ekspresowej, strefie zamieszkania oraz na drogach wewnętrznych.
 Przedziałem otwartym ( a;b ) nazywamy zbiór liczb rzeczywistych x spełniających układ nierówności x a, co krócej zapisujemy a
O PARADOKSIE BRAESSA Zbigniew Świtalski Paweł Skałecki Wydział Matematyki, Informatyki i Ekonometrii Uniwersytet Zielonogórski Zakopane 2016.
Test analizy wariancji dla wielu średnich – klasyfikacja pojedyncza
Schematy blokowe.
Opracowanie wyników pomiaru
DEFINICJA I ZASTOSOWANIE W JĘZYKU HASKELL
SYSTEM KWALIFIKACJI, AWANSÓW I SPADKÓW
terminologia, skale pomiarowe, przykłady
On-the-Fly Garbage Collection
Układy logiczne kombinacyjne sekwencyjne
Rachunki zdań Tautologiczność funkcji
Pamięci Henryka Pawłowskiego
Liczby pierwsze.
ALGORYTMY I STRUKTURY DANYCH
Podstawy automatyki I Wykład /2016
Funkcja – definicja i przykłady
Problem kodowania stanów w układach sekwencyjnych (automatach)
Wstęp do Informatyki - Wykład 3
Jacek Kłeczek Instruktor NPR
Zajęcia przygotowujące do matury rozszerzonej z matematyki
Elementy fizyki kwantowej i budowy materii
Równania różniczkowe zwyczajne
Języki programowania.
Zagadnienie transportowe
Podstawowe układy pracy wzmacniaczy operacyjnych
Tensor naprężeń Cauchyego
Rekrutacja elektroniczna DO SZKÓŁ PONADGIMNAZJALNYCH w roku 2018
ALGORYTMY I STRUKTURY DANYCH
MATEMATYKAAKYTAMETAM
Implementacja rekurencji w języku Haskell
Znajdowanie liczb pierwszych w zbiorze
Doskonalenie rachunku pamięciowego u uczniów
Wyrównanie sieci swobodnych
Prawa ruchu ośrodków ciągłych c. d.
Program na dziś Wprowadzenie Logika prezentacji i artykułu
Treść umowy o pracę wymiar czasu pracy termin rozpoczęcia pracy
WYBRANE ZAGADNIENIA PROBABILISTYKI
Andrzej Majkowski informatyka + 1.
Grazyna Mirkowska Matematyka Dyskretna PJWSTK 2001
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 – Tadeusz Łuba ZCB 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) Znamy Algorytm Obliczania MKZ Maksymalne zbiory stanów zgodnych (Maksymalne Klasy Zgodności) Selekcja zbiorów zgodnych spełniających tzw.:  warunek pokrycia  warunek zamknięcia Tadeusz Łuba ZCB 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. Niestety – w automacie jest trudniej! 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. Tadeusz Łuba ZCB

Relacja zgodności Sytuacja jest trochę inna niż w typowej relacji 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: Tadeusz Łuba ZCB

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: Tadeusz Łuba ZCB

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 Tadeusz Łuba ZCB

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). Tadeusz Łuba ZCB

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 Tadeusz Łuba ZCB ale w wielu przypadkach wygodniejsza jest metoda bezpośrednia…

...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) 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,3 1,2,5 1,3,5 2,4 3,6 4,6 2,3,5 Tadeusz Łuba ZCB 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ą być zawarte w jednej klasie. Tadeusz Łuba ZCB

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: Tadeusz Łuba ZCB {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: Tablica następników: 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 Tadeusz Łuba ZCB 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. Tadeusz Łuba ZCB

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 Tadeusz Łuba ZCB

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 Tadeusz Łuba ZCB

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– Tadeusz Łuba ZCB 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 – Tadeusz Łuba ZCB

Detektor sekwencji Zaprojektować układ sekwencyjny Mealy’ego o jednym wejściu binarnym i jednym wyjściu binarnym. Układ ma badać „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 1/- 3 0/- 1/0 Tadeusz Łuba ZCB 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 Tadeusz Łuba ZCB

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). Tadeusz Łuba ZCB

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} Tadeusz Łuba ZCB

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ęcia X S 1 A B C X S 1 A 135 125 135 B 125 124 C 124 Automat minimalny! Tadeusz Łuba ZCB

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 W10, plansze 19 do 26. 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ć „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 Tadeusz Łuba ZCB

...intuicyjne utworzenie grafu też jest możliwe X S 1 A B C 1/0 0/0 1/0 A B 0/0 0/0 C Tadeusz Łuba ZCB 1/1

Przykład      1 2 3 4 0/0 1/1 0/0 1/1 1/0 1/0 0/0 0/0 Zaprojektować automat wykrywający ciąg dokładnie trzech albo dokładnie czterech następujących bezpośrednio po sobie jedynek w dowolnie długim słowie wejściowym  x S 1 2 3 4 2 2,3 3 2,4  4 1,2 1,4 1    0/0 1/1 0/0 1/1 1 1/0 2 1/0 3 4 Tadeusz Łuba ZCB 0/0 0/0