Minimalizacja formuł Boolowskich

Slides:



Advertisements
Podobne prezentacje
Automaty asynchroniczne
Advertisements

Teoria układów logicznych
Metody numeryczne część 1. Rozwiązywanie układów równań liniowych.
A.Skorupski „Podstawy budowy i działania komputerów” (Warszawa 2000)
Architektura systemów komputerowych
dr A Kwiatkowska Instytut Informatyki
Badania operacyjne. Wykład 2
Michał Łasiński Paweł Witkowski
Tablice Informatyka Cele lekcji: Wiadomości: Uczeń potrafi:
Materiały pomocnicze do wykładu
ARCHITEKTURA WEWNĘTRZNA KOMPUTERA
Układy logiczne kombinacyjne sekwencyjne
Minimalizacja funkcji boolowskich
I T P W ZPT 1 Jak smakuje Espresso I T P W ZPT 2.
Struktury układów logicznych
Macierz incydencji Macierzą incydencji grafu skierowanego D = (V, A), gdzie V = {1, ..., n} oraz A = {a1, ..., am}, nazywamy macierz I(D) = [aij]i=1,...,n,
Hipergrafy Hipergraf jest rozszerzeniem pojęcia grafu. Hipergraf różni się od grafu nieskierowanego tym, że każda hiperkrawędź może być incydentna do dowolnej.
gdzie A dowolne wyrażenie logiczne ; x negacja x Tablice Karnaugha Minimalizacja A x+ A x=A gdzie A dowolne wyrażenie logiczne ;
Kod Graya.
O relacjach i algorytmach
Układy kombinacyjne.
Podstawy układów logicznych
Synteza układów sekwencyjnych z (wbudowanymi) pamięciami ROM
Dane do obliczeń.
Funkcje logiczne i ich realizacja. Algebra Boole’a
Zmodyfikowana metoda ekspansji Komputerowe narzędzia syntezy logicznej
Licznik dwójkowy i dziesiętny Licznik dwójkowy i dziesiętny
ETO w Inżynierii Chemicznej MathCAD wykład 4.. Analiza danych Aproksymacja danych.
TABLICE C++.
Cyfrowe układy logiczne
A. Sumionka. Starodawna gra marynarska; Gra dwu i wieloosobowa; Gracze wykonują ruchy naprzemian; Złożona ze stosów, w których znajduje się pewna ilość
Architektura komputerów
Zadanie programowania liniowego PL dla ograniczeń mniejszościowych
Zadanie programowania liniowego PL dla ograniczeń mniejszościowych
Podstawy programowania w języku C i C++
Układy cyfrowe.
Minimalizacja funkcji boolowskich
Przykład syntezy strukturalnej
Minimalizacja funkcji boolowskich
FUNKCJA LINIOWA.
Tablice w Turbo Pascalu.
Problematyka wykładu Podział rejestrów i liczników
Działania na zbiorach ©M.
Metoda klasyczna ... to metoda tablicowa, graficzna, której podstawowe
Liczby całkowite dodatnie BCN
Struktury układów logicznych
Sterowanie – metody alokacji biegunów II
Posługiwanie się systemami liczenia
Stało- i zmiennopozycyjna reprezentacja liczb binarnych
Podstawy Techniki Cyfrowej
FUNKCJE Opracował: Karol Kara.
FUNKCJE Pojęcie funkcji
URZĄDZENIA TECHNIKI KOMPUTEROWEJ
Informatyka +.
Grafika i komunikacja człowieka z komputerem
Zasady arytmetyki dwójkowej
Tablice Zajęcia 8. Definicja Tablica (z ang. array) jest zmienną złożoną, która składa się z ciągu elementów tego samego typu. W pamięci komputera tablica.
I T P W ZPT 1. I T P W ZPT 2 Synteza logicznaInżynieria informacji Dekompozycja funkcjonalna Odwzorowanie technologiczne FPGA Hierarchiczne podejmowanie.
I T P W ZPT 1 Minimalizacja funkcji boolowskich c.d. Pierwsze skuteczne narzędzie do minimalizacji wieloargumentowych i wielowyjściowych funkcji boolowskich.
Podstawy Techniki Cyfrowej Dr inż. Marek Mika Państwowa Wyższa Szkoła Zawodowa im. Jana Amosa Komeńskiego W Lesznie Wykład 5: Minimalizacja form boolowskich.
 Formuła to wyrażenie algebraiczne (wzór) określające jakie operacje ma wykonać program na danych. Może ona zawierać liczby, łańcuchy znaków, funkcje,
