ZPT 1 Dekompozycja nierozłączna Pojęcie r - przydatności Dekompozycja zrównoważona Dekompozycja równoległa.

Slides:



Advertisements
Podobne prezentacje
Niezawodności sieci telekomunikacyjnych
Advertisements

REALIZACJA REGULATORA PID W UKŁADZIE FPGA
Teoria układów logicznych
Metody numeryczne część 1. Rozwiązywanie układów równań liniowych.
Schemat blokowy M START KONIEC
Równanie różniczkowe zupełne i równania do niego sprowadzalne
mgr inż. Ryszard Chybicki Zespół Szkół Ponadgimnazjalnych
S – student, P – przedmiot, W – wykładowca
Badania operacyjne. Wykład 1
Badania operacyjne. Wykład 2
Michał Łasiński Paweł Witkowski
Sztuczne sieci neuronowe
Materiały pochodzą z Platformy Edukacyjnej Portalu
ALGORYTMY GEOMETRYCZNE.
WYKŁAD 8. Siła spójności A,B – dowolne podzbiory V(G)
I T P W ZPT 1 Jak smakuje Espresso I T P W ZPT 2.
Struktury układów logicznych
Zależności funkcyjne.
LITERATURA ANEKSY. STRUKTURA DZIAŁU TEORETYCZNEGO DEFINICJE WAŻNIEJSZYCH POJĘĆ HISTORIA ROZWOJU ZJAWISKA ANALIZA TEORII NAUKOWYCH PUNKTY WYJŚCIOWE O CELU.
Układy kombinacyjne.
Podstawy układów logicznych
Synteza układów sekwencyjnych z (wbudowanymi) pamięciami ROM
Andrzej Jędryczkowski Nie da się napisać większego programu bez podziału go na części zwane podprogramami. Podprogram to wyróżniona część programu.
Dekompozycja metodą rachunku podziałów c.d.
szczególnych Granice ciągów. Postaraj się przewidzieć
Elementy Rachunku Prawdopodobieństwa i Statystyki
Własności funkcji liniowej.
Problem kodowania x s 1 A B C D Wariant I A = 00 B = 01 C = 10 D = 11
Obserwatory zredukowane
Statystyka – zadania 4 Janusz Górczyński.
Szereg czasowy – czy trend jest liniowy?
Teoria sterowania 2011/2012Sterowanie – metody alokacji biegunów III Kazimierz Duzinkiewicz, dr hab. in ż. Katedra In ż ynierii Systemów Sterowania 1 Sterowanie.
Sterowanie – metody alokacji biegunów II
Materiały pochodzą z Platformy Edukacyjnej Portalu Wszelkie treści i zasoby edukacyjne publikowane na łamach Portalu
Materiały pochodzą z Platformy Edukacyjnej Portalu
FUNKCJE Opracował: Karol Kara.
Sterowanie – metody alokacji biegunów III
SYSTEMY EKSPERTOWE I SZTUCZNA INTELIGENCJA
Podstawy Techniki Cyfrowej
URZĄDZENIA TECHNIKI KOMPUTEROWEJ
Dekompozycja metodą rachunku podziałów c.d.
Własności bramek logicznych RÓZGA DARIUSZ 20061
I T P W ZPT 1 Kodowanie stanów to przypisanie kolejnym stanom automatu odpowiednich kodów binarnych. b =  log 2 |S|  Problem kodowania w automatach Minimalna.
WYKŁAD 06 Programowanie dynamiczne Grażyna Mirkowska.
Kwadrat i sześcian Czy to tylko geometria?.
Metody nieinkluzyjne: Metoda iteracji prostej.
I T P W ZPT Konwerter BIN2BCD 1 LK „8” DEC LK = 0 LOAD1 R3R2R1  K S3 S2S1 A B „5” K  5 MUX 1 0 A R4 LOAD2 Y = LD B LB „3” US Układ wykonawczy Układ sterujący.
Warstwowe sieci jednokierunkowe – perceptrony wielowarstwowe
I T P W ZPT 1. I T P W ZPT 2 Synteza logicznaInżynieria informacji Dekompozycja funkcjonalna Odwzorowanie technologiczne FPGA Hierarchiczne podejmowanie.
I T P W ZPT 1 Minimalizacja funkcji boolowskich c.d. Pierwsze skuteczne narzędzie do minimalizacji wieloargumentowych i wielowyjściowych funkcji boolowskich.
1 Tadeusz Łuba Mariusz Rawski Paweł Tomaszewicz Politechnika Warszawska Instytut Telekomunikacji Układy programowalne – nowe oblicze techniki cyfrowej.
Układy logiczne – układy cyfrowe
ZPT Evatronix Kontroler Ethernet MAC (Media Access Control) 10/100Mbit spełniający rolę rolę podstawowej arterii wymiany danych pomiędzy urządzeniami sterującymi.
ZPT f Gate ArrayStandard Cell Programmable Logic Devices PAL, PLA 1 Omówione do tej pory metody syntezy dotyczą struktur bramkowych… Dekompozycja funkcji.
Pojęcia podstawowe c.d. Rachunek podziałów Elementy teorii grafów
DALEJ Sanok Spis treści Pojęcie funkcji Sposoby przedstawiania funkcji Miejsce zerowe Monotoniczność funkcji Funkcja liniowa Wyznaczanie funkcji liniowej,
Zajęcia 4-5 Gęstość i objętość. Prawo gazów doskonałych. - str (rozdziały 2 i 3, bez 2.2) - str (dot. gazów, przykłady str zadania)
STATYSTYKA – kurs podstawowy wykład 8 dr Dorota Węziak-Białowolska Instytut Statystyki i Demografii.
STATYSTYKA – kurs podstawowy wykład 11
I T P W ZPT 1 Realizacje funkcji boolowskich Omawiane do tej pory metody minimalizacji funkcji boolowskich związane są z reprezentacją funkcji w postaci.
I T P W ZPT 1 Jak usprawnić obliczanie MKZ? W celu sprawniejszego obliczania MKZ wprowadzimy skuteczniejszą metodę wg par zgodnych Znamy metodę wg par.
Elementy cyfrowe i układy logiczne
Pojęcia podstawowe Algebra Boole’a … Tadeusz Łuba ZCB 1.
Układy logiczne – układy cyfrowe
Synteza logiczna w projektowaniu układów cyfrowych
Aktualne problemy syntezy logicznej
Metoda klasyczna (wg książki Sasao)
Wstęp do Informatyki - Wykład 6
Projektowanie systemów cyfrowych z wykorzystaniem języka VHDL
Teoria sterowania Materiał wykładowy /2017
Zapis prezentacji:

