Цифровая электроника: шпаргалка-пакет

Листы формул, ключевые шаги методов по каждой теме и тренировочные задачи (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 bit/s
АЦП с мультиплексором
fs = 1/(n·(tc + tset))
UART
Tb = 1/baud; 8N1 = 10 бит на байт; byte/s = baud/число бит в кадре
Делитель скорости передачи
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

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

N = −678 bit
U =
2.Системы счисленияСложная
16-битный дополнительный код, N = ??знак???????????????

Какое наименьшее (самое отрицательное) целое число N можно записать в 16-битном дополнительном коде?

16 bit
N =
3.Цифровая логика: вентили, карты Карно и триггерыСредняя
ABC000111100101324576

Упростите F = AB′C′ + A′BC + BC до минимальной формы «сумма произведений». Сколько литералов, L, содержит упрощённое выражение?

F = AB′C′ + A′BC + BC
L =
4.Цифровая логика: вентили, карты Карно и триггерыСложная
CLKT12345678

Триггер T, срабатывающий по переднему фронту, начинает с Q = 0 и получает показанные входы. Нажмите на первый фронт тактового сигнала, на котором Q возвращается из 1 в 0.

Q₀ = 0T
  1. 1фронт тактового сигнала 1
  2. 2фронт тактового сигнала 2
  3. 3фронт тактового сигнала 3
  4. 4фронт тактового сигнала 4
  5. 5фронт тактового сигнала 5
  6. 6фронт тактового сигнала 6
  7. 7фронт тактового сигнала 7
  8. 8фронт тактового сигнала 8
5.Сбор данных и дискретизацияСредняя
SD0​D1​D2​D3​D4​D5​D6​D7​PTb​11·Tb​115200 Bd, 8E1

UART передаёт байты на скорости 115200 бод в формате 8E1: 8 битов данных, бит чётности и 1 стоповых бит, плюс стартовый бит. Найдите наибольшее число байт данных в секунду, которое он может передать.

baud = 115200 Bd8E1
RB = B/s
6.Сбор данных и дискретизацияСложная
T5 mV/°C×1∿01N = 10, 3,3 V? °C/LSB

Датчик температуры выдаёт 5 mV/°C (0 V при 0 °C). Его сигнал усиливается в 1 раз и подаётся на 10-разрядный АЦП с диапазоном от 0 до 3,3 V (1 LSB = VFSR/2ᴺ). Найдите изменение температуры ΔTLSB, соответствующее одному LSB.

S = 5 mV/°CG = 1N = 10VFSR = 3,3 V
ΔTLSB = °C

3Растворы

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

Ответ: U = 189

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

Инвертируйте и прибавьте единицу

67 = 0100 0011
инвертировано: 1011 1100
+1 → 1011 1101

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

1011 1101₂ = 256 − 67 = 189

Ответ

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

Ответ: N = −32768

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

Самое отрицательное значение

−215 = −32768

Ответ

N = −32768
3.Цифровая логика: вентили, карты Карно и триггеры

Ответ: L = 5

Булева алгебра: правила, упрощающие выражения: X + X′ = 1 и X·X′ = 0, X + X = X, поглощение X + X·Y = X, правило склеивания X·Y + X·Y′ = X, X + X′Y = X + Y и теорема о консенсусе XY + X′Z + YZ = XY + X′Z. Законы де Моргана превращают (X·Y)′ в X′ + Y′ и (X + Y)′ в X′·Y′. Карта Карно применяет эти правила графически: каждая группа из двух соседних клеток — это одно применение XY + XY′ = X.

Минтермы выражения

AB′C′ → m(4)
A′BC → m(3)
BC → m(3, 7)
ABC00011110010001130214051706

Сгруппируйте и прочитайте

F = BC + AB′C′

Посчитайте литералы

L = 5

Ответ

L = 5
4.Цифровая логика: вентили, карты Карно и триггеры

Ответ: фронт тактового сигнала 4

Триггеры и счётчики: триггер меняется только по активному фронту тактового сигнала. 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.

Q после каждого фронта

T-триггер переключается по каждому переднему фронту при T = 1 и сохраняет состояние при T = 0.

1: T = 0 → Q = 0
2: T = 1 → Q = 1
3: T = 0 → Q = 1
4: T = 1 → Q = 0
5: T = 1 → Q = 1
6: T = 1 → Q = 0
7: T = 0 → Q = 0
8: T = 1 → Q = 1

Первое изменение с 1 на 0

фронт тактового сигнала 4

Ответ

фронт тактового сигнала 4
5.Сбор данных и дискретизация

Ответ: RB = 10473 B/s

UART: асинхронный последовательный канал передаёт каждый байт кадром: один стартовый бит (низкий уровень), биты данных, необязательный бит чётности и один или два стоповых бита (высокий уровень). Скорость в бодах — это число бит в секунду, поэтому один бит длится Tb = 1/baud, а кадр из n бит длится n/baud. В распространённом формате 8N1 на байт приходится 10 бит. Генератор бодов делит тактовую частоту: baud = fclk/(16·D) с целым D, поэтому реальная скорость в бодах немного отличается от заданной; погрешность меньше примерно 2 % обычно допустима.

Бит в кадре

1 + 8 + 1 + 1 = 11

Скорость в байтах

115200/11 = 10473 B/s

Ответ

RB = 10473 B/s
6.Сбор данных и дискретизация

Ответ: ΔTLSB = 0,6445 °C

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

Шаг квантования

1 LSB = 3300/1024 = 3,223 mV

Чувствительность на входе АЦП

5·1 = 5 mV/°C

Температурное разрешение

ΔTLSB = 3,223/5 = 0,6445 °C

Ответ

ΔTLSB = 0,6445 °C

АЦП достигает полной шкалы при 660 °C.

ExamProblems · examproblems.com/courses/digital-electronics