Metody syntezy i odwzorowania technologicznego automatów sekwencyjnych dla struktur programowalnych typu PAL

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

Download "Metody syntezy i odwzorowania technologicznego automatów sekwencyjnych dla struktur programowalnych typu PAL"

Transkrypt

1 Załącznik nr 2a Autoreferat Metody syntezy i odwzorowania technologicznego automatów sekwencyjnych dla struktur programowalnych typu Robert Czerwiński Gliwice 2017

2 1 1 Imię i nazwisko Robert Czerwiński 2 Posiadane dyplomy, stopnie naukowe Doktor nauk technicznych w dyscyplinie elektronika; obroniony z wyróżnieniem; Wydział Automatyki, Elektroniki i Informatyki Politechniki Śląskiej, 2006; Tytuł: Kodowanie stanów automatów sekwencyjnych dla matrycowych struktur programowalnych typu ; Promotor: dr hab. inż. Dariusz Kania. Magister inżynier elektronik; Wydział Automatyki, Elektroniki i Informatyki Politechniki Ślaskiej, 2001; Tytuł: Rozproszony system pomiaru temperatury z przesyłem informacji poprzez sieć energetyczną; Promotor: dr inż. Dariusz Kania. 3 Informacje o dotychczasowym zatrudnieniu w jednostkach naukowych 2006 do nadal: adiunkt, Instytut Elektroniki, Politechnika Śląska do 2006: doktorant, Instytut Elektroniki, Politechnika Śląska. 4 Wskazanie osiagnięcia wynikajacego z art. 16 ust. 2 ustawy z dnia 14 marca 2003 r. o stopniach naukowych i tytule naukowym oraz o stopniach i tytule w zakresie sztuki (Dz. U. nr 65, poz. 595 ze zm.) 4.1 Tytuł osiagnięcia naukowego Osiągnięcie naukowe stanowi cykl publikacji, powiązanych tematycznie, pod tytułem: Metody syntezy i odwzorowania technologicznego automatów sekwencyjnych dla struktur programowalnych typu. 4.2 Wykaz publikacji stanowiacych osiagnięcie naukowe [CK09b] R. Czerwinski, D. Kania, Synthesis of Finite State Machines for CPLDs, International Journal of Applied Mathematics and Computer Science, Vol. 19, No. 4, 2009, pp (Indeksowany w JCR; IF=0.684). [CK10] R. Czerwinski, D. Kania, A synthesis of high speed finite state machines, Bulletin of the Polish Academy of Sciences Technical Sciences, Vol. 58, No. 4, 2010, pp (Indeksowany w JCR; IF=0.945).

3 2 [CK12] R. Czerwinski, D. Kania, Area and speed oriented synthesis of FSMs for -based CPLDs, Microprocessors and Microsystems, Volume 36, Issue 1, February 2012, pp (Indeksowany w JCR; IF=0.549). [CK13] R. Czerwinski, D. Kania, Finite State Machine Logic Synthesis for Complex Programmable Logic Devices, Springer, Heidelberg, New York, Dortrecht, London, 2013 (Seria: Lecture Notes in Electrical Engineering vol. 231; ISBN: ; monografia indeksowana w WoS). [CK16] R. Czerwinski, D. Kania, State assignment and optimization of ultra high speed FSMs utilizing tri-state buffers, ACM Transactions on Design Automation of Electronic Systems, Volume 22, Issue 1, Article 3, December 2016, pp (Indeksowany w JCR; IF=0.820). [KMK + 09] D. Kania, A. Milik, J. Kulisz, A. Opara, R. Czerwiński, Logic synthesis dedicated for CPLD circuits, Electronics and Telecommunications Quarterly, Vol. 55, No. 2, 2009, pp [CK09a] R. Czerwinski, D. Kania, CPLD-oriented Synthesis of Finite State Machines, Proceedings of the Twelfth Euromicro Symposium on Digital System Design, DSD2009, IEEE Computer Society Press, Patras 2009, pp [CK09c] R. Czerwinski, J. Kulisz, State Machine description oriented towards effective usage of vendor-independent synthesis tools, IFAC Workshop on Programmable Devices and Embedded Systems 2009, PDeS 09, February 2009, pp [CK09d] R. Czerwiński, J. Kulisz, Modelowanie automatów synchronicznych w języku VHDL pod katem efektywnego wykorzystania niezależnych narzędzi syntezy, Elektronika Konstrukcje Technologie Zastosowania, nr 2/2009, ss [CK11] R. Czerwinski, D. Kania, State Minimization by means of Incompatibility Graph Coloring, Elektronika Konstrukcje Technologie Zastosowania, nr 3/2011, pp Omówienie celu naukowego prac i osiagniętych wyników wraz z omówieniem ich ewentualnego wykorzystania Problemy syntezy przeznaczonej dla struktur programowalnych typu Układy logiki programowalnej/rekonfigurowalnej, stanowią dziedzinę elektroniki dynamicznie rozwijaną. Oczekiwana współcześnie szybkość przetwarzania informacji cyfrowej uzasadnia, a wręcz wymusza, ciągły rozwój technologiczny w tym zakresie. Najlepiej zaprojektowane układy programowalne nie mają jednak racji bytu bez narzędzi umiejętnie wykorzystujących ich potencjał. Inżynier-projektant musi dokonać przekształcenia opisu funkcjonalnego do postaci implementacji sprzętowej. Ten proces jest zwany syntezą logiki 1. Synteza logiki jest etapem przejścia od opisu funkcjonalnego do strukturalnego na poziomie elementów (np. bramek). Jej celem jest ustalenie mikroskopowej struktury układu, dlatego odgrywa niebagatelną rolę dla ostatecznej realizacji sprzętowej. Przez pojęcie syntezy logiki 1 W polskiej literaturze powszechnie funkcjonuje pojęcie synteza logiczna. Niemniej wydaje się to być pojęciem nietrafnym zarówno z punktu widzenia tłumaczenia z języka angielskiego (ang. logic synthesis), jak też samej istoty tego procesu. W niniejszym autoreferacie będzie używane pojęcie synteza logiki.

4 3 czasem rozumie się właściwy proces syntezy połączony z optymalizacją i procesem odwzorowania technologicznego. Celem tak rozumianej syntezy logiki jest opracowanie układu o najlepszych parametrach w jakimś zakresie, na przykład: zmniejszenie powierzchni układu, zwiększenie szybkości działania projektowanego urządzenia, redukcja poboru mocy i poprawa testowalności układów. Odwzorowanie technologiczne służy przekształceniu uzyskanej struktury do formy wykorzystującej elementy technologii, w której dany układ jest implementowany. Reasumując, synteza logiki stanowi bezpośrednie powiązanie pomiędzy opisem funkcjonalnym, a odwzorowaniem technologicznym. Obecnie proces syntezy i odwzorowania jest przeprowadzany za pomocą automatycznych narzędzi komputerowych. Nie ulega jednak wątpliwości, że na obecnym etapie rozwoju narzędzi wspomagających proces syntezy, aby dobrze zaprojektować układ, wymagana jest duża wiedza projektanta pozwalająca na efektywne wykorzystanie zasobów struktury programowalnej. Powszechnie syntezę logiki i odwzorowanie technologiczne traktuje się jako oddzielne procesy. Efektywne wykorzystanie elementów struktury wymaga jednak uwzględnienia ich elementów już w procesie syntezy. Współcześnie bazę elementową stanowią głównie układy programowalne typu FPGA (ang. Field Programmable Gate Array), a w zastosowaniach niszowych lub uzupełniających układy CPLD (ang. Complex Programmable Logic Devices). Generalnie, struktura współczesnych układów programowalnych składa się z serii podstawowych komórek elastycznych w konfiguracji oraz matrycy połączeń. Elastyczność konfiguracji połączeń i struktury komórki umożliwia budowanie układów zarówno kombinacyjnych, jak i sekwencyjnych. Podstawowy element komórki (Rys. 1) układu CPLD stanowi struktura typu (ang. Programmable Array Logic), czyli struktura typu AND/OR z programowalną matrycą AND i stałą matrycą OR. To właśnie stała matryca OR stanowi kluczowy problem, utrudniający efektywne prowadzenie syntezy logiki. Stała, zwykle niewielka liczba bramek AND (k) dołączonych do sumy oraz brak możliwości współdzielenia bramek AND wprowadza istotne ograniczenia architektoniczne utrudniające efektywną realizację syntezowanych układów. Pierwszy problem jest częściowo rozwiązywany poprzez wbudowywanie do matrycy OR układu zwanego term/logic allocator, czyli układu, za pośrednictwem którego bramki AND sąsiadujących komórek można dystrybuować. Najczęściej term allocator umożliwia wykorzystywanie bramek AND w ramach pewnej ograniczonej liczby sąsiadujących komórek. W każdym razie, nie rozwiązuje globalnie problemu dostosowania liczby bramek do liczby implikantów implementowanej funkcji. k Logic Allocator D/T Q OE I/O CLK Matryca połączeń Rysunek 1: Uogólniona struktura komórki typu Wyjście bramki OR jest zwykle dołączone do bramki XOR, co umożliwia programowanie aktywności wyjścia. Ponadto, bramka XOR umożliwia minimalizację liczby iloczynów, za pomocą których jest implementowana funkcja (prawo de Morgana). Istotnym elementem struktur programowalnych jest przerzutnik, najczęściej typu D. Sygnał z wyjścia przerzutnika lub

5 4 z bramki XOR jest zwykle wyprowadzany na zewnątrz przez sterowany bufor trójstanowy, stwarzający możliwość elastycznego wykorzystania wyprowadzeń (we, wy, we/wy). Powszechnie znane metody syntezy układów sekwencyjnych prowadzą do realizacji w postaci struktur dwupoziomowych lub wielopoziomowych. Metody ukierunkowane na klasyczną realizację dwupoziomową mogą z powodzeniem być stosowane w przypadku realizacji układów w strukturach programowalnych wykorzystujących matryce typu PLA (ang. Programmable Logic Array; z programowalnymi matrycami AND i OR). Jeżeli chodzi o układy CPLD, minimalizacja liczby implikantów tylko pośrednio wpływa na minimalizację liczby wykorzystanych komórek. W przypadku układów kombinacyjnych, głównym etapem syntezy logiki przeznaczonej dla struktur matrycowych CPLD jest podział projektowanego układu na komórki typu, zapewniający efektywne wykorzystanie bramek AND matrycy. W układach sekwencyjnych występuje dodatkowy stopień swobody w postaci kodowania stanów. Istnieje wiele narzędzi wspomagających projektowanie układów sekwencyjnych. Niektóre z nich uważane są za optymalne [LN89, SSL + 92, VSV90], mimo iż, jak pokazały eksperymenty, nie prowadzą do optymalnych rozwiązań. Ograniczona liczba bramek AND pojedynczej komórki typu najczęściej nie jest brana pod uwagę w procesie kodowania stanów. Takie podejście prowadzi często do nieefektywnego wykorzystania zasobów układu CPLD. Stało się to źródłem inspiracji do poszukiwania metod kodowania stanów uwzględniających ograniczenia układów matrycowych z komórkami typu [CK05, CKK06], efektem czego było przygotowanie rozprawy doktorskiej [Cze06]. Kodowanie stanów wewnętrznych automatu sekwencyjnego stanowi początkowy, niezwykle istotny, ale tylko jeden z wielu elementów syntezy. Kodowanie stanów poprzedza przeprowadzana zwykle optymalizacja funkcjonalna, której kluczowym elementem jest minimalizacja liczby stanów symbolicznych automatu. Nie bez znaczenia jest również kodowanie stanów wejściowych i wyjściowych. Należy jednak podkreślić, że specyfikacja automatu, w której stany wejściowe i wyjściowe są w postaci symbolicznej, nie jest często stosowana. Reprezentacja automatu (równania, tablica pla, etc.) jest zwykle nadmiarowa i wymaga redukcji. Zwykle przeprowadzana jest dwupoziomowa minimalizacja za pomocą programu EPRESSO-II [BHMSV84]. Odwzorowanie technologiczne umożliwia dopasowanie struktury projektowanego układu do struktury układu programowalnego. Na przykład, zbiór implikantów otrzymanych po dwupoziomowej minimalizacji jest dopasowywany do komórek typu z ograniczoną liczbą bramek AND (bez możliwości ich współdzielenia). Kompleksowe podejście do syntezy automatów sekwencyjnych stało się tematem badań po obronie doktoratu. Cykl powiązanych tematycznie publikacji, stanowiący osiągnięcie naukowe pod tytułem: Metody syntezy i odwzorowania technologicznego automatów sekwencyjnych dla struktur programowalnych typu, skupia się na przedstawieniu efektów prac nad syntezą automatów sekwencyjnych, uzależnioną od technologii implementacji, oraz odwzorowaniu technologicznym układu sekwencyjnego w strukturze układu logiki programowalnej. Proponowane podejście przeprowadzania syntezy logiki zależnej od technologi stanowi nowatorskie podejście do syntezy układów sekwencyjnych, wprowadzające nową jakość związaną z wprowadzeniem elementów odwzorowania technologicznego we wczesne etapy syntezy. Metody kodowania stanów, opracowane uprzednio w ramach prac nad doktoratem [Cze06], zostały włączone w zaproponowane kompleksowe strategie. W niniejszym autoreferacie zawarto wyniki osiągnięcia naukowego z możliwie skrótowym przedstawieniem podstaw teoretycznych i przeglądu literatury. Definicje Istota przedmiotowego osiągnięcia naukowego będzie reprezentowana między innymi graficznie z użyciem symboli przedstawionych na Rys. 2.

