Dekompozycja metodą rachunku podziałów c.d.

Slides:



Advertisements
Podobne prezentacje
I część 1.
Advertisements

REALIZACJA REGULATORA PID W UKŁADZIE FPGA
Znaki informacyjne.
Joanna Sawicka Wydział Nauk Ekonomicznych, Uniwersytet Warszawski
Wprowadzenie do informatyki Wykład 6
Podstawy układów logicznych
Obserwowalność System ciągły System dyskretny
Funkcje Barbara Stryczniewicz.
Filtracja obrazów cd. Filtracja obrazów w dziedzinie częstotliwości
Liczby pierwsze.
Michał Łasiński Paweł Witkowski
PROGRAM OPERACYJNY KAPITAŁ LUDZKI Priorytet III, Działanie 3.2
Ksantypa2: Architektura
Algorytm Rochio’a.
I T P W ZPT 1 Jak smakuje Espresso I T P W ZPT 2.
Struktury układów logicznych
UKŁADY SZEREGOWO-RÓWNOLEGŁE
Klasyfikacja systemów
Transformacja Z (13.6).
Pytania konkursowe.
Tytuł prezentacji Warszawa, r..
Wykonawcy:Magdalena Bęczkowska Łukasz Maliszewski Piotr Kwiatek Piotr Litwiniuk Paweł Głębocki.
Technika Mikroprocesorowa 1
Układy kombinacyjne.
Podstawy układów logicznych
Synteza układów sekwencyjnych z (wbudowanymi) pamięciami ROM
Dekompozycja metodą rachunku podziałów c.d.
Zmodyfikowana metoda ekspansji Komputerowe narzędzia syntezy logicznej
Problem kodowania stanów w układach sekwencyjnych (automatach)
Espresso mankamenty.
Problem kodowania x s 1 A B C D Wariant I A = 00 B = 01 C = 10 D = 11
Metody numeryczne SOWIG Wydział Inżynierii Środowiska III rok
MISTRZOSTWA BYDGOSZCZY
Obserwatory zredukowane
Podstawy automatyki 2012/2013Transmitancja widmowa i charakterystyki częstotliwościowe Mieczysław Brdyś, prof. dr hab. inż.; Kazimierz Duzinkiewicz, dr.
II Zadanie programowania liniowego PL
KOLEKTOR ZASOBNIK 2 ZASOBNIK 1 POMPA P2 POMPA P1 30°C Zasada działanie instalacji solarnej.
Analiza wpływu regulatora na jakość regulacji (1)
Minimalizacja funkcji boolowskich
Minimalizacja funkcji boolowskich
Dekompozycja Kalmana systemów niesterowalnych i nieobserwowalnych
1. ŁATWOŚĆ ZADANIA (umiejętności) 2. ŁATWOŚĆ ZESTAWU ZADAŃ (ARKUSZA)
Metoda klasyczna ... to metoda tablicowa, graficzna, której podstawowe
Struktury układów logicznych
Obserwowalność i odtwarzalność
Sterowanie – metody alokacji biegunów II
Stabilność Stabilność to jedno z najważniejszych pojęć dynamiki systemów i teorii sterowania W większości przypadków, stabilność jest warunkiem koniecznym.
-17 Oczekiwania gospodarcze – Europa Wrzesień 2013 Wskaźnik > +20 Wskaźnik 0 a +20 Wskaźnik 0 a -20 Wskaźnik < -20 Unia Europejska ogółem: +6 Wskaźnik.
+21 Oczekiwania gospodarcze – Europa Grudzień 2013 Wskaźnik > +20 Wskaźnik 0 do +20 Wskaźnik 0 do -20 Wskaźnik < -20 Unia Europejska ogółem: +14 Wskaźnik.
EcoCondens Kompakt BBK 7-22 E.
Rachunek różniczkowy funkcji jednej i wielu zmiennych
Prezentacja Multimedialna
II Zadanie programowania liniowego PL
Ekonometryczne modele nieliniowe
Funkcje Barbara Stryczniewicz Co z tym zrobisz Ćwiczenia wstępne Opis funkcji,elementy Własności funkcji 4 Sposoby przedstawiania funkcji 5.
Obliczalność czyli co da się policzyć i jak Model obliczeń sieci liczące dr Kamila Barylska.
Testogranie TESTOGRANIE Bogdana Berezy.
Jak Jaś parował skarpetki Andrzej Majkowski 1 informatyka +
Bramki logiczne i układy kombinatoryczne
ZOSTAŃ SPORTOWYM KOKSEM SP 11 TYM KTÓRY OCZARUJE KOMISJĘ SĘDZIOWSKĄ.
Systemy dynamiczne 2014/2015Obserwowalno ść i odtwarzalno ść  Kazimierz Duzinkiewicz, dr hab. in ż. Katedra In ż ynierii Systemów Sterowania 1 Obserwowalność.
Przerzutniki bistabilne
Kalendarz 2020.
Elementy geometryczne i relacje
Strategia pomiaru.
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.
ZPT f Gate ArrayStandard Cell Programmable Logic Devices PAL, PLA 1 Omówione do tej pory metody syntezy dotyczą struktur bramkowych… Dekompozycja funkcji.
ZPT 1 Dekompozycja nierozłączna Pojęcie r - przydatności Dekompozycja zrównoważona Dekompozycja równoległa.
Pojęcia podstawowe c.d. Rachunek podziałów Elementy teorii grafów
Metoda klasyczna (wg książki Sasao)
Zapis prezentacji:

