• Nie Znaleziono Wyników

ELEKTRONIKA UKŁADY CYFROWE

N/A
N/A
Protected

Academic year: 2022

Share "ELEKTRONIKA UKŁADY CYFROWE"

Copied!
34
0
0

Pełen tekst

(1)

ELEKTRONIKA

UKŁADY CYFROWE

(2)

SYGNAŁY CYFROWE

• Elektronika cyfrowa posługuje się sygnałami przyjmującymi wartości logiczne – jeden z dwóch dyskretnych stanów:

‚0’, LOW

‚1’, HIGH

• Jednak w rzeczywistości odpowiada on analogowym wartościom:

Zwykle:

0V

VCC/VDD (5V, 3.3V, 2.5V, 1.2V, 1.1V … )

Lub innym ściśle określonym np. -5V/+5V

(3)

POZIOMY LOGICZNE

• Układ cyfrowy ma zdefiniowane poziomy napięć, odpowiadające wartościom logicznym:

Zakres napięć wejściowych (VIL i VIH - Input Low/High), dla których ciągła wartość napięcia wejściowego jest interpretowana jako konkretna wartość logiczna

Zakres napięć wyjściowych (VOL, VOH – Output Low/High), które przyjmuje wyjście dla wartości logicznych o

określonym poziomie

• Napięcia dla technologii CMOS (VDD = 5V):

Wyjście dla ‚1’ – (4.7V, 5V)

Wyjście dla ‚0’ – (0V, 0.2V)

Wejście dla ‚1’ – (2V, 5V)

Wejście dla ‚0’ – (0V, 0.8V)

(4)

POZIOMY LOGICZNE

• Przyłączeniu układów należy zapewnić że poziomy napięć wyjściowych i wejściowych się zgadzają (uwzględniony najgorszy przypadek):

Można ze sobą łączyć układy wykonane w tej samej technologii np. TTL<->TTL, lub CMOS<->CMOS

Dla różnych technologii należy porównać poziomy napięć. Np. można połączyć układy CMOSv->TTL, ale już nie

TTL->CMOSv

(TTL out 3.3V < CMOSv in 3.7V – najgorszy przypadek niespełniony)

Każdy pojedynczy układ zawsze specyfikuje poziomy napięć niezależnie od

technologii w jakiej został wykonany

(5)

POZIOMY LOGICZNE

• Przykładowa bramka NAND, w zależności od napięcia, którym jest zasilana:

(6)

SERIA 7400

• Seria 7400 przyporządkowuje numery różnym układom logicznym

• Występują one w wielu technologiach pod tymi samymi numerami np.

SN74LS08N, 74HCT08DB (układ zawierający cztery dwuwejściowe bramki

AND)

(7)

ALGEBRA BOOLE`A

• Algebra Boole`a składa się z:

Zbioru B zawierającego elementy { 0, 1 }

Operatora jednoargumentowego:

Negacji logicznej (NOT)

𝑥

~𝑥

Operatorów dwuargumentowych:

Sumy logicznej (OR)

𝑥 + 𝑦

𝑥 ∨ 𝑦

Iloczynu logicznego (AND)

𝑥 ⋅ 𝑦

𝑥 ∧ 𝑦

x y 𝑥 + 𝑦 𝑥 ⋅ 𝑦

0 0 0 0

0 1 1 0

1 0 1 0

1 1 1 1

x ~𝑥

0 1

1 0

(8)

WŁASNOŚCI

• Łączność + przemienność

• Rozdzielność AND względem OR

• Prawa De Morgana

Inne

(9)

OPERATORY POCHODNE

• Dodatkowo możemy zdefiniować operatory pochodne:

Implikacja

Równoważność

Suma wykluczająca (XOR – Exlusive OR)

𝑥⨁𝑦

Zanegowana suma (NOR)

~(𝑥 + 𝑦)

𝑥 ∨ 𝑦

Zanegowany iloczyn (NAND)

~(𝑥 ⋅ 𝑦)

𝑥 ∧ 𝑦

x y ~(𝑥 + 𝑦) ~(𝑥 ⋅ 𝑦)

