Struktury układów logicznych

43
ZPT Struktury układów logicznych f Gate Array Standard Cell Programmable Logic Devices 1 Omówione do tej pory metody syntezy dotyczą struktur bramkowych…

description

Struktury układów logicznych. f. Omówione do tej pory metody syntezy dotyczą struktur bramkowych…. Gate Array. Standard Cell. Programmable Logic Devices. 1. Struktury układów logicznych. FPGA. Ale w dzisiejszych technologiach układy logiczne to nie tylko bramki!. - PowerPoint PPT Presentation

Transcript of Struktury układów logicznych

Page 1: Struktury układów logicznych

ZPT

Struktury układów logicznych

f

Gate Array Standard Cell

Programmable Logic Devices

1

Omówione do tej pory metody syntezy dotyczą struktur bramkowych…

Page 2: Struktury układów logicznych

ZPT

Struktury układów logicznych

FPGA

Field Programmable Gate Array

Ale w dzisiejszych technologiach układy logiczne to nie tylko bramki!

Coraz większego znaczenia nabierają technologie, w których podstawowym elementem konstrukcyjnym są komórki logiczne

Logic Cell

… a dla takich struktur omówione do tej pory metody syntezy - w szczególności minimalizacja - są nieskuteczne

2Jedyną skuteczną metodą jest…

Komórka logiczna realizuje każdą funkcję boolowską zmiennych doprowadzonych do jej wejść

Page 3: Struktury układów logicznych

ZPT

Dekompozycja jest metodą znaną od dawna, ale jej intensywny rozwój dokonuje się od niedawna.

Sytuacja jest podobna do rozwoju nowoczesnych metod minimalizacji, który to rozwój zapoczątkowany został pojawieniem się układów scalonych z milionami bramek logicznych.

Jedyną różnicą jest fakt, że technologie struktur komórkowych pojawiły się znacznie później i metody ich syntezy nie są jeszcze wbudowane do systemów komercyjnych.

3

Page 4: Struktury układów logicznych

ZPT 4

Dekompozycja…

…to rozbicie dużego problemu

… na mniejsze komponenty

Page 5: Struktury układów logicznych

ZPT 5

F

Y = F(X)

X

U

G

H G

X

W przypadku układów logicznych to „rozbicie” dużego układu na mniejsze bloki,

Dekompozycja …

…przy czym nazywamy ten proces dekompozycją funkcjonalną, gdyż realizujemy go na poziomie

abstrakcyjnych funkcji boolowskich

Page 6: Struktury układów logicznych

ZPT

Dekompozycję funkcjonalną od razu omówimy w ujęciu nowoczesnym - dostosowanym do złożoności dzisiejszych technologii.

Metodę klasyczną omówimy szkicowo, koncentrując się na jej mankamentach…

6

Dekompozycja funkcjonalna

Skuteczność dekompozycji funkcjonalnej jest tak ogromna, że mimo jej braku w narzędziach komercyjnych należy się z tymi metodami zapoznać i stosować w praktyce projektowania układów cyfrowych za pośrednictwem narzędzi uniwersyteckich.

Page 7: Struktury układów logicznych

ZPT 7

V U

G

H

Y = F(X)

W

czyli U V X

Dekompozycja metodą rachunku podziałów

X

Ponadto dopuszczamy powiększenie zbioru argumentów bloku G

U, V są rozłącznymi podzbiorami X,

ale U V niekoniecznie = X

W jest podzbiorem właściwym U W U

Page 8: Struktury układów logicznych

ZPT 8

… w ujęciu rachunku podziałów

Funkcję F: Bn {0,1}m można zrealizować w strukturze:

F = H(U,G(V,W))

Twierdzenie o dekompozycji

U

G

HG

PF

wtedy i tylko wtedy, gdy istnieje podział G  PVW taki, że:

PU · G  PF

Page 9: Struktury układów logicznych

ZPT 9

Twierdzenie o dekompozycji - interpretacja

G  PVW taki, że: PU · G  PF

F

Y = F(X)

X

Y = H(U,G(V,W))

U

G

HG

X

PU PVW (PV)

PF

to podziały indukowane przez argumenty zbiorów U, V W, (V)

