Bramka logiczna - element konstrukcyjny maszyn i mechanizmów (dziś zazwyczaj: układ scalony, choć podobne funkcje można zrealizować również za pomocą innych rozwiązań technicznych, np. hydrauliki czy pneumatyki), realizujący fizycznie pewną prostą funkcję logiczną, której argumenty (zmienne logiczne) oraz sama funkcja mogą przybierać jedną z dwóch wartości, np. 0 lub 1 (zob. algebra Boole'a).
Podstawowymi elementami logicznymi, stosowanymi powszechnie w budowie układów logicznych, są elementy realizujące funkcje logiczne: sumy (alternatywy), iloczynu (koniunkcji) i negacji. Są to odpowiednio bramki OR, AND i NOT. Za pomocą dwóch takich bramek (np. OR i NOT lub AND i NOT) można zbudować układ, realizujący dowolną funkcję logiczną.
Bramki NAND (negacja koniunkcji), oraz NOR (negacja sumy logicznej) nazywa się funkcjonalnie pełnymi ponieważ przy ich użyciu (tzn. samych NAND lub samych NOR) można zbudować układ realizujący dowolną funkcję logiczną.
Dowolną bramkę logiczną można też skonstruować za pomocą pary bramek, np. za pomocą OR i NOT lub AND i NOT. Układy takie nazywamy układami zupełnymi.
Bramkę logiczną XOR często wykorzystujemy w układach arytmetyki takich jak sumatory czy subtraktory.
Rodzaje bramek
bramka XOR (NEQ)
Tabela wartości
p | q | FAŁSZ | p AND q | p NOT q | q NOT p | p XOR q | p OR q | p NOR q | p XNOR q | NOT q | q -> p | NOT p | p -> q | p NAND q | PRAWDA |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 |
0 | 1 | 0 | 0 | 0 | 1 | 1 | 1 | 0 | 0 | 0 | 0 | 1 | 1 | 1 | 1 |
1 | 0 | 0 | 0 | 1 | 0 | 1 | 1 | 0 | 0 | 1 | 1 | 0 | 0 | 1 | 1 |
1 | 1 | 0 | 1 | 0 | 0 | 0 | 1 | 0 | 1 | 0 | 1 | 0 | 1 | 0 | 1 |
Warto zwrócić uwagę, iż wynik operacji NOT <inny operator>, np. AND › NAND, OR › NOR daje zawsze wynik inny niż ów <inny operator>, tzn. jeśli wynik operacji tego operatora na pewnej danej wynosi 1, NOT operator da 0, w przeciwnym wypadku odwrotnie.
Bramka NAND to bramka logiczna, która realizuje funkcję NAND. Znaczenie bramki przedstawia poniższa tablica prawdy:
A | B | A NAND B |
---|---|---|
0 | 0 | 1 |
0 | 1 | 1 |
1 | 0 | 1 |
1 | 1 | 0 |
Bramki NAND wykorzystywane są – obok bramek NOR – w pamięciach flash. W stosunku do pamięci NOR pamięć NAND ma krótszy czas zapisu i kasowania, większą gęstość upakowania danych, korzystniejszy stosunek kosztu pamięci do jej pojemności oraz dziesięciokrotnie większą wytrzymałość.
Bramki NAND wytwarzane są w technologii CMOS i TTL.
schemat bramki NAND CMOS
schemat bramki NAND TTL
budowa bramki NAND CMOS
Bramka NOR
Binegacja, jednoczesne zaprzeczenie (także funktor Peirce'a, strzałka Peirce'a, NOR) – jeden z funktorów zdaniowych rachunku zdań; dwuargumentowa funkcja boolowska (funktor logiczny) realizująca zaprzeczoną sumę logiczną (NOT OR) – jest prawdziwa wtedy i tylko wtedy, gdy oba składniki są fałszywe. Często przedstawiana pionowa kreska "|" przechodząca przez symbol alternatywy "∨"; dwóch argumentów, co oznacza jej logiczną negację. Inne przedstawienie to ⊽ (U+22BD). Odpowiada wyrażeniu „ani ... ani”. Jego znaczenie przedstawia poniższa tablica prawdy:
Symbol bramki logicznej NOR
A | B | A NOR B |
---|---|---|
0 | 0 | 1 |
0 | 1 | 0 |
1 | 0 | 0 |
1 | 1 | 0 |
Bramka AND
Koniunkcja to zdanie złożone mające postać p i q , gdzie p, q są zdaniami. W rachunku zdań koniunkcję zapisuje się symbolicznie jako: . Przez koniunkcję rozumie się też zdanie mające postać p(1) i ... i p(n). Koniunkcję można zdefiniować precyzyjniej jako dwuargumentowe działanie określone w zbiorze zdań, które zdaniom p, q przyporządkowuje zdanie p i q
Działanie to pozostaje w ścisłym związku z działaniem przekroju zbiorów (patrz algebra zbiorów). Dlatego zdanie utworzone z innych zdań za pomocą koniunkcji jest też nazywane iloczynem logicznym. Koniunkcję zdań uznaje się za prawdziwą wtedy i tylko wtedy, gdy oba zdania p, q są prawdziwe.
Uproszczony schemat bramki logicznej AND - iloczynu bitowego
Symbol koniunkcji jako bramki logicznej:
Tablica prawdy (1 oznacza zdanie prawdziwe 0 zaś zdanie fałszywe):
0 | 0 | 0 |
0 | 1 | 0 |
1 | 0 | 0 |
1 | 1 | 1 |
Bramka OR
Alternatywa lub suma logiczna - to w logice matematycznej:
Działanie dwuargumentowe określone w dowolnym zbiorze zdań bądź w zbiorze funkcji zdaniowych, które zdaniom (funkcjom zdaniowym) p i q przypisuje zdanie (funkcję zdaniową) prawdziwe wtedy i tylko wtedy gdy prawdziwe jest przynajmniej jedno ze zdań (funkcji) p i q
Dwuargumentowy spójnik zdaniowy, oznaczany (łac. p vel q) o znaczeniu odpowiadającemu wyżej zdefiniowanemu działaniu określonemu w zbiorze . Od poprzedniej definicji różni się tym, że jest definiowany na poziomie syntaktycznym, dzięki czemu unika się określania jego dziedziny.
Zdanie logiczne postaci , gdzie p i q są zdaniami.
Uproszczony schemat bramki logicznej OR - sumy bitowej
Alternatywa pozostaje w ścisłym związku z dodawaniem zbiorów (patrz algebra zbiorów). Dlatego zdanie utworzone z innych zdań przy użyciu alternatywy jest też nazywane sumą logiczną. Alternatywa jest prawdziwa, jeżeli którekolwiek z jej zdań składowych jest prawdziwe. W przeciwnym razie alternatywa zdań jest fałszywa.
Symbol alternatywy jako bramki logicznej:
Tablica prawdy dla alternatywy (0 - oznacza zdanie fałszywe, 1 - zdanie prawdziwe):
p | q | p ∨ q |
---|---|---|
0 | 0 | 0 |
0 | 1 | 1 |
1 | 0 | 1 |
1 | 1 | 1 |
Bramka NOT - układ cyfrowy, bramka logiczna wykonująca logiczną negację [~].
p | ~p |
---|---|
1 | 0 |
0 | 1 |
Przerzutnik (z ang. flip-flop) jest to podstawowy element pamiętający każdego układu cyfrowego, przeznaczonego do przechowywania i ewentualnego przetwarzania informacji. Przerzutnik współtworzy najniższe piętro struktury układu i zdolny jest do zapamiętania jednego bitu informacji. Grupa czterech lub ośmiu połączonych ze sobą przerzutników tworzy następne, wyższe piętro - tzw. rejestr, zdolny już do pamiętania jednego bajta informacji.
Zastosowanie
Przerzutniki stosuje się do przechowywania małych ilości danych, do których musi być zapewniony ciągły dostęp. Jest to spowodowane fizycznymi i funkcjonalnymi cechami przerzutników. Są one większe od pojedynczej komórki pamięci, ale pozwalają pozostałym częściom układu na bezpośredni dostęp do przechowywanych danych.
Ze względu na łatwy odczyt i zapis, przerzutniki są szczególnie często stosowane w celu:
Pamiętania stanu układu, zobacz: Maszyna stanów skończonych (ang. FSM od Finite State Machine)
Przechowywania obecnie przetwarzanego słowa danych, zobacz: rejestr, akumulator, ALU
Implementacji liczników
Implementacji rejestrów przesuwnych
Implementacji rejestrów przesuwnych z liniowym sprzężeniem zwrotnym (ang. LFSR od Linear Feedback Shift Register)
Typy przerzutników
Wśród monolitycznych (scalonych) przerzutników wyróżnia się:
Przerzutnik typu JK-MS (MS od Master i Slave).
Przerzutniki typu RS mogą być zarówno asynchroniczne (zapisywane są wówczas zwykle małymi literami – rs) jak i synchroniczne, natomiast pozostałe typy przerzutników są wyłącznie synchroniczne.
Przerzutniki asynchroniczne przełączają stan wyjść w momencie zmiany na wejściu, a przerzutniki synchroniczne muszą oczekiwać na zmianę sygnału doprowadzonego do ich wejścia zegarowego. W tym momencie należy wyróżnić kolejny podział na przerzutniki wyzwalane zboczem (narastającym lub opadającym) lub wyzwalane poziomem wejścia zegarowego.
Za pomocą każdego przerzutnika i odpowiedniej liczby bramek logicznych można zrealizować dowolny inny rodzaj przerzutnika.
Przerzutnik typu RS
Przerzutnik typu RS – najprostszy rodzaj przerzutnika asynchronicznego.
oznaczenie przerzutnika RS
Ma on:
2 wejścia
2 wyjścia
- wyjście zwykłe
- wyjście zanegowane.
Stan wyjść jest zawsze przeciwny.
Przerzutnik typu RS można wykonać z dwóch bramek logicznych NOR lub dwóch bramek logicznych NAND.
Przerzutnik zbudowany na dwóch tranzystorach
Przerzutnik tranzystorowy RS.
Tablica stanów dla przerzutnika.
S | R | Qn | |
---|---|---|---|
0 | 0 | Qn − 1 | |
1 | 0 | 1 | 0 |
0 | 1 | 0 | 1 |
1 | 1 | - | - |
Stan w którym oba wyjścia są w stanie niskim jest stanem niedozwolonym. Jest on niezgodny z definicją stanów wyjściowych przerzutnika, zgodnie z którą stan obu wyjść musi być przeciwny.
Zasada działania
Klucz tranzystorowy
Przerzutnik ten jest zbudowany na bazie dwóch kluczy tranzystorowych.
Kiedy na wejście układu podany jest stan niski, wtedy tranzystor nie będzie przewodził. Dlatego gdy wejście układu jest niepodłączone, a wyjście nie jest obciążone, to napięcie wyjściowe jest równe napięciu zasilania.
Dla stanu wysokiego na wejściu (Uwe > 0,7 V) tranzystor wchodzi w nasycenie. Napięcie wyjściowe będzie wtedy równe spadkowi napięcia na tranzystorze. W stanie nasycenia jest on bardzo mały w stosunku do spadku napięcia na rezystorze 330Ω. Wyjście jest wtedy w stanie niskim (Uwy ≈ 0,1V). Ten fragment przerzutnika realizuje funkcję inwertera.
Dwa inwertery składające się na układ przerzutnika są połączone tak, aby wyjście każdego z nich było podane na wejście przeciwnego. Taki układ ma dwa stany stabilne. To który stan ustali się po włączeniu zasilania zależy od niewielkich różnic w układach inwerterów.
Aby przenieść układ do drugiego stanu ustalonego należy wymusić wysokie lub niskie (w stosunku do UBE w stanie nasycenia) napięcie na bazie jednego z tranzystorów. W tym celu do baz tranzystorów podłącza się sygnały sterujące.
Przerzutnik tranzystorowy RS.
Rezystory 1,5kΩ ograniczają prąd wejściowy, natomiast diody odcinają wejścia A i B, kiedy panuje na nich napięcie niższe, niż napięcie na bazach tranzystorów, dzięki temu stan niski na wejściach A, B nie zmienia stanu przerzutnika.
Stan niski na A i wysoki na B powoduje, że tranzystor T2 przewodzi, wtedy UWY2 jest w stanie niskim oraz UWY1 jest w stanie wysokim. Po zmianie stanu B na niski przerzutnik pozostaje w danym stanie stabilnym.
Podanie stanu wysokiego na oba wejścia sterujące spowoduje, że oba wyjścia będą w stanie niskim, ale zmianie sygnałów sterujących układ powróci do stanu stabilnego.
Przerzutnik tranzystorowy RS
Przyjmijmy, że wyjście wy2 odpowiada wyjściu niezanegowanemu, a wy1 wejściu zanegowanemu. Wtedy wejście B wymuszające zero na wyjściu niezanegowanym nazwiemy wejściem resetującym, natomiast wejście A wejściem zapisującym (wymusza stan niski na wejściu zanegowanym).
Przerzutnik zbudowany z dwóch bramek NOR
Tabela przedstawiająca zależność wyjścia od wejść. Qn − 1 oznacza stan poprzedni.
S | R | Qn |
---|---|---|
0 | 0 | Qn − 1 |
1 | 0 | 1 |
0 | 1 | 0 |
1 | 1 | stan zabroniony |
Przerzutnik zbudowany z dwóch bramek NAND
przerzutnik z dwóch bramek NAND
Tabela przedstawiająca zależność wyjścia od wejść. Qn − 1 oznacza stan poprzedni. Ze względu na negację aktywnych sygnałów wejściowych przerzutnik ten nazywany jest przerzutnikiem .
Qn | ||
---|---|---|
1 | 1 | Qn − 1 |
0 | 1 | 1 |
1 | 0 | 0 |
0 | 0 | stan zabroniony |