Wstęp do Techniki Cyfrowej... Teoria automatów

Podobne dokumenty
Wstęp do Techniki Cyfrowej... Teoria automatów i układy sekwencyjne

1. Synteza automatów Moore a i Mealy realizujących zadane przekształcenie 2. Transformacja automatu Moore a w automat Mealy i odwrotnie

Wykład nr 3 Techniki Mikroprocesorowe. dr inż. Artur Cichowski

Teoria układów logicznych

Minimalizacja automatów niezupełnych.

Projekt prostego układu sekwencyjnego Ćwiczenia Audytoryjne Podstawy Automatyki i Automatyzacji

Technika Cyfrowa 1 wykład 12: sekwencyjne układy przełączające

Automat Moore a. Teoria układów logicznych

INSTYTUT CYBERNETYKI TECHNICZNEJ POLITECHNIKI WROCŁAWSKIEJ ZAKŁAD SZTUCZNEJ INTELIGENCJI I AUTOMATÓW

Technika Cyfrowa 1 wykład 11: liczniki sekwencyjne układy przełączające

Asynchroniczne statyczne układy sekwencyjne

Definicja 2. Twierdzenie 1. Definicja 3

Synteza strukturalna automatu Moore'a i Mealy

Automat skończony FSM Finite State Machine

Temat: Zastosowanie wyrażeń regularnych do syntezy i analizy automatów skończonych

zmiana stanu pamięci następuje bezpośrednio (w dowolnej chwili czasu) pod wpływem zmiany stanu wejść,

UKŁADY MIKROPROGRAMOWALNE

Definicja układu kombinacyjnego była stosunkowo prosta -tabela prawdy. Opis układu sekwencyjnego jest zadaniem bardziej złożonym.

Podstawowe moduły układów cyfrowych układy sekwencyjne cz.2 Projektowanie automatów. Rafał Walkowiak Wersja /2015

Relacje. opracował Maciej Grzesiak. 17 października 2011

KATEDRA INFORMATYKI TECHNICZNEJ. Ćwiczenia laboratoryjne z Logiki Układów Cyfrowych. ćwiczenie 204

SWB - Projektowanie synchronicznych układów sekwencyjnych - wykład 5 asz 1. Układy kombinacyjne i sekwencyjne - przypomnienie

Podstawy techniki cyfrowej. Układy asynchroniczne Opracował: R.Walkowiak Styczeń 2014

B jest globalnym pokryciem zbioru {d} wtedy i tylko wtedy, gdy {d} zależy od B i nie istnieje B T takie, że {d} zależy od B ;

1 Automaty niedeterministyczne

RACHUNEK ZDAŃ 7. Dla każdej tautologii w formie implikacji, której poprzednik również jest tautologią, następnik także jest tautologią.

BOGDAN ZARĘBSKI ZASTOSOWANIE ZASADY ABSTRAKCJI DO KONSTRUKCJI LICZB CAŁKOWITYCH

Matematyka dyskretna. Andrzej Łachwa, UJ, A/15

xx + x = 1, to y = Jeśli x = 0, to y = 0 Przykładowy układ Funkcja przykładowego układu Metody poszukiwania testów Porównanie tabel prawdy

Matematyka dyskretna. Andrzej Łachwa, UJ, A/14

Data Mining Wykład 9. Analiza skupień (grupowanie) Grupowanie hierarchiczne O-Cluster. Plan wykładu. Sformułowanie problemu

Rachunek podziałów i elementy teorii grafów będą stosowane w procedurach redukcji argumentów i dekompozycji funkcji boolowskich.

PAMIĘĆ RAM. Rysunek 1. Blokowy schemat pamięci

1 Zbiory. 1.1 Kiedy {a} = {b, c}? (tzn. podać warunki na a, b i c) 1.2 Udowodnić, że A {A} A =.

Sławomir Kulesza. Projektowanie automatów asynchronicznych

Przerzutnik ma pewną liczbę wejść i z reguły dwa wyjścia.

1. SYNTEZA UKŁADÓW SEKWENCYJNYCH

Technika cyfrowa Synteza układów kombinacyjnych

Synteza strukturalna automatów Moore'a i Mealy

1 Zbiory i działania na zbiorach.

Technika cyfrowa Synteza układów kombinacyjnych (I)

Część 3. Układy sekwencyjne. Układy sekwencyjne i układy iteracyjne - grafy stanów TCiM Wydział EAIiIB Katedra EiASPE 1

Układy równań i nierówności liniowych

KATEDRA INFORMATYKI TECHNICZNEJ. Ćwiczenia laboratoryjne z Logiki Układów Cyfrowych. ćwiczenie 212

