Pobieranie prezentacji. Proszę czekać

Pobieranie prezentacji. Proszę czekać

Układy kombinacyjne. Układy kombinacyjne 2/28 Metody minimalizacji układów kombinacyjnych Zjawisko hazardu.

Podobne prezentacje


Prezentacja na temat: "Układy kombinacyjne. Układy kombinacyjne 2/28 Metody minimalizacji układów kombinacyjnych Zjawisko hazardu."— Zapis prezentacji:

1 Układy kombinacyjne

2 Układy kombinacyjne 2/28 Metody minimalizacji układów kombinacyjnych Zjawisko hazardu

3 Minimalizacja funkcji logicznych 3/28 Minimalizacja funkcji logicznych Przy bardziej złożonych funkcjach logicznych użycie wprost zapisów KPS i KPI do realizacji układu prowadzi do rozbudowanych układów cyfrowych. Dlatego dąży się do minimalizacji funkcji logicznych, polegającej na zmniejszeniu liczby operatorów i zmiennych potrzebnych do ich zapisu. Dzięki temu potrzeba mniejszej liczby bramek logicznych i mniejszej sieci połączeń między nimi. To z kolei pozwala uzyskać układ cyfrowy: zajmujący mniej miejsca; zużywający mniej energii podczas pracy; bardziej niezawodny; tańszy w produkcji i eksploatacji.

4 Minimalizacja funkcji logicznych 4/28 Zmniejszenie liczby zmiennych i operatorów w wyrażeniu opisującym funkcję logiczną można osiągnąć poprzez odpowiednie przekształcenia tegoż wyrażenia. Pomocne są przy tym właściwości algebry Boole'a podane wcześniej. Spośród metod przydatnych przy "ręcznym" projektowaniu układów cyfrowych należy wymienić: metodę przekształceń algebraicznych; metodę tablic Karnaugh'a; metodę Quine'a-McCluskey'a. ( skrypt PB: Podstawy techniki cyfrowej)

5 Minimalizacja funkcji logicznych 5/28 1. Wykorzystanie przekształceń algebraicznych dla APN: f 1 = [1, 3, 4, 6, 7] mamy bez minimalizacji: Koszt realizacji: 3 x NOT + 4 x NAND + 2 x OR

6 Przekształcając funkcję f 1 z wykorzystaniem właściwości algebry logiki uzyskujemy: Minimalizacja funkcji logicznych 6/28 Schematy realizacyjne: wiersz w4 wiersz w5 koszty realizacji: 2 x NOT + 3 x AND + 1 x OR 1 x AND + 1 x XOR + 1 x OR

7 Metoda przekształceń algebraicznych cechuje się: silnym uzależnieniem od umiejętności i doświadczenia projektanta; uzyskiwaniem nie zawsze minimalnych realizacji; trudna w stosowaniu przy funkcjach niezupełnych i słabookreślonych. Minimalizacja funkcji logicznych 7/28

8 Dlatego opracowano bardziej sformalizowane metody prowadzące do uzyskania zapisów funkcji logicznej w formach przypominających zdefiniowane wcześniej KPS i KPI - są to tzw. postacie normalne APN i KPN: APN - Alternatywna Postać Normalna - suma prostych iloczynów zmiennych logicznych lub ich negacji, np.: Iloczyny będące składnikami APN nazywa się implikantami. KPN - Koniunkcyjna Postać Normalna - iloczyn prostych sum zmiennych logicznych lub ich negacji. np.: Sumy będące czynnikami KPN nazywa się implicentami. Minimalizacja funkcji logicznych 8/28

9 Minimalizacja funkcji logicznych 9/28 2. Metoda tablic Karnaugh'a - tablicowo-graficzna ( skrypt PB: Podstawy techniki cyfrowej rozdz ) Konstruowanie tablicy Karnaugh'a: 1. Wypisujemy wartości funkcji dla wszystkich możliwych słów wejściowych A i. Przy n zmiennych wejściowych jest 2 n takich wartości. Traktując kolejne A i jako słowa kodu NB porządkujemy je rosnąco. 2. Dzielimy zbiór zmiennych wejściowych na dwie grupy o l=n/2 i k=n-l zmiennych. 3. Rysujemy tablicę prostokątną o l wierszach i k kolumnach. 4. Wiersze i kolumny tablicy opisujemy kolejnymi liczbami kodu Gray'a. W ten sposób dowolne pole tablicy ma współrzędne (A li ; A ki ) odpowiadające po połączeniu tylko jednemu ze słów wejściowych A i. 5. W pola tablicy wpisujemy odpowiednie wartości funkcji: f(A i ): "1" dla f(A i )=1"0" dla f(A i )=0"-" dla f(A i )=x