ZPT 1 Dekompozycja nierozłączna Pojęcie r - przydatności Dekompozycja zrównoważona Dekompozycja równoległa

ZPT V U G H Y W Funkcję F: B n {0,1} m można zrealizować w strukturze: F = H(U,G(V,W)) wtedy i tylko wtedy, gdy istnieje podział  G  P V  W taki, że: P U ·  G  P F. Twierdzenie o dekompozycji jest ogólne i uwzględnia przypadek tzw. dekompozycji nierozłącznej Dekompozycja nierozłączna 2

ZPT U, V rozłączne podzbiory X V U G H Y Wtedy dobrym wyjściem może być dołożenie do G dodatkowych argumentów ze zbioru W W  U V U G H Y W Dekompozycja nierozłączna 3 jest ważna… nie zawsze istnieje! …gdyż dekompozycja rozłączna

ZPT Rachunek podziałów umożliwia wyznaczenie zbioru W !!! Ale jak wyznaczyć zbiór W Nowy problem V U G H Y W 4

ZPT Przykład dekompozycji nierozłącznej Najpierw dekompozycja rozłączna dla U = {x 1,x 2,x 3 }, V = {x 4,x 5 } x1x1 x2x2 x3x3 x4x4 x5x5 y1y1 y2y2 y3y P F = G H x 1 x 2 x 3 x4x4 y 1 y 2 y 3 x 5 5

ZPT Przykład Dla U = {x 1,x 2,x 3 }, V = {x 4,x 5 }, x1x1 x2x2 x3x3 x4x4 x5x5 y1y1 y2y2 y3y P F = P U |P U P F = P V = PU =PU = 6