Kody blokowe Wykład 2, 10 III 2011

Lista zadań - Relacje

Podstawy Automatyki. Wykład 13 - Wprowadzenie do układów sekwencyjnych. dr inż. Jakub Możaryn. Warszawa, Instytut Automatyki i Robotyki

Zadania do Rozdziału X

Topologia I Wykład 4.

LOGIKA I TEORIA ZBIORÓW

Matematyczne Podstawy Informatyki

Podstawy Techniki Cyfrowej Teoria automatów

Języki formalne i automaty Ćwiczenia 9

Matematyka dyskretna Literatura Podstawowa: 1. K.A. Ross, C.R.B. Wright: Matematyka Dyskretna, PWN, 1996 (2006) 2. J. Jaworski, Z. Palka, J.

Minimalizacja form boolowskich UC1, 2009

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA

B jest liniowo niezależny V = lin (B) 1. Układ pusty jest bazą przestrzeni trywialnej {θ}. a i v i = i I. b i v i, (a i b i ) v i = θ.

Korzystając z własności metryki łatwo wykazać, że dla dowolnych x, y, z X zachodzi

Teoria automatów i języków formalnych. Określenie relacji

Zbiory liczbowe widziane oczami topologa

Elementy logiki. Algebra Boole a. Analiza i synteza układów logicznych

Asynchroniczne statyczne układy sekwencyjne

Podstawy logiki i teorii mnogości Informatyka, I rok. Semestr letni 2013/14. Tomasz Połacik

Metoda Karnaugh. B A BC A

Matematyka dyskretna. Andrzej Łachwa, UJ, /10

Teoretyczne podstawy programowania liniowego

złożony ze słów zerojedynkowych o długości co najmniej 3, w których druga i trzecia litera od końca sa

Tab. 1 Tab. 2 t t+1 Q 2 Q 1 Q 0 Q 2 Q 1 Q 0

Zaawansowane metody numeryczne

Kodowanie informacji. Przygotował: Ryszard Kijanka

Uzupełnienia dotyczące zbiorów uporządkowanych (3 lutego 2011).

Plan wykładu. Przykład. Przykład 3/19/2011. Przykład zagadnienia transportowego. Optymalizacja w procesach biznesowych Wykład 2 DECYZJA?

Podstawy Automatyki. Wykład 15 - Projektowanie układów asynchronicznych o programach liniowych. dr inż. Jakub Możaryn. Instytut Automatyki i Robotyki

SYNTEZA AUTOMATÓW SKOŃCZONYCH Z WYKORZYSTANIEM METOD KODOWANIA WIELOKROTNEGO

0 + 0 = 0, = 1, = 1, = 0.

I. Podstawowe pojęcia i oznaczenia logiczne i mnogościowe. Elementy teorii liczb rzeczywistych.

Rozdział 1. Wektory losowe. 1.1 Wektor losowy i jego rozkład

Sztuczna Inteligencja Projekt

Algorytmy sztucznej inteligencji

Wstęp do Techniki Cyfrowej... Algebra Boole a

TEMAT: PROJEKTOWANIE I BADANIE PRZERZUTNIKÓW BISTABILNYCH

Symbol, alfabet, łańcuch

Algorytmy Równoległe i Rozproszone Część X - Algorytmy samostabilizujące.

LICZNIKI PODZIAŁ I PARAMETRY

Maszyna Turinga języki

domykanie relacji, relacja równoważności, rozkłady zbiorów

1. Funkcje monotoniczne, wahanie funkcji.

Spis treści. Przedmowa Wykaz oznaczeń Wstęp Układy kombinacyjne... 18

Projektowanie Scalonych Systemów Wbudowanych VERILOG

Logika dla socjologów Część 3: Elementy teorii zbiorów i relacji

10. Wstęp do Teorii Gier

Języki formalne i automaty Ćwiczenia 1

opisuje nazwy kolumn, wyrażenia arytmetyczne, funkcje nazwy tabel lub widoków warunek (wybieranie wierszy)

Rozważmy funkcję f : X Y. Dla dowolnego zbioru A X określamy. Dla dowolnego zbioru B Y określamy jego przeciwobraz:

Sławomir Kulesza. Projektowanie automatów synchronicznych

RACHUNEK MACIERZOWY. METODY OBLICZENIOWE Budownictwo, studia I stopnia, semestr 6. Instytut L-5, Wydział Inżynierii Lądowej, Politechnika Krakowska

AUTOMATY SKOŃCZONE. Automat skończony przedstawiamy formalnie jako uporządkowaną piątkę:

IMIĘ NAZWISKO... grupa C... sala Egzamin ELiTM I

Wyrażenie nawiasowe. Wyrażenie puste jest poprawnym wyrażeniem nawiasowym.

KOMBINATORYKA OBIEKTY KOMBINATORYCZNE MATEMATYKA DYSKRETNA (2014/2015)

Transkrypt:

Wstęp do Techniki Cyfrowej... Teoria automatów

Alfabety i litery Układ logiczny opisywany jest przez wektory, których wartości reprezentowane są przez ciągi kombinacji zerojedynkowych. Zwiększenie stopnia abstrakcji modelu przez przypisanie nazw występującym wartościom wektorów; nazwy te są niezależne od konkretnych reprezentacji. Zbiór nazw nazywamy alfabetem, nazwy literami. Pojęcie alfabetu podstawa definicji charakterystycznych dla teorii automatów, której wariantem szczegółowym jest teoria układów logicznych.

Automaty i ich stany Automaty pracują w dyskretnej skali czasowej zmiany liter odbywają się w ściśle określonych chwilach czasowych. Podając na wejście automatu określoną sekwencję liter, w pewnej (n-tej) chwili otrzymamy określoną literę wyjściową:..., x n-3, x n-2, x n-1, x n y n Nieskończenie wiele sekwencji liter wejściowych nawet dla skończonych liczności alfabetów wejściowych

Automaty i ich stany c.d. Sekwencje liter wejściowych tworzą historie automatu, reprezentowane przez jego stany wewnętrzne. Skończony alfabet wewnętrzny reprezentuje skończoną liczbę wszystkich możliwych historii danego automatu. Automat skończony alfabety charakteryzujące wejście, wyjście oraz stan wewnętrzny zawiera ograniczoną liczbę liter.

Automat Mealy ego Uporządkowana piątka: A = < X, S, Y, d, l >, gdzie: X = {x 0, x 1,..., x m-1 } alfabet wejściowy, S = {s 0, s 1,..., s l-1 } alfabet wewnętrzny (zbiór stanów), Y = {y 0, y 1,..., y n-1 } alfabet wyjściowy, d:<x k, s k > s k+1 funkcja przejść l:<x k, s k > y k funkcja wyjść Zakłada się ponadto, że dla funkcji przejść < x k, s k > D d X S oraz analogicznie dla funkcji wyjść < x k, s k > D l X S

Definiowanie automatu Mealy ego Definicja analityczna podanie alfabetów wejściowego, wewnętrznego, wyjściowego, funkcji przejść oraz wyjść a b c a b c Tablica przejść-wyjść Graf automatu q r q s - - z r r - s z y - s - r - y z -

Automat Moore a Uporządkowana piątka: A = < X, S, Y, d, l >, gdzie: X = {x 0, x 1,..., x m-1 } alfabet wejściowy, S = {s 0, s 1,..., s l-1 } alfabet wewnętrzny (zbiór stanów), Y = {y 0, y 1,..., y n-1 } alfabet wyjściowy, d:<x k, s k > s k+1 funkcja przejść l:<s k > y k funkcja wyjść

Definiowanie automatu Moore a Definicja analityczna analogicznie Tablica przejść-wyjść tylko jedna kolumna wartości wyjściowych Graf automatu zmieniona konwencja p q r a b c q r p y q r q z r q p y

Użyteczne definicje (1) Słowo wejściowe automatu A dowolna sekwencja liter alfabetu wejściowego. Jeżeli w wyniku pobudzenia automatu w stanie s słowem x końcowa litera wyjściowa jest określona, to słowo to nazywa się odpowiednim dla stanu s (x s). Dla automatu Moore a nieokreśloność stanu pociąga za sobą nieokreśloność litery wyjściowej.

Użyteczne definicje (2) Automat A 1 = < X, S 1, Y, d 1, l 1 > w stanie s 1 pokrywa automat A 2 = < X, S 2, Y, d 2, l 2 > w stanie s 2 (zapis s 1 s 2 ), jeśli każde słowo odpowiednie dla s 2 jest odpowiednie dla s 1 i dla każdego takiego słowa końcowe litery wyjściowe obu automatów są są sobie równe: l 2 (x, s 2 ) = l 1 (x, s 1 ) Automat A 1 = < X, S 1, Y, d 1, l 1 > pokrywa automat A 2 = < X, S 2, Y, d 2, l 2 > (zapis A 1 A 2 ), jeśli dla każdego stanu s 2 automatu A 2 istnieje przynajmniej jeden stan s 1 automaty A 1 taki, że s 1 s 2 A 1 A 2 Automat A 1 zawiera w sobie niejako funkcję automatu A 2 2 s S 2 s S 1 1 s 1 s 2