Elementy cyfrowe i układy logiczne
STATYSTYKA – kurs podstawowy wykład 8 dr Dorota Węziak-Białowolska Instytut Statystyki i Demografii.
I T P W ZPT 1 Realizacje funkcji boolowskich Omawiane do tej pory metody minimalizacji funkcji boolowskich związane są z reprezentacją funkcji w postaci.
Dr Galina Cariowa. Legenda  Optymalizacja układów dwupoziomowych.  Kryterium kosztu realizacji.  Tablica (mapa) Karnaugh’a.  Metoda Quine’a – Mc Cluske’a.
Rozpatrzmy następujące zadanie programowania liniowego:
Elementy cyfrowe i układy logiczne
Pojęcia podstawowe Algebra Boole’a … Tadeusz Łuba ZCB 1.
Metoda klasyczna (wg książki Sasao)
Wstęp do Informatyki - Wykład 6
Zapis prezentacji:

Minimalizacja formuł Boolowskich Stosowanie reguł algebry Boole’a w celu minimalizacji funkcji logicznych jest niedogodne brak metody, aby stwierdzić czy dana formuła może być jeszcze minimalizowana czasami należy daną formułę bardziej skomplikować, aby uzyskać prostszy wynik. Np.: 1=(X+X’) nieporęczna, łatwo o błąd. Ćwiczenie. Dokonać minimalizacji funkcji logicznych przedstawionych poniżej. ??? Minimalizacja jest możliwa jeżeli dwa wektory wejściowe dla których funkcja przyjmuje taką samą wartość różnią się jednym argumentem. Teoria układów logicznych

Teoria układów logicznych Kostki logiczne Dogodne będzie takie przedstawienie funkcji, aby wektory sąsiadujące (różniące się jednym argumentem) łatwo dawały się łączyć w grupy. Dogodne będzie przedstawienie funkcji logicznej przy pomocy kostki w kostki w przestrzeni n wymiarowej (gdzie n jest ilością argumentów funkcji). Dla każdej zmiennej jest jedna oś na której zmienna przybiera wartość 0 lub 1. Teoria układów logicznych

Teoria układów logicznych Kostki logiczne C.D. Możemy graficznie odwzorować funkcję logiczną na kostce logicznej w następujący sposób. Jeżeli dla danego wektora funkcja przyjmuje wartość 1 to wierzchołek kostki jest czarny Jeżeli dla danego wektora funkcja przyjmuje wartość 0 to wierzchołek kostki jest biały Przykład Odwzorowano funkcje logiczne z przykładu na dwuwymiarowych kostkach logicznych Ćwiczenie. Narysować kostkę logiczną dla funkcji F1={0,1,2,4} Teoria układów logicznych

Kostki. Wyznaczanie implikantów Implikantem G funkcji F będzie iloczyn zmiennych taki, że kiedy G()=1 to F()=1. W najprostszym przypadku implikantami są mintermy w postaci kanonicznej sumy. Pokryciem funkcji logicznej nazywamy zbiór implikantów pokrywających jej minitermy. Chcemy aby jeden implikant pokrywał maksymalnie dużo jedynek funkcji F. Przykład. Wyznaczanie implikantów dla kostek logicznych. Wierzchołki kostki mogą być opisane przy pomocy jednego implikantu jeżeli przylegają do siebie w przestrzeni n wymiarowej. F1(A,B)=A F2(A,B,C)=AB+BC+AC F3(A,B,C)=A Teoria układów logicznych

Kostki. Wyznaczanie implikantów. C.D. Dla kostki 3 wymiarowej przyleganie minitermów w przestrzeni jednowymiarowej odpowiada 2 składnikowemu iloczynowi/implikantowi. przyleganie minitermów w przestrzeni dwuwymiarowej odpowiada 1 składnikowemu iloczynowi /implikantowi przyleganie minitermów w przestrzeni trójwymiarowej określa funkcję jako stałą przyleganie minitermów w przestrzeni zerowymiarowej odpowiada 3 składnikowemu iloczynowi /implikantowi Pokryciem funkcji logicznej nazywamy zbiór implikantów pokrywających jej minitermy. Mocą ( rozmiarem ) pokrycia nazywamy liczbę jego implikantów. Minimalne pokrycie jest pokryciem o najmniejszej mocy. Celem minimalizacji jest znalezienie minimalnego pokrycia. Teoria układów logicznych

Teoria układów logicznych Tablice Karnaugh. Tablica Karnaugh jest dwuwymiarową tablicą prawdy. Numerowanie kolumn i wierszy tablicy odbywa się w kodzie Gray’a. Kod Grey’a to taki w którym kolejne pozycje różnią się tylko pojedynczym bitem: Np.: {0000, 0001, 0011, 0010, 0110, 0111, 0101, 0100, 1100, 1101, 1111, 1110, 1010, 1011,1001,1000} Ćwiczenie. Dokonać odwzorowania kostki 3D w strukturę tablicy Karnaugh Struktura tablicy Karnaugh’a jest taka, że sąsiadujące komórki są sąsiadującymi również w strukturze kostki. Teoria układów logicznych