Podział wyjściowy funkcji F

Trzeba obliczyć!!!

Page 10: Struktury układów logicznych

ZPT 10

Przykład ilustrujący metodę dekompozycji

Zgodnie z Tw. dekompozycję liczymy przy zadanych (niestety!) zbiorach U, V: przyjmujemy

U = {x1,x2}, V = {x3,x4,x5}

) ,116,7,8,9,10 ;1,2,3,4,5 (Pf =

Funkcja f:

G

H

x1 x2 x3

f

x5x4

Nie wiemy ile jest wyjść z bloku G

x1 x2 x3 x4 x5 f

1 0 0 0 0 0 0

2 0 1 0 1 1 0

3 0 0 1 0 1 0

4 0 1 1 1 1 0

5 0 0 1 1 0 0

6 0 1 0 0 1 1

7 0 0 1 0 0 1

8 0 1 1 1 0 1

9 1 0 1 0 1 1

10 1 1 0 0 1 1

11 1 0 0 0 1 1

Page 11: Struktury układów logicznych

ZPT 11

Przykład…obliczanie podziałów PU, PV

),116,7,8,9,10 ;1,2,3,4,5 (Pf =

PU |PU·Pf =

PU = ;1,3,5,7 (

PV = ) 7 ;6,10,11 ;5,8 ;4 ;3,9 ;2;1 (

U = {x1,x2}

Bardzo ważny w dalszych obliczeniach jest…

;2,4,6,8 ) 10 ;9,11

) ,116,7,8,9,10 ;1,2,3,4,5 (Pf =

;(1,3,5)(7) ( ;(2,4)(6,8) )(10);(9,11)

x1 x2 x3 x4 x5 f

1 0 0 0 0 0 0

2 0 1 0 1 1 0

3 0 0 1 0 1 0

4 0 1 1 1 1 0

5 0 0 1 1 0 0

6 0 1 0 0 1 1

7 0 0 1 0 0 1

8 0 1 1 1 0 1

9 1 0 1 0 1 1

10 1 1 0 0 1 1

11 1 0 0 0 1 1

PU = ;1,3,5,7 ( ;2,4,6,8 ) 10 ;9,11

V = {x3,x4, x5}

Page 12: Struktury układów logicznych

ZPT 12

Przykład…obliczanie ПG

1

3,9

ПG =

PV = ) 7 ;6,10,11 ;5,8 ;4 ;3,9 ;2;1 (

5,86,10,11

7

2

4

; 9,10,111,3,5,6,8, (

;(1,3,5)(7) ( ;(2,4)(6,8) )(10);(9,11)PU |PU·Pf =

G  PV

PU · G  PF

Podział G składamy z bloków podziału PV,

ale tak aby zapewnić warunki „rozdziału”

zapisane w podziale PU |PU·Pf

G:

) 2,4,7

Sklejanie, małe bloki

podziału PV sklejamy w

większe bloki G

Page 13: Struktury układów logicznych

ZPT 13

Komentarz

H

x1 x2 x3

f

x5x4

ПG = ; 9,10,111,3,5,6,8, ( ) 2,4,7

GZatem dopiero teraz wiemy ile jest

wyjść z bloku G. Tylko jedno wyjście!

Obliczony ΠG jest dwublokowy…

Page 14: Struktury układów logicznych

ZPT 14

Przykład…tworzenie tablicy funkcji g

x1 x2 x3 x4 x5 f

1 0 0 0 0 0 0

2 0 1 0 1 1 0

3 0 0 1 0 1 0

4 0 1 1 1 1 0

5 0 0 1 1 0 0

6 0 1 0 0 1 1

7 0 0 1 0 0 1

8 0 1 1 1 0 1

9 1 0 1 0 1 1

10 1 1 0 0 1 1

11 1 0 0 0 1 1

x3 x4 x5 g

1 0 0 0 0

2 0 1 1 1

3 1 0 1 0

4 1 1 1 1

5 1 1 0 0

6 0 0 1 0

7 1 0 0 1

8 1 1 0 0

9 1 0 1 0

10 0 0 1 0

11 0 0 1 0

x3 x4 x5 g

0 0 0 0

0 1 1 1

1 0 1 0

1 1 1 1

1 1 0 0

0 0 1 0

1 0 0 1

ПG = ; 9,10,111,3,5,6,8, ( ) 2,4,7

g

0

1

0

1

0

0

1

0

0

0

0

f

G

H

x1 x2 x3 x5x4

Page 15: Struktury układów logicznych

ZPT 15

x1 x2 x3 x4 x5 f

1 0 0 0 0 0 0

2 0 1 0 1 1 0

3 0 0 1 0 1 0

4 0 1 1 1 1 0

5 0 0 1 1 0 0

6 0 1 0 0 1 1

7 0 0 1 0 0 1

8 0 1 1 1 0 1

9 1 0 1 0 1 1

10 1 1 0 0 1 1

11 1 0 0 0 1 1

x1 x2 g h

1 0 0 0 0

2 0 1 1 0

3 0 0 0 0

4 0 1 1 0

5 0 0 0 0

6 0 1 0 1

7 0 0 1 1

8 0 1 0 1

9 1 0 0 1

10 1 1 0 1

11 1 0 0 1

x1 x2 g h

0 0 0 0

0 0 1 1

0 1 0 1

0 1 1 0

1 0 0 1

1 1 0 1

ПG = ; 9,10,111,3,5,6,8, ( ) 2,4,7

g

0

1

0

1

0

0

1

0

0

0

0

Przykład…tworzenie tablicy funkcji h

h=f

G

H

x1 x2 x3 x5x4

g

Page 16: Struktury układów logicznych

ZPT 16

Przykład (TL27) ilustrujący skuteczność dekompozycji

.type fr

.i 10

.o 1

.p 250010111010 01010010100 00100011110 01011101011 01100010011 00100010110 01110100110 00100110000 00101000010 00111111011 10000010100 11101110011 10100100000 10100011111 10010000110 11111010001 11111101001 11111111111 10010000000 11101100111 10010001111 11111100010 11010111101 10110000110 10100111000 1.e

Można wykazać, że funkcja ta jest zależna od 7 argumentów

X = {x3, x5, x6, x7, x8, x9, x10}

Przykład 6.2, str. 137 Synteza logiczna

Dalej wszystkie obliczenia będą wykonywane na podziałach

P3, P5, P6, P7, P8, P9, P10

Celem przykładu jest pokazanie, że cały proces dekompozycji (łącznie z obliczeniem tablic prawdy)

można wykonać wyłącznie na podziałach

Są to podziały na zbiorze ponumerowanych wektorów 1,…,25

Page 17: Struktury układów logicznych

ZPT 17

Specyfikacja funkcji – podziałami

P3 = ;25,20,14,13,12,11,9,8,6,5,3{ }24,23,22,21,19,18,17,16,15,10,7,4,2,1

P5 = ;24,21,19,16,15,14,11,9,6,5,3,2{ }25,23,22,20,18,17,13,12,10,8,7,4,1

P6 = ;24,22,21,20,19,17,15,13,9,7,4{ }25,23,18,16,14,12,11,10,8,6,5,3,2,1

Pf = ;9,...,2,1{ }25,...,10

P7 = ;24,22,20,19,16,15,13,12,11,9,8,7,6,5,2{ }25,23,21,18,17,14,10,4,3,1

P8 = ;25,22,19,17,16,13,12,10,9,8,5,4,1{ }24,23,21,20,18,15,14,11,7,6,3,2

P9 = ;25,23,19,17,16,13,11,8,2{ }24,22,21,20,18,15,14,12,10,9,7,6,5,4,3,1

P10 = ;25,24,22,19,15,13,11,9,8,7,6,3,2,1{ }23,21,20,18,17,16,14,12,10,5,4

Page 18: Struktury układów logicznych

ZPT 18

Ustalenie zbiorów U i V

X = {x3, x5, x6, x7, x8, x9, x10}

U = {x7, x8, x9}V = {x3, x5, x6, x10}

f

G

H

x7 x8 x9

x3 x5 x6 x10

Przyjmujemy arbitralnie…

Nie wiemy ile jest wyjść z bloku G

Page 19: Struktury układów logicznych

ZPT 19

Obliczenie podziałów PU, PV

)23 ; 17,25 ; 8,13,16,19 ; 246,7,15,20, ; 5,9,12,22; 3,14,18,21 ; 2,11 ; 1,4,10(

PV= )21 ; 20 ; 16 ; 15,19,24 ;13 ;12; 10,18,23 ;9; 8,25; 7,22;5,14;4,17; 3,6,11 ; 2 ; 1(

PU =

PU=P7•P8•P9

PV=P3•P5•P6•P10

Można je wyznaczyć bezpośrednio z tablicy funkcji, ale tym razem przy zastosowaniu rachunku podziałów:

…obliczenia są żmudne, ale proste

U = {x7, x8, x9} V = {x3, x5, x6, x10}

Page 20: Struktury układów logicznych

ZPT 20

)23 ; 17,25 ; 8,13,16,19

