1 / 32

Metoda klasyczna

U. V. x 1 x 2 x 3 x 4 x 5. 000. 001.   . 00. 0. 1. 01. 1. 0.   . Metoda klasyczna. ... to metoda tablicowa, graficzna, której podstawowe operacje wykonywane są na tzw. tablicy dekompozycji.

heinz
Download Presentation

Metoda klasyczna

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. U V x1x2x3 x4x5 000 001  00 0 1 01 1 0    Metoda klasyczna ... to metoda tablicowa, graficzna, której podstawowe operacje wykonywane są na tzw. tablicy dekompozycji Tablicą dekompozycji funkcji f nazywamy macierz dwuwymiarową o kolumnach etykietowanych wartościami zmiennych funkcji f ze zbioru V oraz o wierszach etykietowanych wartościami zmiennych funkcji f ze zbioru U Elementami macierzy M są wartości, jakie przyjmuje funkcja f na wektorach złożonych z odpowiednich etykiet i-tego wierszai j-tej kolumny.

  2. Jak obliczać dekompozycję Relacja zgodności kolumn

  3. Relacja zgodności kolumn Kolumny {kr, ks} są zgodne, jeśli nie istnieje wiersz i, dla którego elementy Kir, Kis są określone i różne, tzn. odpowiednio: 0, 1 albo 1, 0.

  4. Relacja zgodności kolumn Kolumny zgodne można „sklejać” {K1,K4,K7} {K5,K6}

  5. Obliczanie dekompozycji... Wyznaczyć relację zgodności kolumn, czyli wypisać wszystkie pary zgodne (albo sprzeczne). Wyznaczyć rodzinę maksymalnych zbiorów kolumn zgodnych (maksymalnych klas zgodnych – MKZ). Z rodziny tej wyselekcjonować minimalną podrodzinę (w sensie liczności) rozłącznych zbiorów zgodnych pokrywającą zbiór K wszystkich kolumn tablicy dekompozycji.

  6. cde a b 000 001 010 011 100 101 110 111 a b c d e 00 1 – 0 1 – 0 1 0 01 – – – – 1 1 – – 10 – 0 1 0 0 – 0 1 11 0 1 – – – – – – K0 K1 K2 K3 K4 K5 K6 K7 Przykład Istnieje dekompozycja ! f = h(a,b,g1(c,d,e), g2(c,d,e))

  7. cde a b 000 001 010 011 100 101 110 111 00 1 – 0 1 – 0 1 0 01 – – – – 1 1 – – 10 – 0 1 0 0 – 0 1 11 0 1 – – – – – – K0 K1 K2 K3 K4 K5 K6 K7 Przykład - obliczanie klas zgodności Pary zgodne: 0,30,40,6 1,31,41,51,6 2,52,7 3,43,6 4,54,6 5,7 K0, K1 sprzeczna K0, K2 sprzeczna K0, K3 zgodna K0, K4 zgodna

  8. Metoda bezpośrednia Pary zgodne: a, bb, ca, c {a, b, c} a, b, ca, b, db, c, da, c, d {a, b, c, d} i.t.d.

  9. Przykład - klasy zgodności… …policzymy najprostszą metodą 0,30,40,61,31,41,51,62,52,73,43,64,54,65,7 0,3,4 0,3,6 Maksymalne klasy zgodności: 0,4,6 1,3,4 1,3,6 0,3,4,6 1,4,5 1,4,6 2,5,7 3,4,6 1,3,4,6 1,4,5 2,5,7

  10. Komentarz Powinniśmy pamiętać, że są jeszcze inne metody obliczania MKZ: • metoda kolorowania grafu b) metodę iteracyjną 0 Przykład 2.7 i 2.8 (str. 34) 7 1 6 2 3 5 4

  11. Komentarz: formalnie obliczamy pokrycie.. Ostatecznie: 0,3,4,6 1,5 2,7 Kolumny powtarzające się usuwamy Przykład c.d. Z rodziny MKZ wybieramy minimalną liczbę klas (lub podklas) pokrywającą zbiór wszystkich kolumn. Wybieramy: 0,3,4,6 0,3,4,6 1,3,4,6 1,4,5 1,4,5 2,5,7 2,5,7

  12. Sklejanie kolumn – funkcja h {K0,K3,K4,K6} {K1,K5} {K2,K7} Kodowanie? Może być dowolne

  13. c d e g1 g2 0 0 0 0 0 0 1 1 0 0 1 0 0 0 0 1 1 0 0 0 0 0 1 0 1 1 0 1 0 1 0 1 0 1 1 1 1 1 1 1 Kodowanie kolumn – funkcja g

  14. c d e g1 g2 0 0 0 0 0 0 1 1 0 0 a b c d e 1 0 0 0 0 g1g2 ab 00 01 11 10 1 1 0 0 0 00 1 0 0 - 01 1 1 - - 0 0 1 0 1 10 0 0 1 - 11 0 1 - - 1 0 1 0 1 0 1 0 1 1 1 1 1 1 1 Co uzyskaliśmy Opis funkcji g i h tablicami prawdy wystarczy dla realizacji w strukturach FPGA Ale funkcje g i h można obliczyć jawnie… czyli po procesie dekompozycji można je minimalizować

  15. a b c d e uzyskując w rezultacie … …strukturę na bramkach Do tego zagadnienia wrócimy pod koniec wykładu

  16. Ten sam przykład metodą r. p. U = {a, b} V = {c, d, e} Przy takich U i V podziały PU, PV, PF, a także podział ilorazowy PU|PF można obliczyć bezpośrednio z tablicy dekompozycji. Wiersze reprezentują bloki PU, a kolumny bloki PV.

  17. Ten sam przykład c.d. W celu obliczenia PU|PF – jawne obliczenie PF jest niepotrzebne.

  18. Ten sam przykład c.d. Obliczenie G: (9,11,12,13) (10,14) (15) 9,16 3,11 7,12 5,13 2,10 6,14 4,8 (1,15)

  19. x7 x3 x5 x8 x6 x9 x7 x3 x8 x5 x9 x6 x10 x10 f f 1 0 1 1 1 1 0 0 1 1 1 1 0 1 0 0 0 1 0 1 0 1 0 0 1 0 1 0 1 0 0 0 1 1 1 0 0 1 0 0 0 0 1 1 1 1 0 0 1 0 1 1 1 0 1 0 1 1 0 1 0 1 1 0 0 0 1 0 0 1 1 0 0 0 1 0 0 1 1 0 0 1 1 0 0 1 0 0 0 0 1 0 1 1 0 0 0 1 1 1 1 0 0 0 1 1 0 0 1 1 0 0 0 0 0 0 1 1 0 0 0 1 1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 1 0 0 V U 1 0 1 1 1 1 1 1 1 1 1 1 0 1 1 1 0 1 0 0 0 1 0 1 0 0 1 0 1 0 0 1 0 0 1 0 1 1 1 1 0 1 1 0 0 1 1 1 0 0 0 0 1 0 0 1 0 1 0 0 0 0 0 1 1 1 1 0 0 1 1 1 0 0 1 1 1 1 1 1 0 1 1 1 0 0 0 1 1 0 0 0 1 1 0 1 0 0 0 1 0 1 1 1 1 0 1 0 0 0 1 1 1 0 0 1 1 0 1 1 1 1 0 1 0 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 1 0 0 0 1 1 0 0 0 0 0 0 1 0 1 1 0 1 0 1 1 0 1 0 0 1 1 1 1 1 1 1 1 0 0 1 1 1 0 0 1 1 1 1 1 0 0 1 1 1 0 0 1 1 1 0 0 0 1 0 1 1 1 0 1 1 1 1 1 1 1 1 1 1 0 1 1 1 0 0 0 1 1 0 1 0 1 1 1 0 0 0 1 Przykład (bardziej skomplikowany) - TL27 .type fr .i 10 .o 1 .p 25 0010111010 0 1010010100 0 0100011110 0 1011101011 0 1100010011 0 0100010110 0 1110100110 0 0100110000 0 0101000010 0 0111111011 1 0000010100 1 1101110011 1 0100100000 1 0100011111 1 0010000110 1 1111010001 1 1111101001 1 1111111111 1 0010000000 1 1101100111 1 0010001111 1 1111100010 1 1010111101 1 0110000110 1 0100111000 1 .e

  20. Tablica dekompozycji dla funkcji TL27 0 0 0 0 0 0 1 0 0 0 1 1 0 1 0 0 0 1 0 1 0 1 1 0 0 1 1 1 1 0 0 0 1 0 0 1 1 0 1 0 1 0 1 1 1 1 0 0 1 1 0 1 1 1 1 0 1 1 1 1 000 – – – 1 – 0 – 1 – – 1 – – – – 001 0 – 0 – – – 1 – – – – 1 – – – 010 – – – – – – – – 0 – – – – – 011 – 0 – – 1 – – 1 – – – 0 – – – 100 – – – – – 1 – – – – – – 1 – – 101 – – – – – – – – – – – – 0 0 1 110 – – – – – – – – – – – – – – 1 111 – – 1 – – – – – 1 – – – – – 1 x3 x5 x6 x10 x7x8x9 1 20

  21. 0 0 0 0 0 0 1 0 0 0 1 1 0 1 0 0 0 1 0 1 0 1 1 0 0 1 1 1 1 0 0 0 1 0 0 1 1 0 1 0 1 0 1 1 1 1 0 0 1 1 0 1 1 1 1 0 1 1 1 1 000 – – – 1 – 0 – 1 – – 1 – – – – x3 x5 x6 x10 001 0 – 0 – – – 1 – – – – 1 – – – 010 – – – – – – – – 0 – – – – – x7x8x9 011 – 0 – – 1 – – 1 – – – 0 – – – 1 100 – – – – – 1 – – – – – – 1 – – 101 – – – – – – – – – – – – 0 0 1 110 – – – – – – – – – – – – – – 1 111 – – 1 – – – – – 1 – – – – – 1 Tablica dekompozycji dla funkcji TL27

  22. 0 1 000 1 0 001 0 1 010 0 011 1 0 100 – 1 101 1 0 110 1 – 111 1 – Tablica dekompozycji dla funkcji TL27 H G g x7x8x9 1

  23. Praktyczny wynik dekompozycji funkcji TL27 Tylko 2 komórki 25 kom. (FLEX) lub 27 kom. (Stratix)!!! Niesamowita skuteczność procedur dekompozycji!!! QUARTUS

  24. c d e g1 g2 0 0 0 0 0 0 1 1 0 0 a b c d e 1 0 0 0 0 g1g2 ab 00 01 11 10 1 1 0 0 0 00 1 0 0 - 01 1 1 - - 0 0 1 0 1 10 0 0 1 - 11 0 1 - - 1 0 1 0 1 0 1 0 1 1 1 1 1 1 1 Wracamy do przykładu… Opis funkcji g i h tablicami prawdy wystarczy dla realizacji w strukturach FPGA Ale funkcje g i h można obliczyć jawnie… czyli po procesie dekompozycji można je minimalizować

  25. Przykład – funkcje g1 i g2 c d e g1 g2 0 0 0 0 0 0 1 1 0 0 1 0 0 0 0 1 1 0 0 0 0 0 1 0 1 1 0 1 0 1 0 1 0 1 1 1 1 1 1 1 25

  26. Przykład – funkcja h Uwaga: Przestawiliśmy wiersze 26

  27. Przykład – realizacja a b c d e G g1 g2 H h = f

  28. Mniej ważne metody syntezy… np. faktoryzacja wyrażeń boolowskich – metoda istotna w strukturach bramkowych (w technologiach GA lub S.C.) Faktoryzacja przekształca dwupoziomowe wyrażenie boolowskie w wielopoziomowe, przez wprowadzenie podfunkcji (węzłów) pośrednich. f = ac + ad + bc + bd + e a c a d f b c b d e

  29. Faktoryzacja a dekompozycja f = ac + ad + bc + bd + e, f = (a + b) (c + d) + e g = a + b h = c + d a c g h a b a d f f b c c d b d e e Pierwotne 5 bramek, 9 literałów, operacja faktoryzacji redukuje do 4 bramek i 7 literałów.

  30. Algorytm MKZ wg par zgodnych E – relacja zgodności (ei,ej)  E Rj = { ei | i < j oraz (ei,ej)  E} RKZk RKZk+1 KZ  RKZk a) Rk+1 = , RKZk+1 jest powiększana o klasę KZ = {k+1} b) KZ  Rk+1 = , KZ bez zmian c) KZ  Rk+1, KZ’ = KZ  Rk+1 {k+1}

  31. Przykład Rj = { ei | i < j oraz (ei,ej)  E}  0,30,40,61,31,41,51,62,52,73,43,64,54,65,7 R0 = E: R1 =   R2 = 0,1 R3 = 0,1,3 R4 = 1,2,4 R5 = 0,1,3,4 R6 = 2,5 R7 =

  32. Przykład {0}  R0 = R1 =  {0} {1} {0,3} {1,3} {2}  R2 = {0} {1} {2} {2} {0,3,4} {1,3,4} {0,1} R3 = {4,5} {1,4,5} {2,5} {0,3,4} {1,3,4} {0,1,3} R4 = {1,4,6} {0,3,4,6} {1,3,4,6} {1,4,5} {2,5} {1,2,4} R5 = {1,4,5} {2,5,7} {0,3,4,6} {1,3,4,6} {5,7} {0,1,3,4} R6 = {2,5} R7 = Rodzina MKZ

More Related