Dekompozycja metodą rachunku podziałów c.d. Dekompozycja nierozłączna Pojęcie  r - przydatności  1

Dekompozycja nierozłączna V U G H Y W Twierdzenie o dekompozycji jest ogólne… Funkcję F: Bn {0,1}m można zrealizować w strukturze: F = H(U,G(V,W)) wtedy i tylko wtedy, gdy istnieje podział G ³ PVW taki, że: PU · G £ PF. 2

Dekompozycja nierozłączna U, V rozłączne podzbiory X W  U V U G H Y W V U G H Y Dekompozycja rozłączna nie zawsze istnieje Wtedy dobrym wyjściem może być dołożenie argumentów do G 3

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

Przykład dekompozycji nierozłącznej Najpierw dekompozycja rozłączna dla U = {x1,x2,x3}, V = {x4,x5} x1 x2 x3 x4 x5 y1 y2 y3 1 2 3 4 5 6 7 8 9 10 G H x1 x2 x3 x4 y1 y2 y3 x5 PF = 5

Przykład Dla U = {x1,x2,x3}, V = {x4,x5}, PF = PU = PV = PU |PU•PF = 2 3 4 5 6 7 8 9 10 PF = PU = PV = PU |PU•PF = 6

G H Obliczamy ПG PU |PU•PF = PV = Obliczamy ПG: 3,7,9 Fatalnie dekompozycja rozłączna nie istnieje, bo obliczony пG nie spełnia warunku dekompozycji G H x1 x2 x3 x4 y1 y2 y3 x5 PU |PU•PF = PV = Obliczamy ПG: 3,7,9 7

Przykład... Ale nie załamujmy się może istnieje dekompozycja nierozłączna G H x1 x2 x3 x4 x5 coś z U y1 y2 y3 Ale jak wyznaczyć zbiór W ??? 8

Przyjrzyjmy się dokładniej obliczanemu пG Spróbujmy ... x1 x2 x3 x4 x5 y1 y2 y3 1 2 3 4 5 6 7 8 9 10 PU |PU•PF = PV = Przyjrzyjmy się dokładniej obliczanemu пG 3, 7 | 9 3 | 9 7 | 9 x1, x2 x2 9

G H Przykład... Schemat dekompozycji należy zmodyfikować x2 PV’ = x1 x2 x3 x4 x5 y1 y2 y3 Schemat dekompozycji należy zmodyfikować Ale to jest nowa sytuacja: Nowy zbiór V, czyli V’ PV’ = PV  P2 PV = PV’ = 10

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

G H G H Przykład... Dalej standardowo; Wyznaczamy tablice prawdy funkcji G i H G H x1 x2 x3 x4 x5 y1 y2 y3 x1 x2 x3 x4 x5 x2 G H y1 y2 y3 12

