Pobierz prezentację
Pobieranie prezentacji. Proszę czekać
1
Dekompozycja metodą rachunku podziałów c.d.
Dekompozycja nierozłączna Pojęcie r - przydatności 1
2
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 ³ PVW taki, że: PU · G £ PF. 2
3
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
4
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
5
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
6
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
7
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
8
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
9
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
10
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
11
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
12
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
13
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
14
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
15
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
16
Przykład ten był liczony na
Przykład (SUL Tabl. 8.3) x1 x2 x3 x4 x5 y1 y2 y3 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 Przykład ten był liczony na wykładzie W07 16
17
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 = = 4 17
18
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 X Xk Xr+1 … Xn Xk+1 Xr … Y 18
19
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
20
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
21
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
22
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 1 0 1 0 0 0 1 1 0 0 1 P2 = P3 = P4 = P5 = PF = 22
23
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
24
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
25
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
26
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
27
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
28
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
29
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
30
Przykład … inna dekompozycja
Skoro {P1, P3, P4} oraz {P3, P4, P5} są 4-przydatne to mogą istnieć dekompozycje: G H x3 x4 x5 x x2 y1 y2 y3 G H x1 x3 x4 x x5 y1 y2 y3 30
31
Przykład … inna dekompozycja
PU = P1P3P4 = PU |PF = x1 x3 x4 x1 x3 x4 x x5 x 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
32
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
33
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 x x1 x2 x3 33
34
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
35
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 x x1 x2 x3 35
36
Do realizacji potrzebnych
Ciekawy przykład… Łatwo sprawdzić, że taka dekompozycja istnieje Dla U = {g1} G1 H y1 y2 G2 x4 x5 x x1 x2 x3 R-przydatność P(g1): Do realizacji potrzebnych jest 5 komórek 3/1 r = 3 36
37
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
38
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
39
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
40
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
41
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
42
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
43
Dekompozycja równoległa - przykład c.d.
43
44
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
45
Przykład – prosty układ kombinacyjny
.type fr .i 10 .o 2 .p 25 .e x0 x2 x3 x9 y0 y1 CL STRATEGIE: a) najpierw dekompozycja szeregowa b) najpierw dekompozycja równoległa 45
46
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
47
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
48
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 " " => o <= "00"; when " " => o <= "00"; when " " => o <= "10"; when " " => o <= "10"; when " " => o <= "01"; when " " => o <= "01"; when " " => o <= "00"; when " " => o <= "01"; when " " => o <= "01"; when " " => o <= "01"; when " " => o <= "10"; when " " => o <= "00"; when " " => o <= "00"; when " " => o <= "01"; when " " => o <= "00"; when " " => o <= "11"; when " " => o <= "11"; when " " => o <= "10"; when " " => o <= "10"; when " " => o <= "01"; when " " => o <= "00"; when " " => o <= "11"; when " " => o <= "00"; when " " => o <= "10"; when " " => o <= "11"; when others => o <= "XX"; end case; end process; end; QuartusII 28 komórek 48
Podobne prezentacje
© 2024 SlidePlayer.pl Inc.
All rights reserved.