- Podstawowa zasada dekodera:
- Wady standardowych dekoderów:
- Dekoder priorytetowy:
- Dekodery 3: 8:
- Dekoder 4:16:
- Aplikacje:
Dekoder jest rodzajem układu kombinacyjnego, który dekoduje małą wartość bitową na dużą wartość bitową. Zwykle jest używany w połączeniu z koderami, które działają dokładnie odwrotnie niż dekoder, więc przeczytaj o koderach tutaj, zanim przejdziesz do dekoderów. Podobnie jak w przypadku koderów, istnieje również wiele typów dekoderów, ale liczba linii wyjściowych w dekoderze zawsze będzie większa niż liczba linii wejściowych. Dowiemy się, jak działa dekoder i jak możemy go zbudować dla naszego projektu w tym samouczku.
Podstawowa zasada dekodera:
Jak powiedziano wcześniej, dekoder jest tylko przeciwną częścią Enkodera. Pobiera określoną liczbę wartości binarnych jako dane wejściowe, a następnie dekoduje do większej liczby wierszy za pomocą logiki. Próbki dekoder jest pokazany poniżej, obejmującej 2 wiersze na wejściu i przekształca je do 4 linii.
Inną praktyczną zasadą dotyczącą dekoderów jest to, że jeśli liczba wejść jest uważana za n (tutaj n = 2), to liczba wyjść będzie zawsze równa 2 n (2 2 = 4), czyli w naszym przypadku cztery. Dekoder posiada 2 linie wejściowe i 4 linie wyjściowe; stąd ten typ dekodera nazywany jest dekoderem 2: 4. Dwa piny wejściowe mają nazwy I1 i I0, a cztery piny wyjściowe mają nazwy od O0 do O3, jak pokazano powyżej.
Ważne jest również, aby wiedzieć, że zwykły dekoder, taki jak ten pokazany tutaj, ma wadę polegającą na tym, że nie jest w stanie rozróżnić stanu obu wejść wynoszącego zero (niepodłączonych do innych obwodów) od stanu niskiego na obu wejściach (logiczne 0). Tę wadę można rozwiązać za pomocą dekodera priorytetowego, o którym dowiemy się w dalszej części tego artykułu. Tabela prawdy zwykłego dekodera jest pokazana poniżej
Z tabeli prawdy dekodera możemy napisać wyrażenie boolowskie dla każdej linii wyjściowej, po prostu podążaj za punktem wyjścia i utwórz logikę AND na podstawie wartości I1 i I0. Jest bardzo podobna do metody Encoder, ale tutaj używamy logiki AND zamiast logiki OR. Wyrażenie boolowskie dla wszystkich czterech wierszy podano poniżej, gdzie symbol (.) Reprezentuje logikę AND, a symbol (') reprezentuje logikę NIE
O 0 = I 1 '.I 0 ' O 1 = I 1 '.I 0 O 2 = I 1.I 0 ' O 3 = I 1.I 0
Teraz, gdy mamy wszystkie cztery wyrażenia, możemy przekształcić te wyrażenia w kombinacyjny obwód bramek logicznych przy użyciu bramek AND i NOT. Po prostu użyj bramek AND zamiast (.) I bramki NOT (logika odwrócona) zamiast ('), a otrzymasz następujący schemat logiczny.
Zbudujmy schemat obwodu dekodera 2: 4 na płytce prototypowej i sprawdźmy, jak działa w prawdziwym życiu. Aby działał jako sprzęt, musisz użyć układu scalonego bramki logicznej, takiego jak 7404 dla bramki NOT i 7408 dla bramki AND. Dwa wejścia I0 i I1 są zapewnione za pomocą przycisku, a wyjście jest obserwowane przez diody LED. Po wykonaniu połączenia na płytce prototypowej wyglądałoby to mniej więcej tak, jak na poniższym obrazku
Płytka jest zasilana z zewnętrznego źródła + 5 V, które z kolei zasila układ scalony bramki przez piny Vcc (pin 14) i uziemienie (pin 7). Wejście jest podawane za pomocą przycisków, po naciśnięciu ma logikę 1, a gdy nie jest wciśnięte, daje logikę 0, rezystor obniżający o wartości 1k jest również dodawany wzdłuż linii wejściowych, aby zapobiec stanowi pływania pinów. Linie wyjściowe (O0 do O3) są podawane przez te czerwone diody LED, jeśli świecą, jest to logika 1, w przeciwnym razie jest to logika 0. Pełne działanie tego obwodu dekodera jest pokazane na poniższym filmie
Zwróć uwagę, że tabela prawdy dla każdego wejścia jest wyświetlana w lewym górnym rogu, a dioda LED również świeci w ten sam uporządkowany sposób. Podobnie możemy również stworzyć kombinacyjny diagram logiczny dla wszystkich typów dekoderów i zbudować je na takim sprzęcie. Możesz również zajrzeć do łatwo dostępnych układów scalonych dekodera, jeśli Twój projekt im odpowiada.
Wady standardowych dekoderów:
Podobnie jak enkoder, standardowy dekoder również cierpi na ten sam problem, jeśli oba wejścia nie są połączone (logika X), wyjście nie pozostanie zerowe. Zamiast tego Dekoder uzna to za logikę 0, a bit O0 będzie ustawiony w stan wysoki.
Dekoder priorytetowy:
Dlatego używamy dekodera priorytetowego, aby przezwyciężyć ten problem, ten typ dekodera ma dodatkowy styk wejściowy oznaczony jako „E” (Włącz), który będzie połączony z prawidłowym pinem dekodera priorytetowego. Schemat blokowy dekodera do pierwszeństwa jest przedstawione poniżej.
Tabeli prawdy dla kodera priorytetu jest również pokazany poniżej, tutaj X oznacza brak połączenia i „1” oznacza wysoko logiczny i „0” oznacza logiczny niski. Zauważ, że bit zezwolenia ma wartość 0, gdy nie ma połączenia na liniach wejściowych, a zatem linie wyjściowe również pozostaną zerowe. W ten sposób będziemy mogli pokonać wyżej wymienioną wadę.
Jak zawsze z tabeli prawdy możemy sterować wyrażeniem logicznym dla linii wyjściowych od O0 do O3. Wyrażenie boolowskie dla powyższej tabeli prawdy pokazano poniżej. Jeśli przyjrzysz się bliżej, zauważysz, że wyrażenie jest takie samo jak w normalnym dekoderze 2: 4, ale bit Enable (E) został zmieniony na AND z wyrażeniem.
O 0 = EI 1 '.I 0 ' O 1 = EI 1 '.I 0 O 2 = EI 1.I 0 ' O 3 = EI 1.I 0
Schemat logiki kombinacyjnej dla powyższego wyrażenia boolowskiego można zbudować przy użyciu kilku falowników (NIE bramek) i 3-wejściowych bramek AND. Po prostu zastąp symbol (') falownikami, a symbol (.) Bramką AND, a otrzymasz następujący schemat logiczny.
Dekodery 3: 8:
Istnieją również dekodery wyższego rzędu, takie jak dekoder 3: 8 i dekoder 4:16, który jest częściej używany. Te dekodery są często używane w pakietach IC ze względu na złożoność obwodu. Bardzo często łączy się również dekodery niższego rzędu, takie jak dekodery 2: 4, w celu utworzenia dekodera wyższego rzędu. Na przykład wiemy, że dekoder 2: 4 ma 2 wejścia (I0 i I1) i 4 wyjścia (O0 do O3), a dekoder 3: 8 ma trzy wejścia (I0 do I2) i osiem wyjść (O0 do O7). Możemy użyć następujących wzorów do obliczenia liczby dekoderów niższego rzędu (2: 4) wymaganych do utworzenia dekodera wyższego rzędu, takiego jak dekoder 3: 8.
Wymagana liczba dekoderów niższego rzędu = m2 / m1 Gdzie, m2 -> liczba wyjść dla dekodera niższego rzędu m1 -> liczba wyjść dla dekodera wyższego rzędu
W naszym przypadku wartość m1 wyniesie 4, a m2 8, więc stosując te wartości w powyższych wzorach otrzymujemy
Wymagana liczba dekoderów 2: 4 dla dekoderów 3: 8 = 8/4 = 2
Teraz wiemy, że będziemy potrzebować dwóch dekoderów 2: 4, aby utworzyć dekoder 3: 8, ale w jaki sposób te dwa powinny być połączone, aby zebrać. Poniższy diagram blokowy właśnie to pokazuje
Jak widać, wejścia A0 i A1 są połączone jako wejścia równoległe dla obu dekoderów, a następnie pin Enable pierwszego dekodera działa jako A2 (trzecie wejście). Odwrócony sygnał A2 jest podawany na pin Enable drugiego dekodera, aby uzyskać wyjścia Y0 do Y3. Tutaj wyjścia Y0 do Y3 są określane jako cztery niższe terminy, a wyjścia Y4 do Y7 są określane jako cztery wyższe terminy. Mintermy niższego rzędu uzyskuje się z drugiego dekodera, a mintermy wyższego rzędu z pierwszego dekodera. Chociaż jedną zauważalną wadą tego typu konstrukcji kombinacyjnej jest to, że dekoder nie będzie miał styku Enable, co czyni go podatnym na problemy, które omówiliśmy wcześniej.
Dekoder 4:16:
Podobnie jak w przypadku dekodera 3: 8, dekoder 4:16 można również skonstruować poprzez połączenie dwóch dekoderów 3: 8. Dla dekodera 4:16 będziemy mieli cztery wejścia (A0 do A3) i szesnaście wyjść (Y0 do Y15). Natomiast dla dekodera 3: 8 będziemy mieli tylko trzy wejścia (A0 do A2).
Użyliśmy już wzorów do obliczenia liczby potrzebnych Dekoderów, w tym przypadku wartość m1 będzie wynosić 8, ponieważ dekoder 3: 8 ma 8 wyjść, a wartość m2 będzie wynosić 16, ponieważ dekoder 4:16 ma 16 wyjść, więc stosując te wartości w powyższych wzorach otrzymujemy
Wymagana liczba dekodera 3: 8 dla dekodera 4:16 = 16/8 = 2
Dlatego do skonstruowania dekodera 4:16 potrzebujemy dwóch dekoderów 3: 8, rozmieszczenie tych dwóch dekoderów 3: 8 będzie również podobne do tego, które zrobiliśmy wcześniej. Schemat blokowy połączenia tych dwóch dekoderów 3: 8 jest pokazany poniżej.
Tutaj wyjścia Y0 do Y7 są uważane za niższe osiem minut, a wyjście od Y8 do Y16 uważa się za wyższe osiem minut. Dolne prawe terminy są tworzone bezpośrednio przy użyciu wejść A0, A1 i A2. Te same sygnały są również podawane na trzy wejścia pierwszego dekodera, ale pin Enable pierwszego dekodera jest używany jako czwarty pin wejściowy (A3). Odwrócony sygnał czwartego wejścia A3 jest podawany na styk włączający drugiego dekodera. Pierwszy dekoder wyprowadza wyższą wartość ośmiu minut.
Aplikacje:
Dekoder jest zwykle używany w połączeniu z koderem i dlatego oba mają te same aplikacje. Bez dekoderów i koderów nowoczesna elektronika, taka jak telefony komórkowe i laptopy, nie byłaby możliwa. Poniżej wymieniono kilka ważnych zastosowań dekoderów.
- Zastosowanie sekwencjonowania sygnałów
- Aplikacje sygnału czasowego
- Linie sieciowe
- Elementy pamięci
- Sieci telefoniczne