Pojęcie r-przydatności Główny mankament dekompozycji U Główny mankament dekompozycji R-przydatność ułatwia wyznaczenie dobrych zbiorów U, dla których istnieje dekompozycja W V Nie znamy odpowiedzi na pytanie dla jakich U, V istnieje dekompozycja G Jest to istotne o tyle, że Tw. o dekompozycji wyznacza dekompozycję dla ustalonych U i V H Y 13

Pojęcie r - przydatności Oznaczenia: g - liczba elementów w największym bloku ilorazu podziałów. G = log2g g = 3 G praktycznie jest liczbą bitów potrzebnych do zakodowania g  = log23 = 2 log25 = 3 14

Pojęcie r - przydatności… Zbiór {P1,...,Pk} jest r-przydatny względem P, gdzie: r = k + (P1...Pk | P  P1...Pk) W dekompozycji przyjmujemy P = PF 15

Przykład ten był liczony na Przykład (SUL Tabl. 8.3) x1 x2 x3 x4 x5 y1 y2 y3 1 0 0 0 0 0 0 0 0 2 0 0 0 1 1 0 1 0 3 0 0 0 1 0 1 0 0 4 0 1 1 0 0 5 0 1 1 0 1 0 0 1 6 0 1 1 1 0 7 0 1 0 0 0 8 1 1 0 0 0 9 1 1 0 1 0 10 1 1 1 0 0 11 1 1 1 1 1 0 1 1 12 1 1 1 1 0 13 1 0 0 0 1 14 1 0 0 1 1 15 1 0 0 1 0 Przykład ten był liczony na wykładzie W07 16

Przykładzik Obliczmy r dla oraz Mamy tu: log25 = 3 P = PF = Mamy tu: PF  P1 = P1 | PF  P1 = g(P1 | P  P1) = 5, Bo 5 nawiasów G(P1 | P  P1) = log25 = 3 czyli r = 1 + 3 = 4 17

Interpretacja r-przydatności Jeśli {P1,...,Pk} jest r-przydatny (k < r) względem PF i jeśli istnieje dekompozycja to blok H ma dokładnie r wejść G H X1 ... Xk Xr+1 … Xn Xk+1 Xr … Y 18

Przykładzik… Skoro P1 (z przykładziku) jest 4-przydatny to możemy się spodziewać tylko takiej dekompozycji: x1 x2 x3 x4 x5 g h w której liczba wejść do bloku h jest dokładnie 4!!! 19

Przykładzik… Natomiast gdyby P1 był 3-przydatny, to moglibyśmy się spodziewać dekompozycji z trzema! tylko wejściami do h x1 x2 x3 x4 x5 g h 20

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

Wracamy do przykładu (z książki SUL) x1 x2 x3 x4 x5 y1 y2 y3 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 0 0 0 0 0 0 0 0 1 1 0 0 0 1 0 0 1 1 0 0 0 1 1 0 1 0 1 1 1 0 0 1 0 0 0 1 1 0 0 0 1 1 0 1 0 1 1 1 0 0 1 1 1 1 1 1 1 1 1 0 1 0 0 0 1 1 0 0 1 1 1 0 0 1 0 0 0 0 0 1 0 1 0 0 0 1 1 0 0 1 P2 = P3 = P4 = P5 = PF = 22

P3, P4, są 3-przydatne względem PF Przykład … P3, P4, są 3-przydatne względem PF x1 x2 x4 x5 g x3 h x1 x2 x3 x5 g x4 h 23

Szukajmy czegoś lepszego Przykład… Szukajmy czegoś lepszego Obliczmy r-przydatność dla zbioru {P3, P4} P3  P4 = log23 = 4 czyli r{P3, P4} = 2 + 24

Przykład … Skoro {P3, P4} jest 4-przydatny, to przyjmując x3, x4 jako wejścia x3 x4 x1 x2 x5 do pełnej realizacji funkcji potrzebne są jeszcze dwa wejścia. g h Z poprzedniego wykładu wiemy, że taka dekompozycja istnieje 25

