Metoda Karnaugh. B A BC A

Podobne dokumenty
dr inż. Małgorzata Langer Architektura komputerów

Podstawy Automatyki. Wykład 12 - synteza i minimalizacja funkcji logicznych. dr inż. Jakub Możaryn. Warszawa, Instytut Automatyki i Robotyki

b) bc a Rys. 1. Tablice Karnaugha dla funkcji o: a) n=2, b) n=3 i c) n=4 zmiennych.

Wykład nr 1 Techniki Mikroprocesorowe. dr inż. Artur Cichowski

3. SYNTEZA UKŁADÓW KOMBINACYJNYCH

Rys. 2. Symbole dodatkowych bramek logicznych i ich tablice stanów.

Koszt literału (literal cost) jest określony liczbą wystąpień literału w wyrażeniu boolowskim realizowanym przez układ.

UKŁADY KOMBINACYJNE (BRAMKI: AND, OR, NAND, NOR, NOT)

Elementy logiki. Algebra Boole a. Analiza i synteza układów logicznych

Minimalizacja formuł Boolowskich

Minimalizacja form boolowskich

Lekcja na Pracowni Podstaw Techniki Komputerowej z wykorzystaniem komputera

Część 2. Funkcje logiczne układy kombinacyjne

WOJSKOWA AKADEMIA T E CHNI CZNA im. Jarosława Dą brow ski ego ZAKŁAD AWIONIKI I UZBROJENIA LOTNICZEGO

Wstęp do Techniki Cyfrowej... Algebra Boole a

Cyfrowe bramki logiczne 2012

Minimalizacja funkcji boolowskich

1.1. Pozycyjne systemy liczbowe

Podstawy Automatyki. Wykład 9 - Podstawy matematyczne automatyki procesów dyskretnych. dr inż. Jakub Możaryn. Instytut Automatyki i Robotyki

WYRAŻENIA ALGEBRAICZNE

Architektura komputerów ćwiczenia Bramki logiczne. Układy kombinacyjne. Kanoniczna postać dysjunkcyjna i koniunkcyjna.

x x

Minimalizacja funkcji boolowskich - wykład 2

Podstawowe operacje arytmetyczne i logiczne dla liczb binarnych

Funkcja Boolowska. f:b n B, gdzieb={0,1} jest zbiorem wartości funkcji. Funkcja boolowska jest matematycznym modelem układu kombinacyjnego.

ARYTMETYKA BINARNA. Dziesiątkowy system pozycyjny nie jest jedynym sposobem kodowania liczb z jakim mamy na co dzień do czynienia.

ćwiczenie 202 Temat: Układy kombinacyjne 1. Cel ćwiczenia

WYMAGANIA KONIECZNE - OCENA DOPUSZCZAJĄCA:

Automatyka Treść wykładów: Literatura. Wstęp. Sygnał analogowy a cyfrowy. Bieżące wiadomości:

Podstawy Automatyki. Wykład 15 - Projektowanie układów asynchronicznych o programach liniowych. dr inż. Jakub Możaryn. Instytut Automatyki i Robotyki

INSTYTUT CYBERNETYKI TECHNICZNEJ POLITECHNIKI WROCŁAWSKIEJ ZAKŁAD SZTUCZNEJ INTELIGENCJI I AUTOMATÓW

Dla każdej własności zaznacz litery przyporządkowane trójkątom posiadającym tę własność. (rysunek powyżej) A/ B/ C/ D

Minimalizacja funkcji boolowskich

Technika cyfrowa Synteza układów kombinacyjnych

Technika cyfrowa Synteza układów kombinacyjnych (I)

WOJSKOWA AKADEMIA TECHNICZNA im. Jarosława Dąbrowskiego

Algebra Boole a i jej zastosowania

dr inż. Rafał Klaus Zajęcia finansowane z projektu "Rozwój i doskonalenie kształcenia i ich zastosowań w przemyśle" POKL

WYMAGANIA EDUKACYJNE Z MATEMATYKI KLASA I GIMNAZJUM Małgorzata Janik

W jakim celu to robimy? Tablica Karnaugh. Minimalizacja

Lista tematów na kolokwium z wykładu z Techniki Cyfrowej w roku ak. 2013/2014

Tranzystor JFET i MOSFET zas. działania

Wstęp. Przygotowanie teoretyczne

Arytmetyka liczb binarnych

Wstęp do Techniki Cyfrowej i Mikroelektroniki

funkcja, opisana tablicami rys. 3-8a,b, bez uwzględnienia pozycji nieokreślonych

Definicje. Algorytm to:

Logika binarna. Prawo łączności mówimy, że operator binarny * na zbiorze S jest łączny gdy (x * y) * z = x * (y * z) dla każdego x, y, z S.