6 5 a) b) c) d) k-and k-and OE k-and k-and k-and Rysunek 2: Symbole komórki typu : a) typu kombinacyjnego, b) w wyjściem przerzutnikowym, c) z wyjściem trójstanowym sterowanym przez bramkę AND, d) z aktywnością wyjścia w stanie wysokim i niskim Funkcja f może być zrealizowana za pomocą komórki typu o k bramkach AND jeżeli liczba implikantów funkcji nie przekracza liczby k. W przeciwnym przypadku niezbędna jest ekspansja liczby bramek AND. Możliwa jest ona dzięki wbudowanemu blokowi alokacji iloczynów, ale wiąże się z licznymi ograniczeniami i z natury rzeczy prowadzi do rozwiązań nieoptymalnych pod względem właściwości dynamicznych. Innym, elastycznym sposobem ekspansji jest wykonanie sprzężenia zwrotnego do matrycy połączeń i poprzez to uzyskanie struktury kaskadowej komórek. Takie rozwiązanie jest obciążone wadą polegającą na uzyskaniu struktury o zwiększonej liczbie warstw, co redukuje szybkość działania układu. Można wyróżnić dwie formy ekspansji liczby bramek AND: kaskadowo-szeregową i kaskadowo-równoległą (Rys. 3). a) k-and b) k-and k-and k-and k-and k-and k-and k-and Rysunek 3: Ekspansja liczby iloczynów: a) kaskadowo-szeregowa, b) kaskadowo-równoległa Niech σ f będzie liczbą komórek typu niezbędnych do zrealizowania funkcji f. Niech ξ f będzie liczbą warstw w najdłuższej ścieżce od wejść do wyjść kaskadowo połączonych komórek typu w układzie realizującym funkcję f. Automat sekwencyjny (FSM 2, ang. Finite State Machine) jest zdefiniowany za pomocą: zbioru wektorów wejściowych X, zbioru wektorów wyjściowych Y, zbioru stanów S, funkcji przejść δ i funkcji wyjść λ. Struktura układu sekwencyjnego z blokiem przejść i wyjść jest przedstawiona na Rys. 4. Stany (wewnętrzne) automatu są najczęściej opisane symbolicznie, a sam automat może być zdefiniowany w postaci grafu przejść-wyjść lub tablicy przejść-wyjść opisanej w formacie kiss, w której poszczególne wiersze tworzą implikanty symboliczne przedstawione w układzie: wektor wejściowy, stan aktualny, stan następny, wektor wyjściowy. Celem kodowania stanów jest przyporządkowanie każdemu stanowi unikalnego wektora binarnego. Wektor wejściowy wraz 2 W literaturze anglojęzycznej poprzez FSM rozumie się model matematyczny. W polskojęzycznej literaturze najczęściej automat (model matematyczny) jest również synonimem układu sekwencyjnego.

7 6 X d S + Reg S l Y Clk Rysunek 4: Struktura układu sekwencyjnego ze stanem aktualnym tworzą część wejściową implikantu (format pla), a zakodowany stan następny z wektorem wyjściowym tworzą cześć wyjściową implikantu. Synteza i odwzorowanie technologiczne automatów ukierunkowane na optymalizację powierzchni Opracowana strategia syntezy automatów sekwencyjnych ukierunkowana na optymalizację powierzchni [CK09a, CK09b] zasadza się na kodowaniu stanów wykorzystującym elementy symbolicznej minimalizacji ukierunkowanej na proces efektywnego odwzorowania technologicznego uzyskiwanych wyrażeń w komórkach typu. Problem kodowania stanów polega na tym, że kodowanie oddziałuje zarówno na część wejściową, jak i wyjściową wielowyjściowych implikantów, co istotnie wpływa na wynik dwupoziomowej minimalizacji prowadzonej po kodowaniu stanów. Okazuje się, że wyniki minimalizacji można przewidywać na etapie kodowania stanów. Odpowiednie warunki, dzięki którym implikanty podlegają minimalizacji można zauważyć przed kodowaniem stanów (Przykład 1; pierwotne warunki sklejeń) lub powstają w trakcie kodowania stanów (Przykład 2; wtórne warunki sklejeń) [Cze06]. Przykład 1. Dwa implikanty symboliczne, przedstawione na Rys. 5 podlegają minimalizacji dwupoziomowej po kodowaniu stanów pod warunkiem, że wektory przyporządkowane stanom s1 i s2 będą różniły się na jednej pozycji. Uzyskane w ten sposób dwa wielowyjściowe implikanty zostaną pokryte jednym s1 s3 1 0 s2 s Kodowanie s1-11 s2-10 s Minimalizacja Rysunek 5: Sposób powstawania warunków minimalizacji implikantów na podstawie tablicy przejść-wyjść Przykład 2. Na Rys. 6 są przedstawione trzy implikanty symboliczne, które nie podlegają sklejenu zgodnie Przykładem 1. Część wyjściową tworzą trzy różne stany. Niemniej, na etapie kodowania stanów, po dokonaniu podziału implikantów, okazuje się, że każda z dwóch par implikantów może zostać pokryta jednym implikantem. Dwupoziomowa minimalizacja prowadzona metodą ESPRESSO-II [BHMSV84] nie uwzględnia ograniczonej liczby bramek AND zawartych w strukturze komórki typu. Implementacja

8 s1 s s3 s s3 s Kodowanie s1-10 s2-11 s3-00 s Podział impl Minimalizacja Rysunek 6: Sposób powstawania warunków minimalizacji implikantów w trakcie kodowania stanów za pomocą komórek typu uniemożliwia współdzielenie bramek AND przez bloki realizujące poszczególne funkcje. W przypadku układów, których komórkę tworzy struktura typu, opłaca się natomiast wyszukiwać wspólnych komórek, które można wykorzystać w blokach realizujących poszczególne funkcje (Przykład 3). f 1= a b c + a b c + a b c d + a b c d f = a b c + a b d + a c d + b c d 0 a b c a b c a b c d a b c d f 1 a b c a b d a c d b c d f 0 Rysunek 7: Klasyczna realizacja przykładowych funkcji za pomocą komórek typu Przykład 3. Rozważmy realizację dwóch funkcji f 1 = āb c+ā bc+a b c d +abcd oraz f 0 = āb c+ a b d +acd + bcd za pomocą komórek typu zawierających po trzy bramki AND każda (k = 3). Klasyczna realizacja jest przedstawiona na Rys. 7. Okazuje się, że możliwe jest wyszukanie wspólnych implikantów w taki sposób, by zrealizować je za pomocą współdzielonej komórki typu, co zostało pokazane na Rys. 8. Implementacja wymaga użycia jednej komórki mniej w stosunku do realizacji klasycznej. z = a b c + a b c d + a b c d a b c a b c d z a b c d f 1 = z + a b c d + a b c d f = z + a c d 0 a b c d a b c d a c d f 0 f 1 Rysunek 8: Implementacja przykładowych funkcji po wyszukaniu wspólnych zasobów Znana jest metoda wyszukiwania wspólnych bloków kombinacyjnych realizowana na podstawie analizy grafu wyjść [Kan04]. Okazuje się, że możliwe jest ukierunkowanie procesu kodowania stanów na efektywne wykorzystywanie wspólnych zasobów. Metoda kodowania stanów ukierunkowana na efektywne odwzorowanie automatów w komórkach typu może być realizowana poprzez odpowiednie sortowanie symbolicznych stanów. Okazuje się, że w pierwszej

9 8 kolejności powinny być analizowane stany o najwyższej liczbie przejść. Prowadzi to do rozwiązań, w których poszczególne funkcje zawierają duże grupy implikantów. Mogą być one realizowane we współdzielonych blokach, które wykorzystują stosunkowo niewiele linii iloczynowych, potrzebnych do realizacji sprzężeń zwrotnych. W wyniku prac opracowano sposób kodowania stanów wewnętrznych prowadzący do efektywnego wyszukiwania wspólnych zasobów, przy jednoczesnym, możliwie najlepszym, dopasowaniu do liczby iloczynów komórki oraz z uwzględnieniem efektów dwupoziomowej minimalizacji (Przykład 4). Istotny element przedstawionego sposobu stanowi procedura zamiany słów kodowych. Przykład 4. Rozważmy przykład wymiany wektorów kodowych przykładowego automatu oraz realizację w strukturze z komórkami typu k = 3. Przyjmijmy, że do stanu s1 jest pięć przejść i s1 ma przyporządkowany wektor 001, do stanu s2 są trzy przejścia i s2 ma przyporządkowany wektor 010, do stanów s3 i s4 są po dwa przejścia i stany mają odpowiednio przyporządkowane wektory 100 oraz 110. Oznacza to, że dla każdej jedynki zawartej w przyporządkowanym wektorze przypadnie liczba implikantów równa liczbie przejść do danego stanu, co odzwierciedla fragment pliku pla przedstawiony na Rys. 9a wraz z uproszczoną formą grafu wyjść [Kan04] zastosowaną dla bloku przejść automatu, przy czym µ ( y ) jest liczbą elementów 1 zawartych w wektorze, zaś wierzchołki są skojarzone z liczbą identycznych wektorów stanu (wielowyjściowych implikantów). Liczba implikantów poszczególnych składowych funkcji przejść odpowiada sumie wyróżników poszczególnych węzłów stanowiących drogę od liścia do korzenia grafu. W grafie na Rys. 9a zostały zaznaczone również liczby komórek poszczególnych składowych funkcji przejść. Klasyczna implementacja automatu wymaga użycia sześciu komórek k = 3 (Rys. 9b), przy czym realizacja za pomocą współdzielonych komórek nie stwarza możliwości minimalizacji liczby użytych komórek (Rys. 9c). W jednym i drugim przypadku należy użyć sześciu komórek w celu implementacji funkcji przejść automatu. Rozważmy zamianę wektorów przyporządkowanych stanom s2 i s4. Implementacja wymaga wówczas użycia sześciu komórek (Rys. 10a), co w przypadku klasycznej implementacji również nie stwarza korzyści, ale zamiana umożliwia realizację za pomocą współdzielonych komórek, co prowadzi do użycia tylko sześciu komórek (Rys. 10c) Opracowana strategia aocs 3 (ang. area oriented complex strategy) syntezy i odwzorowania technologicznego automatów ukierunkowana na optymalizację powierzchni umożliwia optymalizację struktury bloku przejść i bloku wyść Rys. 11. Algorytm kodowania stanów mb (ang. minimization of the number of blocks), wymiany słów kodowych ec (ang. exchange of codes) oraz optymalizacji ao (ang. area optimization based on graphs of outputs) wchodzą w skład strategii aocs (Algorytm 1). Algorytm 1. (aocs area oriented complex strategy) 1. Kodowanie stanów mb. 2. ESPRESSO-Dso oraz analiza pliku wynikowego pla. 3. Optymalizacja za pomocą grafu wyjść ao oraz analiza pliku wynikowego pla. 4. Wymiana słów kodowych ec. 5. Jeżeli nastąpiła wymiana wektorów kodowych, to: 3 Na różnych etapach opracowywania poszczególnych algorytmów i strategii, ich formalne nazwy i akronimy były różne, co stanowi pewną trudność jednoznacznego odniesienia się do nich w niniejszym autoreferacie. Przyjęta została zasada oznaczania algorytmów i strategii zgodnie z ich prezentacją w monografii [CK13], która stanowi kompleksowe opracowanie.