Przykład – inna dekompozycja tej samej funkcji Ale może uda nam się znaleźć zbiór { Pi, Pj, Pk}, który byłby 4-przydatny. Bardzo ciekawy schemat, 4 wejścia jak poprzednio, ale prostsza G – zaledwie dwu-wejściowa, czyli jakaś prosta bramka G H xi xj xk xm xn y1 y2 y3 26

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

Przykład… inna dekompozycja r-przydatności par {Pi, Pj} dla przykładu z planszy 22 {P1, P3} {P1, P4} {P2, P3} {P2, P4} {P3, P4} {P3, P5} {P4, P5} 4-przydatne pary: 4-przydatnymi trójkami mogą być tylko: a) {P1, P3, P4} b) {P2, P3, P4} c) {P3, P4, P5} Niestety to są trójki podejrzane o 4-przydatność, należy zweryfikować, które są 4-przydatne 28

Przykład… inna dekompozycja W tym celu liczymy odpowiednie iloczyny podziałów P1•P3•P4 = P2•P3•P4 = P2•P3•P4 = P3•P4•P5 = {P1, P3, P4} oraz {P3, P4, P5}. czyli wyłącznie są 4-przydatne r{P1, P3, P4} = 3 + log22 = 4 29

Przykład … inna dekompozycja Skoro {P1, P3, P4} oraz {P3, P4, P5} są 4-przydatne to mogą istnieć dekompozycje: G H x3 x4 x5 x1 x2 y1 y2 y3 G H x1 x3 x4 x2 x5 y1 y2 y3 30

Przykład … inna dekompozycja PU  = P1P3P4 = PU |PF = x1 x3 x4 x1 x3 x4 x2 x5 x2 x5 G G H H y1 y2 y3 y1 y2 y3 Czy potrafimy bezpośrednio z podziału PV obliczyć funkcję G G = x2  x5 31

Ciekawy przykład Dla funkcji F z tab. 1a istnieje dekompozycja: F = H(x4, x5, x6, G1 (x1, x2, x3)) Funkcja G1 jest podana w Tab.1b. x1 x2 x3 x4 x5 x6 y1 y2 1 2 3 4 5 6 7 8 9 Tab. 1a Tab. 1b x1 x2 x3 g1 1 2 3 4 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). 32

Ciekawy przykład… Założonej dekompozycji funkcji F = H(x4, x5, x6, G1 (x1, x2, x3)) odpowiada schemat blokowy jak na rysunku. Tab. 1a x1 x2 x3 x4 x5 x6 y1 y2 1 2 3 4 5 6 7 8 9 G1 H y1 y2 G2 x4 x5 x6 x1 x2 x3 33

Ciekawy przykład… Dla tej dekompozycji funkcja G1 może być opisana następującym podziałem: Tab. 1a x1 x2 x3 x4 x5 x6 y1 y2 1 2 3 4 5 6 7 8 9 Tab. 1b x1 x2 x3 g1 1 2 3 4 1 1 1 1 34

G1 G2 H G2 G1 H Ciekawy przykład… y1 y2 G1 H G2 x4 x5 x6 g1 x1 x2 x3 Dekompozycję można stosować wielokrotnie. Mając policzoną dekompozycję z G1 możemy liczyć kolejną dekompozycję przy założeniu, że g1 jest wejściem niezależnym (pierwotnym). Uzyskalibyśmy dekompozycję z dodatkowym blokiem G, ozn. G2. G1 H y1 y2 G2 x4 x5 x6 x1 x2 x3 35

Do realizacji potrzebnych Ciekawy przykład… Łatwo sprawdzić, że taka dekompozycja istnieje Dla U = {g1} G1 H y1 y2 G2 x4 x5 x6 x1 x2 x3 R-przydatność P(g1): Do realizacji potrzebnych jest 5 komórek 3/1 r = 3 36

G1 H Ciekawy przykład… U = {g1, x4} r = 4 U = {g1, x5} r = 4 Ale może jest jeszcze lepsze rozwiązanie? U = {g1, x4} xj x1 x2 x3 G1 H y1 y2 g1 r = 4 U = {g1, x5} r = 4 37

G2 G1 H Ciekawy przykład… U = {g1, x6} r = 3 To nas zadawala y1 y2 G2 x4 x5 xj x6 x1 x2 x3 38