; 246,7,15,20, ; 5,9,12,22; 3,14,18,21 ; 2,11 ; 1,4,10(

((1,4)(10)

PU =

Pf = ; 1,2,...,9{ 10,...,25}

Podział ilorazowy Pu|Pu•PF

; (2)(11)

(6,7)(15,20,24) ; (8)(13,16,19) ; (17,25) ; (23))

; (3)(14,18,21) ; (5,9)(12,22)Pu|Pu•Pf =

Przy liczeniu podziału ilorazowego po prostu rozdzielamy elementy bloków PU między różne bloki podziału Pf

W każdym bloku Pu|Pu• Pf są co najwyżej dwa elementy (nawiasy), zatem liczba bloków podziału ΠG musi być co najmniej dwa.

Page 21: Struktury układów logicznych

ZPT 21

Obliczenie ΠG

)24 23, 21, 20, 19, 18, 4,15,16, 13,1 10, 2,5,9, ; 25 22, 17, 11,12, 7,8, 6, 1,3,4,(Πg

Pu|Pu · Pf = ((1,4)(10) ; (2)(11) ; (3)(14,18,21) ; (5,9)(12,22) ;

(6,7)(15,20,24) ; (8)(13,16,19) ; (17,25) ; (23))

PV= )21 ; 20 ; 16 ; 15,19,24 ;13 ;12; 10,18,23 ;9; 8,25; 7,22;5,14;4,17; 3,6,11 ; 2 ; 1(

4,171 10,18,23

3,6,11 2 5,14

12 7,22

8,25

9 15,19,24 20

13 16

21

G:

Page 22: Struktury układów logicznych

ZPT 22

Liczba wyjść bloku G

f

G

H

x7 x8 x9

x3 x5 x6 x10

Liczba wyjść z bloku G = 1

Skoro ΠG jest dwublokowy

f

G

H

x7 x8 x9

x3 x5 x6 x10

W tym momencie już wiemy na pewno, że założona dekompozycja istnieje

Page 23: Struktury układów logicznych

ZPT 23

Co dalej …

W obu przypadkach najwygodniejsze do procesu syntezy są tablice prawdy funkcji G i H

f

G

H

x7 x8 x9

x3 x5 x6 x10 Inżynier musi tę funkcję zrealizować:

•albo na bramkach•albo na komórkach

Page 24: Struktury układów logicznych

ZPT 24

Funkcja G

x3 x5 x6 x10 g

PV= )21 ; 20 ; 16 ; 15,19,24 ;13 ;12; 10,18,23 ;9; 8,25; 7,22;5,14;4,17; 3,6,11 ; 2 ; 1(

1 1 1 0 0

1 0 1 0 1

0 0 1 0 0

)24 23, 21, 20, 19, 18, 4,15,16, 13,1 10, 2,5,9, ; 25 22, 17, 11,12, 7,8, 6, 1,3,4,(Πg

P3 = ;25,20,14,13,12,11,9,8,6,5,3{ }24,23,22,21,19,18,17,16,15.10,7,4,2,1

P5 = ;24,21,19,16,15,14,11,9,6,5,3,2{ }25,23,22,20,18,17,13,12,10,8,7,4,1

P6 = ;24,22,21,20,19,17,15,13,9,7,4{ }25,23,18,16,14,12,11,10,8,6,5,3,2,1

P10 = ;25,24,22,19,15,13,11,9,8,7,6,3,2,1{ }23,21,20,18,17,16,14,12,10,5,4

Wektory (wiersze) tablicy funkcji g są wyznaczane przez bloki PV, a wartości tej funkcji przez bloki ΠG

Page 25: Struktury układów logicznych

ZPT 25

Funkcja H

x7 x8 x9 g h

...) 14,18,21; 3 ; 11; 2 ; 10 ; 1,4( PU G < PF

1 0 1 0 01 0 1 1 1

0 1 0 1 0…P7 = ;24,22,20,19,16,15,13,12,11,9,8,7,6,5,2{ }25,23,21,18,17,14,10,4,3,1

P8 = ;25,22,19,17,16,13,12,10,9,8,5,4,1{ }24,23,21,20,18,15,14,11,7,6,3,2

P9 = ;25,23,19,17,16,13,11,8,2{ }24,22,21,20,18,15,14,12,10,9,7,6,5,4,3,1

)24 23, 21, 20, 19, 18, 4,15,16, 13,1 10, 2,5,9, ; 25 22, 17, 11,12, 7,8, 6, 1,3,4,(Πg

Wektory (wiersze) tablicy funkcji h są wyznaczane przez bloki PU G , a wartości tej funkcji przez bloki PF

Page 26: Struktury układów logicznych

ZPT 26

Co uzyskaliśmy…

f

G

H

x7 x8 x9

x3 x5 x6 x10

Tylko 2 komórki typowej struktury FPGA

QUARTUS

Uzyskaliśmy wynik dziesięciokrotnie razy lepszy od wyniku systemu Quartus amerykańskiej firmy

Altera

23 kom.

Page 27: Struktury układów logicznych

ZPT 27

Dekompozycja zespołu funkcji

X

F

X

G

H

Y

U

V

Y = y1, y2,…, ym

Twierdzenie w ujęciu rachunku podziałów jest ogólne, obliczenia są niezależne od liczby wyjść funkcji F.

Dekompozycja

Page 28: Struktury układów logicznych

ZPT 28

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 0 1 1

5 0 1 1 0 1 0 0 1

6 0 1 1 1 0 0 1 0

7 0 1 0 0 0 0 0 1

8 1 1 0 0 0 0 0 1

9 1 1 0 1 0 0 0 0

10 1 1 1 0 0 1 0 0

11 1 1 1 1 1 0 1 1

12 1 1 1 1 0 0 1 0

13 1 0 0 0 1 0 0 1

14 1 0 0 1 1 0 0 0

15 1 0 0 1 0 1 0 0

)15,14,13,12,11,10,9,8;7,6,5,4,3,2,1(1 P

;14,9,1(

Przykład dekompozycji zespołu funkcji

)12,11,10,9,8,7,6,5,4;15,14,13,3,2,1(2 P

)12,11,10,6,5,4;15,14,13,9,8,7,3,2,1(3 P

)15,14,12,11,9,6,3,2;13,10,8,7,5,4,1(4 P

)14,13,11,5,2;15,12,10,9,8,7,6,4,3,1(5 P

Niezależnie od liczby funkcji wszystkie wyjścia opisujemy jednym! podziałem

;15,10,3 )11,4;13,8,7,5;12,6,2

v

v

v

v

v

v

FP

(Przykład 6.11, str. 140: Synteza logiczna)

Page 29: Struktury układów logicznych

ZPT 29

Przykład…wyznaczanie podziałów PU, PV

U = {x3,x4} V = {x1,x2,x5}  

6,11,12;4,5,10;52,3,9,14,1 ;1,7,8,13PU

3,10,15;4,11;2,6,12;5,7,8,13 ;1,9,14PF

;)(1)(7,8,13

PU  = P3•P4 PV=P1•P2•P5

FUU PP|P ;3,15)(2)(9,14)( (11)(6,12) ;(4)(5)(10)

15 ;13,14 ;11 ;8,9,10,12 ;5 ;4,6,7 ;2 ;1,3PV

x3 x4 x1 x2 x5

g

h

• • •

Szukamy dekompozycji 

Page 30: Struktury układów logicznych

ZPT 30

Przykład…obliczanie G

(2) (9,14) (3,15)

212,10,9,8

14,13

3,1

15

7,6,4 5

11

51,3,5,11,1 ;13,14 8,9,10,12, ;2,4,6,7ΠG

(11)(6,12) ;(4)(5)(10) ;3,15)(2)(9,14)( ;)(1)(7,8,13P|P FU

15 ;13,14 ;11 ;8,9,10,12 ;5 ;4,6,7 ;2 ;1,3PV

Jak wyznaczyć G ???

Trochę inny zapis

Page 31: Struktury układów logicznych

ZPT 31

Przykład…kodowanie ΠG

51,3,5,11,1 ;; 13,14 8,9,10,12, 2,4,6,7G

Należy zakodować bloki ΠG

01 10 00

Kodowanie jest dowolne

Aktualna teoria nie podaje rozwiązania problemu kodowania

W przypadku zespołu funkcji liczba bloków podziału ΠG jest większa.

Kodowanie jest potrzebne do wyznaczenia tablic prawdy funkcji G i H

Blok G ma dwa wyjścia!

Page 32: Struktury układów logicznych

ZPT 32

Tablica prawdy G

)14,13,11,5,2;15,12,10,9,8,7,6,4,3,1(

)12,11,10,9,8,7,6,5,4;15,14,13,3,2,1(

)15,14,13,12,11,10,9,8;7,6,5,4,3,2,1(

5

2

1

P

P

P x1 x2 x5 g1 g2

. . . . . .

3,1

27,6,4

51,3,5,11,1 ;; 13,14 8,9,10,12, 2,4,6,7G

01 10 00

0 0 0

0 0 1

0 1 0

0 0

0 1

0 1

5 0 1 1 0 0

15 ;13,14 ;11 ;8,9,10,12 ;5 ;4,6,7 ;2 ;1,3PV

Page 33: Struktury układów logicznych

ZPT 33

Tablica prawdy H

x3 x4 g1 g2 y1 y2 y3

. . . . . .

1

7

13,8

15,3

)15,14,12,11,9,6,3,2;13,10,8,7,5,4,1(

)12,11,10,6,5,4;15,14,13,9,8,7,3,2,1(

4

3

P

P

PU G =

51,3,5,11,1 ;; 13,14 8,9,10,12, 2,4,6,7G

01 10 00

0 0 0 0

0 0 0 1 0 0 1 0

0 1 0 0

0 0 0

1 0 0

0 0 1

0 0 1

;7 ;13,8 ;15,3 …;1(

PU G < PF

6,11,12;4,5,10;52,3,9,14,1 ;1,7,8,13PU

Page 34: Struktury układów logicznych

ZPT 34

Co uzyskaliśmy…

Ale dla struktur FPGA wystarczy schemat dekompozycji i tablice prawdy.

Funkcje g i h można obliczyć jawnie…z tablic prawdymożna uzyskać realizacje na bramkach.

x3 x4 x1 x2 x5

g

h

Proces minimalizacji jest niepotrzebny!!!

Page 35: Struktury układów logicznych

ZPT 35

Obliczanie podziału ΠG metodą przenoszenia bloków PV na podstawie podziału ilorazowego PU│PU•ΠG jest trudne do zalgorytmizowania.

Komputerowy algorytm dekompozycji

Algorytm komputerowy musi być zrealizowany wg całkowicie innych zasad.

Page 36: Struktury układów logicznych

ZPT 36

W obliczeniach komputerowych korzysta się z pojęcia zgodnych (alboniezgodnych) par bloków podziału

Wtedy algorytm obliczania ΠG można sprowadzić do algorytmu obliczania MKZ lub do algorytmu kolorowania grafu.

Komputerowy algorytm dekompozycji

PV =( B1,…,Bi,…,Bj,…,BN)

Page 37: Struktury układów logicznych

ZPT 37

Komputerowy algorytm dekompozycji

Dwa bloki Bi i Bj podziału PV są zgodne, jeśli podział ij

uzyskany z PV przez sklejenie Bi oraz Bj w jeden blok i

pozostawienie pozostałych bloków bez zmiany

W przeciwnym przypadku Bi oraz Bj są niezgodne.

PV =( B1,…,Bi,…,Bj,…,BN) ij =( B1,…,BiBj,…,BN)

spełnia warunek Twierdzenia o dekompozycji: PU ij PF.

Page 38: Struktury układów logicznych

ZPT 38

Przykład (ten sam co poprzednio)

6,11,12;4,5,10;52,3,9,14,1 ;1,7,8,13PU

3,10,15;4,11;2,6,12;5,7,8,13 ;1,9,14PF

15 ;13,14 ;11 ;8,9,10,12 ;5 ;4,6,7 ;2 ;1,3PV

B1 B2 B3 B4 B5 B6 B7 B8

(11)(6,12) ;(4)(5)(10) ;3,15)(2)(9,14)( ;)(1)(7,8,13PP|P FUU

57 =

12 = ;1,2,3 15 ;13,14 ;11 ;8,9,10,12 ;5 ;4,6,7

;13,148,9,10,12, ;5 ;4,6,7 ;2 ;1,3 15 ;11

U = {x3,x4} oraz V = {x1,x2,x5}  

Numerujemy bloki PV

Page 39: Struktury układów logicznych

ZPT 39

Przykład …

Ale do wyznaczenia zgodnych (lub sprzecznych) par (Bi, Bj)

niekoniecznie musimy się posługiwać skomplikowaną nierównością PU ij PF

Można sprawdzić, że

PU 12 PF,

PU 57 PF

(B1, B2) jest sprzeczna

(B5, B7) jest zgodna

Wystarczy w tym celu obliczyć iloczyn zbioru Bi Bj

z blokami podziału PU i sprawdzić, czy każdy „niepusty

iloczyn” jest zawarty w jakimś bloku PF

Page 40: Struktury układów logicznych

ZPT 40

Przykład …

6,11,12;4,5,10;52,3,9,14,1 ;1,7,8,13PU

3,10,15;4,11;2,6,12;5,7,8,13 ;1,9,14PF

B1 B2 B3 B4 B5 B6 B7 B8

(B1,B2) jest sprzeczna

15 ;13,14 ;11 ;8,9,10,12 ;5 ;4,6,7 ;2 ;1,3PV

B1 B2 = 1,2,3

1,2,3 PU )( 2,3 ;1 PF

B5 B7 = 13,148,9,10,12,

13,148,9,10,12, PU 12;10;9,14 ;8,13 PF

(B5, B7) jest zgodna

Page 41: Struktury układów logicznych

ZPT 41

Przykład c.d.

Pary zgodne: (B1,B4), (B1,B6), (B1,B8), (B2,B3), (B2,B4), (B2,B6), (B3,B7), (B3,B8), (B4,B6), (B4,B7), (B4,B8), (B5,B7), (B6,B7), (B6,B8).

Doskonale wiemy jak obliczać Maksymalne Klasy Zgodne

MKZ

15 ;13,14 ;11 ;8,9,10,12 ;5 ;4,6,7 ;2 ;1,3PV

B1 B2 B3 B4 B5 B6 B7 B8

G ; {B1,B4, B6, B8};{B2, B3} {B5, B7}

Klasy maksymalne:

{B1,B4, B6, B8}

{B4, B6, B7}

{B2, B4, B6}

{B3, B7}

{B3, B8}

{B2, B3}

{B5, B7}

Page 42: Struktury układów logicznych

ZPT 42

Przykład c.d.

51,3,5,11,1 ;13,14 8,9,10,12, ;2,4,6,7G

15 ;13,14 ;11 ;8,9,10,12 ;5 ;4,6,7 ;2 ;1,3PV

B1 B2 B3 B4 B5 B6 B7 B8

Ten sam rezultat co poprzednio

G ; {B1,B4, B6, B8};{B2, B3} {B5, B7}

Page 43: Struktury układów logicznych

ZPT 43

Interpretacja na grafie niezgodności

Pary sprzeczne Bi, Bj, gdzie i,j: (1,2), (1,3), (1,5), (1,7), (2,5), (2,7), (2,8), (3,4), (3,5), (3,6), (4,5), (5,6), (5,8), (7,8)

1

2

3

4

5

8

7

6

Graf niezgodności z minimalną liczbą chromatyczną

1, 4, 6, 8 kolor A

2, 3 kolor B

5, 7 kolor C