10 9 a) (...).ob 0 (...) i1 001 #do st. s1 i2 001 #do st. s1 i3 001 #do st. s1 i4 001 #do st. s1 i5 001 #do st. s1 i6 010 #do st. s2 i7 010 #do st. s2 i8 010 #do st. s2 i9 100 #do st. s3 i #do st. s3 i #do st. s4 i #do st. s4.e b) y y y 5 5 y y y l. impl. l. kom. dla k=3 c) 1 y y y Rysunek 9: Sposób reprezentacji funkcji przejść za pomocą grafu wyjść wraz ze sposobem implementacji automatu: a) fragment pliku pla wraz z uproszczonym grafem wyjść, b) po kodowaniu stanów, c) po procedurze wyszukania wspólnych komórek

11 10 a) y y y b) 1 y y y Rysunek 10: Sposób zamiany wektorów kodowych wraz z implementacją: a) po procedurze zamiany wektorów kodowych, b) po procedurze zamiany wektorów kodowych i wyszukaniu wspólnych komórek X S + S Y Clk Rysunek 11: Struktura automatu uzyskanego po zastosowaniu strategii aocs

12 11 a) ESPRESSO, b) optymalizacja za pomocą grafu wyjść ao, analiza pliku wynikowego pla. 6. Wybór najlepszej metody implementacji bloku przejść oraz bloku wyjść spośród (2, 3, 5). 7. Koniec. Synteza i odzwierciedlenie technologiczne automatów ukierunkowane na optymalizację szybkości działania Optymalizacja szybkości działania układu sekwencyjnego [CK10] jest celem drugiej strategii stanowiącej osiągnięcie naukowe. Wykorzystanie buforów trójstanowych wydaje się być w tej mierze kluczowe, ponieważ może stanowić metodę ekspansji, która nie prowadzi do zwiększenia liczby warstw (Przykład 5). Idea wykorzystania buforów trójstanowych w syntezie automatów sekwencyjnych jest efektem doświadczeń prowadzonych w zespole zajmującym się syntezą układów kombinacyjnych [KMK + 09]. Przykład 5. Rozważmy sposób realizacji funkcji przedstawionej w Przykładzie 3 za pomocą komórek trój-iloczynowych (k = 3) z buforami trójstanowymi. Układ kombinacyjny może być zrealizowany za pomocą czterech komórek po dwie dla każdej funkcji z tym, że realizacja pozostaje jednowarstwowa. a b c b c f 1= a (b c + b c) + a ( b c d + b c d) f = a (b c + b c d) + a ( b c d + b c d) 0 OE f 1 a b c b c d OE f 0 a a b c d b c d OE b c d b c d OE Rysunek 12: Sposób realizacji przykładowej funkcji z wykorzystaniem buforów trójstanowych Metoda ekspansji bazująca na wykorzystaniu iloczynów trójstanowych opiera się na twierdzeniu Shannon a, w którym funkcja f (i n,...,i 2,i 1 ) może być rozwinięta do postaci (1). f (i n,...,i 2,i 1 ) = i 1 f (i n,...,i 2,1) + i 1 f (i n,...,i 2,0) = i 1 f i1 + i 1 f i 1 (1) Realizacja ekspansji liczby bramek AND za pomocą buforów trójstanowych jest możliwa ponieważ parametry czasowe buforów wytwarzanych w jednym układzie scalonym są prawie identyczne. Sposób wyszukiwania odpowiedniego rozwinięcia Shannon a został przedstawiony między innymi w pracy [Kan04]. W przypadku realizacji automatu sekwencyjnego kluczowa jest odpowiednia metoda kodowania stanów. Podobnie jak w przypadku kodowania ukierunkowanego na optymalizację powierzchni układu, jego istotę stanowi odpowiedni dobór słów kodowych prowadzony równocześnie z analizą pierwotnych i wtórnych warunków sklejeń, co umożliwia na etapie kodowania

13 12 uwzględnianie efektów dwupoziomowej minimalizacji. Niemniej, sposób kodowania ukierunkowany na optymalizację szybkości znacząco różni się od metody ukierunkowanej na optymalizację powierzchni (Przykład 6). Przykład 6. Rozważmy sposób kodowania stanów automatu o czterech stanach takich, że liczba przejść do poszczególnych stanów jest następująca: 5 do stanu s1, 3 do stanu s2, 3 do stanu s3 oraz 1 do stanu s4. Minimalna liczba bitów wektorów kodowych wynosi 2. Przy założeniu, że dwupoziomowa minimalizacja nie przyniesie żadnych efektów, to implementacja funkcji przejść w układzie z komórkami zawierającymi trzy bramki AND każda (k = 3) będzie wymagała użycia 4 komórek (Rys. 13a). Inaczej sprawa ma się w przypadku użycia dodatkowego bitu w sytuacji, gdy w trakcie kodowania okazuje się, że ekspansja liczby bramek AND prowadzi do zwiększenia liczby warstw. Możliwe jest jednak zastosowanie innego kodowania, które poprzez wydłużenie słowa kodowego o jeden bit, nie prowadzi do ekspansji liczby warstw. Sytuację taką przedstawia Rys. 13b. a) 1 y y y 2 warstwy b) y y y 1 warstwa Rysunek 13: Sposób doboru słów kodowych ukierunkowany na minimalizację liczby warstw Wydłużenie długości słowa kodowego przedstawione w Przykładzie 6 doprowadziło nie tylko do minimalizacji liczby warstw, ale również do ograniczenia liczby bloków logicznych. Niestety tego typu podwójna korzyść nie występuje zbyt często. Algorytm kodowania stanów ukierunkowany na minimalizację liczby warstw bloku przejść ml (ang. minimization of logic levels) wraz z algorytmem optymalizacji wykorzystującym bufory trójstanowe so (ang. technology-dependent speed optimization) stanowią prostą strategię syntezy automatów ukierunkowaną na optymalizację szybkości socs (ang. speed oriented complex strategy) Algorytm 2. Algorytm 2. (socs speed oriented complex strategy) 1. Kodowanie stanów ukierunkowane na minimalizację liczby warstw ml. 2. Optymalizacja bloku wyjść ukierunkowana na wykorzystanie buforów trójstanowych so.

14 13 Dzięki zastosowaniu strategii socs, klasyczna struktura automatu, przedstawiona na Rys. 14, została zachowana. X S + Reg S Y Clk Rysunek 14: Struktura automatu po zastosowaniu strategii socs Synteza i odwzorowanie technologiczne ultra-szybkich automatów Prace związane z syntezą i odwzorowaniem technologicznym automatów sekwencyjnych ukierunkowane na optymalizację szybkości działania doprowadziły do opracowania strategii syntezy ultra-szybkich automatów wykorzystujących bufory trójstanowe [CK16]. Istnieje możliwość zastosowania algorytmu so dla bloku przejść i uzyskania struktury przedstawionej na Rys. 15. X S + Reg Clk S Y Rysunek 15: Struktura automatu po zastosowaniu optymalizacji so dla bloku przejść i wyjść Można naturalnie pójść krok dalej i próbować wyeliminować blok wyjść, co jest przedstawione na Rys. 16, chociaż nie jest to całkiem oczywiste z dwóch powodów. Po pierwsze należy usunąć blok wyjść. Jest to możliwe po zastosowaniu algorytmu kodowania stanów za pomocą wektorów wyjściowych [Cze06]. Blok przejść realizuje w tym przypadku również funkcję wyjść. Drugi problem jest typu strukturalnego. Typowa komórka typu zawiera przerzutnik i bufor X S + Reg S=Y Clk Rysunek 16: Struktura ultra-szybkiego automatu trójstanowy umieszczony na wyjściu przerzutnika. Sterowanie buforem trójstanowym odbywa

15 14 się jednak z pominięciem przerzutnika, co po wykonaniu sprzężenia zwrotnego z wyjścia na matrycę połączeń spowoduje uzyskanie tzw. pętli kombinacyjnej, w efekcie czego mogą pojawić się ciągłe zmiany na wyjściu układu (Rys. 17). Należałoby zatem umieścić bufory trójstanowe w ta- D Q D Q CLK Rysunek 17: Pętla kombinacyjna w ultra-szybkim automacie ki sposób, by były dołączone do wejścia przerzutnika (Rys. 18). Układy programowalne zwykle nie umożliwiają wykonania takiej konfiguracji. Niezbędne jest zatem połączenie buforów trójstanowych i wykonanie sprzężenia zwrotnego na zewnątrz układu programowalnego na płycie PCB. Wyniki przeprowadzonych eksperymentów potwierdziły skuteczność takiego rozwiązania, jednak synteza automatyczna musi być wspierana przez inżyniera-projektanta. Strategia syntezy ultra-szybkich automatów sekwencyjnych ufcs (ang. ultra fast complex strategy) wykorzystuje metodę kodowania za pomocą wektorów wyjściowych ov (ang. output vectors) oraz algorytm optymalizacji wykorzystujący bufory trójstanowe so. Algorytm 3. (ufcs ultra fast FSMs complex strategy) 1. Konwersja automatu Mealy ego do Moore a. 2. Kodowanie stanów z wykorzystaniem wektorów wyjściowych ov. 3. Usunięcie funkcji wyjść. 4. Optymalizacja bloku wyjść ukierunkowana na wykorzystanie buforów trójstanowych so. Warto zauważyć, że opracowana metoda syntezy ultra-szybkich automatów, możliwa do wykorzystania w układach programowalnych, świetnie nadaje się do realizacji układów w technologii ASIC/ASSP. Kompleksowa strategia syntezy i odwzorowania technologicznego automatów sekwencyjnych Strategie syntezy i odwzorowania technologicznego, ukierunkowane na optymalizację powierzchni i szybkości działania układu, znalazły swoje odzwierciedlenie w opracowaniu kompleksowej

