n-разрядный: 2ⁿ состояний; по модулю N: наименьшее n, при котором 2ⁿ ≥ N; fout = fclk/N
Асинхронный счётчик
fmax = 1/(n·tpd)
Кольцевой счётчик и счётчик Джонсона
n и 2n состояний
Метод
Для схемы идите от входов к выходу вентиль за вентилем и записывайте значение на каждом проводе или запишите её выражение и заполните таблицу истинности.
Для упрощения поставьте единицы (и безразличные состояния как X) на карту Карно со строками и столбцами в коде Грея: 00, 01, 11, 10.
Покройте единицы как можно меньшим числом как можно больших групп по 1, 2, 4, 8 или 16 клеток, с переходом через края; каждая группа — один член-произведение из переменных, которые остаются постоянными. Для формы POS группируйте нули.
Для триггеров и счётчиков считывайте входы на каждом активном фронте тактового сигнала, записывайте состояние после каждого фронта и помните, что 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)
Метод
Запишите, что дано: частоту дискретизации, частоты сигналов, число разрядов, диапазон входа, скорость в бодах.
В задачах на дискретизацию сравнивайте каждую частоту с fs/2; более высокая частота появляется как fa = |f − k·fs| с ближайшим кратным fs.
В задачах на разрешение найдите 1 LSB = VFSR/2ᴺ или наименьшее N, при котором 2ᴺ ≥ диапазон/разрешение.
Для скоростей передачи данных и каналов UART считайте всё, что передаётся: каналы, отсчёты в секунду, биты или целые байты на отсчёт, а также стартовые, контрольные и стоповые биты каждого кадра.
2Тренировочные задачи
1.Системы счисленияСредняя
Запишите −45 как 8-битную комбинацию в дополнительном коде. Прочитайте комбинацию как беззнаковое двоичное число: каково его значение U в десятичной системе?
N = −458 bit
U =
2.Системы счисленияСложная
Несжатое изображение имеет размер 800 × 600 пикселей и 16 бит на пиксель. Сколько памяти M оно занимает, в KiB (1 KiB = 1024 байта)?
800 × 600 px16 bit/px1 KiB = 1024 B
M = KiB
3.Цифровая логика: вентили, карты Карно и триггерыСредняя
У мультиплексора 4 в 1 адресные входы S₁ = A и S₀ = B, а информационные входы подключены так: I₀ = C, I₁ = C, I₂ = C, I₃ = 0. Для скольких из 8 комбинаций A, B и C выход F = 1? Найдите N.
I₀ = CI₁ = CI₂ = CI₃ = 0
N =
4.Цифровая логика: вентили, карты Карно и триггерыСложная
Для F(A, B, C, D) = Σm(0, 1, 4, 5, 6, 7, 8, 11, 13) + d(3, 12), где d обозначает безразличные состояния, найдите число N существенных простых импликант.
Регистратор дискретизирует один канал с частотой 20 kHz с помощью 10-разрядного АЦП. Каждый отсчёт хранится в целом числе байт. Найдите объём памяти M, необходимый для записи длительностью 1 min, в MB (1 MB = 10⁶ байт).
n = 1fs = 20 kHzN = 10t = 1 min
M = MB
6.Сбор данных и дискретизацияСложная
Прямоугольный сигнал 2 kHz дискретизируется с частотой 5 kHz без антиэлайзингового фильтра. Прямоугольный сигнал содержит нечётные гармоники 3f₁, 5f₁, 7f₁, … На какой частоте fa его гармоника 7f₁ появится в дискретизированных данных? Дайте ответ в Hz.
f₁ = 2 kHzfs = 5 kHzгармоника: 7f₁
fa = Hz
3Растворы
1.Системы счисления
Ответ: U = 211
Позиционные системы счисления: каждая цифра стоит своего значения, умноженного на степень основания. В двоичной системе разряды стоят 1, 2, 4, 8, 16, …, в шестнадцатеричной 1, 16, 256, …, а A–F обозначают 10–15. В 8-битном дополнительном коде крайний левый бит стоит −128 вместо +128; так хранятся отрицательные числа.
Инвертируйте и прибавьте единицу
45 = 0010 1101
инвертировано: 1101 0010
+1 → 1101 0011
Прочитайте как беззнаковое
1101 0011₂ = 256 − 45 = 211
Ответ
U = 211
2.Системы счисления
Ответ: M = 937,5 KiB
Позиционные системы счисления: каждая цифра стоит своего значения, умноженного на степень основания. В двоичной системе разряды стоят 1, 2, 4, 8, 16, …, в шестнадцатеричной 1, 16, 256, …, а A–F обозначают 10–15. В 8-битном дополнительном коде крайний левый бит стоит −128 вместо +128; так хранятся отрицательные числа.
Биты и байты
800·600·16 = 7680000 bit = 960000 B
Переведите в KiB
960000/1024 = 937,5 KiB
Ответ
M = 937,5 KiB
3.Цифровая логика: вентили, карты Карно и триггеры
Ответ: N = 3
Мультиплексор: мультиплексор 2ⁿ в 1 передаёт на выход один из своих информационных входов; адресные входы, читаемые как двоичное число, выбирают, какой именно. Для мультиплексора 4 в 1 с адресами S₁S₀ = AB: F = A′B′·I₀ + A′B·I₁ + AB′·I₂ + AB·I₃. Если подключить информационные входы к 0, 1, C или C′, мультиплексор реализует любую функцию от A, B и C, что — распространённый способ построить логику на одной микросхеме.
Выражение выхода
F = A′B′C + A′BC + AB′C
Строки с F = 1
ABC = 001, 011, 101
N = 3
Ответ
N = 3
4.Цифровая логика: вентили, карты Карно и триггеры
Ответ: N = 4
Карты Карно: клетки упорядочены по коду Грея (00, 01, 11, 10), поэтому соседние клетки, включая те, что через края, отличаются ровно одной переменной. Группируйте единицы в прямоугольники по 1, 2, 4, 8 или 16 клеток, как можно большие и в как можно меньшем числе, пока не будет покрыта каждая единица. Каждая группа — один член-произведение: переменные, которые внутри неё остаются постоянными. Группа из 2ᵏ клеток теряет k переменных. Безразличные состояния (X) можно использовать, чтобы увеличить группы, но покрывать их не обязательно. Если группировать нули, получится минимальная форма POS.
Простые импликанты
Самые большие группы, которые можно образовать из единиц и X.
C′D′, BC′, B′CD, A′D, A′C′, A′B
Существенные простые импликанты
C′D′, BC′, B′CD, A′B
N = 4
Ответ
N = 4
5.Сбор данных и дискретизация
Ответ: M = 2,4 MB
Скорости передачи данных: каждый канал выдаёт fs отсчётов в секунду по N бит, поэтому исходная скорость равна каналы × fs × N bit/s. В памяти отсчёт занимает целое число байт (12-разрядный отсчёт хранится в 2 байтах), поэтому память для записи равна каналы × fs × байт на отсчёт × время. АЦП с мультиплексором преобразует каналы один за другим: каждое преобразование (с установлением) занимает время t, поэтому один цикл по n каналам занимает n·t, а каждый канал дискретизируется с частотой 1/(n·t).
Байт на отсчёт
⌈10/8⌉ = 2 B
Скорость в байтах
1·20000·2 = 40000 B/s
Память
M = 40000·60 = 2,4 × 10⁶ B = 2,4 MB
Ответ
M = 2,4 MB
6.Сбор данных и дискретизация
Ответ: fa = 1000 Hz
Дискретизация: АЦП измеряет сигнал fs раз в секунду. По теореме Найквиста–Шеннона частота f фиксируется правильно, только пока f < fs/2, то есть ниже частоты Найквиста (частоты свёртки), поэтому частота дискретизации должна превышать удвоенную наивысшую частоту сигнала. Более высокая частота не теряется: она проявляется как ложная частота fa = |f − k·fs|, где целое число k выбирается так, чтобы результат оказался между 0 и fs/2. Отсчёты не позволяют различить эти две частоты, поэтому аналоговый антиэлайзинговый фильтр должен удалить всё выше fs/2 до АЦП.
Частота гармоники
7f₁ = 7·2 kHz = 14 kHz
Ближайшее кратное частоты дискретизации
m = round(2,8) = 3
Ложная частота
fa = |14000 − 3·5000| = 1000 Hz
Ответ
fa = 1000 Hz
Ложная частота попадает внутрь полосы сигнала, где её не удалит ни один цифровой фильтр. Помогает только аналоговый фильтр перед АЦП.