WYKORZYSTYWANIE WYJŚCIOWYCH MAKROKOMÓREK UKŁADU PLD W

Wielkość: px
Rozpocząć pokaz od strony:

Download "WYKORZYSTYWANIE WYJŚCIOWYCH MAKROKOMÓREK UKŁADU PLD W"

Transkrypt

1 WYKORZYSTYWANIE WYJŚCIOWYCH MAKROKOMÓREK UKŁADU PLD W CHARAKTERZE ELEMENTÓW PAMIĘCI AUTOMATU SKOŃCZONEGO Adam Klimowicz, Walery Sołowjew Wydział Informatyki Politechniki Białostockiej, ul. Wiejska 45A, Białystok aklim@ii.pb.bialystok.pl, walsol@ii.pb.bialystok.pl Abstrakt: W pracy przedstawiono nowe podejście do projektowania automatów skończonych na PLD, gdzie makrokomórki wyjściowe układu programowalnego są jednocześnie wykorzystywane do realizacji funkcji wyjściowych i funkcji przejść. Automaty skończone typu Moore a, które dopuszczają taka realizacje otrzymały nazwę automatów klasy C, a automaty skończone Mealy a automatów klasy D. Rezultaty badań eksperymentalnych przedstawionych metod w porównaniu z podejściem tradycyjnym, realizowanym w pakiecie Max+Plus II, pokazały wysoką efektywność nowych metod syntezy, które pozwalają zmniejszyć liczbę wykorzystywanych makrokomórek PLD, średnio, 2-3 razy, a w wybranych przypadkach nawet razy. 1. WPROWADZENIE W pracach [6, 7] przedstawiono 50 strukturalnych modeli automatów skończonych do realizacji w strukturach programowalnych, spośród których 9 modeli (C, D, C I, D I, D O, D IO, C I, D I, D IO ), wykorzystują przerzutniki makrokomórek wyjściowych PLD w charakterze elementów pamięci automatu skończonego. Do realizacji tych modeli wystarczy rozporządzać tylko dwiema metodami syntezy: automatów klasy C i automatów klasy D. Inne modele buduje się na bazie automatów klas C i D drogą dołączenia rejestrów na wejściu (C I, D I ), rejestrów na wyjściu (D O ), jednocześnie rejestrów na wejściu i wyjściu (D IO ), zatrzasków na wejściu (C I, D I ), a także zatrzasków na wejściu i rejestrów na wyjściu (D IO ). W pracy została szerzej opisana metoda syntezy automatów klasy C, gdyż automaty tej klasy mogą być realizowane na wszystkich współczesnych układach PLD, natomiast zbudowanie automatu klasy D jest możliwe tylko na PLD dopuszczających konfigurację wyjściowych makrokomórek z przerzutnikami w pętlach sprzężenia zwrotnego. Przedstawiono też rezultaty badań eksperymentalnych metod syntezy automatów klas C i D w porównaniu z tradycyjnymi modelami automatów skończonych typu Mealy a [4] i Moore a [5]. W zakończeniu przedstawiono wnioski oraz możliwości udoskonalenia przedstawionych algorytmów. 2. METODA SYNTEZY AUTOMATÓW KLASY C Automatem klasy C jest automat Moore a, którego każda wartość wektora zmiennych wyjściowych jest identyczna z kodem stanu wewnętrznego. W praktyce, większość automatów nie jest automatami klasy C, gdyż nie zawsze formowane na wyjściach wartości zmiennych wyjściowych mogą występować jako kody stanów wewnętrznych automatu. Na przykład, jeżeli liczba N funkcji wyjściowych jest mniejsza od wartości intlog 2 M, gdzie M jest liczbą stanów automatu lub kiedy w różnych stanach automatu są formowane identyczne wartości zmiennych wyjściowych. Z warunku determinizmu funkcjonowania automatu skończonego kody różnych stanów powinny być między sobą ortogonalne, tzn. przynajmniej na jednym bicie powinny mieć różne wartości. W przedstawionym podejściu, w celu rozróżnienia kodów stanów wewnętrznych wprowadza się dodatkowe elementy pamięci. Automat skończony charakteryzuje się liczbą L zmiennych wejściowych zbioru X={x 1,...,x L }, liczbą N funkcji wyjściowych zbioru Y={y 1,...,y N }, liczbą M stanów

2 wewnętrznych zbioru A={a 1,...,a M } oraz liczbą R funkcji wzbudzenia elementów pamięci (funkcji przejść) zbioru D={d 1,...,d R } i zmiennych sprzężeń zwrotnych E={e 1,...,e R }. Niech dla możliwości syntezy automatu klasy C zostanie wprowadzonych R dodatkowych elementów pamięci, sterowanych za pomocą funkcji d N+1,...,d N+R, przy czym na wyjściach elementów pamięci są formowane wartości zmiennych sprzężeń zwrotnych e N+1,...,e N+R. Synteza automatu klasy C prowadzi do specjalnego kodowania stanów wewnętrznych automatu skończonego. Można zauważyć, że w charakterze kodu stanu występuje nie pełna koniunkcja [9] zmiennych sprzężeń zwrotnych a elementarna koniunkcja [9] zmiennych ze zbioru E = {e 1,...,e N+R }. Algorytm 1. (kodowania stanów automatu klasy C) 1. Dla każdego stanu wewnętrznego automatu a i, a i A, określa się zbiór wartości zmiennych wyjściowych, który może być kodem lub częścią kodu danego stanu. W tym celu buduje się zerojedynkową macierz W. Wiersze macierzy odpowiadają stanom automatu, a kolumny funkcjom wyjściowym. Na początku wszystkie komórki macierzy mają wartość nieokreśloną. Na przecięciu wiersza i i kolumny j stawia się jedynkę, jeśli funkcja wyjściowa y j Y(a i ), gdzie Y(a i ) podzbiór zbioru funkcji wyjściowych, które przyjmują wartość równą jeden w stanie a i. Wiersz macierzy W, odpowiadający stanowi a i, będzie oznaczany W(a i ), a i A. 2. Wprowadza się dodatkowe bity kodu dla rozróżnienia kodów stanów pomiędzy sobą W macierzy W znajduje się podzbiór wierszy W 1,...,W H, mających jednakowe wartości komórek, tzn. jeśli W(a i ) W h i W(a j ) W h, to W(a i ) = W(a j ), h= 1, H Wprowadza się R dodatkowych zmiennych wewnętrznych automatu d N+1,...,d N+R, gdzie R = intlog 2 (max( W 1,..., W H )). Do macierzy W dopisuje się R kolumn W wiersze każdego podzbioru W h, h = 1, H, dopisuje się kody binarne o długości R, których bity odpowiadają zmiennym d N+1,...,d N+R. Przy tym kody z najmniejszą liczbą jedynek należy przydzielić wierszom W(a i ), dla których C(a i ) = max, gdzie C(a i ) zbiór przejść do stanu a i, a i A. 3. W celu zapewnienia warunków ortogonalności uzupełnia się komórki macierzy W z wartościami nieokreślonymi zerami dla kolumn, odpowiadających funkcjom wyjściowym y 1,...,y N i zerami lub jedynkami dla kolumn odpowiadających funkcjom wzbudzeń elementów pamięci d N+1,...,d N+R. Przy tym należy minimalizować liczbę wartości znaczących. Trywialne rozwiązanie tego zadania polega na wpisaniu zer w komórki macierzy W zawierające wartości nieokreślone. Ponieważ w większości PLD przy włączeniu zasilania przerzutniki przechodzą w stan zerowy, więc wiersz W(a 1 ), odpowiadający stanowi początkowemu można uzupełniać tylko zerami. 4. Określane są kody stanów automatu. Każdemu stanowi a i, a i A, odpowiada elementarna koniunkcja zmiennych ze zbioru E, w sposób następujący: jeżeli w kolumnie j wiersza W(a i ) zapisana jest jedynka, to zmienna e i wchodzi do koniunkcji w prostej postaci, jeżeli zero to w zanegowanej, jeśli wartość nieokreślona to zmienna e i nie wchodzi do koniunkcji. 5. Koniec. Dalsza synteza automatu klasy C polega na przyporządkowaniu funkcji wzbudzeń pamięci makrokomórkom układu PLD, przy czym funkcje d 1,...,d N przyporządkowuje się makrokomórkom wyjściowym, funkcje d N+1,...,d N+R można przyporządkowywać zarówno wewnętrznym (nie związanym z wyprowadzeniami zewnętrznymi) jak i wyjściowym makrokomórkom PLD. Na wyjściach przerzutników sterowanych funkcjami d 1,...,d N będą formowane wartości zmiennych sprzężeń zwrotnych oraz funkcji wyjściowych. Jest to możliwe, ponieważ wszystkie rejestrowe wyjścia PLD posiadają pętle sprzężenia zwrotnego.

