System dwójkowy :: Algebra Boole'a i bramki logiczne :: Logika dodatnia a ujemna :: Podstawowe bramki logiczne :: Podstawowe przerzutniki :: Inne bramki logiczne i przerzutniki :: Przetworniki analogowo-cyfrowe i cyfrowo-analogowe

Technika cyfrowa

Współcześnie bardzo istotnym fragmentem elektroniki, odpowiedzialnym za bardzo wiele znanych z codziennego życia urządzeń (komputery, sterowniki, ...) jest elektronika cyfrowa. Korzysta ona z skwantowanej do dwóch stanów postaci sygnału - stan wysoki i niski (w przeciwieństwie do analogowej, gdzie sygnał był ciągły - przyjmował dowolne wartości z obranego zakresu). Dlatego też tak ważne dla niej są Algebra Boola oraz kodowanie informacji w systemie dwójkowym.

System dwójkowy

System dwójkowy jest (tak jak dziesiętny) systemem liczbowym, operuje on tylko na dwóch cyfrach - 0 i 1 (a nie jak dziesiętny na dziesięciu 0, 1, 2, ... 9) podstawą są potęgi liczby dwa zatem liczba w zapisie dwójkowym o postaci: dcba będzie odpowiadała liczbie dziesiętnej równej d * 23 + c * 22 + b * 21 + a * 20. Liczby systemu dwójkowego prosto zapisać jest w systemie 8 i 16 poprzez grupowanie w jedną cyfrę nowego systemu odpowiednio 3 i 4 cyfr z liczby zapisanej dwójkowo (licząc od prawej).

Algebra Boole'a i bramki logiczne

Algebra Boole'a jest algebrą dwuwartościową (0 i 1) wyposażoną w trzy działania: sumy, iloczynu i negacji. W języku elektroniki tym podstawowym działaniom odpowiadają odpowiednio bramki: OR, AND, NOT. Bramki logiczne są układami elektronicznymi realizującymi różne funkcje logiczne. Działanie takich funkcji (jak również bramek elektronicznych) przedstawiane jest zwyczajowo w postaci tabelki prawdy.

Istnieje kilka sposobów zapisu liczb binarnych. Dla liczb dodatnich najpopularniejszym jest NKB, oprócz tego można spotkać się z kodem "1 z n", kodem Graya, czy też kodem Johnsona. Dla liczb ujemnych są to kod uzupełnień do dwóch (U2), kod znak-moduł, czy też kod uzupełnień do jedności (U1). Jeszcze innym zagadnieniem jest kodowanie liczb zmiennoprzecinkowych.

Podstawowe prawa algebry dwójkowej

a + 1 = 1 $$a \cdot 1 = a$$
a + 0 = a $$a \cdot 0 = 0$$
a + a = a $$a \cdot a = a$$
$$\bar 0 = 1$$ $$\bar 1 = 0$$
$$\bar{\bar a} = a$$
(a + b) + c = a + (b + c) $$(a \cdot b) \cdot c = a \cdot (b \cdot c)$$
$$a + b \cdot c = (a + b) \cdot (a + c)$$ $$a \cdot (b + c) = a \cdot b + a \cdot c$$
$$a + b \cdot a = a$$ $$a \cdot (b + a) = a$$
$$\overline{a + b} = \bar a \cdot \bar b$$ $$\overline{a \cdot b} = \bar a + \bar b$$

konwersja AND/OR na NAND: $$ab + cd = \overline{\overline{ab + cd}} = \overline{\overline{ab} \cdot \overline{cd}}$$

konwersja OR/AND na NOR: $$(a+b) \cdot (c+d) = \overline{\overline{(a+b) \cdot (c+d)}} = \overline{\overline{a+b} + \overline{c+d}}$$

XOR: $$a \oplus b = a \bar b + \bar a b$$
$$a \oplus 0 = a \qquad a \oplus a = 0$$

Logika dodatnia a ujemna

W elektronice wyróżnić możemy dwie postaci logiki: dodatnią gdzie logicznej jedynce odpowiada stan wysoki (zazwyczaj realizowany przez brak napięcia) a logicznemu zeru stan niski (zazwyczaj brak napięcia) oraz logikę ujemną gdzie jest na odwrót, jak łatwo zaważyć tłomaczenia jednej logiki na drugą może dokonać bramka NOT.

Podstawowe bramki logiczne

Bramka logiczna jest układem elektronicznym realizującym określoną funkcję logiczną. Bramki najczęściej realizowane są jako układy scalone zawierające w sobie kilka bramek.

Tabelki prawdy dla funkcji OR, AND oraz ich symbole elektroniczne:

OR AND
ABC
000
011
101
111
ABC
000
010
100
111
symbol bramki OR symbol bramki AND

Tabelka prawdy dla funkcji NOT oraz jej symbol elektroniczny:

NOT
AC
01
10
symbol bramki NOT

Tabelki prawdy dla funkcji NOR (zaprzeczony OR), NAND (zaprzeczony AND) oraz ich symbole elektroniczne:

NOR NAND
ABC
001
010
100
110
ABC
001
011
101
110
symbol bramki NOR symbol bramki NAND

Tabelki prawdy dla funkcji XOR (symetryczny OR), NXOR (zaprzeczony XOR) oraz ich symbole elektroniczne:

XOR NXOR
ABC
000
011
101
110
ABC
001
010
100
111
symbol bramki XOR symbol bramki NXOR (XNOR)

Dowolną funkcję logiczną można złożyć wyłącznie z bramek AND OR i NOT, a nawet wyłącznie z samych bramek NAND albo NOR. Co ciekawe bramki te można zrealizować nie tylko w sposób elektroniczny ale także i mechaniczny (dowód - bramki logiczne z Lego), a więc całą elektronikę cyfrową, łącznie z komputerami, mikrokontrolerami itd. możnaby wykonać na bazie kółek zębatych ... . Należy zaznaczyć także występowanie bramek (i innych elementów cyfrowych) w wariantach:

Na koniec warto także wspomnieć o bramkach AOI (And-Or-Invert) będących od strony logicznej połączeniem dwóch bramek AND przy pomocy bramki NOR, tyle że zrealizowany w jednym układzie

Podstawowe przerzutniki

Poza opisanymi bramkami trzeba jeszcze koniecznie wspomnieć o przerzutnikach, które są podstawowymi elementami pamięci - najkrócej mówiąc przerzutnik ustawia odpowiedni stan wyjścia w w zależności od otrzymanego sygnału na wejściu i pamięta go do póki nie zostanie wymuszona jego zmiana. Przerzutniki posiadają dwa wyjścia: Q oraz wyjście -Q, na którym jest sygnał zaprzeczony w stosunku do Q.

Najprostszym rodzajem przerzutnika jest przerzutnik RS - po podaniu na wejście Set zera ustawia on wyjście Q na 1, natomiast po podaniu zera na wejście Reset ustawia on zero na wyjściu Q. Bardziej złożonym typem przerzutnika jest przerzutnik D - posiada on dodatkowo wejścia sygnałowe D oraz zegara C, w momencie narastającego zbocza sygnału C na wyjściu Q ustawiana jest wartość D. Kolejnym typem jest przerzutnik JK -zamiast wejścia D posiada wejścia J i K, zczytuje on stany wejść J i K w momencie nadejścia narastającego zbocza zegara (C) a wyjście ustawia przy zboczu opadającym, jeżeli J i K są w stanie zero to stan wyjścia nie zmieni się, jeżeli są w stanie 1 to wyjście zostanie zaprzeczone, jeżeli mają różne wartości to na wyjście zostanie przepisany stan J. (Zobacz w Wikipedii: przerzutnik typu RS, przerzutnik typu D, przerzutnik typu JK-MS)

Na schematach przerzutniki oznaczamy jako prostokąty z odpowiednio oznaczonymi wyprowadzeniami. Niekiedy potrzebujemy aby przeżutnik reagował na przeciwne zbocze - wyustarczy wtedy zanegować sygnał zegara. Poprzez łączenie kolejnych przerzutników jesteśmy w stanie uzyskać liczniki impulsów, rejestry, itp. Podobnymi do przerzutników elementami są zatrzaski (Latch) - reagują one na poziom sygnału a nie na zbocze, zatem występuje w nich faza przezroczysta.

Inne bramki logiczne i przerzutniki

W przypadku standardowych bramek niedopuszczalne jest łączenie ich wyjść - jest to możliwe po zastosowaniu bramek z otwartym kolektorem (oznaczanych przez dodanie kółka wewnątrz symbolu), wymagane jest wtedy podłączenie do wyjścia zasilania przez odpowiedni rezystor. Należy jeszcze wspomnieć o bramkach Schmita - wyróżnia ona kierunek zmian sygnału (pętla histerezy - poziom sygnału powodujący zmianę stanu wyjścia zależy od tej zmiany) i służy głównie do wprowadzania sygnałów analogowych. Wyróżnia się także bramki tórjstanowe - załączają one wyjście pod wpływem dodatkowego impulsu sterującego.

Oprócz opisywanych przerzutników bistabilnych istnieją również przerzutniki monostabilne - podają one sygnał wejściowy na wyjście, jednak z opóźnieniem wynikłym ze stałej czasowej RC oraz astabilne - generują one sygnał prostokątny o częstości ustalanej przez stałą RC.

Zobacz także w Wikipedii: multiplekser, demultiplekser, pamięć cyfrowa, Programmable Logic Device, matryca CCD

Przetworniki analogowo-cyfrowe i cyfrowo-analogowe

Poprzez odpowiedni układ sterowanych cyfrowo linii obciążonych różnymi rezystorami jesteśmy w stanie zamienić liczbę zapisaną binarnie na odpowiadające jej napięcie - jest to przetworzenie sygnału cyfrowego na analogowy (przetwornik DAC). Do przetwarzania sygnałów analogowych na cyfrowe służyć mogą kompaktory analogowe - gdy napięcie na wejściu + przekroczy napięcie na wejściu odniesienia (oznaczanym -) na wyjściu pojawia się 1, z ich wykorzystaniem (oraz opcjonalnie z wykorzystaniem przetwornika DAC) jesteśmy w stanie próbkować sygnał analogowy i zamieniać go na liczbę binarną.



Copyright (c) 1999-2015, Robert Paciorek (http://www.opcode.eu.org/), BSD/MIT-type license


Redystrybucja wersji źródłowych i wynikowych, po lub bez dokonywania modyfikacji JEST DOZWOLONA, pod warunkiem zachowania niniejszej informacji o prawach autorskich. Autor NIE ponosi JAKIEJKOLWIEK odpowiedzialności za skutki użytkowania tego dokumentu/programu oraz za wykorzystanie zawartych tu informacji.

This text/program is free document/software. Redistribution and use in source and binary forms, with or without modification, ARE PERMITTED provided save this copyright notice. This document/program is distributed WITHOUT any warranty, use at YOUR own risk.

Valid XHTML 1.1 Dokument ten (URL: http://www.opcode.eu.org/digital) należy do serwisu OpCode. Autorem tej strony jest Robert Paciorek, wszelkie uwagi proszę kierować na adres e-mail serwisu: webmaster@opcode.eu.org.
Data ostatniej modyfikacji artykulu: '2015-10-10 11:34:55 (UTC)' (data ta może być zafałszowana niemerytorycznymi modyfikacjami artykułu).