WYMAGANIA EDUKACYJNE NIEZBĘDNE DO UZYSKANIA ŚRÓDROCZNYCH I ROCZNYCH OCEN KLASYFIKACYJNYCH Z MATEMATYKI W KLASIE I GIMNAZJUM

SYSTEMY LICZBOWE. Zapis w systemie dziesiętnym

WOJSKOWA AKADEMIA TECHNICZNA im. Jarosława Dąbrowskiego

Synteza strukturalna automatu Moore'a i Mealy

Zadania do wykładu 1, Zapisz liczby binarne w kodzie dziesiętnym: ( ) 2 =( ) 10, ( ) 2 =( ) 10, (101001, 10110) 2 =( ) 10

Podstawy Techniki Cyfrowej Teoria automatów

Dr inż. Jan Chudzikiewicz Pokój 117/65 Tel Materiały:

SYSTEMY LICZBOWE 275,538 =

Złożoność obliczeniowa zadania, zestaw 2

Wymagania edukacyjne z matematyki dla klasy I gimnazjum wg programu Matematyka z plusem

I. Liczby i działania

Wymagania edukacyjne z matematyki dla klasy VII

Dla człowieka naturalnym sposobem liczenia jest korzystanie z systemu dziesiętnego, dla komputera natomiast korzystanie z zapisu dwójkowego

Tab. 1 Tab. 2 t t+1 Q 2 Q 1 Q 0 Q 2 Q 1 Q 0

Wymagania edukacyjne z matematyki dla uczniów klasy VII szkoły podstawowej

12. Wprowadzenie Sygnały techniki cyfrowej Systemy liczbowe. Matematyka: Elektronika:

Algorytmy sztucznej inteligencji

Projekt z przedmiotu Systemy akwizycji i przesyłania informacji. Temat pracy: Licznik binarny zliczający do 10.

MATEMATYKA WYMAGANIA EDUKACYJNE DLA KLASY V

xx + x = 1, to y = Jeśli x = 0, to y = 0 Przykładowy układ Funkcja przykładowego układu Metody poszukiwania testów Porównanie tabel prawdy

Podstawy Automatyki. Człowiek- najlepsza inwestycja. Projekt współfinansowany przez Unię Europejską w ramach Europejskiego Funduszu Społecznego

Liczby zespolone. x + 2 = 0.

LABORATORIUM PROCESORY SYGNAŁOWE W AUTOMATYCE PRZEMYSŁOWEJ. Zasady arytmetyki stałoprzecinkowej oraz operacji arytmetycznych w formatach Q

Technologie Informacyjne

ZADANIE 1. Rozwiązanie:

TEMAT: PROJEKTOWANIE I BADANIE PRZERZUTNIKÓW BISTABILNYCH

Analiza składowych głównych. Wprowadzenie

Wymagania edukacyjne z matematyki

Wymagania edukacyjne z matematyki

Wymagania na poszczególne oceny w klasie I gimnazjum do programu nauczania MATEMATYKA NA CZASIE

Aproksymacja funkcji a regresja symboliczna

Systemy liczbowe używane w technice komputerowej

Wymagania eduka cyjne z matematyki

Temat: Zastosowanie wyrażeń regularnych do syntezy i analizy automatów skończonych

2 Arytmetyka. d r 2 r + d r 1 2 r 1...d d 0 2 0,

Automatyka. Treść wykładów: Multiplekser. Układ kombinacyjny. Demultiplekser. Koder

Rozwiązywanie problemów z użyciem Solvera programu Excel

LABORATORIUM 04, ZESTAW 1 SYNTEZA BEZSTYKOWYCH UKŁADÓW KOMBINACYJNYCH

Samodzielnie wykonaj następujące operacje: 13 / 2 = 30 / 5 = 73 / 15 = 15 / 23 = 13 % 2 = 30 % 5 = 73 % 15 = 15 % 23 =

I V X L C D M. Przykłady liczb niewymiernych: 3; 2

Przedmiotowe zasady oceniania i wymagania edukacyjne z matematyki dla klasy drugiej gimnazjum

Matematyka z kluczem. Szkoła podstawowa nr 18 w Sosnowcu. Przedmiotowe zasady oceniania klasa 7

DYDAKTYKA ZAGADNIENIA CYFROWE ZAGADNIENIA CYFROWE

Bramki logiczne Podstawowe składniki wszystkich układów logicznych

0 + 0 = 0, = 1, = 1, = 0.

ARCHITEKRURA KOMPUTERÓW Kodowanie liczb ze znakiem

