Elektronika cyfrowa: zestaw na powtórkę

Wzory, najważniejsze kroki metod dla każdego tematu i 6 zadań do ćwiczenia, z pełnymi rozwiązaniami na końcu.

Nowe zadaniaWróć do przedmiotu

W oknie drukowania wybierz „Zapisz jako PDF”, aby zachować kopię na swoim urządzeniu.

1Wzory i metody

Systemy liczbowe

Wagi pozycji
dwójkowy 2k, ósemkowy 8k, szesnastkowy 16k
Na dziesiętny
Σ dk·bk
Z dziesiętnego
dziel przez podstawę, czytaj reszty od dołu do góry
Szesnastkowy ↔ dwójkowy
jedna cyfra szesnastkowa = 4 bity
Kod uzupełnień do dwóch (U2)
odwróć bity i dodaj 1

Logika cyfrowa: bramki, mapy Karnaugha i przerzutniki

Podstawowe bramki
A·B, A + B, A′, (A·B)′, (A + B)′, A ⊕ B
Reguły algebry Boole’a
X + X′ = 1, X·X′ = 0, X + XY = X, XY + XY′ = X
Prawa de Morgana
(X·Y)′ = X′ + Y′, (X + Y)′ = X′·Y′
Kolejność na mapie Karnaugha
00, 01, 11, 10 (Gray code)
Grupa 2ᵏ komórek
traci k zmiennych
Multiplekser 4-do-1
F = A′B′I0 + A′BI1 + AB′I2 + ABI3
Przerzutniki
D: Q⁺ = D, T: Q⁺ = T ⊕ Q, JK: Q⁺ = JQ′ + K′Q
Liczniki
n-bitowy: 2ⁿ stanów; mod-N: najmniejsze n z 2ⁿ ≥ N; fout = fclk/N
Licznik asynchroniczny (ripple)
fmax = 1/(n·tpd)
Liczniki pierścieniowy i Johnsona
n i 2n stanów

Metoda

  1. Dla układu przechodź od wejść do wyjścia bramka po bramce i zapisuj wartość na każdym przewodzie albo zapisz jego wyrażenie i wypełnij tablicę prawdy.
  2. Przy upraszczaniu wpisz jedynki (a stany nieokreślone jako X) na mapę Karnaugha z wierszami i kolumnami w kodzie Graya: 00, 01, 11, 10.
  3. Pokryj jedynki jak najmniejszą liczbą jak największych grup po 1, 2, 4, 8 lub 16 komórek, zawijając przez brzegi; każda grupa to jeden iloczyn ze zmiennych, które pozostają stałe. Dla postaci POS grupuj zera.
  4. Przy przerzutnikach i licznikach odczytuj wejścia przy każdym aktywnym zboczu zegara, zapisuj stan po każdym zboczu i pamiętaj, że n-bitowy licznik zawija się po 2ⁿ stanach.

Akwizycja danych i próbkowanie

Kryterium Nyquista
fs > 2·fmax, fN = fs/2
Częstotliwość aliasu
fa = |f − k·fs|, k = round(f/fs)
Wielkość kroku
1 LSB = VFSR/2ᴺ
Błąd kwantyzacji (zaokrąglanie)
±½ LSB
Kod ADC przy obcinaniu
D = ⌊Vin/LSB⌋
Liczba bitów dla rozdzielczości r
2ᴺ ≥ span/r
Idealny SQNR, sinusoida o pełnej skali
SQNR = 6,02·N + 1,76 dB
Szybkość transmisji danych
kanały × fs × N bit/s
Multipleksowany przetwornik ADC
fs = 1/(n·(tc + tset))
UART
Tb = 1/baud; 8N1 = 10 bitów na bajt; bajty/s = baud/bity w ramce
Dzielnik szybkości transmisji
baud = fclk/(16·D)

Metoda

  1. Zapisz, co jest dane: częstotliwość próbkowania, częstotliwości sygnałów, liczbę bitów, zakres wejściowy, szybkość transmisji w bodach.
  2. W zadaniach o próbkowaniu porównaj każdą częstotliwość z fs/2; wyższa częstotliwość pojawia się jako fa = |f − k·fs| dla najbliższej wielokrotności fs.
  3. W zadaniach o rozdzielczości wyznacz 1 LSB = VFSR/2ᴺ albo najmniejsze N, dla którego 2ᴺ ≥ zakres/rozdzielczość.
  4. W zadaniach o szybkości danych i łączach UART policz wszystko, co jest wysyłane: kanały, próbki na sekundę, bity lub całe bajty na próbkę oraz bity startu, parzystości i stopu każdej ramki.