3 Na wyjściach przerzutników sterowanych funkcjami d N+1,...,d N+R będą formowane wartości tylko zmiennych sprzężeń zwrotnych e N+1,...,e N+R. 3. PRZEKSZTAŁCENIE AUTOMATU MEALY A W AUTOMAT TYPU MOORE A Jak pokazano wyżej, automat klasy C jest automatem typu Moore a. Jednak może okazać się, że dany automat skończony jest automatem typu Mealy a. Z tego wynika konieczność przekształcenia automatu Mealy a w automat Moore a. Znanych jest wiele sposobów (np. opisany w pracy [3]) przejścia od jednego do drugiego typu automatu. Poniżej zostanie pokazana metoda przekształcenia automatu Mealy a w automat Moore a za pomocą operacji rozszczepienia [1] stanów wewnętrznych automatu skończonego. Niech А(a m ) zbiór stanów, w których kończą się przejścia ze stanu a m, a m A. Automat skończony jest typu Moore a, jeśli dla wszystkich a m, a m A, spełnione są warunki: Y(a m,a h ) = Y(a m,a t ) dla wszystkich a h, a t A(a m ), h t, ( 1 ) gdzie Y(a m,a s ) zbiór zmiennych wyjściowych, przyjmujących wartości równe jeden na przejściu ze stanu a m w stan a s, Y(a m,a s ) Y, a m, a s A. Inaczej mówiąc, dla automatu typu Moore a na wszystkich przejściach z danego stanu powinny być formowane takie same wartości zmiennych wyjściowych. Niech P(a m ) zbiór wszystkich przejść ze stanu a m, a m A; P k (a m ) jeden z podzbiorów zbioru przejść, P k (a m ) P(a m ); Y k (a m ) - podzbiór zmiennych wyjściowych przyjmujących wartości równe jeden podczas każdego przejścia z podzbioru P k (a m ), Y k (a m ) Y, przy czym żadna inna zmienna wyjściowa nie przyjmuje jedynkowej wartości na przejściach z podzbioru P k (a m ). Wtedy algorytm rozszczepienia stanów wewnętrznych automatu typu Mealy a celem przekształcenia w równoważny mu automat Moore a można przedstawić w następujący sposób. Algorytm Jeżeli dla wszystkich stanów a m, a m A, spełnione są warunki (1), to wykonuje się przejście do punktu Znajduje się stan a m, a m A, dla którego naruszono warunki (1). Określa się podzbiory przejść P 1 (a m ),...,P K (a m ) ze stanu a m, podczas których formowane są odpowiednio różne wartości wyjściowe Y 1 (a m ),...,Y K (a m ), Y k (a m ) Y h (a m ) przy k h, k,h= 1, K. 3. Wykonuje się rozszczepienie stanu a m, wybranego w punkcie Wprowadza się K nowych stanów a M+1,...,a M+K Określa się podzbiory P(a M+1 ),...,P(a M+K ) przejść ze stanów a M+1,...,a M+K, dlatego podstawia się P(a M+k ) := P k (a m ), k= 1, K Określa się podzbiory C(a M+1 ),...,C(a M+K ) przejść do stanów a M+1,...,a M+K, dlatego podstawia się C(a M+k ) := C(a m ), k= 1, K Podstawia się A := A\{a m } oraz A := A {a M+1,...,a M+K } Wykonuje się odpowiednią korekcję tablicy przejść. 4. Wykonuje się przejście do punktu Koniec. 4. METODA SYNTEZY AUTOMATÓW KLASY D Automatem klasy D jest automat skończony Mealy a, którego każdy zbiór wartości zmiennych wyjściowych określa kod stanu następnego automatu. Przy syntezie automatów

4 Mealy a klasy D aktualne są te same problemy co przy syntezie automatu klasy C: nie dla każdego automatu wartości zmiennych wyjściowych określają kod stanów przejścia, liczba funkcji wyjściowych może być mniejsza od minimalnej długości słowa kodowego, różnym stanom przejścia odpowiadają jednakowe zbiory wartości zmiennych wyjściowych, kody stanów powinny być wzajemnie ortogonalne. Niech B(a s ) zbiór stanów, z których przejścia kończą się w stanie a s, a s A. Główna idea metody syntezy automatu klasy D polega na dokonaniu rozszczepienia złych stanów w taki sposób, aby dla każdego stanu a s, a s A, były spełnione warunki: Y(a h,a s ) = Y(a t,a s ) dla wszystkich a h, a t B(a s ), h t, ( 2 ) tj. aby dla każdego stanu a s, a s A, na wszystkich przejściach w dany stan formowały się jednakowe zbiory wartości zmiennych wyjściowych. Dalsze czynności związane z syntezą automatu klasy D są podobne jak dla automatu klasy C. Niech С k (a s ) jeden z podzbiorów zbioru przejść, które kończą się w stanie a s, С k (a s ) С(a s ); Z k (a s ) podzbiór zmiennych wyjściowych przyjmujących wartości równe jeden podczas każdego przejścia z podzbioru C k (a s ), Z k (a s ) Y, przy czym żadna inna zmienna wyjściowa nie przyjmuje wartości równej jeden na przejściach należących do zbioru C k (a s ). Wówczas algorytm rozszczepienia stanów dla przekształcenia dowolnego automatu klasy A w automat klasy D, tj. dla wypełnienia warunków (2), można opisać w następujący sposób. Algorytm Jeżeli dla wszystkich stanów ze zbioru A spełnione są warunki (2), to wykonuje się przejście do punktu Znajduje się stan a s, a s A, dla którego naruszono warunki (2). Określa się podzbiory przejść C 1 (a s ),...,C K (a s ) do stanu a s, podczas których są formowane odpowiednio różne zbiory wartości zmiennych wyjściowych Z 1 (a s ),...,Z K (a s ), Z k (a s ) Z h (a s ) przy k h, k,h= 1, K. 3. Wykonuje się rozszczepienie stanu a s określonego w punkcie Wprowadza się K nowych stanów a M+1,...,a M+K Określa się podzbiory P(a M+1 ),...,P(a M+K ) przejść ze stanów a M+1,...,a M+K, dlatego podstawia się P(a M+k ) := P k (a s ), k= 1, K Określa się podzbiory C(a M+1 ),...,C(a M+K ) przejść do stanów a M+1,...,a M+K, dlatego podstawia się C(a M+k ) := C(a s ), k= 1, K Podstawia się A := A\{a s } oraz A := A {a M+1,...,a M+K } Wykonuje się odpowiednią korekcję tablicy przejść. 4. Wykonuje się przejście do punktu Koniec. Analogicznie do automatu klasy C, synteza automatu klasy D prowadzi do specjalnego kodowania stanów wewnętrznych automatu skończonego, do którego można wykorzystać następujący algorytm. Algorytm Dla każdego stanu wewnętrznego automatu a i, a i A, określa się zbiór wartości zmiennych wyjściowych który może być kodem lub częścią kodu danego stanu. W tym celu buduje się zerojedynkową macierz W. Wiersze macierzy W odpowiadają stanom automatu, a kolumny funkcjom wyjściowym. Na początku wszystkie