0 0 1 1

0 1 0 1

1 0 0 1

1 1 0 0

x y 𝑥 → 𝑦 𝑥 ⟺ 𝑦 𝑥⨁𝑦

0 0 1 1 0

0 1 1 0 1

1 0 0 0 1

1 1 1 1 0

(10)

BRAMKI LOGICZNE

• Elektroniczne elementy realizujące wybrane operacje logiczne nazywamy bramkami:

Identyczność (buffer) 𝑞 = 𝑥

Negacja (NOT) 𝑞 = ~𝑥

Iloczyn logiczny (AND) 𝑞 = 𝑎 ⋅ 𝑏

Suma logiczna (OR) 𝑞 = 𝑎 + 𝑏

Zaprzeczony iloczyn (NAND) 𝑞 = ~(𝑎 ⋅ 𝑏)

Zaprzeczona suma (NOR) 𝑞 = ~(𝑎 + 𝑏)

Suma wykluczająca (XOR) 𝑞 = 𝑎⨁𝑏

Zaprzeczone wykluczenie (XNOR) 𝑞 = ~(𝑎⨁𝑏)

(11)

IMPLEMENTACJA

• Implementacja bramki NAND w technologii TTL i CMOS

(12)

ZESTAW FUNKCJONALNIE PEŁNY

• Zestaw funkcjonalnie pełny – zestaw bramek przy pomocy którego można zrealizować każdą inną funkcję logiczną

• Poniższe zbiory bramek są funkcjonalnie pełne

AND, NOT

OR, NOT

NAND

NOR

• Użycie tylko jednego rodzaju bramek upraszcza budowę fizyczną układu

logicznego (np. korzystamy tylko z bramek NAND)

(13)

ZESTAW FUNKCJONALNIE PEŁNY - NAND

• Realizacja pozostałych funkcji logicznych przy pomocy bramek NAND

NOT:

y = nand(x, x) = ~(x ⋅ x) = ~x

y = nand(x, 1) = ~(x ⋅ 1) = ~x

AND:

y = nand(nand(x, y), nand(x, y)) = and(x, y) y = ~((~(a ⋅ b)) ⋅ ~(a ⋅ b)) = ~(~(a ⋅ b)) = a ⋅ b

OR:

y = nand(nand(a, a), nand(b, b)) = or(a, b)

~((~(a * a)) * (~(b * b))) = ~(~a * ~b) = a + b (prawo De Morgana)

Buffer:

y = nand(nand(x, x), nand(x, x)) = y

(14)

ZESTAW FUNKCJONALNIE PEŁNY - NAND

OR:

OR jak w poprzednim przykładzie (prawo De Morgana) + negacja

y = nand(or(a, b), or(a, b)) = nor(a, b)

~((a + b) * (a + b)) = ~(a + b)

XOR:

y = (a ⋅ ~b) + (~a ⋅ b)

• XNOR: dodatkowa negacja na wyjściu

(15)

UKŁADY CYFROWE

• Układy cyfrowe możemy reprezentować jako „czarną skrzynkę”, posiadającą wejścia oraz wyjścia logiczne.

• Na wejście podawany jest „wektor wejściowy”, a na wyjściu układ wystawia

„wektor wyjściowy”

• Cyfrowe układy dzielimy na:

Kombinacyjne – stan wyjść układu w danej chwili zależy od stanu wejść w tej samej chwili.

Sekwencyjne – stan wyjść układu w danej chwili zależy od stanu wejść w tej samej chwili oraz stanu wejść w chwilach poprzednich. Układ taki zawiera stan

wewnętrzny.

Układy sekwencyjne dzielimy na:

Synchroniczne, gdzie zmiana stanu wyjść (oraz stanu wewnętrznego) jest zsynchronizowana z zegarem zewnętrznym.

Asynchroniczne, gdzie zegar wewnętrzny nie występuje, a zmiana stanów następuje w momencie zmiany stanu wektora wejściowego.

(16)

UKŁADY CYFROWE KOMBINACYJNE

• Układ cyfrowy kombinacyjny można opisać na różne sposoby:

Za pomocą równania

