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

Листы формул, ключевые шаги методов по каждой теме и тренировочные задачи (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.Системы счисленияСредняя
веса разрядов в дополнительном коде1−12806403201608140211

8-битная комбинация 1000 0101 хранит целое число со знаком в дополнительном коде. Каково его значение N в десятичной системе?

1000 01018 bit
N =
2.Системы счисленияСложная
20 бит, без знака, N = ?????????????????????

Какое наибольшее беззнаковое целое число N помещается в 20 бит?

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

С помощью карты Карно найдите минимальную форму «произведение сумм» (POS) для F(A, B, C, D) = Σm(1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 15). Сколько членов-сумм (множителей), N, в ней?

F(A, B, C, D) = Σm(1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 15)
N =
4.Цифровая логика: вентили, карты Карно и триггерыСложная
ABCD0001111000011110X001031204051706112013015X140819011110

Найдите минимальную форму SOP для F(A, B, C, D) = Σm(2, 7, 9, 10, 12) + d(0, 14), где d обозначает безразличные состояния. Сколько литералов, L, она содержит?

F(A, B, C, D) = Σm(2, 7, 9, 10, 12) + d(0, 14)
L =
5.Сбор данных и дискретизацияСредняя
Vin​N = ?200 °C2ᴺ − 10≤ 0,25 °C

Датчик измеряет температура в диапазоне 200 °C, и его выход заполняет весь диапазон входа АЦП. Показание должно различать 0,25 °C. Найдите наименьшее число разрядов N, которое нужно АЦП.

диапазон = 200 °Cразрешение = 0,25 °C
N =
6.Сбор данных и дискретизацияСложная
T5 mV/°C×5∿01N = 8, 2,5 V? °C/LSB

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

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

3Растворы

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

Ответ: N = −123

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

Сложите веса

Остальные биты сохраняют свои обычные положительные веса.

−128 + 4 + 1 = −123

Ответ

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

Ответ: N = 1,049 × 10⁶

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

Наибольшее значение

220 − 1 = 1048575

Ответ

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

Ответ: N = 3

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

ABCD000111100001111000111312141517160120131150141809111110

Сгруппируйте нули

Каждая группа — прямоугольник из 2ᵏ клеток; клетки на краю соседствуют с клетками на противоположном краю.

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

Минимальная форма POS

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

Ответ

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

Ответ: L = 14

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

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

Самые большие группы, которые можно образовать из единиц и X.

B′CD′, ACD′, A′B′D′, ABD′, A′BCD, AB′C′D
ABCD0001111000011110X001031204051706112013015X140819011110

Минимальное покрытие

F = B′CD′ + ABD′ + A′BCD + AB′C′D
L = 14

Ответ

L = 14
5.Сбор данных и дискретизация

Ответ: N = 10

Разрешение АЦП: 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.

Необходимое число шагов

200/0,25 = 800

Разряды

log₂(800) = 9,644
29 = 512 < 800 ≤ 210 = 1024
N = 10

Ответ

N = 10
6.Сбор данных и дискретизация

Ответ: ΔTLSB = 0,3906 °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 = 2500/256 = 9,766 mV

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

5·5 = 25 mV/°C

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

ΔTLSB = 9,766/25 = 0,3906 °C

Ответ

ΔTLSB = 0,3906 °C

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

ExamProblems · examproblems.com/courses/digital-electronics