Ciekawy przykład… W = {x2} U = {g1, x6} Należy wyznaczyć zmienną (zmienne) xj x1 x2 x3 x4 x5 x6 y1 y2 1 2 3 4 5 6 7 8 9 W = {x2} 39

Do realizacji potrzebne są Ciekawy przykład… Dla nowego łatwo wyznaczyć ΠG’:   spełniający warunek PU  ΠG’ ≤ PF. G1 H y1 y2 G2 x2 x4 x5 x6 x1 x2 x3 ΠG Do realizacji potrzebne są 4 komórki 3/1 Poprzednio było 5 40

Komentarz: algorytmy dekompozycji Dekompozycja funkcjonalna (szeregowa) jest mało skuteczna dla zespołów funkcji Szeregowa Y U V X G H Równoległa 41

Dekompozycja równoległa - przykład y1: {x1, x4}, {x4, x5} x1 x2 x3 x4 x5 x6 y1 y2 y3 y4 1 - 2 3 4 5 6 7 8 9 10 y2: {x2, x3, x5} y3: {x1, x4} y4: {x2, x5}, {x5, x6}, {x1, x6}, G = {y1, y3} H= {y2, y4} Xg = {x1, x4} Xh ={x2, x3, x5} 42

Dekompozycja równoległa - przykład c.d. 43

Dekompozycja zrównoważona F X Y BD wykorzystuje naprzemiennie dekompozycję szeregową i dekompozycję równoległą H G X Y1 Y2 X3 X4 Y G H X X1 X2 Dekompozycja szeregowa Dekompozycja równoległa 44

Przykład – prosty układ kombinacyjny .type fr .i 10 .o 2 .p 25 0101000000 00 1110100100 00 0010110000 01 0101001000 01 1110101101 10 0100010101 10 1100010001 00 0011101110 10 0001001110 10 0110000110 10 1110110010 01 0111100000 00 0100011011 00 0010111010 10 0110001110 00 0110110111 11 0001001011 11 1110001110 01 0011001011 01 0010011010 10 1010110010 00 0100110101 11 0001111010 00 1101100100 01 1001110111 11 .e x0 x2 x3 x9 y0 y1 CL STRATEGIE: a) najpierw dekompozycja szeregowa b) najpierw dekompozycja równoległa 45

Dekompozycja funkcji F STRATEGIA: najpierw dekompozycja szeregowa Dekompozycja szeregowa LC x8 x9 x1 x3 x4 x6 2LCs x0 x2 x5 x7 LC y0 2LCs LC y1 Dekompozycja równoległa Dekompozycja szeregowa Łącznie: 7 komórek 46

Dekompozycja funkcji F STRATEGIA: najpierw dekompozycja równoległa x0 x1 x2 x3 x4 x5 x6 x7 x8 x9 LC y0 LC y1 Łącznie : 4 komórki 47

Dekompozycja funkcji F w systemie Quartus library IEEE; use IEEE.STD_LOGIC_1164.all; entity bul is port(i : in std_logic_vector(1 to 10); o : out std_logic_vector(1 to 2)); end bul; architecture arch1 of bul is begin PLA: process(i) case i is when "0101000000" => o <= "00"; when "1110100100" => o <= "00"; when "0010110000" => o <= "10"; when "0101001000" => o <= "10"; when "1110101101" => o <= "01"; when "0100010101" => o <= "01"; when "1100010001" => o <= "00"; when "0011101110" => o <= "01"; when "0001001110" => o <= "01"; when "0110000110" => o <= "01"; when "1110110010" => o <= "10"; when "0111100000" => o <= "00"; when "0100011011" => o <= "00"; when "0010111010" => o <= "01"; when "0110001110" => o <= "00"; when "0110110111" => o <= "11"; when "0001001011" => o <= "11"; when "1110001110" => o <= "10"; when "0011001011" => o <= "10"; when "0010011010" => o <= "01"; when "1010110010" => o <= "00"; when "0100110101" => o <= "11"; when "0001111010" => o <= "00"; when "1101100100" => o <= "10"; when "1001110111" => o <= "11"; when others => o <= "XX"; end case; end process; end; QuartusII 28 komórek 48