y = a + (b ⋅ c)

Tabelą prawdy – każdy możliwy wektor wejściowy ma przypisaną wartość wyjścia

Przy pomocy mapy Karnaugh`a

abc y

000 0

001 0

010 0

011 1

100 1

101 1

110 1

111 1

ab\c 0 1

00 0 0

01 0 1

11 1 1

10 1 1

(17)

KODOWANIE

• System dziesiętny

Dla liczby dziesiętnej n, składającej się z sekwencji cyfr dkdk-1dk-2...d1d0, wartość liczby n wynosi:

𝑛 = ෍

𝑖=0 𝑘

10𝑖 ⋅ 𝑑𝑖

Kod NKB

Analogicznie. Podstawą systemu jest liczba 2, a nie 10.

Dla liczby binarnej n, składającej się z sekwencji bitów bkbk-1bk-2... b1b0, wartość liczby n wynosi:

𝑛 = ෍

𝑖=0 𝑘

2𝑖 ⋅ 𝑏𝑖

Przykładowo 11012 = 23 ⋅ 1 + 22 ⋅ 1 + 21 ⋅ 0 + 20 ⋅ 1 = 8 + 4 +1 = 1310

(18)

KODOWANIE – KOD GRAYA

• Kod Graya jest kodem, którego kolejne słowa różnią się tylko na pozycji jednego bitu

Kod Graya:

Dwubitowy: 00, 01, 11, 10

Trzybitowy: 000, 001, 011, 010, 110, 111, 101, 100

Czterobitowy utworzymy poprzez dopisanie wiodącego zera do sekwencji słów kodu trzybitowego, a następnie wiodącej jedynki do odwróconej sekwencji słów kodu trzybitowego

(19)

MAPA KARNAUGHA

• Układ kombinacyjny może zostać opisany przy pomocy układu równań

boolowskich, tabeli prawdy, która dla każdej możliwej kombinacji wejściowej definiuje wartości wyjść, lub przy pomocy mapy Karnaugha.

• Mapa Karnaugha jest tabelą, która w każdej komórce zawiera wartość wektora wyjściowego.

• Pozycja komórki określa wartości wejść dla konkretnego wektora wyjściowego.

• Wiersze/kolumny definiują część wektora wejściowego.

Wartości w kolejnych wierszach/kolumnach są numerowane przy pomocy

kodu Graya.

(20)

MAPA KARNAUGHA

• Funkcja dana tabelą prawdy oraz przy pomocy mapy Karnaugha.

x3x2\x1x0 00 01 11 10

00 0 0 0 0

01 0 1 0 1

11 1 1 0 1

10 1 1 0 0

x3x2x1x0 y

0000 0

0001 0

0010 0

0011 0

0100 0

0101 1

0110 1

0111 0

1000 1

1001 1

1010 0

1011 0

1100 1

1101 1

1110 1

1111 0

(21)

MAPA KARNAUGHA

• Problem: realizacja funkcji boolowskiej danej mapą Karnaugha przy pomocy minimalnej ilości bramek logicznych.

• Dla postaci sumacyjnej (postać iloczynowa - nie omawiana)

1.

Grupujemy sąsiednie jedynki funkcji w grupy o wielkościach będących potęgami liczby 2 (1, 2, 4, 8..). Grupy powinny być jak największe. Można grupować przez krawędzie tabeli.

Jedynki mogą występować w wielu grupach jednocześnie

Wszystkie jedynki muszą zostać pokryte

Zera nie mogą występować w grupach

2.

Dla każdej grupy określamy iloczyn wartości wejściowych, tworzący grupę.

3.

Funkcja wynikowa jest sumą uzyskanych iloczynów.

x3x2\x1x0 00 01 11 10

00 0 0 0 0

01 0 1 0 0

11 1 1 0 1

10 1 1 0 0

(22)

MAPA KARNAUGHA – PRZYKŁAD 1

1.

Grupa czterech jedynek - 𝑥3 ⋅ (~𝑥1)

2.

Grupa dwóch jedynek - 𝑥2 ⋅ ~𝑥1 ⋅ 𝑥0

3.

Grupa dwóch jedynek - 𝑥3 ⋅ 𝑥2 ⋅ (~𝑥0) (przechodząca przez krawędź)

4.

Wynikowa funkcja:

y = 𝑥3 ⋅ ~𝑥1 + 𝑥2 ⋅ ~𝑥1 ⋅ 𝑥0 + 𝑥3 ⋅ 𝑥2 ⋅ (~𝑥0)

5.

Implementacja przy pomocy bramek NAND:

x3x2\x1x0 00 01 11 10

00 0 0 0 0

01 0 1 0 0

11 1 1 0 1

10 1 1 0 0

(23)

MAPA KARNAUGHA – PRZYKŁAD 2

• Funkcja czterech zmiennych, dana mapą Karnaugha.

• Zakreślone grupy jedynek:

~𝑥1 ⋅ ~𝑥0

~𝑥3 ⋅ ~𝑥0

𝑥3 ⋅ ~𝑥2 ⋅ 𝑥1 ⋅ 𝑥0

Wynik:

y = ~𝑥

1

⋅ ~𝑥

0

+ ~𝑥

3

⋅ ~𝑥

0

+ 𝑥

3

⋅ ~𝑥

2

⋅ 𝑥

1

⋅ 𝑥

0

• Realizacja przy pomocy bramek AND i OR oraz NAND (bramki NOT pominięte):

x3x2\x1x0 00 01 11 10

00 1 0 0 1

01 1 0 0 1

11 1 0 0 0

10 1 0 1 0

(24)

UKŁADY CYFROWE SEKWENCYJNE

• Układ sekwencyjny jest układem, którego wyjście odzwierciedla stan wejść w chwili bieżącej oraz w chwilach poprzednich.

Implikuje to konieczność zastosowania „pamięci”, przechowującej informacje o poprzednich stanach wejść układu.

• Układy sekwencyjne dzielimy na:

Synchroniczne – które zmieniają stan wektora wewnętrznego oraz wyjściowego tylko w chwilach wyznaczonych przez zewnętrzny zegar (są synchronizowane zegarem). Stan wektora wejściowego brany jest pod uwagę tylko wtedy.

Asynchroniczne – zmiana wektora stanu wewnętrznego i wyjściowego następuje

„natychmiast” po zmianie stanu wektora wejściowego.

(25)

UKŁADY CYFROWE SEKWENCYJNE – PRZERZUTNIK RS

• Układami pamiętającymi stan wewnętrzny są przerzutniki (flip-flops).

Przerzutnik pamięta jeden bit informacji.

• Przerzutnik asynchroniczny RS

Wejścia:

Set (S)

Reset (R)

Aktywne poziomem niskim

(w stanie neutralnym ma wartość ‚1’)

Aktywowanie obu wejść jest zabronione

Wyjścia:

Wprost (Q)

Zanegowane (~Q)

Symbol przerzutnika RS:

(26)

UKŁADY CYFROWE SEKWENCYJNE – PRZERZUTNIK RS

• Stan początkowy (wejścia w stanie nieaktywnym ~S = 1, ~R=1, pamięć Q = 0)

1

1

0

1

(27)

UKŁADY CYFROWE SEKWENCYJNE – PRZERZUTNIK RS

• Ustawienie wartości (wejścia ~S = 0, ~R = 1, ustawienie Q = 1)

0

1

1

0 1

1

0

1

(28)

UKŁADY CYFROWE SEKWENCYJNE – PRZERZUTNIK RS

0

1

1

0 1

1

0

1 1

1

1

0

• Stan ustalony (wejścia w stanie nieaktywnym ~S = 1, ~R=1, pamięć Q = 1)

(29)

UKŁADY CYFROWE SEKWENCYJNE – PRZERZUTNIK RS

• Kasowanie wartości (wejścia ~S = 1, ~R = 0, kasowanie Q = 0)

0

1

1

0 1

1

0

1

1

0

0

1 1

1

1

0

(30)

UKŁADY CYFROWE SEKWENCYJNE – PRZERZUTNIK D

• Przerzutnik D

• Jest przerzutnikiem synchronizowanym zegarem

Wyzwalanie następuje dodatnim zboczem zegara

• W każdym takcie zegara przerzutnik zapisuje wartość podaną na wejście D

• Sygnał wejściowy może się zmieniać dowolnie, ale

zapis następuje tylko w chwili wyzwolenia zegarem

(31)

UKŁADY CYFROWE SEKWENCYJNE – PRZERZUTNIK D

• Tabela prawdy przykładowego przerzutnika

• Rzeczywisty układ SN74HCS74 zawierający powszechne hybrydowe rozwiązanie (2w1):

Przerzutnik typu D z wejściem CLK i D

Przerzutnik typu RS z wejściami ~PRE (~S - set) i ~CLR (~R - reset)

X w tabeli oznacza dowolną wartość (nie ma znaczenia, tzw. „don`t care”)