ZPT Obliczamy П G P U |P U P F = P V = 3,7,9 Fatalnie dekompozycja rozłączna nie istnieje, bo obliczony п G nie spełnia warunku dekompozycji G H x 1 x 2 x 3 x4x4 y 1 y 2 y 3 x 5 ПG:ПG: 7

ZPT Przykład... G H x 1 x 2 x 3 x 4 x 5 coś z U y 1 y 2 y 3 Ale nie załamujmy się może istnieje dekompozycja nierozłączna Ale jak wyznaczyć zbiór W ??? 8

ZPT Spróbujmy... P U |P U P F = P V = 3 | 9 7 | 9 x 1, x 2 x2x2 3, 7 | 9 x1x1 x2x2 x3x3 x4x4 x5x5 y1y1 y2y2 y3y Przyjrzyjmy się dokładniej obliczanemu п G 9 Czyli zmienna x 2 rozdziela wektory 3, 7 od 9

ZPT Przykład... x2x2 G H x 1 x 2 x 3 x 4 x 5 y 1 y 2 y 3 Ale to jest nowa sytuacja: Nowy zbiór V, czyli V’ P V’ = PV  P2PV  P2 P V = P V’ = Schemat dekompozycji należy zmodyfikować 10

ZPT Przykład... Ale ten podział jest drobniejszy, może teraz będzie szansa na znalezienie dobrego п G …spełnia warunek twierdzenia P U   G  P F Udało się Jak zwykle obliczamy Π G. Sposób postępowania jest taki sam…czyli P U |P U P F = P V’ = 11

ZPT Przykład... G H x 1 x 2 x 3 x 4 x 5 y 1 y 2 y 3 Dalej standardowo; Wyznaczamy tablice prawdy funkcji G i H G H x 1 x 2 x 3 x 4 x 5 y 1 y 2 y 3 x2x2 12

ZPT V U G H Y W Nie znamy odpowiedzi na pytanie dla jakich U, V istnieje dekompozycja Główny mankament dekompozycji R-przydatność ułatwia wyznaczenie dobrych zbiorów U, dla których istnieje dekompozycja Pozwala oszacować – zapisane w formie podziałów - argumenty zbioru U pod względem „jakości” dekompozycji 13 Jest to istotne o tyle, że Tw. o dekompozycji wyznacza dekompozycję dla ustalonych U i V Pojęcie r - przydatności

ZPT Oznaczenia:  - liczba elementów w największym bloku ilorazu podziałów.  =  log 2   a   zaokrąglenie w górę do najbliższej całkowitej  jest najmniejszą liczbą bitów potrzebnych do zakodowania  14 Pojęcie r - przydatności   =  log 2 3  = 2  log 2 5  = 3

ZPT Pojęcie r - przydatności… Zbiór podziałów {P 1,...,P k } jest r-przydatny względem P, gdzie: r = k +  (P 1...P k | P  P 1...P k ) 15 W dekompozycji przyjmujemy P = P F

ZPT x 1 x 2 x 3 x 4 x 5 y 1 y 2 y Przykład (Synteza logiczna, przykład 6.3, str. 140) 16 Przykład ten był liczony na wykładzie W07

ZPT Przykładzik Obliczmy r dla P 1 = oraz P = P F = Mamy tu: P F  P 1 = P 1 | P F  P 1 =  (P 1 | P  P 1 ) = 5, Bo 5 nawiasów  (P 1 | P  P 1 ) =  log 2 5  = 3 czyli r = = 4 17

ZPT Interpretacja r-przydatności 18 U = …… Y G  … W  U V = Jeżeli zbiór { } jest r-przydatny (k < r) względem P F, to istnieje dekompozycja F = H(U,G(V,W)), w której blok H ma dokładnie r wejść oraz W  U

ZPT Interpretacja r-przydatności 19 V U G H Y W W  U Jeżeli zbiór { } jest r-przydatny (k < r) względem P F, to istnieje dekompozycja F = H(U,G(V,W)), w której blok H ma dokładnie r wejść oraz W  U Nawet w najgorszym przypadku jest to rozkład dużego układu na dwa mniejsze

