Цифрова електроніка: шпаргалка-підсумок

Аркуші з формулами, ключові кроки методів для кожної теми та 6 задач для практики, з повними розв’язками наприкінці.

Нові задачіНазад до курсу

У вікні друку виберіть «Зберегти як PDF», щоб зберегти копію на пристрої.

1Формули та методи

Системи числення

Ваги розрядів
двійкова 2k, вісімкова 8k, шістнадцяткова 16k
У десяткову
Σ dk·bk
З десяткової
діліть на основу, остачі читайте знизу вгору
Шістнадцяткова ↔ двійкова
одна шістнадцяткова цифра = 4 біти
Додатковий код
інвертуйте біти й додайте 1

Цифрова логіка: вентилі, карти Карно та тригери

Базові вентилі
A·B, A + B, A′, (A·B)′, (A + B)′, A ⊕ B
Правила булевої алгебри
X + X′ = 1, X·X′ = 0, X + XY = X, XY + XY′ = X
Закони де Моргана
(X·Y)′ = X′ + Y′, (X + Y)′ = X′·Y′
Порядок на карті Карно
00, 01, 11, 10 (Gray code)
Група з 2ᵏ клітинок
втрачає k змінних
Мультиплексор 4-до-1
F = A′B′I0 + A′BI1 + AB′I2 + ABI3
Тригери
D: Q⁺ = D, T: Q⁺ = T ⊕ Q, JK: Q⁺ = JQ′ + K′Q
Лічильники
n-розрядний: 2ⁿ станів; за модулем N: найменше n з 2ⁿ ≥ N; fout = fclk/N
Послідовний лічильник
fmax = 1/(n·tpd)
Кільцевий лічильник і лічильник Джонсона
n і 2n станів

Метод

  1. Для схеми рухайтеся від входів до виходу вентиль за вентилем і записуйте значення на кожному дроті, або запишіть її вираз і заповніть таблицю істинності.
  2. Для спрощення занесіть одиниці (а байдужі стани як X) на карту Карно з рядками й стовпцями в коді Грея: 00, 01, 11, 10.
  3. Покрийте одиниці якомога меншою кількістю якомога більших груп по 1, 2, 4, 8 або 16 клітинок, з переходом через краї; кожна група — це один добуток зі змінних, що лишаються сталими. Для форми POS групуйте нулі.
  4. Для тригерів і лічильників читайте входи на кожному активному фронті такту, записуйте стан після кожного фронту й пам’ятайте, що n-розрядний лічильник переходить через максимум після 2ⁿ станів.

Збір даних і дискретизація

Критерій Найквіста
fs > 2·fmax, fN = fs/2
Частота аліасу
fa = |f − k·fs|, k = round(f/fs)
Розмір кроку
1 LSB = VFSR/2ᴺ
Похибка квантування (округлення)
±½ LSB
Код АЦП з відсіканням
D = ⌊Vin/LSB⌋
Кількість розрядів для роздільності r
2ᴺ ≥ span/r
Ідеальне SQNR, синус на повну шкалу
SQNR = 6,02·N + 1,76 dB
Швидкість передавання даних
канали × fs × N біт/с
АЦП з мультиплексуванням
fs = 1/(n·(tc + tset))
UART
Tb = 1/бод; 8N1 = 10 біт на байт; байт/с = бод/біт у кадрі
Дільник швидкості передавання (бод)
baud = fclk/(16·D)

Метод

  1. Випишіть, що дано: частоту дискретизації, частоти сигналу, кількість розрядів, вхідний діапазон, швидкість у бодах.
  2. У задачах на дискретизацію порівнюйте кожну частоту з fs/2; вища частота виглядає як fa = |f − k·fs| з найближчим кратним fs.
  3. У задачах на роздільність знайдіть 1 LSB = VFSR/2ᴺ або найменше N, для якого 2ᴺ ≥ діапазон/роздільність.
  4. У задачах на швидкість даних і лінії UART враховуйте все, що передається: канали, відліки за секунду, біти чи цілі байти на відлік, а також стартові, паритетні й стопові біти кожного кадру.