10 Minimalizacja funkcji logicznych 10/28 Minimalizacja polega na łączeniu w grupy po 2, 4, 8 itd. Pól, których współrzędne różnią się parami tylko na jednej pozycji – są to tzw. pola sąsiadujące. Zwykle zaczyna się od wyznaczenia par pól sąsiadujących, a następnie szuka możliwości połączenia sąsiadujących ze sobą par tworząc grupy 4-elementowe, itd.

11 Minimalizacja funkcji logicznych 11/28 Utworzone pola muszą spełniać warunki: zawierają zawsze 2 m pól; wartości funkcji w ich wnętrzu są jednakowe lub część pól może mieć wartość nieokreśloną; obszary mają kształt regularnych prostokątów, o długościach boków będących potęgami 2 (np. 1x2, 1x4, 2x2, 4x2); w jednej tablicy mogą się znaleźć obszary o różnych rozmiarach; zbiór wszystkich obszarów pokrywa maksymalną liczbę "1" lub "0" (zależnie od tego, które pola się skleja), niektóre pola mogą pozostać nie sklejone z żadnym z obszarów; obszary mogą mieć części wspólne, tzn. to samo pole może należeć do więcej niż jednego obszaru.

12 Minimalizacja funkcji logicznych 12/28 Przykłady możliwych sklejeń w tablicy 4x ab cd ab cd ab cd ab cd ab cd ab cd

13 Przykład pokrywania się możliwych sklejeń współrzędne zaznaczonych grup: I 1 : 1_0_ I 2 : _11_ I 3 : 11_ _ Minimalizacja funkcji logicznych 13/28 Przykłady możliwych sklejeń w tablicy 4x ab cde ab cde I2I2 I3I3 I1I ab cd

14 Minimalizacja funkcji logicznych 14/28 Przykład 1 wykorzystania metody Dana jest funkcja trzech zmiennych f 1 (a,b,c) = [1, 3, 4, 6, 7]. Należy wyznaczyć minimalne realizacje APN i KPN. tablica prawdy tablica Karnaugha AiAi abcf1f ab c O5O5 O4O4 O3O3 O1O1 O2O2 Dla jedynek funkcji: Dla zer funkcji:

15 Minimalizacja funkcji logicznych 15/28 Przykład 2 wykorzystania metody Dana jest funkcja trzech zmiennych f 1 (a,b,c) = [0, 1, 4 (2, 7)]. Należy wyznaczyć minimalne realizacje APN i KPN. tablica prawdy tablica Karnaugha Dla jedynek funkcji: Dla zer funkcji: AiAi abcf1f ab c O4O4 O3O3 O1O1 O2O2

16 Minimalizacja funkcji logicznych 16/28 Przykład 3 wykorzystania metody Dana jest tablica Karnaugha. Należy wyznaczyć minimalną realizację APN x1x2x1x2 x3x4x3x O5O5 O1O1 O2O2 O3O3 O4O4 O6O6

17 Minimalizacja funkcji logicznych 17/28 Z 6 możliwych grup można utworzyć 4 warianty:

18 Minimalizacja funkcji logicznych 18/28 2. Metoda Quinea-McCluskeya – analityczna ( skrypt PB: Podstawy techniki cyfrowej rozdz ) Szczegółowy opis algorytmu postępowania w skrypcie Przykład zastosowania Funkcja jest przedstawiona opisami dziesiętnymi: f= {0,1,3,4,5,10,11,12,13,14,15} f= {2,6,7,8,9}

19 Minimalizacja funkcji logicznych 19/28 Dla APN mamy: ix1x1 x2x2 x3x3 x4x4 f(A i ) 1 funkcji 1 posortowane v000x v v0x00 v0x0x * v00x1 * x01 v v010x v vx100 v vx011 *x10x * vx101 v x v v1x10 v v110x v v11x0 v1x1x * x11 v11xx * v11x1 v x v