ZPT Twierdzenie o r - przydatności Jeśli {P 1,...,P k } jest r-przydatny (k < r) względem P, to istnieje zbiór podziałów {P k+1,...,P r }, dla których: P 1...P k  P k+1...P r  P natomiast nie istnieje {P’ k+1,...,P’ r-1 } taki, że: P 1...P k  P’ k+1...P’ r-1  P Inaczej mówiąc, warunkiem koniecznym i wystarczającym na to, aby: P 1...P k  P k+1...P m  P jest m-przydatność zbioru {P 1,...,P k } względem P. 20

ZPT Wracamy do przykładu (ze skryptu Synteza logiczna) x1x2x3x4x5x1x2x3x4x5 y1y2y3y1y2y P 1 = P 2 = P 3 = P 4 = P 5 = P F = r = 4 r = 3 r = 4 21 Jak policzymy r-przydatności dla każdego P i

ZPT Przykład … P 3, P 4, są 3-przydatne względem P F x 1 x 2 x 4 x 5 g x3x3 h x 1 x 2 x 3 x 5 g x4x4 h 22

ZPT Przykład… P 3  P 4 = czyli r{P 3, P 4 } = 2 + Szukajmy czegoś lepszego  log 2 3  = 4 Obliczmy r-przydatność dla zbioru {P 3, P 4 } 23

ZPT Przykład … Skoro {P 3, P 4 } jest 4-przydatny, to przyjmując x 3, x 4 jako wejścia bezpośrednie x 1 x 2 x 5 g x 3 x 4 h do pełnej realizacji funkcji potrzebne są jeszcze dwa wejścia. Z poprzedniego wykładu wiemy, że taka dekompozycja istnieje 24

ZPT Przykład – inna dekompozycja tej samej funkcji Ale może uda nam się znaleźć zbiór { P i, P j, P k }, który byłby 4-przydatny. G H x i x j x k x m x n y 1 y 2 y 3 Bardzo ciekawy schemat, 4 wejścia jak poprzednio, ale prostsza G – zaledwie dwu-wejściowa, czyli jakaś prosta bramka 25 Duże znaczenie praktyczne takiej realizacji

ZPT Pożyteczne fakty Można wykazać, że jeśli P = {P 1,...,P k } jest m-przydatny względem P F, to każdy podzbiór z P jest m’-przydatny, gdzie m’  m. Tym samym warunkiem koniecznym na to, aby P = {P 1,...,P k } był m-przydatny względem P F, jest r- przydatność podzbiorów z P taka, że dla każdego P’ zawartego w P, r(P’)  m. 26

ZPT Przykład… inna dekompozycja r-przydatności par {P i, P j } dla przykładu z planszy 21 a) {P 1, P 3, P 4 } 4-przydatnymi trójkami mogą być tylko: b) {P 2, P 3, P 4 } c) {P 3, P 4, P 5 } 27 {P 1, P 3 } {P 1, P 4 } {P 2, P 3 } {P 2, P 4 } {P 3, P 4 } {P 3, P 5 } {P 4, P 5 } 4-przydatne pary: Niestety to są trójki podejrzane o 4- przydatność, należy zweryfikować, które są 4-przydatne Pozostałe są 5-przydatne!

ZPT Przykład… inna dekompozycja W tym celu liczymy odpowiednie iloczyny podziałów P 1P 3P 4 = P 2P 3P 4 = P 3P 4P 5 = {P 1, P 3, P 4 } oraz {P 3, P 4, P 5 }.czyli wyłącznie są 4-przydatne r{P 1, P 3, P 4 } = 3 +  log 2 2  = 4 28

ZPT Przykład … inna dekompozycja G H x 1 x 3 x 4 x 2 x 5 y 1 y 2 y 3 Skoro {P 1, P 3, P 4 } oraz {P 3, P 4, P 5 } są 4-przydatne to mogą istnieć dekompozycje: G H x 3 x 4 x 5 x 1 x 2 y 1 y 2 y 3 29

ZPT Przykład … inna dekompozycja P U = P 1 P 3 P 4 = P U |P F = G H x 1 x 3 x 4 x 2 x 5 y 1 y 2 y 3 Czy potrafimy bezpośrednio z podziału P V obliczyć funkcję G G H x 1 x 3 x 4 x 2 x 5 y 1 y 2 y 3 G = x 2  x 5 30