Teoria układów logicznych Diagramy Veitcha Inną formą graficznego przedstawienia tablicy prawdy na płaszczyźnie są diagramy Veitcha. Od tablicy Karnaugh różnią się one sposobem opisania kolumn i wierszy tablicy Ćwiczenie1. Narysować diagram Veitcha odpowiadający tablicy Kranaugh 4 zmiennych. Ćwiczenie2. Wpisać w kratki tablicy Karnaugh / diagramu Veitcha 4 zmiennych numery odpowiadających im mintermów. Teoria układów logicznych

Metoda Karnaugh. Grupowanie mintermów. Podobnie jak w kostce logicznej tak i w tablicy Karnaugh sąsiadujące wierzchołki (mintermy) mogą być grupowane w celu wyznaczenia wspólnego implikantu. Zasady grupowania Ilość mintermów które mogą być grupowane wynosi 2i, gdzie 1<i<k. k - ilość zmiennych. Ilość zmiennych które są stałe w danej grupie wynosi k-i. Przykład. Sposób grupowanie mintermów dla funkcji 3 zmiennych. Grupy 2 i 4 elementowe Teoria układów logicznych

Metoda Karnaugh. Grupowanie mintermów. C.D. Przykład. Sposób grupowanie mintermów dla funkcji 4 zmiennych. Grupy 2 i 4 elementowe Teoria układów logicznych

Wyznaczanie implikantów Dowolne dwa sąsiadujące minitermy mogą być zredukowane. Dla tablicy k elementowej redukowane mogą by również grupy 4, 8, 2k minitermów. Grupy te mogą być opisane odpowiednio przez (k-2), (k-3),(k-4),..,0 zmiennych Reguły wyznaczania implikantów. Jeżeli zmienna X jest 0 we wszystkich kratkach w grupie wtedy w iloczynie występuje literał X’ Jeżeli zmienna X jest 1 we wszystkich kratkach w grupie wtedy w iloczynie występuje literał X Jeżeli zmienna X jest nieokreślona ( w niektórych kratkach 0, w niektórych 1 ), to X nie występuje w iloczynie . Ćwiczenie. Wyznaczyć implikanty dla funkcji przedstawionej na drugim rysunku Teoria układów logicznych

Tablice Karanugh. Wyznaczanie pokrycia. c). Minimalne Teoria układów logicznych

Metoda minimalizacji funkcji logicznych Karnaugh Aby zminimalizować wynikową formułę Boolowską należy stosować następujący algorytm: Wybierz 1 z tablicy i zaznacz maksymalną grupę jaką da się utworzyć wokół. Powtórz czynność dla wszystkich 1. Sprawdź wszystkie 1. Jeżeli dana 1 należy tylko do jednej grupy, to należy grupę tą dopisać do listy implikantów. Powtórzyć czynność dla wszystkich 1. Jedynki opisane wcześniej są pomijane. Pozostałe 1 opisać przy pomocy minimalnej liczby implikantów. Ćwiczenie. Zminimalizować metodą Karanugh funkcję F: F1={0,1,2,4,5,6,7,8,12,13,15} Teoria układów logicznych

Metoda Karnaugh. Funkcje nie w pełni określone. Kwadraty w których funkcja jest nieokreślona powinny być tak wykorzystane, aby maksymalizować tworzone grupy F=A’B+AC’D+AB’D’ Teoria układów logicznych

Minimalizacja Karnaugh postaci kanonicznej iloczynu Sposób rozumowania przeprowadzony dla wartości 1 funkcji logicznych można przeprowadzić dla wartości 0 funkcji. Zamiast o implikantach mówimy jednak o implicjentach funkcji logicznej. Implicjentem G funkcji F będzie suma zmiennych taka, że kiedy G()=0 to F()=0. Najprostszymi implicjentami funkcji są maxtermy tworzone dla postaci kanonicznej iloczynu. Łączone w grupy zera funkcji mogą być opisywane w postaci odpowiednich sum które tworzymy analogicznie jak dla grup jedynek z tą różnica, że zmienna jest zanegowana jeżeli w zaznaczonej grupie jest jedynką Ćwiczenie. Zminimalizować do postaci kanonicznej iloczynu metodą Karanugh funkcję F: F0={0,1,4,5,6,7,12} F*={8,13,15} Teoria układów logicznych