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

Аркуші з формулами, ключові кроки методів для кожної теми та 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-бітовий додатковий код?−128?64?32?16?8?4?2?1

Запишіть −73 як 8-бітовий шаблон у додатковому коді. Прочитайте шаблон як беззнакове двійкове число: яке його значення U у десятковій системі?

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

Встановіть біти за 8-бітовим результатом 0011 1010 OR 0111 0111. Яке значення R результату в десятковій системі?

0011 1010OR0111 0111
R =
3.Цифрова логіка: вентилі, карти Карно та тригериСередня
ABCD000111100001111010010312140517060121130151141819011010

Скористайтеся картою Карно, щоб знайти мінімальну форму добутку сум (POS) для F(A, B, C, D) = Σm(0, 2, 4, 7, 8, 9, 13, 14). Скільки доданків-сум (множників) N вона має?

F(A, B, C, D) = Σm(0, 2, 4, 7, 8, 9, 13, 14)
N =
4.Цифрова логіка: вентилі, карти Карно та тригериСкладна
ABCD00011110000111100011130204050706012113X1501408X9111010

Для F(A, B, C, D) = Σm(1, 3, 11, 13) + d(9, 15), де d позначає байдужі стани, знайдіть кількість N суттєвих простих імплікант.

F(A, B, C, D) = Σm(1, 3, 11, 13) + d(9, 15)
N =
5.Збір даних і дискретизаціяСередня
Vin​N = 1210 V2ᴺ − 101 LSB7,594 V?

12-розрядний АЦП із вхідним діапазоном від 0 до 10 В відсікає: його вихідний код — ⌊Vin/LSB⌋ при 1 LSB = VFSR/2ᴺ. Знайдіть десятковий вихідний код D для входу 7,594 В.

N = 12VFSR = 10 VVin = 7,594 V
D =
6.Збір даних і дискретизаціяСкладна
1216⋮16 ch∿01tc​ = 8 µstset​ = 0,5 µsfs​ = ?

16-канальний мультиплексор живить один АЦП. Кожне перетворення триває 8 мкс, а після кожного перемикання каналу входу потрібно 0,5 мкс, щоб встановитися. Канали сканують по черзі без пауз. Знайдіть частоту дискретизації fs кожного каналу в кГц.

n = 16tc = 8 µstset = 0,5 µs
fs = kHz

3Розчини

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

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

Позиційні системи числення: кожна цифра варта свого значення, помноженого на степінь основи. У двійковій системі розряди варті 1, 2, 4, 8, 16, …, у шістнадцятковій 1, 16, 256, …, де A–F означають 10–15. У 8-бітовому додатковому коді крайній лівий біт вартий −128 замість +128; так зберігаються від'ємні числа.

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

73 = 0100 1001
інвертовано: 1011 0110
+1 → 1011 0111

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

1011 0111₂ = 256 − 73 = 183

Відповідь

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

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

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

Біт за бітом

OR дає 1, де принаймні один біт дорівнює 1.

0011 1010
OR 0111 0111
= 0111 1111

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

0111 1111₂ = 127

Відповідь

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

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

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

ABCD000111100001111010010312140517060121130151141819011010

Згрупуйте нулі

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

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

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

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

Відповідь

N = 6

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

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

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

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

Прості імпліканти

Найбільші групи, які можна утворити з одиниць і X.

B′D, AD
ABCD00011110000111100011130204050706012113X1501408X9111010

Суттєві прості імпліканти

B′D, AD
N = 2

Відповідь

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

Відповідь: D = 3110

Роздільність АЦП: N-розрядний перетворювач ділить свій діапазон повної шкали VFSR на 2ᴺ кодів, від 0 до 2ᴺ − 1. Один крок дорівнює 1 LSB = VFSR/2ᴺ: найменша зміна, яку може показати перетворювач. АЦП з відсіканням дає код ⌊Vin/LSB⌋; АЦП із округленням ніколи не відхиляється від істинного значення більш ніж на ½ LSB, це його похибка квантування. Кожен додатковий розряд зменшує LSB удвічі й додає близько 6 дБ до ідеального відношення сигнал/шум квантування SQNR = 6,02·N + 1,76 дБ для синуса на повну шкалу. Щоб досягти роздільності r на діапазоні, оберіть найменше N, для якого 2ᴺ ≥ діапазон/r.

Розмір кроку

1 LSB = 10/212 = 2,441 mV

Код

Vin/LSB = 7594/2,441 = 3111
код = ⌊3111⌋ = 3110

Відповідь

D = 3110

У двійковому записі це 110000100110.

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

Відповідь: fs = 7,353 kHz

Швидкості даних: кожен канал дає fs відліків за секунду по N біт, тож сира швидкість дорівнює канали × fs × N біт/с. У пам’яті відлік займає цілі байти (12-бітний відлік зберігається в 2 байтах), тож пам’ять для запису дорівнює канали × fs × байти на відлік × час. АЦП з мультиплексуванням перетворює канали один за одним: кожне перетворення (із часом встановлення) триває t, тож один цикл із n каналів триває n·t, а кожен канал дискретизується з частотою 1/(n·t).

Час на канал

8 + 0,5 = 8,5 µs

Час на сканування

16·8,5 = 136 µs

Частота дискретизації на канал

fs = 1/136 µs = 7,353 kHz

Відповідь

fs = 7,353 kHz

ExamProblems · examproblems.com/courses/digital-electronics