Układy kombinacyjne. Czas trwania: 6h. Cele ćwiczenia Przypomnienie podstawowych praw Algebry Boole a. Zaprojektowanie, montaż i sprawdzenie działania zadanych układów kombinacyjnych.. Wymagana znajomość pojęć prawa Algebry Boole a, kombinacyjna funkcja logiczna, postać kanoniczna funkcji logicznej, minimalizacja funkcji logicznej, Tablica Karnaugh, dekoder, multiplekser, demultiplekser, komparator, półsumator, pełen sumator, ALU. 4. Wstęp 4. Funkcja logiczna i postać kanoniczna funkcji logicznej Kombinacyjna funkcja logiczna to funkcja, w której stan wyjścia zależy jedynie od stanu wejścia w danej chwili Y=f(x,x,...,x n ). Układy kombinacyjne nie posiadają cechy pamięci. X X X Y X 4 X 5 Rys. Kombinacyjna funkcja logiczna. Każdą kombinacyjną funkcję logiczną f(x,x,...x n ) n zmiennych można przedstawić w jednej z dwu postaci kanonicznych: sumy pełnych iloczynów i iloczynu pełnych sum. W praktyce częściej wykorzystuje się pierwszą postać: i n f(x,x,...,x n )= = = i f( x, x,..., x ) x x... x e e en n e e en n gdzie: x e x gdy e= = x gdy e= 0 D.Fenc, J.J. Młodzianowski, 008 Strona: (6)
dla przykładu: f (x,x ) = f (x,x + f (x,x + f (x,x + f (x,x Ze względu na tożsamości a 0=0 i a+0=a w postaci kanonicznej sumy pełnych iloczynów istotne są jedynie te składniki, dla których f( x, x..., x ) = e e Funkcja kanoniczna, ze względu na rozwlekłą postać słabo nadaje się do praktycznej realizacji za pomocą bramek logicznych. Zwykle wymagana jest minimalizacja funkcji, to jest przedstawienie jej za pomocą równoważnej funkcji, ale zrealizowanej za pomocą mniejszej ilości bramek. Jedną z najprostszych metod ręcznej minimalizacji jest tablica Karnaugh. Tablice Karnaugh do minimalizacji wykorzystują tożsamość a b+ a b= a. W tablicy wartości funkcji ułożone są w sposób umożliwiający grupowanie w wierszach i/lub kolumnach (w pary, czwórki, itd.) komórek, w których funkcja przyjmuje wartość i mechaniczne usuwanie zmieniających się argumentów. 00 0 0 en n 00 0 0 Tab. Tablica Karnaugh dla 4 elementów. 00 0 0 0 Tab. Tablica Karnaugh dla elementów. D.Fenc, J.J. Młodzianowski, 008 Strona: (6)
4. Przykład minimalizacji funkcji logicznej Mając funkcję logiczną zapisaną w tabeli: Możemy zapisać jej postać kanoniczną: F(x nr x x x Y 0 000 0 00 00 0 4 00 0 5 0 6 0 0 7,x,x ) = x x x + x x x + x x x + x x x + x x x a po minimalizacji tablicą Karnaugh otrzymujemy: x x x 0 00 0 0 0 0 0 F (x +,x,x ) = x x x Funkcję tę można zrealizować z bramek NAND: X X X Y D.Fenc, J.J. Młodzianowski, 008 Strona: (6)
Współcześnie funkcje logiczne realizuje się za pomocą bardziej skomplikowanych układów programowalnych (np. PLA) i specjalizowanych języków programowania (np. VHDL). Układy kombinacyjne stanowią podstawowy element budulcowy układów większej skali integracji. W szczególności wyróżnia się: dekodery, multipleksery, demultipleksery, komparatory i układy arytmetyczne. 4. Dekoder Dekoder jest układem posiadającym n wejść (a 0,..,a n ) i m wyjść (b 0,...,b m ). Zadaniem dekodera jest zamiana informacji wejściowej kodowanej w jednej postaci (np. kodu binarnego) na inną (np. kod z N). 4.4 Multiplekser i demultiplekser Multiplekser i demultiplekser stanowią elektroniczny odpowiednik mechanicznych przełączników. Multiplekser to układ o jednym wyjściu (o), r wejściach sterujących (s 0,...,s r ) i r wejściach informacyjnych (X 0,...X r ). Demultiplekser (będący odwróceniem multipleksera) posiada jedno wejście informacyjne (i), r wejść sterujących (s 0,...,s r ) oraz r wyjść informacyjnych (Y 0,...Y r ). 4.5 Komparator Komparator jest układem umożliwiającym porównywanie informacji (zwykle liczb binarnych). Układ ma dwa zestawy wejść (a,b) i kilka wyjść reprezentujących wynik porównania (np. a=b, a>b). 5.6 Układ arytmetyczny, ALU Układ arytmetyczny umożliwia wykonywanie bardziej skomplikowanych operacji arytmetycznych i logicznych na liczbach binarnych. Przykładem układu arytmetycznego jest sumator, którego zadaniem jest sumowanie dwu n-bitowych liczb binarnych. Rozwinięciem układu arytmetycznego jest ALU (jednostka arytmetyczno-logiczna) stanowiąca jądro mikroprocesora. a 0 b 0 b Y 0 Y o i Y 0 Y a 0 a a=b b Y Y b 0 a>b a b Y Y b s 0 s s 0 s Rys. Dekoder, multiplekser i demultiplekser, komparator. D.Fenc, J.J. Młodzianowski, 008 Strona: 4(6)
5. Zadania pomiarowe 5.. Dekoder ->4 Zmontować z bramek NAND układ dekodera ->4 (rys. ), którego tabela prawdy przedstawiona jest w tablicy. Sprawdzić działanie układu. A B Y0 Y Y Y Rys. Dekoder ->4. AB Y0 Y Y Y 00 0 0 0 0 0 0 Tab.. Tablica prawdy dla dekodera ->4. 5.. Wskaźnik siedmiosegmentowy Zaprojektować i zminimalizować przy użyciu tablicy Karnaugh układ sterujący (zadany przez prowadzącego) segment wskaźnika siedmiosegmentowego. Przedstawić zaprojektowaną funkcję logiczną w postaci kanonicznej, tablicy Karnaugh i jej zapisu algebraicznego oraz postaci zrealizowanej z bramek NAND. A B C D f e a g b c d Rys. 4. Dekoder kodu wskaźnika siedmiosegmentowego. 5.. Realizacja wybranych układów kombinacyjnych. Zgodnie z poleceniem prowadzącego zaprojektować, zminimalizować, zrealizować, wyłącznie z bramek NAND, i zweryfikować działanie zadanego przez prowadzącego układu kombinacyjnego. D.Fenc, J.J. Młodzianowski, 008 Strona: 5(6)
6. Przyrządy Konsolka cyfrowa, miernik uniwersalny, oscyloskop. 7. Literatura P.Horowitz, W.Hill, Sztuka elektroniki, WKŁ 995, ISBN 8-06-8-8, Tom, str.7-4,09-. R.Śledziewski, Elektronika dla fizyków, PWN 98, ISBN 8-0-04076-9, str.7-77, 84-00. D.Fenc, J.J. Młodzianowski, 008 Strona: 6(6)