Pobierz prezentację
Pobieranie prezentacji. Proszę czekać
OpublikowałJagoda Wodziński Został zmieniony 10 lat temu
1
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 V 1 01 00 001 000 x1x2x3 x4x5 U Elementami macierzy M są wartości, jakie przyjmuje funkcja f na wektorach złożonych z odpowiednich etykiet i-tego wiersza i j-tej kolumny.
2
Relacja zgodności kolumn
Jak obliczać dekompozycję
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. K1 K2 K3 K4 K5 K6 K7 1 -
4
Relacja zgodności kolumn
1 - Kolumny zgodne można „sklejać” {K1,K4,K7} 1 - 1 - {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
Istnieje dekompozycja !
Przykład cde a b 000 001 010 011 100 101 110 111 00 1 – 01 10 11 K0 K1 K2 K3 K4 K5 K6 K7 c d e a b Istnieje dekompozycja ! f = h(a,b,g1(c,d,e), g2(c,d,e))
7
Przykład - obliczanie klas zgodności
Pary zgodne: 0,3 0,4 0,6 1,3 1,4 1,5 1,6 2,5 2,7 3,4 3,6 4,5 4,6 5,7 cde a b 000 001 010 011 100 101 110 111 00 1 – 01 10 11 K0 K1 K2 K3 K4 K5 K6 K7 K0, K1 sprzeczna K0, K2 sprzeczna K0, K3 zgodna K0, K4 zgodna
8
Metoda bezpośrednia Pary zgodne: a, b b, c a, c {a, b, c}
a, b, c a, b, d b, c, d a, c, d {a, b, c, d} i.t.d.
9
Przykład - klasy zgodności…
…policzymy najprostszą metodą 0,3 0,4 0,6 1,3 1,4 1,5 1,6 2,5 2,7 3,4 3,6 4,5 4,6 5,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 1 2 3 4 5 6 7 Przykład 2.7 i 2.8 (str. 34)
Powinniśmy pamiętać, że są jeszcze inne metody obliczania MKZ: metoda kolorowania grafu b) metodę iteracyjną 1 2 3 4 5 6 7 Przykład 2.7 i 2.8 (str. 34)
11
Przykład c.d. Z rodziny MKZ wybieramy minimalną liczbę klas (lub podklas) pokrywającą zbiór wszystkich kolumn. Wybieramy: 1,5 0,3,4,6 2,7 Ostatecznie: 0,3,4,6 1,3,4,6 0,3,4,6 1,4,5 2,5,7 1,4,5 Kolumny powtarzające się usuwamy Komentarz: formalnie obliczamy pokrycie.. 2,5,7
12
Sklejanie kolumn – funkcja h
cde ab 000 001 010 011 100 101 110 111 00 1 - 01 10 11 K0 K1 K2 K3 K4 K5 K6 K7 {K0,K3,K4,K6} {K1,K5} {K2,K7} g1g2 ab 00 01 11 10 1 - Kodowanie? Może być dowolne
13
Kodowanie kolumn – funkcja g
cde ab 000 001 010 011 100 101 110 111 00 1 - 01 10 11 K0 K1 K2 K3 K4 K5 K6 K7 c d e g1 g2 1 g1g2 ab 00 01 11 10 1 -
14
Co uzyskaliśmy c d e a b c d e g1 g2 1 - 10 1 11 01 00 g1g2 ab 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
uzyskując w rezultacie …
…strukturę na bramkach c d e a b Do tego zagadnienia wrócimy pod koniec wykładu
16
Ten sam przykład metodą r. p.
U = {a, b} V = {c, d, e} cde ab 000 001 010 011 100 101 110 111 00 1 01 10 11 cde ab 000 001 010 011 100 101 110 111 00 1 2 3 4 5 6 01 7 8 10 9 11 12 13 14 15 16 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
W celu obliczenia PU|PF – jawne obliczenie PF jest niepotrzebne.
Ten sam przykład c.d. cde ab 000 001 010 011 100 101 110 111 00 1 01 10 11 cde ab 000 001 010 011 100 101 110 111 00 1 2 3 4 5 6 01 7 8 10 9 11 12 13 14 15 16 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
Przykład (bardziej skomplikowany) - TL27
.type fr .i 10 .o 1 .p 25 .e x3 x5 x6 x7 x8 x9 x10 f 1 x7 x8 x9 x3 x5 x6 x10 f 1 U V
20
Tablica dekompozycji dla funkcji TL27
x3 x5 x6 x10 1 x7x8x9 000 – – – 1 – – 1 – – 1 – – – – 001 – – – – 1 – – – – 1 – – – 010 – 1 – – – – – – – – – – – – 011 – – – 1 – – 1 – – – – – – 100 – – – – – 1 – – – – – – 1 – – 101 – – – – – – – – – – – – 1 110 – – – – – – – – – – – – – – 1 111 – – 1 – – – – – 1 – – – – – 1 20
21
Tablica dekompozycji dla funkcji TL27
1 000 – 001 010 011 100 101 110 111 x3 x5 x6 x10 x7x8x9
22
Tablica dekompozycji dla funkcji TL27
H G g 000 1 001 010 011 100 – 101 110 111 x7x8x9 x3 x5 x6 x10 G 1
23
Praktyczny wynik dekompozycji funkcji TL27
Tylko 2 komórki 25 kom. (FLEX) lub 27 kom. (Stratix)!!! Niesamowita skuteczność procedur dekompozycji!!! QUARTUS
24
Wracamy do przykładu… c d e a b c d e g1 g2 1 - 10 1 11 01 00 g1g2 ab 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 1 e cd 1 00 01 11 10 e cd 1 00
1 e cd 1 00 01 11 10 e cd 1 00 01 11 10 25
26
Przestawiliśmy wiersze
Przykład – funkcja h Uwaga: Przestawiliśmy wiersze g1g2 ab 00 01 11 10 1 - 26
27
Przykład – realizacja G H
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 b c f 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 a b g h a d f b c f 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 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
Rj = { ei | i < j oraz (ei,ej) E}
Przykład Rj = { ei | i < j oraz (ei,ej) E} E: 0,3 0,4 0,6 1,3 1,4 1,5 1,6 2,5 2,7 3,4 3,6 4,5 4,6 5,7 R0 = R1 = R2 = R3 = 0,1 R4 = 0,1,3 R5 = 1,2,4 R6 = 0,1,3,4 R7 = 2,5
32
Przykład R0 = R1 = R2 = R3 = R4 = R5 = {0,1} {0,1,3} {1,2,4} R6 =
{0,1,3,4} R7 = {2,5} {0} {0} {1} {0} {1} {2} {0,3} {1,3} {2} {0,3,4} {1,3,4} {2} {4,5} {1,4,5} {2,5} {0,3,4} {1,3,4} {1,4,6} {2,5} {0,3,4,6} {1,3,4,6} {1,4,5} {1,4,5} {2,5,7} {0,3,4,6} {1,3,4,6} {5,7} Rodzina MKZ
Podobne prezentacje
© 2024 SlidePlayer.pl Inc.
All rights reserved.