16 15 D Q CLK Rysunek 18: Poprawna struktura ultra-szybkiego automatu sekwencyjnego strategii syntezy automatów [CK12]. Prace nad syntezą ultra-szybkich automatów zaowocowały dalszym rozwojem i rozszerzeniem kompleksowej strategii do postaci prezentowanej w monografii [CK13] Rys. 19. Opis funkcjonalny FSM Optymalizacja powierzchni Kodowanie stanów minimalizacja liczby komórek Kodowanie stanów minimalizacja liczby warstw Optymalizacja szybkości Kodowanie stanów wektorami wyjściowymi Optymalizacja wielopoziomowa Wymiana kodów Optymalizacja bloku przejść* Dwupoziomowa optymalizacja bloku wyjść** Optymalizacja dwupoziomowa ** * bazująca na grafach wyjść ** bazująca na wykorzystaniu buforów trójstanowych Plik wynikowy (opis VHDL) Rysunek 19: Kompleksowa strategia syntezy automatów sekwencyjnych dla układów programowalnych typu Dość istotnym aspektem prac nad syntezą była możliwość natychmiastowego zastosowania praktycznego efektów prac. Banalne, acz prawdziwe, jest stwierdzenie, że prace w sferze teore-

17 16 tycznej przyczyniają się do rozwoju światowej nauki. W tym przypadku nawet nie chodziło o to, że prowadzone badania pozostawałyby w sferze teoretycznej, ponieważ zastosować opracowane algorytmy mogłyby praktycznie duże firmy oferujące narzędzia komercyjne. Etap implementacji prowadzony jest zawsze w narzędziach firmowych, bo producenci nie ujawniają formatu plików konfiguracyjnych chroniąc swoje interesy. Potencjalnie najlepszymi odbiorcami projektowanych algorytmów są zatem firmy produkujące układy i narzędzia do ich wykorzystania (Altera, Quartus, Lattice, Cypress, Atmel, etc.). Niemniej, na rynku istnieje wiele firm oferujących komercyjne narzędzia syntezy, takie jak: Cadence, Mentor Graphics, Synopsys, Synplicity, etc. Narzędzia te umożliwiają prowadzenie syntezy, zaś implementacja następuje w narzędziach oferowanych przez firmy produkujące układy PLD. Pliki wymiany są najczęściej na poziomie tzw. netlisty. Jest to format nie do zaakceptowania dla małych zespołów naukowych ze względu na zbyt duży nakład pracy. Wygodną formą opisu wynikowego, ale wymagającą mniej doświadczenia i pracy niż netlista okazał się być opis w języku opisu sprzętu. Dość istotna jest jednak forma tego opisu, a rozwiązanie tego problemu okazało się być nietrywialnym. Przeprowadzenie wielu eksperymentów i badań związanych z syntezą i implementacją w narzędziach komercyjnych umożliwiło zaproponowanie modelu pliku wynikowego w języku VHDL w formie określanej jako model funkcyjny [CK09c, CK09d, CK13]. Jest to pewne połączenie modelu strukturalnego oraz równań boolowskich, przy czym automat jako całość jest opisywany strukturalnie, zaś poszczególne jego komponenty są opisywane za pomocą równań, przy czym nie są to funkcje wzbudzeń przerzutników. Wygenerowanie pliku wynikowego jest niejako etapem końcowym syntezy automatu. Z drugiej strony tego procesu jest zwykle minimalizacja stanów symbolicznych automatu. Znanych jest wiele dokładnych algorytmów minimalizacji. Bardzo często problemem jest ich złożoność obliczeniowa. Okazuje się jednak, że możliwe jest opracowanie algorytmu minimalizacji bazującego na metodzie kolorowania grafu niezgodności stanów [CK11, CK13]. Opis automatu przedstawiany jest w formie tabeli przejść-wyjść, transponowanej w stosunku do wersji tradycyjnej. Wiersze zatem odpowiadają poszczególnym wejściom automatu, zaś kolumny stanom aktualnym. Zawartość tablicy odpowiada przejściom do odpowiedniego stanu. Tabele są dzielone dla poszczególnych wyjść. Tak przygotowane tabele umożliwiają utworzenie grafu niezgodności kolumn, przy czym kolorowanie polega na odpowiednim doborze wierzchołków i przyporządkowanie im stosownych kolorów, zaś wierzchołkom połączonym krawędzią przyporządkowuje się kolor zabroniony. Dzięki zastosowaniu prostego algorytmu kolorowania wierzchołków grafu niezgodności, algorytm okazuje się być bardzo szybki. Należy jednak wyraźnie podkreślić, że metoda nie prowadzi do uzyskania optymalnych wyników, ale może stanowić metodę szybkiej, wstępnej redukcji liczby stanów. Wyniki eksperymentów W celu uzyskania informacji na temat efektywności metod, zostało przeprowadzonych wiele eksperymentów z wykorzystaniem popularnego zbioru automatów testowych LGSynth91 [MCN91]. Uzyskane wyniki zostały porównane z powszechnie uznanymi narzędziami akademickimi wchodzącymi w skład narzędzia SIS [SSL + 92], to jest z: NOVA [VSV90] i JEDI [LN89]. Zestawienie tysięcy wyników w tabelach jest trudne w analizie, więc najczęściej oprócz surowych wyników, dane zostały przedstawione analitycznie w postaci wykresów słupkowych. Wskaźnikiem, za pomocą którego zdecydowano się dokonać porównania analitycznego jest tzw. uzysk Uσ f, definiowany jako: U σ f = ( σ f ) A ( σ f ) M ( σ f ) A 100% (2)

18 17 przy czym Uσ f jest uzyskiem liczby komórek, zaś definiowany analogicznie Uξ f jest uzyskiem liczby warstw logicznych. Uzysk jest niczym innym jak odniesieniem uśrednionej sumy wyników dla wszystkich automatów i wszystkich metod pomniejszonych o sumę wyników dla konkretnej metody, zaś uzyskana różnica jest odniesiona do sumy wyników dla wszystkich automatów i wszystkich metod. Uzysk powinien być zatem interpretowany jako procentowa wartość, o którą dana metoda jest lepsza (dodatnie wartości) lub gorsza (ujemne wartości) niż średnia uzyskana dla wszystkich metod. Miara w postaci uzysku była uprzednio wykorzystywana w doktoracie [Cze06], ale sprawdziła się przypadku publikacji strategii syntezy i odwzorowania technologicznego automatów sekwencyjnych. Uzysk liczby komórek U σδ+λ oraz liczby warstw U ξδ i U ξλ dla algorytmu ukierunkowanego na minimalizację liczby komórek jest przedstawiony na Rys. 20. Porównanie obejmuje algorytm kodowania stanów mb ukierunkowany na minimalizację liczby komórek [Cze06]. Okazuje się, że uzysk liczby komórek U σδ+λ dla algorytmu mb jest mniejszy niż dla metod NOVA i JEDI. Zastosowanie algorytmu kompleksowej strategii ukierunkowanej na minimalizację liczby komórek aocs znacząco poprawia wyniki syntezy, zwłaszcza dla komórek o niskiej liczbie iloczynów k = 3..5 (Rys. 20a). Niemniej uzyskana redukcja odbywa się kosztem zwiększenia liczby warstw U ξδ i U ξλ (Rys. 20b i c). Uzysk liczby komórek U σδ+λ oraz liczby warstw U ξδ i U ξλ dla strategii ukierunkowanej na optymalizację szybkości socs jest przedstawiony na Rys. 21. Opracowany w ramach realizacji pracy doktorskiej algorytm ml [Cze06] prezentuje się znacząco lepiej niż algorytm mb. Uzysk liczby warstw U ξδ (Rys. 21b) bloku przejść automatu sekwencyjnego wynosi prawie 15% dla komórek małych (k = {3,4}) oraz około 10% dla k = 5 czy k = 9. Gorsze rezultaty można zaobserwować dla uzysku liczby warstw U ξλ. Jakkolwiek zastosowanie strategii ukierunkowanej na optymalizację szybkości socs znacząco poprawia rezultaty dla bloku wyjść (Rys. 21c). W prawie wszystkich eksperymentach uzyskane zostały struktury jednopoziomowe. W trakcie wykonywania kilkuset eksperymentów tylko blok wyjść automatu testowego s420 dla k = 3 nie zostal zoptymalizowany do jednej warstwy. Zastosowanie strategii ukierunkowanej na optymalizację szybkości prowadzi do użycia nadmiarowej, z punktu widzenia średniej, liczby komórek (Rys. 21a). Uzysk liczby komórek U σδ+λ i warstw U ξδ oraz U ξλ dla strategii ultra-szybkich automatów jest przedstawiony na Rys. 22. Eksperymenty zostały przeprowadzone dla komórek k = 5. Kodowanie stanów z wykorzystaniem wektorów wyjściowych ov nie daje dobrych wyników pod względem liczby komórek (U σδ+λ, Rys. 22a). Podobnie, nadmiar liczby warstw bloku przejść U ξδ jest znaczący (-23,8%). Jakkolwiek, blok wyjść nie istnieje, ponieważ jest realiozowany w bloku przejść (Rys. 22c). Zastosowanie kompleksowej strategii ukierunkowanej na realizację ultra-szybkich automatów ufcs czyni blok przejść strukturą jednowarstwową (Rys. 22b), zaś uzysk wynosi U ξδ = 39,2%. W trakcie wykonywania kilkuset eksperymentów z różnymi automatami testowymi struktury jednowarstwowe były otrzymywane w zdecydowanej większości przypadków (z wyjątkiem jednego automatu s420 dla k = 3). Jak można się spodziewać, metoda jest obarczona wadą powodującą nadmiar liczby komórek U σδ+λ = 28,3%. Bezpośrednie porównanie algorytmów kodowania stanów opracowanych w ramach realizacji pracy doktorskiej [Cze06], czyli mb, ml i ov z opracowanymi później strategiami aocs, socs oraz ufcs jest przedstawione na Rys. 23. Wykres słupkowy potwierdza trendy obserwowane na Rys , przy czym na szczególną uwagę zasługuje strategia syntezy przeznaczona dla ultra-szybkich automatów sekwencyjnych. Oprócz porównania z narzędziami akademickimi, zostały przeprowadzone eksperymenty z narzędziami firmowymi Xilinx ISE i Altera Quartus II. Istotnym elementem porównania z narzędziami firmowymi było opracowanie odpowiedniej formy pliku wynikowego. Przeprowadzenie szeregu eksperymentów umożliwiło opracowanie formatu pliku wynikowego w języku opisu sprzętu VHDL, którego forma została opublikowana między innymi w pracach [CK09c, CK09d,

19 18 a) NOVA JEDI b) NOVA JEDI c) NOVA JEDI i - the input dominant algorithm; o - the output dominant algorithm ih - the input constraints; ioh - the input and output constraints mb - minimalizacja liczby komórek; aocs - strategia ukierunkowana na opt. powierzchni - liczba komórek; - liczba wartw - blok przejść; - blok wyjść Rysunek 20: Uzysk liczby komórek oraz liczby warstw dla strategii ukierunkowanej na redukcję powierzchni

20 19 a) NOVA JEDI b) NOVA JEDI c) NOVA JEDI i - the input dominant algorithm; o - the output dominant algorithm ih - the input constraints; ioh - the input and output constraints ml - minmalizacja liczby warstw; socs - strategia ukierunkowana na opt. szybkości - liczba komórek; - liczba wartw - blok przejść; - blok wyjść Rysunek 21: Uzysk liczby komórek oraz liczby warstw dla strategii ukierunkowanej na optymalizację szybkości

21 20 a) NOVA JEDI b) NOVA JEDI c) NOVA JEDI i - the input dominant algorithm; o - the output dominant algorithm ih - the input constraints; ioh - the input and output constraints ov - Kodowanie wektorami wyjściowymi; ufcs - strategia dla ultra-szybkich automatów - liczba komórek; - liczba wartw - blok przejść; - blok wyjść Rysunek 22: Uzysk liczby komórek oraz liczby warstw dla strategii przeznaczonej dla ultraszybkich automatów

22 21 a) b) c) mb - minimalizacja liczby komórek; aocs - strategia ukierunkowana na opt. powierzchni ml - minmalizacja liczby warstw; socs - strategia ukierunkowana na opt. szybkości ov - Kodowanie wektorami wyjściowymi; ufcs - strategia dla ultra-szybkich automatów - liczba komórek; - liczba wartw - blok przejść; - blok wyjść Rysunek 23: Bezpośrednie porównanie opracowanych strategii