5 komórki macierzy mają wartość nieokreśloną. Na przecięciu wiersza i i kolumny j stawiana jest jedynka, jeśli a m B(a i ), а y j Y(a m,a i ). 2. Wykonuje się punkty 2-4 algorytmu Koniec. 5. BADANIA EKSPRERYMENTALNE METOD SYNTEZY AUTOMATÓW KLAS C I D Opisane wyżej metody syntezy automatów klas C i D zostały zaimplementowane jako część pakietu naukowo-badawczego ZUBR, wspomagającego proces syntezy układów kombinacyjnych i automatów skończonych na PLD. Dla zbadania efektywności przedstawionych metod, w charakterze danych wejściowych wykorzystano przykłady automatów skończonych, opracowane w MCNC (Microelectronics Center of North Carolina) [8]. Opisane metody zostały porównane z metodami syntezy automatów skończonych pakietu Max+Plus II firmy Altera. Metoda syntezy automatów skończonych klasy C była porównywana z metodami syntezy pakietu Max+Plus II dla PLD rodziny CLASSIC (q=8, gdzie q liczba termów podłaczonych do jednej makrokomórki) i MAX 5000 (q=5). Rezultaty porównania pokazano w tab. 1, gdzie L i N odpowiednio - liczba wejść i wyjść automatu skończonego; C A1 i C A2 liczba wykorzystanych makrokomórek PLD przy syntezie za pomocą metody syntezy pakietu Max+Plus II odpowiednio dla rodziny CLASSIC i rodziny MAX 5000; C C1 i C C2 liczba wykorzystywanych makrokomórek PLD przy syntezie automatu skończonego za pomocą metody syntezy automatów klasy C odpowiednio dla q=8 i q=5. Tablica 1. Rezultaty badań eksperymentalnych metody syntezy automatu klasy C Nazwa L N C A1 C C1 C A1 / C C1 C A2 C C2 C A2 / C C2 Typ Bbsse , ,16 A beecount , ,33 A dk ,36 A dk , A Donfile C ex , ,17 B mark , A Mc , ,6 C s , ,1 A s C Shiftreg , B Średnia 1,64 3,12 Analiza tab. 1 pokazuje, że dla zbadanych przykładów zastosowanie metody syntezy automatów klasy C pozwoliło obniżyć liczbę wykorzystanych makrokomórek PLD dla rodziny CLASSIC średnio 1,64 razy (w najlepszym wypadku 2,45 razy), a dla rodziny MAX 5000 średnio 3,12 razy (w najlepszym wypadku nawet 17 razy). Metoda syntezy automatów klasy D została porównana z metodą syntezy pakietu Max+Plus II dla układów z rodziny MAX 9000 (q=5) i FLEX 10K (q=4). Można zauważyć, że układy z tych rodzin pozwalają konfigurować makrokomórki (elementy logiczne) z przerzutnikami w pętli sprzężenia zwrotnego. Rezultaty porównania pokazano w tab. 2, gdzie C A3 i C A4 liczba wykorzystanych makrokomórek PLD przy syntezie za pomocą metody syntezy pakietu Max+Plus II odpowiednio dla rodziny MAX 9000 i rodziny FLEX 10K; C D1 i C D2 liczba wykorzystywanych makrokomórek PLD przy syntezie automatu skończonego za pomocą metody syntezy automatów klasy D odpowiednio dla q=5 i q=4.

6 Analiza tab. 2 pokazuje, że dla zbadanych przykładów zastosowanie metody syntezy automatów klasy D pozwala obniżyć liczbę wykorzystanych makrokomórek (elementów logicznych) dla rodziny MAX 9000 średnio 2,04 razy (w najlepszym wypadku 5 razy), a dla rodziny FLEX 10K, średnio 7,5 razy (w najlepszym wypadku nawet 23 razy). Tablica 2. Rezultaty badań eksperymentalnych metody syntezy automatu klasy D Nazwa L N C A3 C D1 C A3 / C D1 C A4 C D2 C A4 / C D2 Typ beecount , ,6 A ex ,07 B keyb , ,15 D lion , A opus , ,38 D s , ,8 D S ,75 D S ,95 A s C train , ,33 A Średnia 2,04 7,50 Można też zauważyć, że metody syntezy automatów klas C i D pozwalają budować 2-3 razy szybsze automaty skończone, niż tradycyjne metody syntezy automatów skończonych typów Moore a i Mealy a. 6. ZAKOŃCZENIE Metody syntezy automatów skończonych klas C i D pozwalają znacznie obniżyć koszt realizacji i jednocześnie zwiększyć szybkość realizowanego automatu skończonego. Obniżenie kosztu realizacji otrzymuje się dzięki uproszczeniu części kombinacyjnej automatu, ponieważ odpada konieczność realizacji funkcji wzbudzeń elementów pamięci, a także zmniejszeniu liczby wykorzystywanych makrokomórek wyjściowych, gdyż pamięć automatu i funkcje wyjściowe są realizowane na tych samych makrokomórkach PLD. Nie bez znaczenia jest tu fakt, że w charakterze kodów stanów wewnętrznych dla automatów klas C i D występują elementarne koniunkcje a nie pełne koniunkcje, jak w tradycyjnych modelach klas A i B. Zwiększenie szybkości automatów klas C i D w porównaniu z tradycyjnymi automatami klas A i B wynika z tego, że dla tych automatów realizowane są przeważnie funkcje wyjściowe, które z zasady są znacznie prostsze niż funkcje wzbudzenia elementów pamięci. Automat klasy C jest automatem Moore a, a automat klasy D - Mealy a, dlatego przy syntezie automatów klasy C czasem należy przekształcić dany automat Mealy a na równoważny mu automat Moore a, co w niektórych przypadkach może znacznie zwiększyć liczbę stanów wewnętrznych i ogólną liczbę przejść automatu skończonego. Wyjścia automatu skończonego klasy C są zawsze wyjściami rejestrowymi, natomiast automatu klasy D kombinacyjnymi. Największą efektywność pokazanych metod uzyskuje się, kiedy wejściowy automat jest od razu automatem klasy C (spełnione są warunki (1)) lub D (spełnione są warunki (2)). Jak widać z tabel 1 i 2, dla automatów klasy C efektywna okazuje się też metoda syntezy automatów klasy D (przykład s8). Metody syntezy automatów klas C i D można efektywnie stosować zarówno w układach programowalnych typu CPLD jak i FPGA (np. dla rodziny FLEX 10K). Duża efektywność metody syntezy automatu klasy D pozwala rekomendować projektantom układy z możliwością konfiguracji wyjściowych makrokomórek w pętlach sprzężeń zwrotnych.

7 Możliwe jest też dalsze ulepszanie pokazanych algorytmów syntezy. Ponieważ efektywność kodowania stanów wewnętrznych opiera się na wypełnieniu punktu 3 algorytmu 1, należałoby opracować efektywny algorytm ortogonalizacji wierszy macierzy W. Dla systemów z logiką inwersyjną należy opracować metody syntezy automatów klas C i D w przypadku, kiedy układ programowalny nie dopuszcza programowania poziomu logicznego sygnałów wyjściowych. Można także modyfikować przedstawione algorytmy dla PLD, dopuszczających programowanie poziomu logicznego sygnałów wyjściowych, w taki sposób, aby do realizacji była wybierana prostsza z funkcji y i lub y i, w zależności od liczby termów koniecznych do realizacji danej postaci funkcji. Dalsze ulepszenie pokazanego podejścia może być osiągnięte też drogą połączenia automatów skończonych różnych klas w ramach jednego modelu automatu skończonego. LITERATURA I ŹRÓDŁA [1] Avedillo M., Quintana J., Huertas J. State merging and splitting via state assignment: a new FSM synthesis algorithm, IEE Proceedings. Part E, Computers and Digital Techniques, vol. 141, No. 4, July 1994, pp [2] DeMicheli G., Brayton R.K., Sangiovanni-Vincentelli A. Optimal state assignment for finite state machines, IEEE Trans. on Computer-Aided Design, vol. CAD-4, pp , July 1985.machines, [3] Głuszkow W.M.: Sintez cifrowych awtomatow. Moskwa, Fizmatgiz, 1962, 476 s. [4] Mealy G.H. Method for synthesizing sequential circuits, Bell System Techn. Jourhal, vol.34, 1955, pp [5] Moore E.F. Gedanken-experiments on sequential machines, In C.Shannon and J.McCarthy editors. - Automata Studies, Princeton University Press, 1956, pp [6] Solovjev V., Synthesis of Sequential Circuits on Programmable Logic Devices Based on New Models of Finite State Machines, Proc. of the EUROMICRO Symposium on DIGITAL SYSTEMS DESIGN (DSD 2001), September 4-6, 2001, Warsaw, Poland, pp [7] Sołowiew W.W.: Projektirowanije cifrowych sistiem na osnowie programmirujemych logiczeskich integralnych schiem. Moskwa, Hot Line-Telekom, 2001, 636 s. [8] Yang S., Logic synthesis and optimization benchmarks user guide. Version 3.0., Technical Report, Microelectronics Center of North Carolina, 1991, 43p. [9] Zakrewskij A.D.: Logiczeskij sintez kaskadnych schiem. Moskwa, Nauka, 1981, 416 s. Praca zrealizowana w ramach projektu badawczego W/WI/7/02.

SYNTEZA WSPÓLNYCH MODELI AUTOMATÓW SKOŃCZONYCH NA PLD

SYNTEZA WSPÓLNYCH MODELI AUTOMATÓW SKOŃCZONYCH NA PLD SYNTEZA WSPÓLNYCH MODELI AUTOMATÓW SKOŃCZONYCH NA PLD Walery Sołowjew, Adam Klimowicz Wydział Informatyki Politechniki Białostockiej, ul. Wiejska 45A, 15-351 Białystok e-mail: walsol@ii.pb.bialystok.pl,

Bardziej szczegółowo

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

SYNTEZA AUTOMATÓW SKOŃCZONYCH Z WYKORZYSTANIEM METOD KODOWANIA WIELOKROTNEGO II Konferencja Naukowa KNWS'05 "Informatyka- sztuka czy rzemios o" 15-18 czerwca 2005, Z otniki Luba skie SNTEZA AUTOMATÓW SKOŃCZONCH Z WKORZSTANIEM METOD KODOWANIA WIELOKROTNEGO Arkadiusz Bukowiec Instytut