ZPT Przykład 6.7 „Synteza logiczna” Dla funkcji F z tab. 1a istnieje dekompozycja: F = H(x 4, x 5, x 6, G 1 (x 1, x 2, x 3 )) Funkcja G 1 jest podana w Tab.1b. x1x1 x2x2 x3x3 x4x4 x5x5 x6x6 y1y1 y2y Tab. 1a x1x1 x2x2 x3x3 g1g Tab. 1b Należy obliczyć dekompozycję szeregową zapewniającą realizację tej funkcji na minimalnej liczbie komórek logicznych o wymiarach 3/1 (3 wejścia, 1 wyjście). 31

ZPT Założonej dekompozycji funkcji F = H(x 4, x 5, x 6, G 1 (x 1, x 2, x 3 )) odpowiada schemat blokowy jak na rysunku. x1x1 x2x2 x3x3 x4x4 x5x5 x6x6 y1y1 y2y Tab. 1a G1G1 H y 1 y 2 G2G2 x 4 x 5 x 6 x 1 x 2 x 3 32 Przykład 6.7 „Synteza logiczna”

ZPT x1x1 x2x2 x3x3 x4x4 x5x5 x6x6 y1y1 y2y x1x1 x2x2 x3x3 g1g Tab. 1a Tab. 1b Dla tej dekompozycji funkcja G 1 może być opisana następującym podziałem: Przykład 6.7 „Synteza logiczna”

ZPT 34 y 1 y 2 H G2G2 x 4 x 5 x 6 g1g1 G1G1 x 1 x 2 x 3 Mając policzoną dekompozycję z G 1 możemy liczyć kolejną dekompozycję przy założeniu, że g 1 jest wejściem niezależnym (pierwotnym). Uzyskamy dekompozycję z dodatkowym blokiem G, ozn. G 2. G1G1 H y 1 y 2 G2G2 x 4 x 5 x 6 x 1 x 2 x 3 g1g1 Oczywiście trzeba sprawdzić, czy taka dekompozycja istnieje. U = {g 1 }, V = {x 4,x 5,x 6 } Przykład 6.7 „Synteza logiczna”

ZPT Dla U = {g 1 } r = 3 G1G1 H y 1 y 2 G2G2 x 4 x 5 x 6 x 1 x 2 x 3 Łatwo sprawdzić, że taka dekompozycja istnieje R-przydatność P(g 1 ): Do realizacji potrzebnych jest 5 komórek 3/1 35 g1g1 Przykład 6.7 „Synteza logiczna”

ZPT U = {g 1, x 4 } r = 4 U = {g 1, x 5 } r = 4 Ale może jest jeszcze lepsze rozwiązanie? 36 x j x 1 x 2 x 3 G1G1 H y 1 y 2 g1g1 x j x 1 x 2 x 3 G1G1 H y 1 y 2 G2G2 P U = P(g 1 ) ∙ P(x 4 ) Przykład 6.7 „Synteza logiczna”

ZPT U = {g 1, x 6 } r = 3 G1G1 H y 1 y 2 G2G2 x 4 x 5 x k x 6 x 1 x 2 x 3 37 To nas zadowala P U = P(g 1 ) ∙ P(x 6 ) P(x 6 ) = Przykład 6.7 „Synteza logiczna”

ZPT U = {g 1, x 6 } W = {x 2 } x1x1 x2x2 x3x3 x4x4 x5x5 x6x6 y1y1 y2y Należy wyznaczyć zmienną (zmienne) x k 38 V = {x 4, x 5 } Nie można rozdzielić (5,6) od (9) Przykład 6.7 „Synteza logiczna”

ZPT łatwo wyznaczyć Π G : G1G1 H y 1 y 2 G2G2 x 2 x 4 x 5 x 6 x 1 x 2 x 3 ΠGΠG Do realizacji potrzebne są 4 komórki 3/1 Poprzednio było 5 39 Dla nowego V’ = {x 4, x 5, x 2 } spełniający warunek P U  Π G’ ≤ P F SUKCES Przykład 6.7 „Synteza logiczna”

ZPT 40 Komentarz: algorytmy dekompozycji Równoległa Skuteczność dekompozycji funkcjonalnej (szeregowej) maleje ze wzrostem liczby wyjść zespołu funkcji Szeregowa Y U V X G H Zapobiec tej sytuacji można stosując tzw. dekompozycję…