23 22 CK13], podobnie jak wyniki eksperymentów. Podsumowanie Treść artykułów [CK09a, CK09b] z przedstawionego cyklu publikacji skupia się wokół złożonej strategii syntezy automatów sekwencyjnych ukierunkowanej na optymalizację powierzchni. Kodowanie stanów połączone z dopasowaniem kodów do metody wielopoziomowej optymalizacji wykorzystującej grafy wyjść umożliwia efektywną realizację w układach programowalnych typu. Zaproponowana strategia syntezy okazała się szczególnie przydatna w przypadku komórek o małej liczbie bramek AND. Kolejna z serii opublikowanych prac [CK10] dotyczy syntezy automatów ukierunkowanej na optymalizację szybkości działania. Zaprojektowana strategia obejmuje kodowanie stanów, które wykorzystuje taki dobór wektorów kodowania, żeby uzyskać minimalną liczbę warstw logiki. Optymalizacja funkcji wyjść tej strategii, bazująca na minimalizacji z rozdzielaniem implikantów, jest ukierunkowana na wykorzystanie bufora trójstanowego. Na wykorzystanie metod opartych o grafy wyjść i wyszukiwanie podziału pod kątem implementacji z buforem trójstaniowym wpłynęły doświadczenia zdobyte w zespole pracującym nad syntezą układów kombinacyjnych, które znalazły odzwierciedlenie między innymi w pracy [KMK + 09]. Zachęcające wyniki eksperymentów opublikowane w pracach [CK09a, CK09b] i [CK10] spowodowały opracowanie kompleksowej strategii syntezy automatów. Praca [CK12] przedstawia dogłębną analizę metod ukierunkowanych na optymalizację powierzchni i szybkości działania automatów. Ponadto, przedstawia wielokryterialne porównanie proponowanych strategii syntezy zarówno z narzędziami akademickimi, jak i firmowymi. Zaproponowana metoda opisu pliku wynikowego w języku VHDL [CK09c, CK09d] nie tylko umożliwiła porównanie opracowanych strategii syntezy z wynikami uzyskanymi za pomocą narzędzi komercyjnych (Quartus II Altery i ISE Xilinx a), ale również umożliwiła bezpośrednie zastosowanie opracowanych metod w praktyce projektowej. Wszystkie dotychczasowe doświadczenia nad syntezą i optymalizacją automatów sekwencyjnych, zostały zebrane i opublikowane w monografii [CK13], wydanej przez wydawnictwo Springer i indeksowanej w bazie WoS. W monografii została przedstawiona metoda minimalizacji symbolicznej automatu bazująca na kolorowaniu grafu niezgodności stanów, uprzednio opublikowana w krajowym czasopiśmie [CK11] oraz niepublikowana wcześniej strategia syntezy ultra-szybkich automatów. Strategia syntezy ultra-szybkich automatów sekwencyjnych wykorzystująca bufory trójstanowe została później drobiazgowo przedstawiona w pracy [CK16] wraz z zaproponowanym oryginalnym sposobem (nowym w stosunku do monografii) reprezentacji komputerowej procesu kodowania stanów za pomocą binarnego drzewa decyzyjnego kodowania stanów. Za oryginalny wkład związany z rozwojem metod syntezy układów cyfrowych realizowanych w strukturach programowalnych uważam: 1. Opracowanie szybkiego algorytmu minimalizacji symbolicznej, bazującej na metodzie kolorowania grafu niezgodności, przeznaczonego dla wstępnej minimalizacji liczby stanów automatu [CK11]. 2. Opracowanie strategii syntezy automatów sekwencyjnych ukierunkowanej na optymalizację powierzchni [CK09a, CK09b]. 3. Opracowanie strategii syntezy automatów sekwencyjnych ukierunkowanej na optymalizację szybkości działania układu [CK10] ze szczególnym uwzględnieniem strategii syntezy ultra-szybkich automatów [CK16].

24 23 4. Zaproponowanie kompleksowej strategi syntezy automatów sekwencyjnych, której istota tkwi w wykorzystaniu specyficznych cech architektonicznych struktur typu [CK12, CK13]. 5. Zaproponowanie formy opisu plików wynikowych w języku opisu sprzętu VHDL, umożliwiającej efektywne przeprowadzanie implementacji w narzędziach firmowych ( placement, mapping, routing ) [CK09c, CK09d]. 6. Przeprowadzenie eksperymentów i analiz porównawczych uzyskanych wyników. 5 Omówienie pozostałych osiagnięć naukowo-badawczych Projektowanie sterowników przemysłowych PLC i układów sprzętowego wspomagania sterowników PLC Zainteresowanie układami programowalnymi nie kończy się na pracach z zakresu syntezy logiki i odwzorowania technologicznego, ale obejmuje również technikę mikroprocesorową ze szczególnym uwzględnieniem mikrokontrolerów i sterowników przemysłowych PLC. Możliwość zaimplementowania w układach FPGA mikroprocesorów lub wybranych bloków sprzętowego wspomagania jednostek centralnych spowodowała podjęcie prac naukowo-badawczych w tym obszarze. Za szczególnie interesujące można tutaj uznać możliwości implementacji jednostki centralnej oraz bloków funkcyjnych zgodnych z normą IEC 61131, zwłaszcza z trzecią częścią tej normy (IEC ). Okazuje się bowiem, że możliwe jest opracowanie nowych konstrukcji, skrzętnie wykorzystując współbieżność oferowaną przez układy logiki programowalnej. W ramach współpracy między innymi ze studentami powstały prace opublikowane nie tylko na międzynarodowej konferencji [CCW13, CCS15], ale również w renomowanym czasopiśmie [CKC + 16]. Od roku akademickiego 2014/15 jestem opiekunem Studenckiego Koła Naukowego Elektroników działającego przy Instytucie Elektroniki Politechniki Śląskiej. Główna działalność Koła skupia się właśnie wokół projektowania jednostek centralnych CPU i innych modułów ze szczególnym uwzględnieniem jednostek przeznaczonych dla sterowników przemysłowych PLC zgodnych z normą IEC Projektowane moduły są implementowane w układach FPGA [MCC16]. Metody sterowania silnikiem synchronicznym z magnesami trwałymi PMSM W latach byłem wykonawcą projektu badawczego własnego Nr N N pod tytułem: Algorytmy sterowania układami mechatronicznymi pojazdów mechanicznych, realizowanego pod kierownictwem dr. inż. Tomasza Rudnickiego. Projekt był w całości finansowany przez Ministerstwo Nauki i Szkolnictwa Wyższego. Celem naukowym prac było opracowanie systemu napędowego wyposażonego w silnik synchroniczny z magnesami trwałymi PMSM (ang. Permanent Magnet Synchronous Machine). Ponieważ silniki z magnesami trwałymi pozbawione są komutatora, ciężar sterowania przenosi się znacząco w kierunku elektronicznego sterowania silnikiem elektrycznym. Byłem współautorem analizy matematycznej oraz głównym autorem i wykonawcą układu sterowania silnikiem PMSM. W początkowej fazie realizacji programu sterowania realizowanego przed procesor sygnałowy DSP współtworzyłem program, proponując między innymi prostą, acz efektywną, metodę cyfrowej filtracji zakłóceń [CR14]. Oprócz tego wyniki prac zostały opublikowane w ośmiu innych artykułach opublikowanych w czasopismach (między innymi [RCS13, RCS14]) i dwóch na konferencjach naukowych [RCF11a, RCF11b]. Po zakończeniu projektu byłem częścią zespołu kontynuującego prace. Byłem pomysłodawcą między innymi serii badań określających wpływ częstotliwości modulacji PWM falownika

25 24 na różne aspekty pracy układu z silnikiem PMSM, na przykład na uzyskiwany moment obrotowy. Aktywnie uczestniczyłem w powstaniu kolejnych publikacji, z czego za najważniejszą uznaję artykuł [RCSP16]. Artykuły mojego współautorstwa zostały zauważone, co spowodowało, że zostałem poproszony o wykonanie recenzji dla The IEEE Transactions on Industrial Electronics oraz The IEEE Transactions on Power Electronics. 6 Omówienie działalności dydaktyczno-organizacyjnej Od roku 2006 jestem zatrudniony na etacie adiunkta w grupie pracowników naukowo-dydaktycznych. Dydaktyka stanowi pokaźną część wypełnianych przeze mnie obowiązków. Krótko po podjęciu zatrudnienia zacząłem pracować nad przygotowaniem przedmiotu obieralnego łączącego aspekty projektowania układów cyfrowych oraz ich opisywania w języku opisu sprzętu Verilog HDL. W efekcie prac powstał przedmiot o pod tytułem: Projektowanie urządzeń cyfrowych w języku Verilog HDL, obejmujący piętnaście godzin wykładu i trzydzieści godzin zajęć laboratoryjnych. Przedmiot spotkał się z ciepłym przyjęciem wśród studentów i przez kilka lat cieszył się bardzo dużym zainteresowaniem rokrocznie był wybierany i należał do najpopularniejszych przedmiotów obieralnych. W efekcie został włączony w program studiów, co uznaję za swój największy sukces w pracy dydaktycznej. Przedmiot jest obecnie prowadzony jako jeden z dwóch wariantów w ramach przedmiotu: Języki opisu sprzętu. Nadal prowadzę wykład i ćwiczenia laboratoryjne. Ponadto prowadziłem/prowadzę zajęcia (ćwiczenia tablicowe, laboratoria, projekty) z przedmiotów związanych ściśle z techniką cyfrową i mikroprocesorową, m.in.: Podstawy techniki cyfrowej, Projektowaniu układów cyfrowych, Mikroprocesory, Systemy komputerowe i mikroprocesory, Sterowniki programowalne. Uczestniczyłem też w zorganizowaniu i prowadzę/prowadziłem dwa kolejne przedmioty obieralne: Programowanie robotów mobilnych na bazie mikrokontrolerów z rdzeniem ARM, Programowe cyfrowe układy sterowania. Byłem promotorem czternastu prac magisterskich i dziesięciu projektów inżynierskich. Zrealizowałem kilka nowych modeli laboratoryjnych, m.in. z zakresu układów logiki programowalnej. Do najistotniejszych zaliczam dwa modele używane w laboratorium Podstaw techniki cyfrowej/projektowania układów cyfrowych: Model symulatora układów programowalnych PLD, Model symulatora układów mikroprogramowanych. Obydwa modele składają się z części sprzętowej i programowej. Program pierwszego modelu jest skonstruowany w sposób umożliwiający opis układu cyfrowego na poziomie tablicy przepaleń. Umożliwia to pokazanie powiązania pomiędzy syntezą logiki i implementacją. Ponadto, program steruje warstwą sprzętową modelu umożliwiając symulację układu programowalnego. Studenci mogą dołączyć model do innych elementów układu lub aparatury pomiarowej, weryfikując opisany za pomocą tablicy przepaleń model funkcjonalny. Program drugiego modelu umożliwia zdefiniowanie zawartości pamięci, zaś część sprzętowa umożliwia jej symulację i realizację układu mikroprogramowanego poprzez dołączenie do symulatora pozostałych elementów, między innymi rejestrów. Istotnym problemem w realizacji modeli dydaktycznych było ich odpowiednie zrealizowanie pod względem funkcjonalnym. Chodziło bowiem o to, by modele jak najlepiej pokazywały istotę

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

Katedra Mikroelektroniki i Technik Informatycznych

Katedra Mikroelektroniki i Technik Informatycznych Katedra Mikroelektroniki i Technik Informatycznych Bloki obieralne na kierunku Mechatronika rok akademicki 2013/2014 ul. Wólczańska 221/223, budynek B18 www.dmcs.p.lodz.pl Nowa siedziba Katedry 2005 2006