2Задачі для практики

1.Системи численняСередня
8-бітовий додатковий код0−12806403201608040201

Встановіть біти так, щоб вони зберігали −77 в 8-бітовому доповняльному коді. Яке значення U шаблону, якщо читати його як беззнакове число?

N = −778 bit
U =
2.Системи численняСкладна
клацайте біти, щоб встановити їх012806403201608040201

Встановіть біти за 8-бітовим результатом 1111 1000 << 2. Яке значення R результату в десятковій системі?

1111 1000<< 2
R =
3.Цифрова логіка: вентилі, карти Карно та тригериСередня
ABCD000111100001111010111312141507161120130151140819111010

Скористайтеся картою Карно, щоб знайти мінімальну форму суми добутків (SOP) для F(A, B, C, D) = Σm(0, 1, 2, 3, 4, 5, 6, 9, 11, 12, 14). Скільки добутків N вона має?

F(A, B, C, D) = Σm(0, 1, 2, 3, 4, 5, 6, 9, 11, 12, 14)
N =
4.Цифрова логіка: вентилі, карти Карно та тригериСкладна
DQ3​Q3​DQ2​Q2​DQ1​Q1​DQ0​Q0​CLKJOHNSON

4-розрядний лічильник Джонсона Q₃Q₂Q₁Q₀ починає з 0000. На кожному фронті такту біти зсуваються на одне місце праворуч (Q₃ → Q₂ → Q₁ → Q₀), а Q₃ отримує інверсію Q₀. Запишіть стан Q = Q₃Q₂Q₁Q₀ як десяткове число після 11 фронтів такту.

Q₃Q₂Q₁Q₀ = 000011
Q =
5.Збір даних і дискретизаціяСередня
SD0​D1​D2​D3​D4​D5​D6​D7​Tb​11·Tb​57600 Bd, 8N2

UART передає байти зі швидкістю 57600 бод у форматі 8N2: 8 біт даних, без парності та 2 стопових біт(и), плюс стартовий біт. Знайдіть найбільшу кількість байт даних за секунду, яку він може передати.

baud = 57600 Bd8N2
RB = B/s
6.Збір даних і дискретизаціяСкладна
SD0​D1​D2​D3​D4​D5​D6​D7​Tb​10·Tb​230400 Bd, 8N1

24-розрядний АЦП передає кожен відлік через UART зі швидкістю 230400 бод, формат 8N1 (стартовий біт, 8 біт даних, 1 стоповий біт). Кожен відлік надсилається як 3 цілих байт(и), і лінія зайнята весь час. Знайдіть найвищу частоту сигналу fmax, яку можна дискретизувати без аліасингу, у Гц.

baud = 230400 BdN = 248N1
fmax = Hz

3Розчини

1.Системи числення

Відповідь: U = 179

Встановлення бітів: кожен біт має вагу степеня двійки (128, 64, …, 1). Одна шістнадцяткова цифра — це рівно чотири біти, а в 8-бітовому доповняльному коді крайній лівий біт має вагу −128. Порозрядні операції працюють з кожною позицією біта окремо.

Інвертуйте і додайте одиницю

77 = 0100 1101
інвертовано: 1011 0010
+1 → 1011 0011

Прочитайте як беззнакове

1011 0011₂ = 256 − 77 = 179

Відповідь

U = 179
2.Системи числення

Відповідь: R = 224

Встановлення бітів: кожен біт має вагу степеня двійки (128, 64, …, 1). Одна шістнадцяткова цифра — це рівно чотири біти, а в 8-бітовому доповняльному коді крайній лівий біт має вагу −128. Порозрядні операції працюють з кожною позицією біта окремо.

Біт за бітом

Зсув ліворуч на 2 переміщує кожен біт на 2 позицій ліворуч; біти, що випадають з лівого краю, втрачаються, а справа додаються нулі.

1111 1000 << 2
= 1110 0000

Значення результату

1110 0000₂ = 224

Відповідь