Uniwersytet Kazimierza Wielkiego w Bydgoszczy Zespół Szkół nr 5 Mistrzostwa Sportowego XV Liceum Ogólnokształcące w Bydgoszczy

Laboratorium podstaw elektroniki

wagi cyfry pozycje

Architektura komputerów Wykład 2

Wymagania na poszczególne oceny szkolne z matematyki. dla uczniów klasy Ia i Ib. Gimnazjum im. Jana Pawła II w Mętowie. w roku szkolnym 2015/2016

Przerzutnik ma pewną liczbę wejść i z reguły dwa wyjścia.

Transkrypt:

Metoda Karnaugh. Powszechnie uważa się, iż układ o mniejszej liczbie elementów jest tańszy i bardziej niezawodny, a spośród dwóch układów o takiej samej liczbie elementów logicznych lepszy jest ten, który operuje mniejszą liczbą sygnałów (mniejsza ilość wejść). Tak więc niezależnie od zastosowanych dalej elementów schematu logicznego, bardzo ważnym etapem syntezy jest poszukiwanie takiej postaci funkcji, w której występuje minimalna liczba zmiennych lub ich negacji. Proces poszukiwania tej postaci minimalnej nosi nazwę minimalizacji funkcji i opiera się na następujących regułach sklejania: x + x = ( B + x)( B + x) = B w których i B to zmienne lub funkcje przełączające. Reguły te można przedstawić następująco: suma lub iloczyn dwóch wyrażeń różniących się między sobą tylko na jednej pozycji znakiem negacji, mogą być zastąpione jednym wyrażeniem, bez litery stanowiącej różnicę, np.: + = ( + ) = lub ( x + + )( + + ) = + x = Wyrażenia podlegające sklejaniu nazywane są wyrażeniami sąsiednimi. W wyniku sklejania uzyskuje się wyrażenia, które już nie są postaciami kanonicznymi, ale zachowują postać sumy iloczynów oraz iloczynu sum. Wyrażenia tego typu przyjęto nazywać postacią normalną sumy i postacią normalną iloczynu. W przypadku gdy funkcja jest złożona, wielu zmiennych wyszukiwanie wyrażeń sąsiednich i sklejanie w sposób analityczny jest bardzo uciążliwe. Istnieją metody upraszczające procedurę minimalizacji. Jedną z nich jest metoda tablic Karnaugh (zwana również metodą Veitcha). Metoda ta ułatwia sklejanie przez takie usytuowanie na płaszczyźnie wyrażeń postaci kanonicznej, aby wyrażenia sąsiednie były umieszczone blisko siebie, a więc były sąsiednimi również w sensie geometrycznym. Tablica do której wprowadzamy wartości logiczne funkcji jest prostokątna i zawiera 2 n pól. Każda kratka tablicy odpowiada jednej kombinacji wartości zmiennych wejściowych. Kod tych kombinacji jest dobrany tak, aby sąsiednie kratki różniły się wartością jedynie jednej zmiennej, a wiec by odpowiadały im sąsiednie wyrażenia. Kod o takich właśnie własnościach nosi nazwę kody Gray a. Do opisanej tym kodem tablicy wpisuje się symbole, odpowiadające wartościom funkcji dla odpowiednich kombinacji zmiennych wejściowych. Przykłady tablic Karnaugh dla dwóch, trzech, czterech oraz pięciu zmiennych przedstawia poniższy rysunek. Baczną uwagę należy zwrócić na specyficzną numerację poszczególnych kratek, i stosować ja podczas wpisywania wartości funkcji logicznej zdefiniowanej w systemie dziesiętnym. Wymusza ją zastosowanie kodu Gray a. B 3 2 2 3 4 5 7 6