(32)

UKŁADY CYFROWE SEKWENCYJNE – PRZERZUTNIK D

• Implementacja dzielnika częstotliwości z użyciem przerzutnika typu D

• Prostokątny sygnał zegarowy podany jest na wejście zegarowe przerzutnika

• Zanegowane wyjście (~Q) jest zapętlone na wejście D

• Sygnał na wyjściu (Q) zmienia swój stan przy każdym dodatnim zboczu sygnału zegarowego

• Częstotliwość wyjściowa jest

dwa razy mniejsza

(33)

UKŁADY CYFROWE SEKWENCYJNE – PRZERZUTNIK T

• Przerzutnik T

• Jest przerzutnikiem synchronizowanym zegarem

Wyzwalanie następuje dodatnim zboczem zegara

• W każdym takcie zegara przerzutnik zmienia zapisaną wartość, jeżeli wartość na wejściu T wynosi 1

• Poniżej analogiczny dzielnik częstotliwości zrealizowany na przerzutniku typu T:

(34)

UKŁADY CYFROWE SEKWENCYJNE – PRZERZUTNIK JK

• Przerzutnik JK

• Jest przerzutnikiem synchronizowanym zegarem

Wyzwalanie następuje dodatnim zboczem zegara

• Zapisana wartość zmienia się wg tabeli prawdy przerzutnika