R = 224
3.Цифрова логіка: вентилі, карти Карно та тригери

Відповідь: N = 4

Карти Карно: клітинки впорядковано за кодом Грея (00, 01, 11, 10), тож сусідні клітинки, зокрема через краї, відрізняються рівно однією змінною. Групуйте одиниці в прямокутники по 1, 2, 4, 8 або 16 клітинок, якомога більші й у якомога меншій кількості, доки кожну 1 не буде покрито. Кожна група — це один добуток: змінні, що лишаються сталими всередині неї. Група з 2ᵏ клітинок втрачає k змінних. Байдужі стани (X) можна використовувати, щоб групи були більшими, але їх не обов’язково покривати. Групування нулів замість одиниць дає мінімальну форму POS.

ABCD000111100001111010111312141507161120130151140819111010

Згрупуйте одиниці

Кожна група — це прямокутник із 2ᵏ клітинок; крайні клітинки є сусідами клітинок на протилежному краї.

B′D
BD′
A′D′
A′C′

Мінімальна форма SOP

F = B′D + BD′ + A′D′ + A′C′
N = 4

Відповідь

N = 4

Існує інше групування того самого розміру; воно має таку саму кількість доданків і літералів.

4.Цифрова логіка: вентилі, карти Карно та тригери

Відповідь: Q = 14

Тригери та лічильники: тригер змінюється лише за активним фронтом такту. D копіює свій вхід (Q⁺ = D); T перемикається, коли T = 1; JK зберігає стан за 00, скидає за 01, встановлює за 10 і перемикає за 11. n-розрядний двійковий лічильник має 2ⁿ станів і рахує за модулем 2ⁿ; лічильник за модулем N рахує 0, 1, …, N − 1 і повертається до 0, і йому потрібне найменше n, для якого 2ⁿ ≥ N тригерів. Кожен ступінь послідовного лічильника ділить частоту навпіл, тож останній вихід лічильника за модулем N має частоту fclk/N. Лічильник Джонсона з n тригерів має 2n станів, кільцевий — n.

Стан після кожного фронту

0000 → 1000 → 1100 → 1110 → 1111 → 0111 → 0011 → 0001 → 0000 → 1000 → 1100 → 1110

Десяткове значення

1110₂ = 14

Відповідь

Q = 14
5.Збір даних і дискретизація

Відповідь: RB = 5236 B/s

UART: асинхронна послідовна лінія передає кожен байт як кадр: один стартовий біт (низький), біти даних, необов’язковий біт парності та один або два стопові біти (високі). Швидкість у бодах — це кількість біт за секунду, тож один біт триває Tb = 1/бод, а кадр із n біт — n/бод. Поширений формат 8N1 має 10 біт на байт. Генератор швидкості ділить тактову частоту: бод = fclk/(16·D) із цілим D, тож реальна швидкість трохи відрізняється від цільової; похибка менш ніж приблизно 2 % зазвичай прийнятна.

Біти в кадрі

1 + 8 + 0 + 2 = 11

Швидкість у байтах

57600/11 = 5236 B/s

Відповідь

RB = 5236 B/s
6.Збір даних і дискретизація

Відповідь: fmax = 3840 Hz

UART: асинхронна послідовна лінія передає кожен байт як кадр: один стартовий біт (низький), біти даних, необов’язковий біт парності та один або два стопові біти (високі). Швидкість у бодах — це кількість біт за секунду, тож один біт триває Tb = 1/бод, а кадр із n біт — n/бод. Поширений формат 8N1 має 10 біт на байт. Генератор швидкості ділить тактову частоту: бод = fclk/(16·D) із цілим D, тож реальна швидкість трохи відрізняється від цільової; похибка менш ніж приблизно 2 % зазвичай прийнятна.

Біти на відлік на лінії

3·10 = 30 bit

Найвища частота дискретизації

fs,max = 230400/30 = 7680 Hz

Межа Найквіста

fmax = 7680/2 = 3840 Hz

Відповідь

fmax = 3840 Hz

ExamProblems · examproblems.com/courses/digital-electronics