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

Аркуші з формулами, ключові кроки методів для кожної теми та 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.Системи численняСередня
ваги розрядів у додатковому коді1−12816403201608141201

8-бітовий шаблон 1100 0110 зберігає ціле число зі знаком у додатковому коді. Яке його значення N у десятковій системі?

1100 01108 bit
N =
2.Системи численняСкладна
32 bit1 px800 px600 pxM = ? KiB

Нестиснене зображення має 800 × 600 пікселів і 32 бітів на піксель. Скільки пам'яті M воно займає, у KiB (1 KiB = 1024 байти)?

800 × 600 px32 bit/px1 KiB = 1024 B
M = KiB
3.Цифрова логіка: вентилі, карти Карно та тригериСередня
ABCD00011110000111101111111

На цій карті Карно рівно одна 1 не має сусідньої 1, тож у мінімальній формі SOP вона лишається групою з однієї клітинки (повний мінтерм із чотирьох літералів). Сусіди через краї карти враховуються. Клікніть цю клітинку.

F = Σm(0, 1, 2, 4, 5, 7, 14)
  1. 1AB = 00, CD = 00
  2. 2AB = 00, CD = 01
  3. 3AB = 00, CD = 11
  4. 4AB = 00, CD = 10
  5. 5AB = 01, CD = 00
  6. 6AB = 01, CD = 01
  7. 7AB = 01, CD = 11
  8. 8AB = 01, CD = 10
  9. 9AB = 11, CD = 00
  10. 10AB = 11, CD = 01
  11. 11AB = 11, CD = 11
  12. 12AB = 11, CD = 10
  13. 13AB = 10, CD = 00
  14. 14AB = 10, CD = 01
  15. 15AB = 10, CD = 11
  16. 16AB = 10, CD = 10
4.Цифрова логіка: вентилі, карти Карно та тригериСкладна
DQ3​Q3​DQ2​Q2​DQ1​Q1​DQ0​Q0​CLKRING

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

Q₃Q₂Q₁Q₀ = 11003
Q =
5.Збір даних і дискретизаціяСередня
Vin​N = ?500 kPa2ᴺ − 10≤ 0,5 kPa

Датчик вимірює тиск у діапазоні 500 kPa, а його вихід заповнює весь вхідний діапазон АЦП. Показ має розрізняти 0,5 kPa. Знайдіть найменшу кількість розрядів N, потрібну АЦП.

діапазон = 500 kPaроздільність = 0,5 kPa
N =
6.Збір даних і дискретизаціяСкладна
T10 mV/°C×2∿01N = 12, 5 V? °C/LSB

Датчик температури дає 10 мВ/°C (0 В при 0 °C). Його сигнал підсилюється в 2 раз і подається на 12-розрядний АЦП із діапазоном від 0 до 5 В (1 LSB = VFSR/2ᴺ). Знайдіть зміну температури ΔTLSB, що відповідає одному LSB.

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

3Розчини

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

Відповідь: N = −58

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

Додайте ваги

Інші біти зберігають свої звичайні додатні ваги.

−128 + 64 + 4 + 2 = −58

Відповідь

N = −58
2.Системи числення

Відповідь: M = 1875 KiB

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

Біти й байти

800·600·32 = 15360000 bit = 1920000 B

Переведіть у KiB

1920000/1024 = 1875 KiB

Відповідь

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

Відповідь: AB = 11, CD = 10

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

Сусіди кожної 1

1 із сусідньою 1 може приєднатися до групи з двох або більше.

m14: m15, m12, m10, m6 → 0
ABCD00011110000111101111111

Ізольована 1

m14 = ABCD′ → AB = 11, CD = 10

Відповідь

AB = 11, CD = 10
4.Цифрова логіка: вентилі, карти Карно та тригери

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

Тригери та лічильники: тригер змінюється лише за активним фронтом такту. 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.

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

1100 → 0110 → 0011 → 1001

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

1001₂ = 9

Відповідь

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

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

Роздільність АЦП: 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.

Потрібна кількість кроків

500/0,5 = 1000

Розряди

log₂(1000) = 9,966
29 = 512 < 1000 ≤ 210 = 1024
N = 10

Відповідь

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

Відповідь: ΔTLSB = 0,06104 °C

Роздільність АЦП: 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 = 5000/4096 = 1,221 mV

Чутливість на АЦП

10·2 = 20 mV/°C

Температурна роздільність

ΔTLSB = 1,221/20 = 0,06104 °C

Відповідь

ΔTLSB = 0,06104 °C

АЦП досягає повної шкали при 250 °C.

ExamProblems · examproblems.com/courses/digital-electronics