2Zadania do ćwiczenia

1.Systemy liczboweŚredni
8-bitowy kod U20−12806403201608040201

Ustaw bity tak, aby zapisywały −65 w 8-bitowym kodzie uzupełnień do dwóch. Jaka jest wartość wzorca U odczytanego jako liczba bez znaku?

N = −658 bit
U =
2.Systemy liczboweTrudny
klikaj bity, aby je ustawić012806403201608040201

Ustaw bity na 8-bitowy wynik działania 0010 1010 >> 2. Jaka jest wartość wyniku R w zapisie dziesiętnym?

0010 1010>> 2
R =
3.Logika cyfrowa: bramki, mapy Karnaugha i przerzutnikiŚredni
ABCD000111100001111000110302141517160120130151141819011010

Użyj mapy Karnaugha, aby znaleźć minimalną postać iloczynu sum (POS) funkcji F(A, B, C, D) = Σm(1, 4, 5, 6, 7, 8, 9, 14). Ile sum (czynników) N ona ma?

F(A, B, C, D) = Σm(1, 4, 5, 6, 7, 8, 9, 14)
N =
4.Logika cyfrowa: bramki, mapy Karnaugha i przerzutnikiTrudny
FFQ0​Q0​FFQ1​Q1​FFQ2​Q2​CLKMOD-7

Licznik mod-7 musi przejść przez 7 różnych stanów. Jaka jest minimalna liczba przerzutników n, których potrzebuje?

N = 7
n =
5.Akwizycja danych i próbkowanieŚredni
122 ch∿01N = 245 kHz? MB

Rejestrator próbkuje 2 kanałów z częstotliwością 5 kHz każdy, używając 24-bitowego ADC. Każda próbka jest zapisywana w całych bajtach. Wyznacz pamięć M potrzebną na zapis trwający 1 min, w MB (1 MB = 10⁶ bajtów).

n = 2fs = 5 kHzN = 24t = 1 min
M = MB
6.Akwizycja danych i próbkowanieTrudny
T10 mV/°C×5∿01N = 12, 2,5 V? °C/LSB

Czujnik temperatury daje 10 mV/°C (0 V przy 0 °C). Jego sygnał jest wzmacniany 5 razy i podawany na 12-bitowy ADC o zakresie od 0 do 2,5 V (1 LSB = VFSR/2ᴺ). Wyznacz zmianę temperatury ΔTLSB odpowiadającą jednemu LSB.

S = 10 mV/°CG = 5N = 12VFSR = 2,5 V
ΔTLSB = °C

3Roztwory

1.Systemy liczbowe

Odpowiedź: U = 191

Ustawianie bitów: każdy bit ma wartość będącą potęgą dwójki (128, 64, …, 1). Jedna cyfra szesnastkowa to dokładnie cztery bity, a w 8-bitowym kodzie uzupełnień do dwóch skrajny lewy bit ma wartość −128. Operacje bitowe działają osobno na każdej pozycji bitu.

Odwróć i dodaj jeden

65 = 0100 0001
odwrócone: 1011 1110
+1 → 1011 1111

Odczytaj bez znaku

1011 1111₂ = 256 − 65 = 191

Odpowiedź

U = 191
2.Systemy liczbowe

Odpowiedź: R = 10

Ustawianie bitów: każdy bit ma wartość będącą potęgą dwójki (128, 64, …, 1). Jedna cyfra szesnastkowa to dokładnie cztery bity, a w 8-bitowym kodzie uzupełnień do dwóch skrajny lewy bit ma wartość −128. Operacje bitowe działają osobno na każdej pozycji bitu.

Bit po bicie

Przesunięcie w prawo o 2 przesuwa każdy bit o 2 pozycji w prawo; bity, które wypadną z prawego końca, są tracone, a z lewej wchodzą zera.

0010 1010 >> 2
= 0000 1010

Wartość wyniku

0000 1010₂ = 10

Odpowiedź

R = 10
3.Logika cyfrowa: bramki, mapy Karnaugha i przerzutniki

Odpowiedź: N = 4