Bardziej szczegółowo

ID1UAL1 Układy arytmetyczno-logiczne Arithmetic logic systems. Informatyka I stopień ogólnoakademicki stacjonarne

ID1UAL1 Układy arytmetyczno-logiczne Arithmetic logic systems. Informatyka I stopień ogólnoakademicki stacjonarne Załącznik nr 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

Elementy cyfrowe i układy logiczne

Elementy cyfrowe i układy logiczne Elementy cyfrowe i układy logiczne Wykład 5 Legenda Procedura projektowania Podział układów VLSI 2 1 Procedura projektowania Specyfikacja Napisz, jeśli jeszcze nie istnieje, specyfikację układu. Opracowanie

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

PRZEWODNIK PO PRZEDMIOCIE

PRZEWODNIK PO PRZEDMIOCIE Nazwa przedmiotu: Jednostki obliczeniowe w zastosowaniach mechatronicznych Kierunek: Mechatronika Rodzaj przedmiotu: dla specjalności Systemy Sterowania Rodzaj zajęć: Wykład, laboratorium Computational

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

IZ1UAL1 Układy arytmetyczno-logiczne Arithmetic logic systems. Informatyka I stopień ogólnoakademicki niestacjonarne

IZ1UAL1 Układy arytmetyczno-logiczne Arithmetic logic systems. Informatyka I stopień ogólnoakademicki niestacjonarne KARTA MODUŁU / KARTA PRZEDMIOTU Załącznik nr 7 do Zarządzenia Rektora nr 10/12 z dnia 21 lutego 2012r. Kod modułu Nazwa modułu Nazwa modułu w języku angielskim Obowiązuje od roku akademickiego 2012/2013

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

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

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

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

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