ZPT 41 Dekompozycja równoległa… X Y F Y = Y g  Y h XhXh H XgXg YgYg G X YhYh 41 Rozłączne podzbiory wyjść… Do rozwiązania tego problemu można zastosować redukcję argumentów

ZPT 42 y 1 : {x 1, x 2, x 6 } y 2 : {x 3, x 4 } y 3 : {x 1, x 2, x 4, x 5, x 8 } {x 1, x 2, x 4, x 6, x 8 } y 4 : {x 1, x 2, x 3, x 4, x 7 } y 5 : {x 1, x 2, x 4 } y 6 : {x 1, x 2, x 6, x 8 } Dekompozycja równoległa - przykład 42

ZPT 43 y 1 : {x 1, x 2, x 6 } y 2 : {x 3, x 4 } y 3 : {x 1, x 2, x 4, x 5, x 8 } {x 1, x 2, x 4, x 6, x 8 } y 4 : {x 1, x 2, x 3, x 4, x 7 } y 5 : {x 1, x 2, x 4 } y 6 : {x 1, x 2, x 6, x 8 } X g = {x 1, x 2, x 4, x 6, x 8 }X h = {x 1, x 2, x 3, x 4, x 7 } G = {y 1, y 3, y 6 }H= {y 2, y 4,y 5 } Dekompozycja równoległa - przykład 43

ZPT x 1 x 2 x 3 x 4 x 5 x 6 x 7 x 8 HG y 1 y 3 y 6 y 2 y 4 y 5 01 – y6y6 y3y3 y1y1 x9x9 x6x6 x4x4 x2x2 x1x1 – y5y5 y4y4 y2y2 x7x7 x4x4 x3x3 x2x2 x1x1 Dekompozycja równoległa - przykład 44

ZPT Dekompozycja zrównoważona BD wykorzystuje naprzemiennie dekompozycję szeregową i dekompozycję równoległą F X Y Y G H X X1X1 X2X2 HG X Y1Y1 Y2Y2 X3X3 X4X4 Dekompozycja szeregowa Dekompozycja równoległa 45

ZPT Przykład – prosty układ kombinacyjny.type fr.i 10.o 2.p e x0x2x3x9x0x2x3x9 CL y0y1y0y1 STRATEGIE: a) najpierw dekompozycja szeregowa b) najpierw dekompozycja równoległa 46

ZPT Dekompozycja funkcji F STRATEGIA: najpierw dekompozycja szeregowa LC y0y0 x 8 x 9 x 1 x 3 x 4 x 6 2LCs x 0 x 2 x 5 x 7 Dekompozycja szeregowa Dekompozycja równoległa 2LCs LC y1y1 Łącznie: 7 komórek Dekompozycja szeregowa 47

ZPT Dekompozycja funkcji F STRATEGIA: najpierw dekompozycja równoległa LC y1y1 x 0 x 1 x 2 x 3 x 4 x 5 x 6 x 7 x 8 x 9 LC y0y0 Łącznie : 4 komórki 48

ZPT Dekompozycja funkcji F w systemie Quartus QuartusII library IEEE; use IEEE.STD_LOGIC_1164.all; entity bul is port(i : in std_logic_vector(1 to 10); port(i : in std_logic_vector(1 to 10); o : out std_logic_vector(1 to 2)); o : out std_logic_vector(1 to 2)); end bul; architecture arch1 of bul is begin PLA: process(i) begin begin case i is case i is when " " => o o <= "00"; when " " => o o <= "00"; when " " => o o <= "10"; when " " => o o <= "10"; when " " => o o <= "01"; when " " => o o <= "01"; when " " => o o <= "00"; when " " => o o <= "01"; when " " => o o <= "01"; when " " => o o <= "01"; when " " => o o <= "10"; when " " => o o <= "00"; when " " => o o <= "00"; when " " => o o <= "01"; when " " => o o <= "00"; when " " => o o <= "11"; when " " => o o <= "11"; when " " => o o <= "10"; when " " => o o <= "10"; when " " => o o <= "01"; when " " => o o <= "00"; when " " => o o <= "11"; when " " => o o <= "00"; when " " => o o <= "10"; when " " => o o <= "11"; when others => o o <= "XX"; end case; end case; end process; end process;end; komórek