Mapy Karnaugha: komórki są ułożone w kodzie Graya (00, 01, 11, 10), więc sąsiednie komórki, także te przez brzegi, różnią się dokładnie jedną zmienną. Grupuj jedynki w prostokąty po 1, 2, 4, 8 lub 16 komórek, jak największe i jak najmniej, aż każda jedynka będzie pokryta. Każda grupa to jeden iloczyn: zmienne, które wewnątrz niej pozostają stałe. Grupa 2ᵏ komórek traci k zmiennych. Stany nieokreślone (X) można wykorzystać, by powiększyć grupy, ale nigdy nie trzeba ich pokrywać. Grupowanie zer daje minimalną postać POS.

ABCD000111100001111000110302141517160120130151141819011010

Zgrupuj zera

Każda grupa to prostokąt z 2ᵏ komórek; komórki na brzegu sąsiadują z komórkami na przeciwległym brzegu.

(B + C′)
(A′ + C′ + D′)
(A + B + D)
(A′ + B′ + C)

Minimalna postać POS

F = (B + C′)(A′ + C′ + D′)(A + B + D)(A′ + B′ + C)
N = 4

Odpowiedź

N = 4

Istnieje inne grupowanie tego samego rozmiaru; ma tę samą liczbę składników i literałów.

4.Logika cyfrowa: bramki, mapy Karnaugha i przerzutniki

Odpowiedź: n = 3

Przerzutniki i liczniki: przerzutnik zmienia stan tylko przy aktywnym zboczu zegara. D kopiuje swoje wejście (Q⁺ = D); T zmienia stan na przeciwny, gdy T = 1; JK utrzymuje stan dla 00, zeruje dla 01, ustawia dla 10 i zmienia stan na przeciwny dla 11. N-bitowy licznik binarny ma 2ⁿ stanów i liczy modulo 2ⁿ; licznik mod-N liczy 0, 1, …, N − 1 i wraca do 0, a potrzebuje tylu przerzutników, ile wynosi najmniejsze n z 2ⁿ ≥ N. Każdy stopień licznika asynchronicznego dzieli częstotliwość przez dwa, więc ostatnie wyjście licznika mod-N pracuje z częstotliwością fclk/N. Licznik Johnsona z n przerzutników ma 2n stanów, licznik pierścieniowy n.

Liczba przerzutników

2ⁿ ≥ 7 → n = 3 (2³ = 8)

Odpowiedź

n = 3
5.Akwizycja danych i próbkowanie

Odpowiedź: M = 1,8 MB

Szybkość danych: każdy kanał dostarcza fs próbek na sekundę po N bitów, więc surowa szybkość to kanały × fs × N bit/s. W pamięci próbka zajmuje całe bajty (próbka 12-bitowa jest zapisywana w 2 bajtach), więc pamięć potrzebna na zapis to kanały × fs × bajty na próbkę × czas. Multipleksowany ADC przetwarza kanały jeden po drugim: każda konwersja (z ustalaniem) trwa t, więc jedna runda n kanałów trwa n·t, a każdy kanał jest próbkowany z częstotliwością 1/(n·t).

Bajty na próbkę

⌈24/8⌉ = 3 B

Strumień bajtów

2·5000·3 = 30000 B/s

Pamięć

M = 30000·60 = 1,8 × 10⁶ B = 1,8 MB

Odpowiedź

M = 1,8 MB
6.Akwizycja danych i próbkowanie

Odpowiedź: ΔTLSB = 0,01221 °C

Rozdzielczość ADC: N-bitowy przetwornik dzieli swój zakres pełnej skali VFSR na 2ᴺ kodów, od 0 do 2ᴺ − 1. Jeden krok to 1 LSB = VFSR/2ᴺ: najmniejsza zmiana, jaką przetwornik potrafi pokazać. ADC z obcinaniem podaje kod ⌊Vin/LSB⌋; ADC z zaokrąglaniem nigdy nie odbiega od prawdziwej wartości o więcej niż ½ LSB, co jest jego błędem kwantyzacji. Każdy dodatkowy bit zmniejsza LSB o połowę i dodaje około 6 dB do idealnego stosunku sygnału do szumu kwantyzacji SQNR = 6,02·N + 1,76 dB dla sinusoidy o pełnej skali. Aby osiągnąć rozdzielczość r na danym zakresie, wybierz najmniejsze N, dla którego 2ᴺ ≥ zakres/r.

Wielkość kroku

1 LSB = 2500/4096 = 0,6104 mV

Czułość na wejściu ADC

10·5 = 50 mV/°C

Rozdzielczość temperaturowa

ΔTLSB = 0,6104/50 = 0,01221 °C

Odpowiedź

ΔTLSB = 0,01221 °C

ADC osiąga pełną skalę przy 50 °C.

ExamProblems · examproblems.com/courses/digital-electronics