Lista zadań nr 5. Ścieżka projektowa Realizacja każdego z zadań odbywać się będzie zgodnie z poniższą ścieżką projektową (rys.

Lista zadań nr 5. Ścieżka projektowa Realizacja każdego z zadań odbywać się będzie zgodnie z poniższą ścieżką projektową (rys. Sterowanie procesami dyskretnymi laboratorium dr inż. Grzegorz Bazydło G.Bazydlo@iee.uz.zgora.pl, staff.uz.zgora.pl/gbazydlo Lista zadań nr 5 Zagadnienia stosowanie skończonych automatów stanów (ang. Finite

Bardziej szczegółowo

Opracował: Jan Front

Opracował: Jan Front Opracował: Jan Front Sterownik PLC PLC (Programowalny Sterownik Logiczny) (ang. Programmable Logic Controller) mikroprocesorowe urządzenie sterujące układami automatyki. PLC wykonuje w sposób cykliczny

Bardziej szczegółowo

Systemy na Chipie. Robert Czerwiński

Systemy na Chipie. Robert Czerwiński Systemy na Chipie Robert Czerwiński Cel kursu Celem kursu jest zapoznanie słuchaczy ze współczesnymi metodami projektowania cyfrowych układów specjalizowanych, ze szczególnym uwzględnieniem układów logiki

Bardziej szczegółowo

Podstawy techniki cyfrowej i mikroprocesorowej - opis przedmiotu

Podstawy techniki cyfrowej i mikroprocesorowej - opis przedmiotu Podstawy techniki cyfrowej i mikroprocesorowej - opis przedmiotu Informacje ogólne Nazwa przedmiotu Podstawy techniki cyfrowej i mikroprocesorowej Kod przedmiotu 06.5-WE-AiRP-PTCiM Wydział Kierunek Wydział

Bardziej szczegółowo

Synteza logiczna dla struktur CPLD typu PAL wykorzystująca elementy XOR

Synteza logiczna dla struktur CPLD typu PAL wykorzystująca elementy XOR BIULETYN WAT VOL. LVI, NR 3, 2007 Synteza logiczna dla struktur CPLD typu PAL wykorzystująca elementy XOR DARIUSZ KANIA*, WALDEMAR GRABIEC *Politechnika Śląska, Wydział Automatyki, Elektroniki i Informatyki,

Bardziej szczegółowo

T. Łuba, B. Zbierzchowski Układy logiczne Podręcznik WSISiZ, Warszawa 2002.

T. Łuba, B. Zbierzchowski Układy logiczne Podręcznik WSISiZ, Warszawa 2002. Książkę: T. Łuba, B. Zbierzchowski Układy logiczne Podręcznik WSISiZ, Warszawa 2002. Można zakupić po najniższej cenie w księgarni Wyższej Szkoły Informatyki Stosowanej i Zarządzania ul. Newelska 6 pok.

Bardziej szczegółowo

Sterowniki Programowalne (SP)

Sterowniki Programowalne (SP) Sterowniki Programowalne (SP) Wybrane aspekty procesu tworzenia oprogramowania dla sterownika PLC Podstawy języka funkcjonalnych schematów blokowych (FBD) Politechnika Gdańska Wydział Elektrotechniki i

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

Opinia o dorobku naukowym dr inż. Ireneusz Dominik w związku z wystąpieniem o nadanie stopnia naukowego doktora habilitowanego.

Opinia o dorobku naukowym dr inż. Ireneusz Dominik w związku z wystąpieniem o nadanie stopnia naukowego doktora habilitowanego. Prof. dr hab. inż. Tadeusz Uhl Katedra Robotyki i Mechatroniki Wydział Inżynierii Mechanicznej i Robotyki Akademia Górniczo Hutnicza w Krakowie Kraków 01.07.2018 Opinia o dorobku naukowym dr inż. Ireneusz

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

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

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

KARTA PRZEDMIOTU. Podstawy elektroniki cyfrowej B6. Fundamentals of digital electronic

KARTA PRZEDMIOTU. Podstawy elektroniki cyfrowej B6. Fundamentals of digital electronic KARTA PRZEDMIOTU 1. Informacje ogólne Nazwa przedmiotu i kod (wg planu studiów): Nazwa przedmiotu (j. ang.): Kierunek studiów: Specjalność/specjalizacja: Poziom kształcenia: Profil kształcenia: Forma studiów:

Bardziej szczegółowo

Projektowanie układów na schemacie

Projektowanie układów na schemacie Projektowanie układów na schemacie Przedstawione poniżej wskazówki mogą być pomocne przy projektowaniu układach na poziomie schematu. Stałe wartości logiczne Aby podłączyć wejście do stałej wartości logicznych

Bardziej szczegółowo

ZASTOSOWANIA UKŁADÓW FPGA W ALGORYTMACH WYLICZENIOWYCH APPLICATIONS OF FPGAS IN ENUMERATION ALGORITHMS

ZASTOSOWANIA UKŁADÓW FPGA W ALGORYTMACH WYLICZENIOWYCH APPLICATIONS OF FPGAS IN ENUMERATION ALGORITHMS inż. Michał HALEŃSKI Wojskowy Instytut Techniczny Uzbrojenia ZASTOSOWANIA UKŁADÓW FPGA W ALGORYTMACH WYLICZENIOWYCH Streszczenie: W artykule przedstawiono budowę oraz zasadę działania układów FPGA oraz

Bardziej szczegółowo

PRZEWODNIK PO PRZEDMIOCIE

PRZEWODNIK PO PRZEDMIOCIE Nazwa przedmiotu: MODELOWANIE I ANALIZA SYSTEMÓW INFORMATYCZNYCH Modeling and analysis of computer systems Kierunek: Informatyka Forma studiów: Stacjonarne Rodzaj przedmiotu: Poziom kwalifikacji: obowiązkowy

Bardziej szczegółowo

METODY ZINTEGROWANEGO PROJEKTOWANIA SPRZĘTU I OPROGRAMOWANIA Z WYKORZYSTANIEM NOWOCZESNYCH UKŁADÓW PROGRAMOWALNYCH

METODY ZINTEGROWANEGO PROJEKTOWANIA SPRZĘTU I OPROGRAMOWANIA Z WYKORZYSTANIEM NOWOCZESNYCH UKŁADÓW PROGRAMOWALNYCH METODY ZINTEGROWANEGO PROJEKTOWANIA SPRZĘTU I OPROGRAMOWANIA Z WYKORZYSTANIEM NOWOCZESNYCH UKŁADÓW PROGRAMOWALNYCH Arkadiusz Bukowiec mgr inż. Agnieszka Węgrzyn Instytut Informatyki i Elektroniki, Uniwersytet

Bardziej szczegółowo

Podstawy elektroniki i miernictwa

Podstawy elektroniki i miernictwa Podstawy elektroniki i miernictwa Kod modułu: ELE Rodzaj przedmiotu: podstawowy; obowiązkowy Wydział: Informatyki Kierunek: Informatyka Poziom studiów: pierwszego stopnia Profil studiów: ogólnoakademicki

Bardziej szczegółowo

Załącznik Nr 5 do Zarz. Nr 33/11/12

Załącznik Nr 5 do Zarz. Nr 33/11/12 Załącznik Nr 5 do Zarz. Nr 33/11/12 (pieczęć wydziału) KARTA PRZEDMIOTU Z1-PU7 WYDANIE N1 Strona 1 z 5 1. Nazwa przedmiotu: ZAAWANSOWANE PROGRAMOWANIE STEROWNIKÓW PRZEMYSŁOWYCH 3. Karta przedmiotu ważna

Bardziej szczegółowo

PRZEWODNIK PO PRZEDMIOCIE

PRZEWODNIK PO PRZEDMIOCIE Nazwa przedmiotu: Kierunek: Mechatronika Rodzaj przedmiotu: obowiązkowy na specjalności: Systemy sterowania Rodzaj zajęć: Projekt I KARTA PRZEDMIOTU CEL PRZEDMIOTU PROJEKT INŻYNIERSKI Engineer s project

Bardziej szczegółowo

Załącznik Nr 5 do Zarz. Nr 33/11/12

Załącznik Nr 5 do Zarz. Nr 33/11/12 Załącznik Nr 5 do Zarz. Nr 33/11/12 (pieczęć wydziału) KARTA PRZEDMIOTU Z1-PU7 WYDANIE N1 Strona 1 z 5 1. Nazwa przedmiotu: ZAAWANSOWANE PROGRAMOWANIE STEROWNIKÓW PRZEMYSŁOWYCH 3. Karta przedmiotu ważna

Bardziej szczegółowo

Politechnika Białostocka Wydział Elektryczny Katedra Automatyki i Elektroniki. ĆWICZENIE Nr 4 (3h) Przerzutniki, zatrzaski i rejestry w VHDL

Politechnika Białostocka Wydział Elektryczny Katedra Automatyki i Elektroniki. ĆWICZENIE Nr 4 (3h) Przerzutniki, zatrzaski i rejestry w VHDL Politechnika Białostocka Wydział Elektryczny Katedra Automatyki i Elektroniki ĆWICZENIE Nr 4 (3h) Przerzutniki, zatrzaski i rejestry w VHDL Instrukcja pomocnicza do laboratorium z przedmiotu Synteza układów

Bardziej szczegółowo

Rok akademicki: 2013/2014 Kod: EEL s Punkty ECTS: 2. Poziom studiów: Studia I stopnia Forma i tryb studiów: Stacjonarne

Rok akademicki: 2013/2014 Kod: EEL s Punkty ECTS: 2. Poziom studiów: Studia I stopnia Forma i tryb studiów: Stacjonarne Nazwa modułu: Technika mikroprocesorowa Rok akademicki: 2013/2014 Kod: EEL-1-616-s Punkty ECTS: 2 Wydział: Elektrotechniki, Automatyki, Informatyki i Inżynierii Biomedycznej Kierunek: Elektrotechnika Specjalność:

Bardziej szczegółowo

Nazwa przedmiotu: MODELOWANIE I ANALIZA SYSTEMÓW INFORMATYCZNYCH. Modeling and analysis of computer systems Forma studiów: Stacjonarne

Nazwa przedmiotu: MODELOWANIE I ANALIZA SYSTEMÓW INFORMATYCZNYCH. Modeling and analysis of computer systems Forma studiów: Stacjonarne Nazwa przedmiotu: MODELOWANIE I ANALIZA SYSTEMÓW INFORMATYCZNYCH Kierunek: Informatyka Modeling and analysis of computer systems Forma studiów: Stacjonarne Rodzaj przedmiotu: obowiązkowy w ramach specjalności:

Bardziej szczegółowo

Tranzystor JFET i MOSFET zas. działania

Tranzystor JFET i MOSFET zas. działania Tranzystor JFET i MOSFET zas. działania brak kanału v GS =v t (cutoff ) kanał otwarty brak kanału kanał otwarty kanał zamknięty w.2, p. kanał zamknięty Co było na ostatnim wykładzie? Układy cyfrowe Najczęściej

Bardziej szczegółowo

Efekty kształcenia na kierunku AiR drugiego stopnia - Wiedza Wydziału Elektrotechniki, Automatyki i Informatyki Politechniki Opolskiej

Efekty kształcenia na kierunku AiR drugiego stopnia - Wiedza Wydziału Elektrotechniki, Automatyki i Informatyki Politechniki Opolskiej Efekty na kierunku AiR drugiego stopnia - Wiedza K_W01 K_W02 K_W03 K_W04 K_W05 K_W06 K_W07 K_W08 K_W09 K_W10 K_W11 K_W12 K_W13 K_W14 Ma rozszerzoną wiedzę dotyczącą dynamicznych modeli dyskretnych stosowanych

Bardziej szczegółowo

Temat: Pamięci. Programowalne struktury logiczne.

Temat: Pamięci. Programowalne struktury logiczne. Temat: Pamięci. Programowalne struktury logiczne. 1. Pamięci są układami służącymi do przechowywania informacji w postaci ciągu słów bitowych. Wykonuje się jako układy o bardzo dużym stopniu scalenia w

Bardziej szczegółowo

PROGRAMOWALNE STEROWNIKI LOGICZNE

PROGRAMOWALNE STEROWNIKI LOGICZNE PROGRAMOWALNE STEROWNIKI LOGICZNE I. Wprowadzenie Klasyczna synteza kombinacyjnych i sekwencyjnych układów sterowania stosowana do automatyzacji dyskretnych procesów produkcyjnych polega na zaprojektowaniu

Bardziej szczegółowo

Systemy wbudowane. Uproszczone metody kosyntezy. Wykład 11: Metody kosyntezy systemów wbudowanych

Systemy wbudowane. Uproszczone metody kosyntezy. Wykład 11: Metody kosyntezy systemów wbudowanych Systemy wbudowane Wykład 11: Metody kosyntezy systemów wbudowanych Uproszczone metody kosyntezy Założenia: Jeden procesor o znanych parametrach Znane parametry akceleratora sprzętowego Vulcan Początkowo

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

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

Spis treści. Przedmowa Wykaz oznaczeń Wstęp Układy kombinacyjne... 18 Spis treści Przedmowa... 11 Wykaz oznaczeń... 13 1. Wstęp... 15 1.1. Układycyfrowe... 15 1.2. Krótki esej o projektowaniu.... 15 2. Układy kombinacyjne... 18 2.1. Podstawyprojektowaniaukładówkombinacyjnych...

Bardziej szczegółowo

1.Wprowadzenie do projektowania układów sekwencyjnych synchronicznych

1.Wprowadzenie do projektowania układów sekwencyjnych synchronicznych .Wprowadzenie do projektowania układów sekwencyjnych synchronicznych.. Przerzutniki synchroniczne Istota działania przerzutników synchronicznych polega na tym, że zmiana stanu wewnętrznego powinna nastąpić

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

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

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

KATEDRA INFORMATYKI TECHNICZNEJ. Ćwiczenia laboratoryjne z Logiki Układów Cyfrowych. ćwiczenie 204 Opracował: prof. dr hab. inż. Jan Kazimierczak KATEDA INFOMATYKI TECHNICZNEJ Ćwiczenia laboratoryjne z Logiki Układów Cyfrowych ćwiczenie 204 Temat: Hardware'owa implementacja automatu skończonego pełniącego

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

Systemy Wbudowane. Założenia i cele przedmiotu: Określenie przedmiotów wprowadzających wraz z wymaganiami wstępnymi: Opis form zajęć

Systemy Wbudowane. Założenia i cele przedmiotu: Określenie przedmiotów wprowadzających wraz z wymaganiami wstępnymi: Opis form zajęć Systemy Wbudowane Kod przedmiotu: SW Rodzaj przedmiotu: kierunkowy ; obowiązkowy Wydział: Informatyki Kierunek: Informatyka Specjalność (specjalizacja): - Poziom studiów: pierwszego stopnia Profil studiów:

Bardziej szczegółowo

Rok akademicki: 2030/2031 Kod: EEL s Punkty ECTS: 5. Poziom studiów: Studia I stopnia Forma i tryb studiów: -

Rok akademicki: 2030/2031 Kod: EEL s Punkty ECTS: 5. Poziom studiów: Studia I stopnia Forma i tryb studiów: - Nazwa modułu: Podstawy sterowania logicznego Rok akademicki: 2030/2031 Kod: EEL-1-523-s Punkty ECTS: 5 Wydział: Elektrotechniki, Automatyki, Informatyki i Inżynierii Biomedycznej Kierunek: Elektrotechnika

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

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

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

AiR_UCiM_3/5 Układy Cyfrowe i Mikroprocesorowe Digital Circuits and Microprocessors

AiR_UCiM_3/5 Układy Cyfrowe i Mikroprocesorowe Digital Circuits and Microprocessors 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 2013/2014

Bardziej szczegółowo

PRZEWODNIK PO PRZEDMIOCIE

PRZEWODNIK PO PRZEDMIOCIE Nazwa przedmiotu: Kierunek: Mechatronika Rodzaj przedmiotu: dla specjalności Systemy Sterowania w ramach kierunku Mechatronika Rodzaj zajęć: Wykład, laboratorium Systemy Operacyjne Czasu Rzeczywistego

Bardziej szczegółowo

Karta (sylabus) modułu/przedmiotu Mechatronika Studia pierwszego stopnia. Podstawy automatyzacji Rodzaj przedmiotu: obowiązkowy Kod przedmiotu:

Karta (sylabus) modułu/przedmiotu Mechatronika Studia pierwszego stopnia. Podstawy automatyzacji Rodzaj przedmiotu: obowiązkowy Kod przedmiotu: Karta (sylabus) modułu/przedmiotu Mechatronika Studia pierwszego stopnia Przedmiot: Podstawy automatyzacji Rodzaj przedmiotu: obowiązkowy Kod przedmiotu: MT 1 S 0 5 36-0_1 Rok: III Semestr: 5 Forma studiów:

Bardziej szczegółowo

Elektronika cyfrowa i mikroprocesory. Dr inż. Aleksander Cianciara

Elektronika cyfrowa i mikroprocesory. Dr inż. Aleksander Cianciara Elektronika cyfrowa i mikroprocesory Dr inż. Aleksander Cianciara Sprawy organizacyjne Warunki zaliczenia Lista obecności Kolokwium końcowe Ocena końcowa Konsultacje Poniedziałek 6:-7: Kontakt Budynek

Bardziej szczegółowo

Sterowniki programowalne Programmable Controllers. Energetyka I stopień Ogólnoakademicki. przedmiot kierunkowy

Sterowniki programowalne Programmable Controllers. Energetyka I stopień Ogólnoakademicki. przedmiot kierunkowy 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 Sterowniki programowalne Programmable Controllers

Bardziej szczegółowo

SYLABUS/KARTA PRZEDMIOTU

SYLABUS/KARTA PRZEDMIOTU . NAZWA PRZEDMIOTU SYLABUS/KARTA PRZEDMIOTU Systemy wizyjne w automatyce przemysłowej. NAZWA JEDNOSTKI PROWADZĄCEJ PRZEDMIOT Instytut Politechniczny. STUDIA kierunek stopień tryb język status przedmiotu

Bardziej szczegółowo

Technika cyfrowa i mikroprocesorowa. Zaliczenie na ocenę. Zaliczenie na ocenę

Technika cyfrowa i mikroprocesorowa. Zaliczenie na ocenę. Zaliczenie na ocenę I. KARTA PRZEDMIOTU Nazwa przedmiotu/modułu: Nazwa angielska: Kierunek studiów: Poziom studiów: Profil studiów: Jednostka prowadząca: Technika cyfrowa i mikroprocesorowa Edukacja techniczno-informatyczna

Bardziej szczegółowo

Ochrona własności intelektualnej projektów w układach FPGA poprzez szyfrowanie danych konfiguracyjnych

Ochrona własności intelektualnej projektów w układach FPGA poprzez szyfrowanie danych konfiguracyjnych Ochrona własności intelektualnej projektów w układach FPGA poprzez szyfrowanie danych konfiguracyjnych (Na przykładzie projektowania układów sterujacych) Grzegorz Łabiak i Marek Węgrzyn Instytut Informatyki

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

PRZEWODNIK PO PRZEDMIOCIE

PRZEWODNIK PO PRZEDMIOCIE Nazwa przedmiotu: Kierunek: Mechatronika Rodzaj przedmiotu: obowiązkowy Rodzaj zajęć: wykład, laboratorium I KARTA PRZEDMIOTU CEL PRZEDMIOTU PRZEWODNIK PO PRZEDMIOCIE C1. Zapoznanie studentów z inteligentnymi

Bardziej szczegółowo

Realizacja bezpiecznego programowalnego sterownika logicznego z wykorzystaniem języków HDL

Realizacja bezpiecznego programowalnego sterownika logicznego z wykorzystaniem języków HDL Realizacja bezpiecznego programowalnego sterownika logicznego z wykorzystaniem języków HDL Arkadiusz Bukowiec 1 Radosław Gąsiorek 2 Agnieszka Węgrzyn 3 Prezentowany referat przedstawia ogólną koncepcję

Bardziej szczegółowo

PRZEWODNIK PO PRZEDMIOCIE

PRZEWODNIK PO PRZEDMIOCIE Nazwa przedmiotu: NAPĘDY I STEROWANIE PNEUMATYCZNE MASZYN PNEUMATIC DRIVE AND CONTROL OF MACHINES Kierunek: MECHATRONIKA Rodzaj przedmiotu: obowiązkowy na specjalności: PROJEKTOWANIE SYSTEMÓW MECHANICZNYCH

Bardziej szczegółowo

E-E2A-2017-s2. Elektrotechnika II stopień (I stopień / II stopień) ogólno akademicki (ogólno akademicki / praktyczny)

E-E2A-2017-s2. Elektrotechnika II stopień (I stopień / II stopień) ogólno akademicki (ogólno akademicki / praktyczny) KARTA MODUŁU / KARTA PRZEDMIOTU Załącznik nr 7 do Zarządzenia Rektora nr 10/12 z dnia 21 lutego 2012r. Kod modułu Nazwa modułu Nazwa modułu w języku angielskim E-E2A-2017-s2 Sterowanie mikrokomputerowe

Bardziej szczegółowo

Wykład z Technologii Informacyjnych. Piotr Mika

Wykład z Technologii Informacyjnych. Piotr Mika Wykład z Technologii Informacyjnych Piotr Mika Uniwersalna forma graficznego zapisu algorytmów Schemat blokowy zbiór bloków, powiązanych ze sobą liniami zorientowanymi. Jest to rodzaj grafu, którego węzły

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 1 (3h) Wprowadzenie do obsługi platformy projektowej Quartus II Instrukcja pomocnicza do laboratorium z przedmiotu

Bardziej szczegółowo

Koszt literału (literal cost) jest określony liczbą wystąpień literału w wyrażeniu boolowskim realizowanym przez układ.

Koszt literału (literal cost) jest określony liczbą wystąpień literału w wyrażeniu boolowskim realizowanym przez układ. Elementy cyfrowe i układy logiczne Wykład Legenda Kryterium kosztu realizacji Minimalizacja i optymalizacja Optymalizacja układów dwupoziomowych Tablica (mapa) Karnaugh a Metoda Quine a-mccluskey a Złożoność

Bardziej szczegółowo

Sterowniki PLC. Elektrotechnika II stopień Ogólno akademicki. przedmiot kierunkowy. Obieralny. Polski. semestr 1

Sterowniki PLC. Elektrotechnika II stopień Ogólno akademicki. przedmiot kierunkowy. Obieralny. Polski. semestr 1 Załącznik nr 7 do Zarządzenia Rektora nr 10/12 z dnia 21 lutego 2012r. KARTA MODUŁU / KARTA PRZEDMIOTU Kod modułu E-E2T-09-s2 Nazwa modułu Sterowniki PLC Nazwa modułu w języku angielskim Programmable Logic

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

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

Przerzutnik ma pewną liczbę wejść i z reguły dwa wyjścia. Kilka informacji o przerzutnikach Jaki układ elektroniczny nazywa się przerzutnikiem? Przerzutnikiem bistabilnym jest nazywany układ elektroniczny, charakteryzujący się istnieniem dwóch stanów wyróżnionych

Bardziej szczegółowo

Politechnika Białostocka Wydział Elektryczny Katedra Automatyki i Elektroniki. ĆWICZENIE Nr 8 (3h) Implementacja pamięci ROM w FPGA

Politechnika Białostocka Wydział Elektryczny Katedra Automatyki i Elektroniki. ĆWICZENIE Nr 8 (3h) Implementacja pamięci ROM w FPGA Politechnika Białostocka Wydział Elektryczny Katedra Automatyki i Elektroniki ĆWICZENIE Nr 8 (3h) Implementacja pamięci ROM w FPGA Instrukcja pomocnicza do laboratorium z przedmiotu Programowalne Struktury

Bardziej szczegółowo

PRZEWODNIK PO PRZEDMIOCIE

PRZEWODNIK PO PRZEDMIOCIE Nazwa przedmiotu: I KARTA PRZEDMIOTU CEL PRZEDMIOTU PRZEWODNIK PO PRZEDMIOCIE C1. Podniesienie poziomu wiedzy studentów z zagadnień dotyczących analizy i syntezy algorytmów z uwzględnieniem efektywności

Bardziej szczegółowo

PRZEWODNIK PO PRZEDMIOCIE

PRZEWODNIK PO PRZEDMIOCIE Nazwa przedmiotu: Kierunek: Informatyka Rodzaj przedmiotu: obowiązkowy w ramach treści kierunkowych, moduł kierunkowy oólny Rodzaj zajęć: wykład, laboratorium I KARTA PRZEDMIOTU CEL PRZEDMIOTU PRZEWODNIK

Bardziej szczegółowo

Wymagania stawiane pracom dyplomowym na Wydziale Elektroniki i Informatyki Politechniki Koszalińskiej

Wymagania stawiane pracom dyplomowym na Wydziale Elektroniki i Informatyki Politechniki Koszalińskiej Wymagania stawiane pracom dyplomowym na Wydziale Elektroniki i Informatyki Politechniki Koszalińskiej Uchwała Nr 356/96 Rady Głównej Szkolnictwa Wyższego z 28 listopada 1996 r. dotycząca nadawania tytułów

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

Karta (sylabus) modułu/przedmiotu Mechatronika Studia pierwszego stopnia. Podstawy automatyki Rodzaj przedmiotu: obowiązkowy Kod przedmiotu:

Karta (sylabus) modułu/przedmiotu Mechatronika Studia pierwszego stopnia. Podstawy automatyki Rodzaj przedmiotu: obowiązkowy Kod przedmiotu: Karta (sylabus) modułu/przedmiotu Mechatronika Studia pierwszego stopnia Przedmiot: Podstawy automatyki Rodzaj przedmiotu: obowiązkowy Kod przedmiotu: MT 1 N 0 4 4-0_1 Rok: II Semestr: 4 Forma studiów:

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

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

kierunkowy (podstawowy / kierunkowy / inny HES) nieobowiązkowy (obowiązkowy / nieobowiązkowy) język polski VI semestr letni (semestr zimowy / letni)

kierunkowy (podstawowy / kierunkowy / inny HES) nieobowiązkowy (obowiązkowy / nieobowiązkowy) język polski VI semestr letni (semestr zimowy / letni) 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 Sterowanie

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

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

Lista zadań nr 1. Zagadnienia stosowanie sieci Petriego (ang. Petri net) jako narzędzia do modelowania algorytmów sterowania procesami

Lista zadań nr 1. Zagadnienia stosowanie sieci Petriego (ang. Petri net) jako narzędzia do modelowania algorytmów sterowania procesami Warsztaty Koła Naukowego SMART dr inż. Grzegorz Bazydło G.Bazydlo@iee.uz.zgora.pl, staff.uz.zgora.pl/gbazydlo Lista zadań nr 1 Zagadnienia stosowanie sieci Petriego (ang. Petri net) jako narzędzia do modelowania

Bardziej szczegółowo

OPTYMALIZACJA HARMONOGRAMOWANIA MONTAŻU SAMOCHODÓW Z ZASTOSOWANIEM PROGRAMOWANIA W LOGICE Z OGRANICZENIAMI

OPTYMALIZACJA HARMONOGRAMOWANIA MONTAŻU SAMOCHODÓW Z ZASTOSOWANIEM PROGRAMOWANIA W LOGICE Z OGRANICZENIAMI Autoreferat do rozprawy doktorskiej OPTYMALIZACJA HARMONOGRAMOWANIA MONTAŻU SAMOCHODÓW Z ZASTOSOWANIEM PROGRAMOWANIA W LOGICE Z OGRANICZENIAMI Michał Mazur Gliwice 2016 1 2 Montaż samochodów na linii w

Bardziej szczegółowo

PRZEWODNIK PO PRZEDMIOCIE

PRZEWODNIK PO PRZEDMIOCIE Nazwa przedmiotu: Kierunek: MECHATRONIKA Rodzaj przedmiotu: obowiązkowy na specjalności: SYSTEMY STEROWANIA, Rodzaj zajęć: wykład, laboratorium UKŁADY STEROWANIA Control systems Forma studiów: stacjonarne

Bardziej szczegółowo

HARMONOGRAM GODZINOWY ORAZ PUNKTACJA ECTS CZTEROLETNIEGO STUDIUM DOKTORANCKIEGO

HARMONOGRAM GODZINOWY ORAZ PUNKTACJA ECTS CZTEROLETNIEGO STUDIUM DOKTORANCKIEGO P O L I T E C H N I K A WYDZIAŁ AUTOMATYKI, ELEKTRONIKI I INFORMATYKI DZIEKAN Ś L Ą S K A UL. AKADEMICKA 16 44-100 GLIWICE T: +48 32 237 13 10 T: +48 32 237 24 13 F: +48 32 237 24 13 Dziekan_aei@polsl.pl

Bardziej szczegółowo

Układy sekwencyjne. 1. Czas trwania: 6h

Układy sekwencyjne. 1. Czas trwania: 6h Instytut Fizyki oświadczalnej UG Układy sekwencyjne 1. Czas trwania: 6h 2. Cele ćwiczenia Poznanie zasad działania podstawowych typów przerzutników: RS, -latch,, T, JK-MS. Poznanie zasad działania rejestrów

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

Efekt kształcenia. Ma uporządkowaną, podbudowaną teoretycznie wiedzę ogólną w zakresie algorytmów i ich złożoności obliczeniowej.

Efekt kształcenia. Ma uporządkowaną, podbudowaną teoretycznie wiedzę ogólną w zakresie algorytmów i ich złożoności obliczeniowej. Efekty dla studiów pierwszego stopnia profil ogólnoakademicki na kierunku Informatyka w języku polskim i w języku angielskim (Computer Science) na Wydziale Matematyki i Nauk Informacyjnych, gdzie: * Odniesienie-

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

Ćwiczenie 23. Temat: Własności podstawowych bramek logicznych. Cel ćwiczenia

Ćwiczenie 23. Temat: Własności podstawowych bramek logicznych. Cel ćwiczenia Temat: Własności podstawowych bramek logicznych. Cel ćwiczenia Ćwiczenie 23 Poznanie symboli własności. Zmierzenie parametrów podstawowych bramek logicznych TTL i CMOS. Czytanie schematów elektronicznych,

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

Uchwała Nr 34/2012/V Senatu Politechniki Lubelskiej z dnia 21 czerwca 2012 r.

Uchwała Nr 34/2012/V Senatu Politechniki Lubelskiej z dnia 21 czerwca 2012 r. Uchwała Nr 34/2012/V Senatu Politechniki Lubelskiej z dnia 21 czerwca 2012 r. w sprawie określenia efektów kształcenia dla studiów drugiego stopnia na kierunku mechatronika, prowadzonych wspólnie przez

Bardziej szczegółowo

AUTOMATYZACJA PROCESÓW CIĄGŁYCH I WSADOWYCH

AUTOMATYZACJA PROCESÓW CIĄGŁYCH I WSADOWYCH AUTOMATYZACJA PROCESÓW CIĄGŁYCH I WSADOWYCH kierunek Automatyka i Robotyka Studia II stopnia specjalności Automatyka Dr inż. Zbigniew Ogonowski Instytut Automatyki, Politechnika Śląska Plan wykładu pojęcia

Bardziej szczegółowo

JĘZYKI PROGRAMOWANIA STEROWNIKÓW

JĘZYKI PROGRAMOWANIA STEROWNIKÓW JĘZYKI PROGRAMOWANIA STEROWNIKÓW dr inż. Wiesław Madej Wstęp Języki programowania sterowników 15 h wykład 15 h dwiczenia Konsultacje: - pokój 325A - środa 11 14 - piątek 11-14 Literatura Tadeusz Legierski,

Bardziej szczegółowo

Programowalne Układy Cyfrowe Laboratorium

Programowalne Układy Cyfrowe Laboratorium Zdjęcie opracowanej na potrzeby prowadzenia laboratorium płytki przedstawiono na Rys.1. i oznaczono na nim najważniejsze elementy: 1) Zasilacz i programator. 2) Układ logiki programowalnej firmy XILINX

Bardziej szczegółowo

w dyscyplinie: Automatyka i Robotyka, studia stacjonarne

w dyscyplinie: Automatyka i Robotyka, studia stacjonarne P O L I T E C H N I K A Ś L Ą S K A WYDZIAŁ AUTOMATYKI, ELEKTRONIKI I INFORMATYKI DZIEKAN UL. AKADEMICKA 16 44-100 GLIWICE T: +48 32 237 13 10 T: +48 32 237 24 13 F: +48 32 237 24 13 Dziekan_aei@polsl.pl

Bardziej szczegółowo

Efekty kształcenia dla kierunku studiów INFORMATYKA, Absolwent studiów I stopnia kierunku Informatyka WIEDZA

Efekty kształcenia dla kierunku studiów INFORMATYKA, Absolwent studiów I stopnia kierunku Informatyka WIEDZA Symbol Efekty kształcenia dla kierunku studiów INFORMATYKA, specjalność: 1) Sieciowe systemy informatyczne. 2) Bazy danych Absolwent studiów I stopnia kierunku Informatyka WIEDZA Ma wiedzę z matematyki

Bardziej szczegółowo