• Rzeczywisty układ SN74HC109 zawierający powszechne hybrydowe rozwiązanie (2w1):

Przerzutnik typu JK z wejściami CLK, J i K

Przerzutnik typu RS z wejściami ~PRE (~S - set) i ~CLR (~R - reset)

Cytaty

Powiązane dokumenty

Tworząją ludzie, którzy pragną wyleczyć się z uzależnienia od narkotyków - je- dynym layterium przynależności do niej jest pragnienie powstrzymania się od zaży­..

Przerzutniki JK udostępnione na stanowisku laboratoryjnym należą do grupy układów synchronicznych (wykorzystywana jest linia taktująca/zegarowa) i są wyzwalane zboczem

■ Tę samą funkcję spełnia również drugi układ, ponieważ do wejścia D przerzutnika jest doprowadzany sygnał z jego własnego

Modyfi kacja akcji sztuki za sprawą wejść kolejnych postaci rozciąga się między szab- lonem a niespodziewanym wyminięciem oczekiwań widza na temat tego, gdzie, kiedy i na

Pszczoły w tej chwili u nas nie bardzo się opłacają, bo jest taka zasada, że przywożą miód z Chin czy z Argentyny.. Kiedyś dostałem beczkę na wymianę, to

zupełniej sprzeczną z jego własuem rozumowaniem. Nawet w wypadku zupełnego zwycięstwa Rosyi i zjednoczenia na prawdę wszystkich ziem polskich pod jej berłem,

Urządzenie pozwala łatwo dodawać wejścia i wyjścia binarne w systemie SAS lub przekazy- wać dane wejść i wyjść binarnych przez Ethernet (poprzez połączenie symetryczne dwóch

Typ jednostki dla opakowania zbiorczego 2 S04 Ilość dla opakowania zbiorczego 2 18 Waga dla opakowania zbiorczego 2 13,529 kg Wysokość dla opakowania zbiorczego 2 30 cm Szerokość