Użyteczne definicje (3) Automat A 1 = < X, S 1, Y, d 1, l 1 > w stanie s 1 jest nieodróżnialny od automatu A 2 = < X, S 2, Y, d 2, l 2 > w stanie s 2 (zapis s 1 s 2 ), jeśli każde słowo odpowiednie dla s 2 jest odpowiednie dla s 1 i odwrotnie, przy czym końcowe litery wyjściowe obu automatów są sobie równe. Graniczny (symetryczny) przypadek pokrywania. Automat A 1 = < X, S 1, Y, d 1, l 1 > jest nieodróżnialny od automatu A 2 = < X, S 2, Y, d 2, l 2 > (zapis A 1 A 2 ), jeżeli automaty te wzajemnie się pokrywają.

Użyteczne definicje (4) Automat A R = < X, S R, Y, d R, l R > jest zredukowanym dla automatu A = < X, S, Y, d, l > jeżeli automat A R pokrywa automat A i jednocześnie liczba stanów automatu zredukowanego nie jest większa od liczby stanów automatu A. Dla danego automatu może istnieć wiele automatów zredukowanych, bądź może ich nie być wcale. Każdy automat jest zredukowanym dla samego siebie. W zbiorze automatów zredukowanych znajduje się przynajmniej jeden o najmniejszej możliwej liczbie stanów wewnętrznych.

Relacja niesprzeczności stanów Relacja niesprzeczności stanów automatu A = < X, S, Y, d, l > zbiór wszystkich takich par jego stanów <s 1, s 2 >, dla których słowo odpowiednie dla jednego ze stanów, jeśli jest również odpowiednie dla drugiego, generuje z tych stanów jednakowe litery końcowe: R ~ ={<s 1, s 2 > S: x s 1 x s 2 l(x, s 2 ) = l(x, s 1 )}. Stany niesprzeczne oznacza się s 1 s 2. Dualnie definiuje się relację sprzeczności stanów ma ona mniejsze znaczenie i jest rzadziej używana.

Zbiory stanów niesprzecznych Zbiorem stanów niesprzecznych Q nazywa się zbiór, którego dowolne dwa elementy tworzą parę stanów niesprzecznych. Maksymalnym zbiorem stanów niesprzecznych Q max jest zbiór, do którego dodanie jednego elementu powoduje utratę właściwości niesprzeczności stanów. Zbiór wszystkich dla danego elementu maksymalnych zbiorów stanów niesprzecznych nazywa się rodziną maksymalnych zbiorów stanów niesprzecznych i oznacza {Q max }. Pojęcie to odgrywa kluczową role w procesie poszukiwania automatu minimalnego automatu zredukowanego o najmniejszej możliwej liczbie stanów.

Relacja nieodróżnialności stanów Relacja nieodróżnialności R stanów automatu A = <X, S, Y, d, l> jest zbiór wszystkich takich par jego stanów <s 1, s 2 >, dla których słowo odpowiednie dla jednego z nich jest jednocześnie odpowiednim dla drugiego i odwrotnie, a wygenerowane z tych stanów litery końcowe są jednakowe: Para stanów nieodróżnialnych różni się co najwyżej oznaczeniem.

Zbiory stanów nieodróżnialnych Zbiorem stanów nieodróżnialnych B nazywa się zbiór, którego dowolne dwa elementy tworzą parę stanów nieodróżnialnych. Maksymalnym zbiorem stanów nieodróżnialnych B max jest zbiór, do którego dodanie jednego elementu powoduje utratę właściwości nieodróżnialności stanów. Zbiór wszystkich dla danego elementu maksymalnych zbiorów stanów nieodróżnialnych nazywa się rodziną maksymalnych zbiorów stanów nieodróżnialnych i oznacza {B max }. Pojęcie to jest istotne w procesie poszukiwania automatu minimalnego dla automatu pierwotnego o dużej liczbie stanów.

Zamkniętość rodziny zbiorów stanów niesprzecznych Dla określonej litery wejściowej, stany następne wyznaczone dla wszystkich stanów dowolnego zbioru maksymalnego, są zawsze podzbiorem któregoś ze zbiorów maksymalnych stanów niesprzecznych tworzących tę rodzinę. Zbiory rodziny {Q max } nie muszą być rozłączne; może się zatem zdarzyć, że stany następne są jednocześnie podzbiorami kilku różnych zbiorów maksymalnych