20 Zbiór prostych implikantów: 00x1, x011, 0x0x, x10x, 1x1x, 11xx Tablica pokrycia (indeksy przy v oznaczają kolejność ich pojawiania się w tablicy) A i f(A i )= x1 x011 v 2 0x0x x10x v 2 1x1x 11xx v 1 v 3 v 2 v 3 v 1 v 3 v 3 v 3 Minimalizacja funkcji logicznych 20/28 albo

21 Minimalizacja funkcji logicznych 21/28 Ostatecznie możliwe są 4 minimalne formy wyrażenia logicznego APN reprezentującego funkcję: y = x 1 x 3 + x 1 x 3 + x 1 x 2 x 4 + x 2 x 3 y = x 1 x 3 + x 1 x 3 + x 1 x 2 x 4 + x 1 x 2 y = x 1 x 3 + x 1 x 3 + x 2 x 3 x 4 + x 2 x 3 y = x 1 x 3 + x 1 x 3 + x 2 x 3 x 4 + x 1 x 2

22 Minimalizacja funkcji logicznych 22/28 Dla KPN byłoby: v v0x10 * v100x * v011x * v Implicenty proste: x 1 + x 3 + x 4 x 1 + x 2 + x 3 wszystkie implicenty są niezbędne Tablica pokrycia: Ai f(Ai)= v 2 0x10 v 6 100x v 4 011x v 1 v 2 v 3 v 5

23 Minimalizacja funkcji logicznych 23/28 Metodę Quinea-McCluskeya można też zrealizować pozostając przy notacji dziesiętnej APN lub KPN funkcji Przykład Funkcja jest przedstawiona opisami dziesiętnymi: f= {1,3,7,9,12,13,14(0,5,10)}

24 Minimalizacja funkcji logicznych 24/28 Dla APN: ix1x1 x2x2 x3x3 x4x4 f(X i ) v0,1(1) * v ,3(2) v v1,5(4) v v1,9(8) v v1,3,5,7(2,4) * v3,7(8) v1,5,9,13(4,8) * v5,7(2) v ,13(8) v v9,13(4) v v10,14(4) * v12,13(1) * ,14(2) *

25 Zbiór prostych implikantów: 0,1(1), 10,14(4), 12,13(1), 12,14(2), 1,3,5,7(2,4), 1,5,9,13(4,8) co odpowiada zapisom binarnym: 000x, 1x10, 110x, 11x0, 0xx1, xx01 Tablica pokrycia (indeksy przy v oznaczają kolejność ich pojawiania się w tablicy): X i \ f(X i )=1: ,1 10,14 12,13 12,14 v 2 1,3,5,7 - implikant niezbędny v 2 1,5,9,13 - implikant niezbędny v 3 v 1 v 1 v 1 v 3 Minimalizacja funkcji logicznych 25/28

26 Ponieważ w powyższej tablicy nie wszystkie jedynki funkcji zostały pokryte, konieczna jest dodatkowa tablica pokrycia, umożliwiająca wybór brakujących implikantów. Tablica ta powinna uwzględniać tylko niepokryte wcześniej jedynki funkcji i nie wykorzystane jeszcze implikanty: X i \ f(X i )=1: ,14 wiersz zdominowany 12,13 wiersz zdominowany 12,14 wiersz dominujący Minimalizacja funkcji logicznych 26/28 Ostatecznie zostają implikanty: 1,3,5,7(2,4), 1,5,9,13(4,8), 12,14(2), co odpowiada zapisom binarnym: 0xx1, xx01, 11x0. Minimalna postać APN funkcji jest następująca: f = x1 x4 + x3 x4 + x1 x2 x4

27 Niech funkcja będzie opisana tablicą Karnaugha: Zjawisko hazardu 27/ ab c O1O1 O2O2 y= ab+~ac Realizacja na bramkach: Przy bramce NOR na wyjściu byłby to hazard w zerach (HS0) a ~a b c ab ~ac y tzw. hazard w jedynkach (HS1) τPτP

28 Zjawisko hazardu 28/28 Eliminacja hazardu: ab c O1O1 O2O2 y= ab+~ac+bc Realizacja na bramkach: O3O3 a ~a b c ab ~ac bc y


Pobierz ppt "Układy kombinacyjne. Układy kombinacyjne 2/28 Metody minimalizacji układów kombinacyjnych Zjawisko hazardu."

Podobne prezentacje


Reklamy Google