Bardziej szczegółowo

Synteza strukturalna automatu Moore'a i Mealy

Synteza strukturalna automatu Moore'a i Mealy Synteza strukturalna automatu Moore'a i Mealy (wersja robocza - w razie zauważenia błędów proszę o uwagi na mail'a) Załóżmy, że mamy następujący graf automatu z 2 y 0 q 0 z 1 z 1 z 0 z 0 y 1 z 2 q 2 z

Bardziej szczegółowo

PROJEKTOWANIE UKŁADÓW MIKROPROGRAMOWANYCH Z WYKORZYSTANIEM WBUDOWANYCH BLOKÓW PAMIĘCI W MATRYCACH PROGRAMOWALNYCH

PROJEKTOWANIE UKŁADÓW MIKROPROGRAMOWANYCH Z WYKORZYSTANIEM WBUDOWANYCH BLOKÓW PAMIĘCI W MATRYCACH PROGRAMOWALNYCH II Konferencja Naukowa KNWS'05 "Informatyka- sztuka czy rzemios o" 5-8 czerwca 005, Z otniki Luba skie PROJEKTOWANIE UKŁADÓW MIKROPROGRAMOWANYCH Z WYKORZYSTANIEM WBUDOWANYCH BLOKÓW PAMIĘCI W MATRYCACH

Bardziej szczegółowo

Laboratorium przedmiotu Technika Cyfrowa

Laboratorium przedmiotu Technika Cyfrowa Laboratorium przedmiotu Technika Cyfrowa ćw.3 i 4: Asynchroniczne i synchroniczne automaty sekwencyjne 1. Implementacja asynchronicznych i synchronicznych maszyn stanu w języku VERILOG: Maszyny stanu w

Bardziej szczegółowo

Język opisu sprzętu VHDL

Język opisu sprzętu VHDL Język opisu sprzętu VHDL dr inż. Adam Klimowicz Seminarium dydaktyczne Katedra Mediów Cyfrowych i Grafiki Komputerowej Informacje ogólne Język opisu sprzętu VHDL Przedmiot obieralny dla studentów studiów

Bardziej szczegółowo

Mikroprogramowany układ sterujący z współdzieleniem kodów oraz rozszerzonym formatem mikroinstrukcji

Mikroprogramowany układ sterujący z współdzieleniem kodów oraz rozszerzonym formatem mikroinstrukcji KNWS 7 Mikroprogramowany układ sterujący z współdzieleniem kodów oraz rozszerzonym formatem mikroinstrukcji Alexander Barkalov, Larysa Titarenko, Jacek Bieganowski Streszczenie: W artykule przedstawiona

Bardziej szczegółowo

SYNTEZA JEDNOSTEK STERUJĄCYCH W STRUKTURACH PROGRAMOWALNYCH

SYNTEZA JEDNOSTEK STERUJĄCYCH W STRUKTURACH PROGRAMOWALNYCH SYNTEZA JEDNOSTEK STERUJĄCYCH W STRUKTURACH PROGRAMOWALNYCH II Konferencja Naukowa KNWS'05 "Informatyka- sztuka czy rzemios o" 15-18 czerwca 2005, Z otniki Luba skie Alexander A. Barkalov Instytut Informatyki

Bardziej szczegółowo

ZASTOSOWANIE TRANSWERSALI HIPERGRAFÓW DO MINIMALIZACJI ROZMIARU PAMIĘCI JEDNOSTEK STERUJĄCYCH

ZASTOSOWANIE TRANSWERSALI HIPERGRAFÓW DO MINIMALIZACJI ROZMIARU PAMIĘCI JEDNOSTEK STERUJĄCYCH II Konferencja Naukowa KNWS'05 "Informatyka- sztuka czy rzemios o" 15-18 czerwca 2005, Z otniki Luba skie ZASTOSOWANIE TRANSWERSALI HIPERGRAFÓW DO MINIMALIZACJI ROZMIARU PAMIĘCI JEDNOSTEK STERUJĄCYCH Monika

Bardziej szczegółowo

Synteza strukturalna automatów Moore'a i Mealy

Synteza strukturalna automatów Moore'a i Mealy Synteza strukturalna automatów Moore'a i Mealy Formalna definicja automatu: A = < Z, Q, Y, Φ, Ψ, q 0 > Z alfabet wejściowy Q zbiór stanów wewnętrznych Y alfabet wyjściowy Φ funkcja przejść q(t+1) = Φ (q(t),

Bardziej szczegółowo

Lista tematów na kolokwium z wykładu z Techniki Cyfrowej w roku ak. 2013/2014

Lista tematów na kolokwium z wykładu z Techniki Cyfrowej w roku ak. 2013/2014 Lista tematów na kolokwium z wykładu z Techniki Cyfrowej w roku ak. 2013/2014 Temat 1. Algebra Boole a i bramki 1). Podać przykład dowolnego prawa lub tożsamości, które jest spełnione w algebrze Boole

Bardziej szczegółowo

Sławomir Kulesza. Projektowanie automatów synchronicznych

Sławomir Kulesza. Projektowanie automatów synchronicznych Sławomir Kulesza Technika cyfrowa Projektowanie automatów synchronicznych Wykład dla studentów III roku Informatyki Wersja 2.0, 20/12/2012 Automaty skończone Automat Mealy'ego Funkcja wyjść: Yt = f(st,

Bardziej szczegółowo

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

Tab. 1 Tab. 2 t t+1 Q 2 Q 1 Q 0 Q 2 Q 1 Q 0 Synteza liczników synchronicznych Załóżmy, że chcemy zaprojektować licznik synchroniczny o następującej sekwencji: 0 1 2 3 6 5 4 [0 sekwencja jest powtarzana] Ponieważ licznik ma 7 stanów, więc do ich

Bardziej szczegółowo

Programowalne Układy Logiczne. Wykład I dr inż. Paweł Russek

Programowalne Układy Logiczne. Wykład I dr inż. Paweł Russek Programowalne Układy Logiczne Wykład I dr inż. Paweł Russek Literatura www.actel.com www.altera.com www.xilinx.com www.latticesemi.com Field Programmable Gate Arrays J.V. Oldfield, R.C. Dorf Field Programable

Bardziej szczegółowo

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

Wykład nr 3 Techniki Mikroprocesorowe. dr inż. Artur Cichowski Wykład nr 3 Techniki Mikroprocesorowe dr inż. Artur Cichowski Automat skończony jest przetwornikiem ciągu symboli wejściowych na ciąg symboli wyjściowych. Zbiory symboli wejściowych x X i wyjściowych y

Bardziej szczegółowo

Asynchroniczne statyczne układy sekwencyjne

Asynchroniczne statyczne układy sekwencyjne Asynchroniczne statyczne układy sekwencyjne Układem sekwencyjnym nazywany jest układ przełączający, posiadający przynajmniej jeden taki stan wejścia, któremu odpowiadają, zależnie od sygnałów wejściowych

Bardziej szczegółowo

Literatura. adów w cyfrowych. Projektowanie układ. Technika cyfrowa. Technika cyfrowa. Bramki logiczne i przerzutniki.

Literatura. adów w cyfrowych. Projektowanie układ. Technika cyfrowa. Technika cyfrowa. Bramki logiczne i przerzutniki. Literatura 1. D. Gajski, Principles of Digital Design, Prentice- Hall, 1997 2. C. Zieliński, Podstawy projektowania układów cyfrowych, PWN, Warszawa 2003 3. G. de Micheli, Synteza i optymalizacja układów

Bardziej szczegółowo

Kodowanie i kompresja Tomasz Jurdziński Studia Wieczorowe Wykład Kody liniowe - kodowanie w oparciu o macierz parzystości

Kodowanie i kompresja Tomasz Jurdziński Studia Wieczorowe Wykład Kody liniowe - kodowanie w oparciu o macierz parzystości Kodowanie i kompresja Tomasz Jurdziński Studia Wieczorowe Wykład 13 1 Kody liniowe - kodowanie w oparciu o macierz parzystości Przykład Różne macierze parzystości dla kodu powtórzeniowego. Co wiemy z algebry

Bardziej szczegółowo

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

Projekt prostego układu sekwencyjnego Ćwiczenia Audytoryjne Podstawy Automatyki i Automatyzacji WOJSKOWA AKADEMIA TECHNICZNA im. Jarosława Dąbrowskiego Projekt prostego układu sekwencyjnego Ćwiczenia Audytoryjne Podstawy Automatyki i Automatyzacji mgr inż. Paulina Mazurek Warszawa 2013 1 Wstęp Układ

Bardziej szczegółowo

Errata do książki Multisim. Technika cyfrowa w przykładach.

Errata do książki Multisim. Technika cyfrowa w przykładach. . 3. 24 r. rrata do książki Multisim. Technika cyfrowa w przykładach.. str.5, źle jest zapisana postać funkcji wyjściowej równoważność (xclusive NOR, XNOR, NOR, XNOR), y 7 = a b + a b = a Ä b = a Å b 2.

Bardziej szczegółowo

Podstawy Techniki Cyfrowej Teoria automatów

Podstawy Techniki Cyfrowej Teoria automatów Podstawy Techniki Cyfrowej Teoria automatów Uwaga Niniejsza prezentacja stanowi uzupełnienie materiału wykładowego i zawiera jedynie wybrane wiadomości teoretyczne dotyczące metod syntezy układów asynchronicznych.

Bardziej szczegółowo

3. Macierze i Układy Równań Liniowych

3. Macierze i Układy Równań Liniowych 3. Macierze i Układy Równań Liniowych Rozważamy równanie macierzowe z końcówki ostatniego wykładu ( ) 3 1 X = 4 1 ( ) 2 5 Podstawiając X = ( ) x y i wymnażając, otrzymujemy układ 2 równań liniowych 3x

Bardziej szczegółowo

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

1. Synteza automatów Moore a i Mealy realizujących zadane przekształcenie 2. Transformacja automatu Moore a w automat Mealy i odwrotnie Opracował: dr hab. inż. Jan Magott KATEDRA INFORMATYKI TECHNICZNEJ Ćwiczenia laboratoryjne z Logiki Układów Cyfrowych ćwiczenie 207 Temat: Automaty Moore'a i Mealy 1. Cel ćwiczenia Celem ćwiczenia jest

Bardziej szczegółowo

Systemy wbudowane. Układy programowalne

Systemy wbudowane. Układy programowalne Systemy wbudowane Układy programowalne Układy ASIC Application Specific Integrated Circuits Podstawowy rozdział cyfrowych układów scalonych: Wielkie standardy: standardowe, uniwersalne elementy o strukturze

Bardziej szczegółowo

W jakim celu to robimy? Tablica Karnaugh. Minimalizacja

W jakim celu to robimy? Tablica Karnaugh. Minimalizacja W jakim celu to robimy? W projektowaniu układów cyfrowych istotne jest aby budować je jak najmniejszym kosztem. To znaczy wykorzystanie dwóch bramek jest tańsze niż konieczność wykorzystania trzech dla

Bardziej szczegółowo

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

Wstęp do Techniki Cyfrowej... Teoria automatów 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

Bardziej szczegółowo

Projekt z przedmiotu Systemy akwizycji i przesyłania informacji. Temat pracy: Licznik binarny zliczający do 10.

Projekt z przedmiotu Systemy akwizycji i przesyłania informacji. Temat pracy: Licznik binarny zliczający do 10. Projekt z przedmiotu Systemy akwizycji i przesyłania informacji Temat pracy: Licznik binarny zliczający do 10. Andrzej Kuś Aleksander Matusz Prowadzący: dr inż. Adam Stadler Układy cyfrowe przetwarzają

Bardziej szczegółowo

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

KATEDRA INFORMATYKI TECHNICZNEJ. Ćwiczenia laboratoryjne z Logiki Układów Cyfrowych. ćwiczenie 212 KATEDRA INFORMATYKI TECHNICZNEJ Ćwiczenia laboratoryjne z Logiki ów Cyfrowych ćwiczenie Temat: Automat asynchroniczny. Cel ćwiczenia Celem ćwiczenia jest nabycie praktycznej umiejętności projektowania

Bardziej szczegółowo

Część 2. Funkcje logiczne układy kombinacyjne

Część 2. Funkcje logiczne układy kombinacyjne Część 2 Funkcje logiczne układy kombinacyjne Zapis funkcji logicznych układ funkcjonalnie pełny Arytmetyka Bool a najważniejsze aksjomaty i tożsamości Minimalizacja funkcji logicznych Układy kombinacyjne

Bardziej szczegółowo

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

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 Testowanie układów kombinacyjnych Przykładowy układ Wykrywanie błędów: 1. Sklejenie z 0 2. Sklejenie z 1 Testem danego uszkodzenia nazywa się takie wzbudzenie funkcji (wektor wejściowy), które daje błędną

Bardziej szczegółowo

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

zmiana stanu pamięci następuje bezpośrednio (w dowolnej chwili czasu) pod wpływem zmiany stanu wejść, Sekwencyjne układy cyfrowe Układ sekwencyjny to układ cyfrowy, w którym zależność między wartościami sygnałów wejściowych (tzw. stan wejść) i wyjściowych (tzw. stan wyjść) nie jest jednoznaczna. Stan wyjść

Bardziej szczegółowo

Sławomir Kulesza. Projektowanie automatów asynchronicznych

Sławomir Kulesza. Projektowanie automatów asynchronicznych Sławomir Kulesza Technika cyfrowa Projektowanie automatów asynchronicznych Wykład dla studentów III roku Informatyki Wersja 3.0, 03/01/2013 Automaty skończone Automat skończony (Finite State Machine FSM)

Bardziej szczegółowo

Inteligencja obliczeniowa

Inteligencja obliczeniowa Ćwiczenie nr 3 Zbiory rozmyte logika rozmyta Sterowniki wielowejściowe i wielowyjściowe, relacje rozmyte, sposoby zapisu reguł, aproksymacja funkcji przy użyciu reguł rozmytych, charakterystyki przejściowe

Bardziej szczegółowo

Kodowanie i kompresja Streszczenie Studia dzienne Wykład 9,

Kodowanie i kompresja Streszczenie Studia dzienne Wykład 9, 1 Kody Tunstalla Kodowanie i kompresja Streszczenie Studia dzienne Wykład 9, 14.04.2005 Inne podejście: słowa kodowe mają ustaloną długość, lecz mogą kodować ciągi liter z alfabetu wejściowego o różnej

Bardziej szczegółowo

Programowalne scalone układy cyfrowe PLD, CPLD oraz FPGA

Programowalne scalone układy cyfrowe PLD, CPLD oraz FPGA Programowalne scalone układy cyfrowe PLD, CPLD oraz FPGA Ogromną rolę w technice cyfrowej spełniają układy programowalne, często określane nazwą programowalnych modułów logicznych lub krótko hasłem FPLD

Bardziej szczegółowo

Układy asynchroniczne

Układy asynchroniczne Układy asynchroniczne Model układu asynchronicznego y x n UK y m układ kombinacyjny q k BP q k blok pamięci realizuje opóźnienia adeusz P x x t s tan stabilny s: δ(s,x) = s automacie asynchronicznym wszystkie

Bardziej szczegółowo

Algebra Boole a i jej zastosowania

Algebra Boole a i jej zastosowania lgebra oole a i jej zastosowania Wprowadzenie Niech dany będzie zbiór dwuelementowy, którego elementy oznaczymy symbolami 0 oraz 1, tj. {0, 1}. W zbiorze tym określamy działania sumy :, iloczynu : _ oraz

Bardziej szczegółowo

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

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

Bardziej szczegółowo

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

Wstęp do Techniki Cyfrowej... Teoria automatów i układy sekwencyjne Wstęp do Techniki Cyfrowej... Teoria automatów i układy sekwencyjne Alfabety i litery Układ logiczny opisywany jest przez wektory, których wartości reprezentowane są przez ciągi kombinacji zerojedynkowych.

Bardziej szczegółowo

Wstęp do Techniki Cyfrowej... Synchroniczne układy sekwencyjne

Wstęp do Techniki Cyfrowej... Synchroniczne układy sekwencyjne Wstęp do Techniki Cyfrowej... Synchroniczne układy sekwencyjne Schemat ogólny X Y Układ kombinacyjny S Z Pamięć Zegar Działanie układu Zmiany wartości wektora S możliwe tylko w dyskretnych chwilach czasowych

Bardziej szczegółowo

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

0 + 0 = 0, = 1, = 1, = 0. 5 Kody liniowe Jak już wiemy, w celu przesłania zakodowanego tekstu dzielimy go na bloki i do każdego z bloków dodajemy tak zwane bity sprawdzające. Bity te są w ścisłej zależności z bitami informacyjnymi,

Bardziej szczegółowo

dwójkę liczącą Licznikiem Podział liczników:

dwójkę liczącą Licznikiem Podział liczników: 1. Dwójka licząca Przerzutnik typu D łatwo jest przekształcić w przerzutnik typu T i zrealizować dzielnik modulo 2 - tzw. dwójkę liczącą. W tym celu wystarczy połączyć wyjście zanegowane Q z wejściem D.

Bardziej szczegółowo

x x

x x DODTEK II - Inne sposoby realizacji funkcji logicznych W kolejnych podpunktach zaprezentowano sposoby realizacji przykładowej funkcji (tej samej co w instrukcji do ćwiczenia "Synteza układów kombinacyjnych")

Bardziej szczegółowo

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

INSTYTUT CYBERNETYKI TECHNICZNEJ POLITECHNIKI WROCŁAWSKIEJ ZAKŁAD SZTUCZNEJ INTELIGENCJI I AUTOMATÓW INSTYTUT CYBERNETYKI TECHNICZNEJ POLITECHNIKI WROCŁAWSKIEJ ZAKŁAD SZTUCZNEJ INTELIGENCJI I AUTOMATÓW Ćwiczenia laboratoryjne z Logiki Układów Cyfrowych ćwiczenie 207 temat: AUTOMATY MOORE A I MEALY 1.

Bardziej szczegółowo

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

Technika Cyfrowa 1 wykład 12: sekwencyjne układy przełączające Technika Cyfrowa 1 wykład 12: sekwencyjne układy przełączające Dr inż. Jacek Mazurkiewicz Katedra Informatyki Technicznej e-mail: Jacek.Mazurkiewicz@pwr.edu.pl Sekwencyjny układ przełączający układ przełączający

Bardziej szczegółowo

Metoda Karnaugh. B A BC A

Metoda Karnaugh. B A BC A Metoda Karnaugh. Powszechnie uważa się, iż układ o mniejszej liczbie elementów jest tańszy i bardziej niezawodny, a spośród dwóch układów o takiej samej liczbie elementów logicznych lepszy jest ten, który

Bardziej szczegółowo

Wstęp do Techniki Cyfrowej... Układy kombinacyjne

Wstęp do Techniki Cyfrowej... Układy kombinacyjne Wstęp do Techniki Cyfrowej... Układy kombinacyjne Przypomnienie Stan wejść układu kombinacyjnego jednoznacznie określa stan wyjść. Poszczególne wyjścia określane są przez funkcje boolowskie zmiennych wejściowych.

Bardziej szczegółowo

Podstawy Automatyki. Człowiek- najlepsza inwestycja. Projekt współfinansowany przez Unię Europejską w ramach Europejskiego Funduszu Społecznego

Podstawy Automatyki. Człowiek- najlepsza inwestycja. Projekt współfinansowany przez Unię Europejską w ramach Europejskiego Funduszu Społecznego Podstawy Automatyki Człowiek- najlepsza inwestycja Projekt współfinansowany przez Unię Europejską w ramach Europejskiego Funduszu Społecznego Politechnika Warszawska Instytut Automatyki i Robotyki Dr inż.

Bardziej szczegółowo

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

Technika cyfrowa Synteza układów kombinacyjnych (I) Sławomir Kulesza Technika cyfrowa Synteza układów kombinacyjnych (I) Wykład dla studentów III roku Informatyki Wersja 2.0, 05/10/2011 Podział układów logicznych Opis funkcjonalny układów logicznych x 1

Bardziej szczegółowo

DEKOMPOZYCJA SYMBOLICZNA WIELOWARTOŚCIOWYCH FUNKCJI IMPLEMENTOWANYCH W TECHNOLOGII FPGA

DEKOMPOZYCJA SYMBOLICZNA WIELOWARTOŚCIOWYCH FUNKCJI IMPLEMENTOWANYCH W TECHNOLOGII FPGA MARIUSZ WIŚNIEWSKI, STANISŁAW DENIZIAK DEKOMPOZYCJA SYMBOLICZNA WIELOWARTOŚCIOWYCH FUNKCJI IMPLEMENTOWANYCH W TECHNOLOGII FPGA SYMBOLIC DECOMPOSITION OF MULTI-VALUED FUNCTIONS IMPLEMENTED IN FPGAs Streszczenie

Bardziej szczegółowo

Rys. 2. Symbole dodatkowych bramek logicznych i ich tablice stanów.

Rys. 2. Symbole dodatkowych bramek logicznych i ich tablice stanów. Cel ćwiczenia Celem ćwiczenia jest zapoznanie się z funktorami realizującymi podstawowe funkcje logiczne poprzez zaprojektowanie, wykonanie i przetestowanie kombinacyjnego układu logicznego realizującego

Bardziej szczegółowo

Podstawy Automatyki. Wykład 12 - synteza i minimalizacja funkcji logicznych. dr inż. Jakub Możaryn. Warszawa, Instytut Automatyki i Robotyki

Podstawy Automatyki. Wykład 12 - synteza i minimalizacja funkcji logicznych. dr inż. Jakub Możaryn. Warszawa, Instytut Automatyki i Robotyki Wykład 12 - synteza i minimalizacja funkcji logicznych Instytut Automatyki i Robotyki Warszawa, 2017 Synteza funkcji logicznych Terminy - na bazie funkcji trójargumenowej y = (x 1, x 2, x 3 ) (1) Elementarny

Bardziej szczegółowo

Elektrotechnika II Stopień (I stopień / II stopień) Ogólno akademicki (ogólno akademicki / praktyczny)

Elektrotechnika II Stopień (I stopień / II stopień) Ogólno akademicki (ogólno akademicki / praktyczny) Załącznik nr 7 do Zarządzenia Rektora nr 10/12 z dnia 21 lutego 2012r. KARTA MODUŁU / KARTA PRZEDMIOTU Kod modułu Nazwa modułu Nazwa modułu w języku angielskim Obowiązuje od roku akademickiego 2012/2013

Bardziej szczegółowo

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

Temat: Zastosowanie wyrażeń regularnych do syntezy i analizy automatów skończonych Opracował: dr inż. Zbigniew Buchalski KATEDRA INFORMATYKI TECHNICZNEJ Ćwiczenia laboratoryjne z Logiki Układów Cyfrowych ćwiczenie Temat: Zastosowanie wyrażeń regularnych do syntezy i analizy automatów

Bardziej szczegółowo

Politechnika Gdańska Wydział Elektrotechniki i Automatyki Katedra Inżynierii Systemów Sterowania

Politechnika Gdańska Wydział Elektrotechniki i Automatyki Katedra Inżynierii Systemów Sterowania Politechnika Gdańska Wydział Elektrotechniki i Automatyki Katedra Inżynierii Systemów Sterowania KOMPUTEROWE SYSTEMY STEROWANIA I WSPOMAGANIA DECYZJI Rozproszone programowanie produkcji z wykorzystaniem

Bardziej szczegółowo

Asynchroniczne statyczne układy sekwencyjne

Asynchroniczne statyczne układy sekwencyjne Asynchroniczne statyczne układy sekwencyjne Układem sekwencyjnym nazywany jest układ przełączający, posiadający przynajmniej jeden taki stan wejścia, któremu odpowiadają, zależnie od sygnałów wejściowych

Bardziej szczegółowo

Technika Cyfrowa 1 wykład 1: kody. Dr inż. Jacek Mazurkiewicz Katedra Informatyki Technicznej

Technika Cyfrowa 1 wykład 1: kody. Dr inż. Jacek Mazurkiewicz Katedra Informatyki Technicznej Technika Cyfrowa 1 wykład 1: kody Dr inż. Jacek Mazurkiewicz Katedra Informatyki Technicznej e-mail: Jacek.Mazurkiewicz@pwr.edu.pl Sprawy formalne konsultacje, p. 225 C-3: PN: 12:45-15:15, PT: 14:30-16:00

Bardziej szczegółowo

Układy programowalne. Wykład z ptc część 5

Układy programowalne. Wykład z ptc część 5 Układy programowalne Wykład z ptc część 5 Pamięci ROM Pamięci stałe typu ROM (Read only memory) umożliwiają jedynie odczytanie informacji zawartej w strukturze pamięci. Działanie: Y= X j *cs gdzie j=linia(a).

Bardziej szczegółowo

Układy asynchroniczne

Układy asynchroniczne Układy asynchroniczne Model układu sekwencyjnego Model układu asynchronicznego (synchronicznego) y 1 x n UK y m układ kombinacyjny Z clock t 1 q 1 k B x s tan stabilny s: δ(s,x) = s x blok pamięci jest

Bardziej szczegółowo

Algorytmy sztucznej inteligencji

Algorytmy sztucznej inteligencji www.math.uni.lodz.pl/ radmat Przeszukiwanie z ograniczeniami Zagadnienie przeszukiwania z ograniczeniami stanowi grupę problemów przeszukiwania w przestrzeni stanów, które składa się ze: 1 skończonego

Bardziej szczegółowo

Materiały pomocnicze do ćwiczeń z podstaw techniki cyfrowej (przygotował R.Walkowiak) Dla studiów niestacjonarnych rok AK 2017/18

Materiały pomocnicze do ćwiczeń z podstaw techniki cyfrowej (przygotował R.Walkowiak) Dla studiów niestacjonarnych rok AK 2017/18 Materiały pomocnicze do ćwiczeń z podstaw techniki cyfrowej (przygotował R.Walkowiak) Dla studiów niestacjonarnych rok AK 2017/18 ZADANIE 1 Komparator szeregowy 2 liczb Specyfikacja wymagań dla układu

Bardziej szczegółowo

Technika cyfrowa Synteza układów kombinacyjnych

Technika cyfrowa Synteza układów kombinacyjnych Sławomir Kulesza Technika cyfrowa Synteza układów kombinacyjnych Wykład dla studentów III roku Informatyki Wersja 2.0, 05/10/2011 Podział układów logicznych Opis funkcjonalny układów logicznych x 1 y 1

Bardziej szczegółowo

Układy kombinacyjne i sekwencyjne. Podczas ćwiczenia poruszane będą następujące zagadnienia:

Układy kombinacyjne i sekwencyjne. Podczas ćwiczenia poruszane będą następujące zagadnienia: Warszawa 207 Cel ćwiczenia rachunkowego Podczas ćwiczenia poruszane będą następujące zagadnienia: modelowanie i synteza kombinacyjnych układów przełączających; minimalizacja funkcji przełączającej; projektowanie

Bardziej szczegółowo

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

Podstawowe moduły układów cyfrowych układy sekwencyjne cz.2 Projektowanie automatów. Rafał Walkowiak Wersja /2015 Podstawowe moduły układów cyfrowych układy sekwencyjne cz.2 Projektowanie automatów synchronicznych Rafał Walkowiak Wersja.2 24/25 UK Funkcje wzbudzeń UK Funkcje wzbudzeń Pamieć Pamieć UK Funkcje wyjściowe

Bardziej szczegółowo

Klasyczne zagadnienie przydziału

Klasyczne zagadnienie przydziału Klasyczne zagadnienie przydziału Można wyodrębnić kilka grup problemów, w których zadaniem jest odpowiednie rozmieszczenie posiadanych zasobów. Najprostszy problem tej grupy nazywamy klasycznym zagadnieniem

Bardziej szczegółowo

Rozwiązanie Ad 1. Model zadania jest następujący:

Rozwiązanie Ad 1. Model zadania jest następujący: Przykład. Hodowca drobiu musi uzupełnić zawartość dwóch składników odżywczych (A i B) w produktach, które kupuje. Rozważa cztery mieszanki: M : M, M i M. Zawartość składników odżywczych w poszczególnych

Bardziej szczegółowo

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

Część 3. Układy sekwencyjne. Układy sekwencyjne i układy iteracyjne - grafy stanów TCiM Wydział EAIiIB Katedra EiASPE 1 Część 3 Układy sekwencyjne Układy sekwencyjne i układy iteracyjne - grafy stanów 18.11.2017 TCiM Wydział EAIiIB Katedra EiASPE 1 Układ cyfrowy - przypomnienie Podstawowe informacje x 1 x 2 Układ cyfrowy

Bardziej szczegółowo

TEMAT: PROJEKTOWANIE I BADANIE PRZERZUTNIKÓW BISTABILNYCH

TEMAT: PROJEKTOWANIE I BADANIE PRZERZUTNIKÓW BISTABILNYCH Praca laboratoryjna 2 TEMAT: PROJEKTOWANIE I BADANIE PRZERZUTNIKÓW BISTABILNYCH Cel pracy poznanie zasad funkcjonowania przerzutników różnych typów w oparciu o różne rozwiązania układowe. Poznanie sposobów

Bardziej szczegółowo

Programowalne układy logiczne

Programowalne układy logiczne Programowalne układy logiczne Układy synchroniczne Szymon Acedański Marcin Peczarski Instytut Informatyki Uniwersytetu Warszawskiego 26 października 2015 Co to jest układ sekwencyjny? W układzie sekwencyjnym,

Bardziej szczegółowo

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

Technika Cyfrowa 1 wykład 11: liczniki sekwencyjne układy przełączające Technika Cyfrowa 1 wykład 11: liczniki sekwencyjne układy przełączające Dr inż. Jacek Mazurkiewicz Katedra Informatyki Technicznej e-mail: Jacek.Mazurkiewicz@pwr.edu.pl Liczniki klasyfikacja Licznik asynchroniczny:

Bardziej szczegółowo

Synteza układów kombinacyjnych

Synteza układów kombinacyjnych Sławomir Kulesza Technika cyfrowa Synteza układów kombinacyjnych Wykład dla studentów III roku Informatyki Wersja 4.0, 23/10/2014 Bramki logiczne Bramki logiczne to podstawowe elementy logiczne realizujące

Bardziej szczegółowo

ARYTMETYKA BINARNA. Dziesiątkowy system pozycyjny nie jest jedynym sposobem kodowania liczb z jakim mamy na co dzień do czynienia.

ARYTMETYKA BINARNA. Dziesiątkowy system pozycyjny nie jest jedynym sposobem kodowania liczb z jakim mamy na co dzień do czynienia. ARYTMETYKA BINARNA ROZWINIĘCIE DWÓJKOWE Jednym z najlepiej znanych sposobów kodowania informacji zawartej w liczbach jest kodowanie w dziesiątkowym systemie pozycyjnym, w którym dla przedstawienia liczb

Bardziej szczegółowo

Architektura komputerów Wykład 2

Architektura komputerów Wykład 2 Architektura komputerów Wykład 2 Jan Kazimirski 1 Elementy techniki cyfrowej 2 Plan wykładu Algebra Boole'a Podstawowe układy cyfrowe bramki Układy kombinacyjne Układy sekwencyjne 3 Algebra Boole'a Stosowana

Bardziej szczegółowo

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

Podstawy Automatyki. Wykład 15 - Projektowanie układów asynchronicznych o programach liniowych. dr inż. Jakub Możaryn. Instytut Automatyki i Robotyki Wykład 15 - Projektowanie układów asynchronicznych o programach liniowych Instytut Automatyki i Robotyki Warszawa, 2015 Układy o programach liniowych - Przykład Zaprojektować procesowo-zależny układ sterowania

Bardziej szczegółowo

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

Podstawy Automatyki. Wykład 13 - Wprowadzenie do układów sekwencyjnych. dr inż. Jakub Możaryn. Warszawa, Instytut Automatyki i Robotyki Wykład 13 - Wprowadzenie do układów sekwencyjnych. Instytut Automatyki i Robotyki Warszawa, 2016 Pojęcia podstawowe Posłużmy się ponownie przykładem układu sterującego pracą siłowników, wymuszającego realizację

Bardziej szczegółowo

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

Wykład nr 1 Techniki Mikroprocesorowe. dr inż. Artur Cichowski Wykład nr 1 Techniki Mikroprocesorowe dr inż. Artur Cichowski ix jy i j {0,1} {0,1} Dla układów kombinacyjnych stan dowolnego wyjścia y i w danej chwili czasu zależy wyłącznie od aktualnej kombinacji stanów

Bardziej szczegółowo

Spis treści 1. Wstęp 2. Ćwiczenia laboratoryjne LPM

Spis treści 1. Wstęp 2. Ćwiczenia laboratoryjne LPM Spis treści 1. Wstęp... 9 2. Ćwiczenia laboratoryjne... 12 2.1. Środowisko projektowania Quartus II dla układów FPGA Altera... 12 2.1.1. Cel ćwiczenia... 12 2.1.2. Wprowadzenie... 12 2.1.3. Przebieg ćwiczenia...

Bardziej szczegółowo

UKŁADY MIKROPROGRAMOWALNE

UKŁADY MIKROPROGRAMOWALNE UKŁAD MIKROPROGRAMOWALNE Układy sterujące mogą pracować samodzielnie, jednakże w przypadku bardziej złożonych układów (zwanych zespołami funkcjonalnymi) układ sterujący jest tylko jednym z układów drugim

Bardziej szczegółowo

Reprezentacje grafów nieskierowanych Reprezentacje grafów skierowanych. Wykład 2. Reprezentacja komputerowa grafów

Reprezentacje grafów nieskierowanych Reprezentacje grafów skierowanych. Wykład 2. Reprezentacja komputerowa grafów Wykład 2. Reprezentacja komputerowa grafów 1 / 69 Macierz incydencji Niech graf G będzie grafem nieskierowanym bez pętli o n wierzchołkach (x 1, x 2,..., x n) i m krawędziach (e 1, e 2,..., e m). 2 / 69

Bardziej szczegółowo

Technika Cyfrowa 2 wykład 1: programowalne struktury logiczne - wprowadzenie

Technika Cyfrowa 2 wykład 1: programowalne struktury logiczne - wprowadzenie Technika Cyfrowa 2 wykład 1: programowalne struktury logiczne - wprowadzenie Dr inż. Jacek Mazurkiewicz Katedra Informatyki Technicznej e-mail: Jacek.Mazurkiewicz@pwr.edu.pl Sprawy formalne konsultacje,

Bardziej szczegółowo

Układy równań liniowych. Ax = b (1)

Układy równań liniowych. Ax = b (1) Układy równań liniowych Dany jest układ m równań z n niewiadomymi. Liczba równań m nie musi być równa liczbie niewiadomych n, tj. mn. a a... a b n n a a... a b n n... a a... a b m m mn n m

Bardziej szczegółowo

Politechnika Białostocka Wydział Elektryczny Katedra Automatyki i Elektroniki

Politechnika Białostocka Wydział Elektryczny Katedra Automatyki i Elektroniki Politechnika Białostocka Wydział Elektryczny Katedra Automatyki i Elektroniki ĆWICZENIE Nr 3 (4h) Konwersja i wyświetlania informacji binarnej w VHDL Instrukcja do zajęć laboratoryjnych z przedmiotu Synteza

Bardziej szczegółowo

Optymalizacja systemów

Optymalizacja systemów Optymalizacja systemów Laboratorium Zadanie nr 3 Sudoku autor: A. Gonczarek Cel zadania Celem zadania jest napisanie programu rozwiązującego Sudoku, formułując problem optymalizacji jako zadanie programowania

Bardziej szczegółowo

Metoda simpleks. Gliwice

Metoda simpleks. Gliwice Sprowadzenie modelu do postaci bazowej Sprowadzenie modelu do postaci bazowej Przykład 4 Model matematyczny z Przykładu 1 sprowadzić do postaci bazowej. FC: ( ) Z x, x = 6x + 5x MAX 1 2 1 2 O: WB: 1 2

Bardziej szczegółowo

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

Definicja układu kombinacyjnego była stosunkowo prosta -tabela prawdy. Opis układu sekwencyjnego jest zadaniem bardziej złożonym. 3.4. GRF UTOMTU, TBELE PRZEJŚĆ / WYJŚĆ Definicja układu kombinacyjnego była stosunkowo prosta -tabela prawdy. Opis układu sekwencyjnego jest zadaniem bardziej złożonym. Proste przypadki: Opis słowny, np.:

Bardziej szczegółowo

Synteza logiczna układu realizującego zespół funkcji przełączających z użyciem bramek XOR w strukturach CPLD

Synteza logiczna układu realizującego zespół funkcji przełączających z użyciem bramek XOR w strukturach CPLD BIULETYN WAT VOL. LVIII, NR 3, 29 Synteza logiczna układu realizującego zespół funkcji przełączających z użyciem bramek XOR w strukturach CPLD DARIUSZ KANIA 1, WALDEMAR GRABIEC 1 Politechnika Śląska, Wydział

Bardziej szczegółowo

Kolejny krok iteracji polega na tym, że przechodzimy do następnego wierzchołka, znajdującego się na jednej krawędzi z odnalezionym już punktem, w

Kolejny krok iteracji polega na tym, że przechodzimy do następnego wierzchołka, znajdującego się na jednej krawędzi z odnalezionym już punktem, w Metoda Simpleks Jak wiadomo, problem PL z dowolną liczbą zmiennych można rozwiązać wyznaczając wszystkie wierzchołkowe punkty wielościanu wypukłego, a następnie porównując wartości funkcji celu w tych

Bardziej szczegółowo

Definicja 2. Twierdzenie 1. Definicja 3

Definicja 2. Twierdzenie 1. Definicja 3 INSTYTUT CYBERNETYKI TECHNICZNEJ POLITECHNIKI WROCŁAWSKIEJ ZAKŁAD SZTUCZNEJ INTELIGENCJI I AUTOMATÓW Ćwiczenia laboratoryjne z Logiki Układów Cyfrowych ćwiczenie 205 temat: ZASTOSOWANIE JĘZYKA WYRAŻEŃ

Bardziej szczegółowo

Technika cyfrowa Układy arytmetyczne

Technika cyfrowa Układy arytmetyczne Sławomir Kulesza Technika cyfrowa Układy arytmetyczne Wykład dla studentów III roku Informatyki Wersja 1.0, 05/10/2010 Układy arytmetyczne UKŁADY ARYTMETYCZNE UKŁADY SUMUJĄCE i ODEJMUJĄCE UKŁADY MNOŻĄCE

Bardziej szczegółowo

Minimalizacja form boolowskich

Minimalizacja form boolowskich Sławomir Kulesza Technika cyfrowa Minimalizacja form boolowskich Wykład dla studentów III roku Informatyki Wersja 1.0, 05/10/2010 Minimalizacja form boolowskich Minimalizacja proces przekształcania form

Bardziej szczegółowo

LICZNIKI PODZIAŁ I PARAMETRY

LICZNIKI PODZIAŁ I PARAMETRY LICZNIKI PODZIAŁ I PARAMETRY Licznik jest układem służącym do zliczania impulsów zerojedynkowych oraz zapamiętywania ich liczby. Zależnie od liczby n przerzutników wchodzących w skład licznika pojemność

Bardziej szczegółowo

Rozdział 1 PROGRAMOWANIE LINIOWE

Rozdział 1 PROGRAMOWANIE LINIOWE Wprowadzenie do badań operacyjnych z komputerem Opisy programów, ćwiczenia komputerowe i zadania. T. Trzaskalik (red.) Rozdział 1 PROGRAMOWANIE LINIOWE 1.2 Ćwiczenia komputerowe Ćwiczenie 1.1 Wykorzystując

Bardziej szczegółowo

Projektowanie automatów z użyciem VHDL

Projektowanie automatów z użyciem VHDL Projektowanie automatów z użyciem VHDL struktura automatu i jego modelu w VHDL przerzutnik T jako automat przykłady automatów z wyjściami typu: Moore'a Mealy stanu kodowanie stanów automatu Wykorzystano

Bardziej szczegółowo

Programowanie liniowe

Programowanie liniowe Programowanie liniowe Mirosław Sobolewski Wydział Matematyki, Informatyki i Mechaniki UW wykład z algebry liniowej Warszawa, styczeń 2015 Mirosław Sobolewski (UW) Warszawa, 2015 1 / 16 Homo oeconomicus=

Bardziej szczegółowo

Elektronika i techniki mikroprocesorowe

Elektronika i techniki mikroprocesorowe Elektronika i techniki mikroprocesorowe Technika cyfrowa ZłoŜone one układy cyfrowe Katedra Energoelektroniki, Napędu Elektrycznego i Robotyki Wydział Elektryczny, ul. Krzywoustego 2 PLAN WYKŁADU idea

Bardziej szczegółowo

O MACIERZACH I UKŁADACH RÓWNAŃ

O MACIERZACH I UKŁADACH RÓWNAŃ O MACIERZACH I UKŁADACH RÓWNAŃ Problem Jak rozwiązać podany układ równań? 2x + 5y 8z = 8 4x + 3y z = 2x + 3y 5z = 7 x + 8y 7z = Definicja Równanie postaci a x + a 2 x 2 + + a n x n = b gdzie a, a 2, a

Bardziej szczegółowo

Optymalizacja systemów

Optymalizacja systemów Optymalizacja systemów Laboratorium Sudoku autor: A. Gonczarek Cel zadania Celem zadania jest napisanie programu rozwiązującego Sudoku, formułując problem optymalizacji jako zadanie programowania binarnego.

Bardziej szczegółowo

Układy logiczne układy cyfrowe

Układy logiczne układy cyfrowe Układy logiczne układy cyfrowe Jak projektować układy cyfrowe (systemy cyfrowe) Układy arytmetyki rozproszonej filtrów cyfrowych Układy kryptograficzne X Selektor ROM ROM AND Specjalizowane układy cyfrowe

Bardziej szczegółowo

Układy równań liniowych

Układy równań liniowych Układy równań liniowych ozważmy układ n równań liniowych o współczynnikach a ij z n niewiadomymi i : a + a +... + an n d a a an d a + a +... + a n n d a a a n d an + an +... + ann n d n an an a nn n d

Bardziej szczegółowo

Bezpieczeństwo informacji oparte o kryptografię kwantową

Bezpieczeństwo informacji oparte o kryptografię kwantową WYŻSZA SZKOŁA BIZNESU W DĄBROWIE GÓRNICZEJ WYDZIAŁ ZARZĄDZANIA INFORMATYKI I NAUK SPOŁECZNYCH Instrukcja do laboratorium z przedmiotu: Bezpieczeństwo informacji oparte o kryptografię kwantową Instrukcja

Bardziej szczegółowo