Automaty ilorazowe Automaty ilorazowe budowane są na rodzinach zbiorów stanów niesprzecznych. Najczęściej buduje się je na rodzinie {Q max }, rzadziej na {B max }. Automat ilorazowy automatu pierwotnego A zbudowany dla rodziny {T j } oznacza się A/{T j }. Automatem minimalnym jest automat ilorazowy dla maksymalnie zredukowanej rodziny {Q max }. Redukcja musi zachować pełne pokrycie stanów automatu pierwotnego i warunek zamkniętości. Rodzinę taką oznacza się {P j }.

Minimalizacja automatów

Minimalizacja automatów {Q max } = {{1,2,4,5,6,7}, {1,5,8}, {1,3,6}, {1,3,8}} A B C D a b c a b c A A D A C z z y B A A A C z y y C A B D B D z y - D A A B D z y y

Minimalizacja automatów {Q max } = {{1,2,4,5,6,7}, {1,5,8}, {1,3,6}, {1,3,8}} A B C D a b c a b c A A D A z z y B A A A C z y y C A B D B D z y - D A A D z y y

Rytm pracy automatów Minimalizacja liczby stanów zachowuje klasę typu automatów. W automacie Mealy ego litera wyjściowa generowana jest przed wejściem do stanu następnego, w automacie Moore a z chwilą przejścia do nowego stanu. Nieokreśloność stanu następnego automatu Moore a pociąga za sobą nieokreśloność litery wyjściowej; w automacie Mealy ego nie wpływa na literę wyjściową (generowaną przed wypadnięciem z grafu). Relacje pokrywania, niesprzeczności i nieodróżnialności nie mogą zachodzić między automatami dwóch różnych typów.

Podobieństwo automatów Automaty: Moore a A 1 = < X, S 1, Y, d 1, l 1 > w stanie s 1 i Mealy ego A 2 = < X, S 2, Y, d 2, l 2 > w stanie s 2 nazywa się podobnymi (zapis s 1 s 2 ), jeśli każde słowo odpowiednie dla s 2 jest odpowiednie dla s 1 i odwrotnie, przy czym końcowe litery wyjściowe obu automatów są sobie równe. Automaty Moore a A 1 i Mealy ego A 2 nazywa się podobnymi (zapis A 1 A 2 ), jeżeli dla każdego stanu s 1 automatu A 1 istnieje przynajmniej jeden stan s 2 automatu A 2 taki, że w tych stanach automaty są podobne oraz dla każdego stanu s 2 automatu A 2 istnieje przynajmniej jeden stan s 1 automatu A 1 taki, że w tych stanach automaty są podobne.

Automat Mealy ego podobny do automatu Moore a Dla automatu Moore a A 1 = < X, S 1, Y, d 1, l 1 > można znaleźć automat podobny Mealy ego A 2 = < X, S 2, Y, d 2, l 2 >, jeżeli dla każdej litery wejściowej automatu Mealy ego A 2 będzie spełniona zależność: l 2 (x,s) = l 1 [d(x,s)] Przykład: a b 1 2 3 y 2 4 5 z 3 1 2-4 3 4 z 5 5 1 y a b a b 1 2 3 z - 2 4 5 z y 3 1 2 y z 4 3 4 - z 5 5 1 y y

Automat Moore a podobny do Mealy ego Dla każdej pary <stan następny, litera wyjściowa> automatu Mealy ego A 1 = < X, S 1, Y, d 1, l 1 > wprowadzamy nazwę stanu wewnętrznego automaty Moore a A 2 =<X, S 2, Y, d 2, l 2 >, co oznaczmy symbolem: s 2 i = d 1 (x,s 1j ) / l 1 (x,s 1j ), przy czym l 1 (s 2i ) = l 1 (x,s 1j ). Zbiór tych nazw tworzy alfabet wewnętrzny S 2 automatu A 2. Korzystając z wierszy automatu Mealy ego podobny automat Moore a tworzymy w następujący sposób: - wybieramy wiersz odpowiadający stanowi następnemu z daną nazwą stanu wewnętrznego automatu Moore a, - dla tego wiersza stany następne określamy według tablicy Mealy ego, stosując nazwy stanów automatu Moore a poprzednio wyznaczone. Na koniec minimalizujemy i porządkujemy otrzymany automat.

Przykład a b a b 1 4 3 y z 2 2 1 z y 3 2 3 z z 4 4 1 y y a b 1 4/y A 3/z B 2 2/z C 1/y D 3 2/z C 3/z B 4 4/y A 1/y D a b A A D y B C B z C C D z D A B y