Część 2 Funkcje logiczne układy kombinacyjne Zapis funkcji logicznych układ funkcjonalnie pełny Arytmetyka Bool a najważniejsze aksjomaty i tożsamości Minimalizacja funkcji logicznych Układy kombinacyjne realizacja funkcji logicznych w układach cyfrowych 04.11.2017 TCiM Wydział EAIiIB Katedra EiASPE 1
Układ cyfrowy Podstawowe informacje 1 2 Układ cyfrowy y 1 y 2 n y m X = ( 1,..., n ) sygnały wejściowe (wektor) Y = (y 1,..., y n ) sygnały wyjściowe (wektor) i=1,2,,n i B j=1,2,,m y i B B 0,1 jednowymiarowy zbiór Boole a (boolowski) 04.11.2017 TCiM Wydział EAIiIB Katedra EiASPE 2
Układ cyfrowy Podstawowe informacje Zmienna boolowska 1-no wymiarowa zmienna przyjmująca wartości (stany) ze zbioru Boole a B X Y n X B m Y B {X} zbiór wartości (stanów) sygnału wejściowego {Y} zbiór wartości (stanów) sygnału wyjściowego Sygnały X, Y przyjmują różne wartości w dyskretnych chwilach t Wtedy można stosować oznaczenia X t, Y t Wyróżnia się dwa przypadki: Y t = f(x t ) układ kombinacyjny t t = t 1, t 2, Y t = f(x t, X t-t1, X t-t2... ) układ sekwencyjny 04.11.2017 TCiM Wydział EAIiIB Katedra EiASPE 3
Podstawy - Opis Układ kombinacyjny opisuje się określając funkcję f przekształcającą zbiór stanów wejściowych w zbiór stanów wyjściowych tj. f : X Y Y = f(x), gdzie X{X}, Y{Y} f f1, f2,..., f m X f i : B y i = f i (X), gdzie X{X}, y i B Funkcję f i nazywamy funkcją przełączającą bo przyjmuje tylko 2 wartości 0 lub 1 ( można te stany interpretować jako stany załączenia/wyłączenia, stany zwarcia/rozwarcia styków, lub jako prawda/fałsz. Funkcje przełączającą nazywa się także często funkcją logiczną lub funkcją boolowską. 04.11.2017 TCiM Wydział EAIiIB Katedra EiASPE 4
Algebra Boole a Funkcje logiczne funkcje Boole owskie mogą być określone przy pomocy: tablicy prawdy (tablicy funkcyjnej), formuły boolowskiej zapis kanoniczny i dziesiętny, tabeli Karnaugh a lub w formie graficznej (przy pomocy odpowiednich symboli graficznych). W algebrze Boole a zdefiniowane są operacje: sumy i iloczynu jako operacje dwuargumentowe, negacji jako operacji jednoargumentowej, stałe 0,1 jako operacje zero argumentowe. Algebra Boole a (zerojedynkowa) B,,,,0,1 Np. w matematyce funkcja y=2 04.11.2017 TCiM Wydział EAIiIB Katedra EiASPE 5
SUMA y Symbole operatora sumy dwuargumentowej: np 1 2,,or y 1 2 y 1 or 2 Tablica prawdy: 1, 2 y 1 2 00 0 01 1 10 1 11 1 04.11.2017 TCiM Wydział EAIiIB Katedra EiASPE 6
ILOCZYN Symbole operatora sumy dwuargumentowej: np Tablica prawdy: y 1 2 y 1 2 y 1 and 2 y 1 & 2 1, 2 y y 1 2 1 2,,&,and 00 0 01 0 10 0 11 1 04.11.2017 TCiM Wydział EAIiIB Katedra EiASPE 7
NEGACJA Symbole operatora negacji:,~,not np. y y ~ y not( ) 0 1 1 0 04.11.2017 TCiM Wydział EAIiIB Katedra EiASPE 8
Prawa algebry Boole a aksjomaty i tożsamości 04.11.2017 TCiM Wydział EAIiIB Katedra EiASPE 9 (idempotentność) (rozdzielność) (łączność) (przemienność) 1 2 2 1 1 2 2 1 3 2 1 3 2 1 3 2 1 3 2 1 3 1 2 1 3 2 1 3 1 2 1 3 2 1
Prawa algebry Boole a aksjomaty i tożsamości 12 1 11 2 1 1 (pochłanianie) 0 1 operacje ze stałą 1 0 operacja z negacją operacje podwójnej negacji 1 2 1 2 1 2 1 2 (prawa de Morgana) 04.11.2017 TCiM Wydział EAIiIB Katedra EiASPE 10
Prawa algebry Boole a aksjomaty i tożsamości Operacje na stałych: 01 10 1 1 1 1 1 1 1 0 0 1 1 1 0 0 1 0 04.11.2017 TCiM Wydział EAIiIB Katedra EiASPE 11
Prawa algebry Boole a aksjomaty i tożsamości Operacje na stałych: 01 10 1 1 1 1 1 1 1 0 0 1 1 1 0 0 1 0 04.11.2017 TCiM Wydział EAIiIB Katedra EiASPE 12
Symbole graficzne funkcji Boole a bramki logiczne System funkcjonalnie pełny AND OR NOT 04.11.2017 TCiM Wydział EAIiIB Katedra EiASPE 13
Bramka funkcja Eclusive OR alternatywa rozłączna, wykluczająca y = 1 2 = 1 2 1 2 1, 2 y 1 2 00 0 01 1 10 1 11 0 04.11.2017 TCiM Wydział EAIiIB Katedra EiASPE 14
Zapis form/funkcji boolowskich Forma boolowska i tabela prawdy Przykład funkcji: Liczba Argumenty y z f, y, z = y + zҧ y z ഥ f (, y, z) 0 0 0 0 0 1 0 0 1 1 1 2 0 1 0 0 3 0 1 1 1 1 4 1 0 0 0 5 1 0 1 0 6 1 1 0 1 1 7 1 1 1 1 1 04.11.2017 TCiM Wydział EAIiIB Katedra EiASPE 15
Zapis form/funkcji boolowskich Korzystając z tabeli prawdy udowodnić tożsamość: ҧ + y = y Argumenty y ഥ + y (ഥ + y) y 0 0 1 0 0 0 1 1 0 0 1 0 0 0 0 1 1 1 1 1 UWAGA: Zrobić jeszcze przykład - udowodnienie jednej z reguł pochłaniania Te dwie kolumny są sobie równe cbdu. 04.11.2017 TCiM Wydział EAIiIB Katedra EiASPE 16
Zapis form/funkcji boolowskich W oparciu o znajomość tablicy prawdy można sformułować dwie podstawowe formuły: Dla skrócenia zapisu tych form stosuje się też powszechnie postaci dziesiętne form sumacyjnych i iloczynowych Kanoniczna forma (postać) sumacyjna dysjunkcja: Na podstawie wierszy tabeli prawdy gdzie funkcja przyjmuje wartość 1 prawda; f, y, z = ҧ തyz + yz ҧ + yz ҧ + yz = (1,3,6,7) Dla poprzedniego przykładu funkcji: Kanoniczna forma (postać) iloczynowa koniunkcja: Na podstawie wierszy tabeli prawdy gdzie funkcja przyjmuje wartość 0 fałsz; f, y, z = + y + z + തy + z ҧ + y + zҧ = (0,2,4,5) 04.11.2017 TCiM Wydział EAIiIB Katedra EiASPE 17
Zapis form/funkcji boolowskich Kanoniczną postać sumacyjną funkcji uzyskuje się tworząc sumę iloczynów pełnych odpowiadających kombinacjom argumentów we wszystkich punktach, w których funkcja przyjmuje wartość jeden. Kanoniczną postać iloczynową funkcji uzyskuje się tworząc iloczyn sum pełnych odpowiadających kombinacjom argumentów we wszystkich punktach, w których funkcja przyjmuje wartość zero. Minimalizacja funkcji/form boolowskich W praktycznej realizacji funkcji logicznych, w szczególności w formie cyfrowych układów kombinacyjnych, dąży się do tego aby minimalna forma sumacyjna (iloczynowa): >>> zawierała minimalną liczbę iloczynów (sum), >>> żaden z iloczynów (żadna z sum) nie mógł być zastąpiony przez inny o mniejszej liczbie literałów. 04.11.2017 TCiM Wydział EAIiIB Katedra EiASPE 18
Podstawowe metody minimalizacji układów jednowyjściowych: Tablica Karnaugha, Metoda Quine a Mc Cluskey a Tablica Karnaugha prezentacja tablicy prawdy funkcji boolowskiej/logicznej w specyficznej, uporządkowanej formie Tablica dla funkcji 3 argumentowej KOD Gray a!!! >>> WAŻNE!!! 2, 3 1 00 01 11 10 0 1 04.11.2017 TCiM Wydział EAIiIB Katedra EiASPE 19
Minimalizacja funkcji boolowskich/logicznych z tablicami Karnaugh a Tablica dla funkcji 4 argumentowej 3, 4 1, 2 00 01 11 10 WAŻNE!!! Warto spojrzeć na kolejne komórki tablicy jak na macierz z przypisanymi spółrzędnymi kolejnymi numerami 00 01 0 1 3 2 4 5 7 6 POLECAM Dobre wyjaśnienie tablic Karanugh a i metody minimalizacji z ich wykorzystaniem na kanale ElektroPrzewodnik YOUTUBE: https://www.youtube.com/watch?v=ns4ghc-kdwi 11 10 12 13 15 14 8 9 11 10 04.11.2017 TCiM Wydział EAIiIB Katedra EiASPE 20
Minimalizacja funkcji boolowskich/logicznych z tablicami Karnaugh a Tablica dla funkcji 5 argumentowej >>> przeanalizować współrzędne komórek odbicia, symetrie 3, 4, 000 001 011 010 110 111 101 100 5 1, 2 00 01 11 10 04.11.2017 TCiM Wydział EAIiIB Katedra EiASPE 21
Minimalizacja funkcji boolowskich/logicznych z tablicami Karnaugh a Algorytm zasady: W tablicy zaznaczmy grupy 1 -ek lub 0 -er sąsiadujących ze sobą w wierszach lub kolumnach Staramy się objąć w jednej grupie jak największą liczbę elementów 1 lub 0 Elementy grup 1 lub 0 mogą być pokrywane grupami wielokrotnie, jeśli to prowadzi do powiększenia poszczególnych grup Liczba elementów w grupie musi być kolejną potęgą liczby 2 zatem: 2,4,8,16 (nie może być 6!!!) 04.11.2017 TCiM Wydział EAIiIB Katedra EiASPE 22
Minimalizacja funkcji boolowskich/logicznych z tablicami Karnaugh a Przykład funkcja z trzema argumentami (z wcześniejszego przykładu): Dla poprzedniego przykładu funkcji: Liczba Argumenty y z f (, y, z) 0 0 0 0 0 1 0 0 1 1 2 0 1 0 0 3 0 1 1 1 4 1 0 0 0 5 1 0 1 0 6 1 1 0 1 7 1 1 1 1 f, y, z = y + zҧ 1 f min 0 f min y, z W tym wypadku grupa żółta nie potrzebna!!! 00 01 11 10 0 0 1 1 0 1 0 0 1 1, y, z = z ҧ + y, y, z = ( ҧ + y) + z Funkcja minimalna: - przez jedynki - przez zera 04.11.2017 TCiM Wydział EAIiIB Katedra EiASPE 23
Minimalizacja funkcji boolowskich/logicznych z tablicami Karnaugh a Przykład funkcja z czterema argumentami: c, d 00 01 11 10 a, b 00 1 1 0 1 01 0 0 0 0 0 f min f a, b, c, d = (3,4,5,6,7,10,14) a, b, c, d = (a + തb) a + c ҧ + ҧ d തa + c ҧ + d 11 1 1 1 0 10 1 1 1 0 1 f min a, b, c, d = ac ҧ + ad + തb c ҧ + തa തb dҧ 04.11.2017 TCiM Wydział EAIiIB Katedra EiASPE 24
Synteza układów kombinacyjnych realizacja na bramkach logicznych System funkcjonalnie pełny AND OR NOT Jednak Układy realizuje się w praktyce na bramkach NAND lub NOR A współcześnie na matrycach bramek PLA i FPGA Dlaczego??? 04.11.2017 TCiM Wydział EAIiIB Katedra EiASPE 25
Synteza układów kombinacyjnych realizacja na bramkach logicznych Bramka NAND najmniej tranzystorów!!! PLA Programable Logic Array 04.11.2017 TCiM Wydział EAIiIB Katedra EiASPE 26
Synteza układów kombinacyjnych realizacja na bramkach logicznych FPGA Field-Programmable Gate Array Dla projektanta ma funkcjonalność taką samą jak specjalizowany układ scalony, jednak może być wielokrotnie programowany bez demontażu, po jego wytworzeniu i zainstalowaniu w urządzeniu docelowym Bezpośrednio programowalne macierze bramek są zazwyczaj wolniejsze od odpowiadających im specjalizowanych układów scalonych i pobierają więcej mocy. Mają natomiast wiele innych zalet takich jak krótszy czas projektowania, niższe koszty produkcji (dla małych serii) 04.11.2017 TCiM Wydział EAIiIB Katedra EiASPE 27
Synteza układów kombinacyjnych realizacja na bramkach logicznych Bramki AND, OR, NOT - realizacja na NAND-ach i na NOR-ach POKAZAĆ Symulacja w Digital Works Wyjaśnić na tablicy dlaczego OR za pomocą NAND prawa de Morgana >>> NAND z zaprzeczeniem sygnałów wejściowych 04.11.2017 TCiM Wydział EAIiIB Katedra EiASPE 28
Synteza układów kombinacyjnych realizacja na bramkach logicznych Tu skorzystać z materiału notatek odręcznych plik PDF z notatkami POKAZAĆ Przykłady, wyjaśnienia plik PDF KLIKNIJ!!! 04.11.2017 TCiM Wydział EAIiIB Katedra EiASPE 29
Koniec Części 2 Kontynuacja materiałów wykładowych w pliku cz-3 04.11.2017 TCiM Wydział EAIiIB Katedra EiASPE 30