B B 3 2 3 2 6 7 5 4 4 5 7 6 8 9 4 5 3 2 2 3 5 4 24 24 27 26 3 3 29 28 8 9 6 7 9 8 22 23 2 2 Po wpisaniu wartości funkcji do tablicy przystępujemy do analizy. Jeśli w dwóch sąsiednich kratkach wypełnionej tablicy Karnaugh znajdują się jednakowe symbole (logiczne lub logiczne ), to odpowiadające tym kratkom wyrażenia można skleić, co odpowiada usunięciu litery, która w ramach sklejanej grupy zmienia wartość. Takie sąsiednie kratki tablicy, tworzące pary, łączy się linią oznaczającą możliwość sklejenia. Przykładowe pary dla tablic trzech i czterech zmiennych zamieszczam poniżej oraz w późniejszych przykładach. B Gdy łączonymi elementami są jedynki to funkcja nasza ma postać sumy iloczynów, więc rezultat upraszczania będzie iloczynem w którym symbolowi odpowiada zmienna, a symbolowi jej negacja czyli. Jeżeli natomiast łączonymi elementami są zera to funkcja przyjmie postać iloczynu sum, a rezultat minimalizacji będzie sumą, w której symbolowi będzie odpowiadała negacja zmiennej B, symbolowi sama zmienna. Podczas minimalizacji tą metodą należy przestrzegać kilku ważnych zasad:. Gdy nie zależy nam konkretnej postaci funkcji minimalizowanej (koniunkcyjnej lub dysjunkcyjnej powinniśmy zdecydować się na łączenie tych elementów które dadzą nam prostsze rozwiązanie (liczebna przewaga jednych elementów nad drugimi). 2. Wśród wybranych symboli ( albo ) poszukuje się możliwości utworzenia największej grupy (lub kilku grup) np. 8-kratowej, a gdy takiej nie znajdziemy to 4- kratowej itd. Wybrane symbole leżące poza wydzielonymi grupami łączy się w mniejsze grupy z możliwością wykorzystania kratek już wcześniej użytych w innej grupie (jeśli pomoże to w uzyskaniu grupy o większej liczbie elementów). Symbole 2

nie dające się pogrupować zaznaczamy jako grupy jednolelementowe (jednokratkowe ). 3. Jeżeli istnieją w tablicy grupy, których składowe należą już do innych grup taką grupę usuwamy w celu uzyskania najprostszej postaci funkcji (pozostawiamy jedynie grupy niezbędne). 4. Gdy istnieje większa liczba możliwości połączeń w grupy to wybieramy tą, która będzie najprostsza (będzie uzależniona od minimalnej liczby zmiennych wejściowych). 5. Liczba pól wchodzących w skład grupy musi być potęgą liczby dwa (2 n gdzie n to liczba naturalna). W przeciwnym razie nie można opisać danej grupy za pomocą jednego iloczynu (bądź sumy - gdy zakreślamy zera). 6. Każde dwa łączone pola muszą być swoimi geometrycznymi sąsiadami (musza być rozdzielone od siebie linią podziału kratek lub krawędzią tablicy). Inaczej wygląda to w przypadku tablic większej ilości zmiennych gdzie można łączyć nie tylko takie pola. Wtedy obowiązuje zasada że dwa łączone elementy musza się różnić co najwyżej jednym bitem w kodzie Gray a. 7. Łączone pola muszą być prostokątami (lub w szczególności kwadratami muszą posiadać co najmniej jedną oś symetrii). 8. W przypadku gdy funkcja jest nie w pełni określona (dla pewnych wartości przyjmuje wartości dowolne) postępujemy podobnie pamiętając, iż znaki nieokreśloności możemy łączyć z zerami lub jedynkami. Metoda tablic Karnaugh jest przydatna dla funkcji logicznych nie więcej niż 5-6 zmiennych. W przypadku większej liczby zmiennych algorytm wyszukiwania elementów nadających się do sklejania mocno się komplikuje (ciężko jest geometrycznie odnaleźć i zaznaczyć te, które łączą się jednym bitem). Wtedy korzysta się z metod matematycznych. Przykłady: Weźmy w pełni określoną funkcję postaci dziesiętnej: y(x,x 2,x 3,x 4 ) = {,,3,4,5,6,9,,} Przeprowadzimy minimalizację w celu uzyskania iloczynu sum oraz sumy iloczynu. Wpierw wpisujemy wartości funkcji do tabeli Karnaugh mając na uwadze odpowiednią kolejność, a następnie grupujemy zera (tablica prawa oraz jedynki (tablica lewa): B B 3

Na ich podstawie otrzymujemy normalne postaci minimalne funkcji: x4 + x4 y = x + dla jedynek oraz: y = ( + )( + + x4)( + x4)( + + + x4) dla zer. Teraz rozważmy przykład w którym funkcja nie jest w pełni określona. Weźmy funkcję określoną już w tablicy Karnaugh poniżej: - - Jeżeli nie uwzględialibyśmy pozycji nieokreślonych funkcja nasza przyjęłaby postać: - - - - y = = ( + )( + ) Natomiast jeśli uwzględnimy znaki nieokreśloności podczas budowania grup to funkcja nasza przyjmie postać: 2 3 3 2 x y = x x + x x = x ( x + ) 3 Jak widać po zapisie samej funkcji (jak i tabelach zamieszczonych poniżej) funkcja zapisana w ten sposób jest funkcją prostszą (zależy od mniejszej liczby zmiennych wejsciowych). 4

Dlatego wykorzystanie nieokreśloności funkcji podczas doboru grup jest wskazane wszędzie tam gdzie jest to możliwe. - - - - 5