Микрофон (microphone)микрофон (microphone) — Устройство, преобразующее звуковые колебания в электрический сигнал. В идеальной модели напряжение на выходе пропорционально звуковому давлению. выдаёт меняющееся напряжение, а компьютер хранит числа. При записи нужно измерить напряжение и записать результат числом; при воспроизведении — получить из чисел электрический сигнал для усилителя и динамика. За эти переходы отвечают два преобразователя.
Что делают АЦП и ЦАП
Аналого-цифровое преобразование (analog-to-digital conversion, A/D conversion)аналого-цифровое преобразование (analog-to-digital conversion, A/D conversion) — Перевод аналогового сигнала в последовательность цифровых отсчётов: выбор моментов измерений и квантование их значений. — перевод аналогового аудиосигнала (analog audio signal)аналоговый аудиосигнал (analog audio signal) — Электрическое напряжение или ток, непрерывные во времени и по значению и представляющие звуковые колебания. В идеальной модели форма сигнала повторяет изменения звукового давления. в последовательность цифровых отсчётов (sample)отсчёт (sample) — Значение сигнала в один момент дискретизации, одно число. В звукозаписи его также называют сэмплом.. Его выполняет аналого-цифровой преобразователь, АЦП (analog-to-digital converter, ADC)АЦП (analog-to-digital converter, ADC) — Аналого-цифровой преобразователь: устройство, которое измеряет аналоговый электрический сигнал и выдаёт цифровые коды отсчётов.. На входе у него напряжение, на выходе — коды результатов измерений.
Обратный переход называется цифро-аналоговым преобразованием (digital-to-analog conversion, D/A conversion)цифро-аналоговое преобразование (digital-to-analog conversion, D/A conversion) — Преобразование последовательности цифровых отсчётов в аналоговый электрический сигнал; восстановительный фильтр подавляет высокочастотные спектральные копии.. Цифро-аналоговый преобразователь, ЦАП (digital-to-analog converter, DAC)ЦАП (digital-to-analog converter, DAC) — Цифро-аналоговый преобразователь: устройство, которое получает цифровые отсчёты и формирует соответствующий им аналоговый электрический сигнал. получает отсчёты и формирует соответствующий им аналоговый сигнал. Компьютер может изменить числа между записью и воспроизведением: например, уменьшить все значения вдвое, чтобы ослабить сигнал.
АЦП работает с электрическим сигналом, который создал микрофон. ЦАП тоже выдаёт электрический сигнал; в колебания воздуха его превращает динамик. Фильтры до и после преобразователей входят в тракт записи и воспроизведения (Smith, глава 3.4).
Два шага оцифровки
При дискретизации (sampling)дискретизация (sampling) — Измерение непрерывного сигнала через равные промежутки времени: вместо функции времени сохраняется последовательность отсчётов. напряжение измеряют через равные интервалы времени. Каждый результат — отсчётотсчёт (sample) — Значение сигнала в один момент дискретизации, одно число. В звукозаписи его также называют сэмплом.. В математической модели дискретизации это точное значение напряжения: например, 0,371 В.
Чтобы записать результат конечным числом бит, нужно выбрать один из заранее заданных уровней. Такое округление (rounding)округление (rounding) — Замена числа ближайшим допустимым значением, например ближайшим целым для round. Выбор при равном расстоянии до двух значений определяется отдельным соглашением. называется квантованием (quantization)квантование (quantization) — Замена значения отсчёта одним из конечного набора представимых уровней. Разность между выбранным уровнем и исходным значением называется ошибкой квантования.. Если ближайший уровень равен 0,375 В, вместо 0,371 В будет сохранён его код. Разница составляет +0,004 В. Эти шаги ограничивают разные свойства сигнала (Smith, глава 3.1).
Таблица 1 сопоставляет два шага. Это модель преобразования; внутри микросхемы они могут быть устроены сложнее.
| Шаг | Что ограничено | Чем задаётся |
|---|---|---|
| Дискретизация | Моменты времени | Частотой дискретизации, Гц |
| Квантование | Значения отсчётов | Разрядностью, бит, и диапазоном напряжений, В |
Частота дискретизации (sample rate)частота дискретизации (sample rate) — Число отсчётов в каждом канале за одну секунду, то же число кадров аудиоданных в секунду. Измеряется в герцах: 44 100 Гц означает 44 100 отсчётов на канал в секунду. задаёт число отсчётов за секунду. При 48 кГц интервал равен мкс.
Разрядность (bit depth)разрядность (bit depth) — Число бит для представления одного квантованного отсчёта. B бит дают 2ᴮ кодов; при равномерном квантовании шаг зависит также от полного диапазона сигнала. — число бит для представления одного квантованного отсчёта. Бит принимает два значения, 0 или 1; из бит можно составить разных кодов. При 16 битах их 65 536, при 24 — 16 777 216. Коды обозначают уровни напряжения, а не моменты времени.
Шаг квантования на числовом примере
При равномерном квантовании (uniform quantization)равномерное квантование (uniform quantization) — Квантование с одинаковым расстоянием между соседними представимыми уровнями. Это расстояние называется шагом квантования. расстояние между соседними уровнями одинаково. Если полный диапазон входного напряжения разделён на равных интервалов, шаг квантования (quantization step)шаг квантования (quantization step) — Разность между соседними уровнями равномерного квантования. Для диапазона шириной R, разделённого на 2ᴮ равных интервалов, шаг Δ = R/2ᴮ. задаёт формула 1.
- шаг квантования, В;
- ширина полного диапазона входного напряжения, В;
- разрядность одного отсчёта, бит.
Возьмём учебный АЦП с диапазоном от −1 до +1 В и разрядностью 3 бита. Ширина диапазона В, кодов восемь, шаг В. Уровни поместим в центры восьми интервалов: −0,875; −0,625; −0,375; −0,125; +0,125; +0,375; +0,625; +0,875 В. Назначим им коды от 000 до 111 по возрастанию.
Это выбранное для примера кодирование: код 000 здесь означает −0,875 В, а 111 — +0,875 В. Битовая запись сама по себе не задаёт ни знак, ни напряжение — нужно знать соответствие кодов уровням.
Таблица 2 показывает несколько измерений. Ошибка квантования (quantization error)ошибка квантования (quantization error) — Разность между выбранным представимым уровнем и исходным значением отсчёта. При округлении к ближайшему уровню внутри предусмотренного диапазона её модуль не превышает половины шага. равна выбранному уровню минус исходное значение.
| Вход, В | Уровень, В | Код | Ошибка, В |
|---|---|---|---|
| −0,960 | −0,875 | 000 | +0,085 |
| −0,371 | −0,375 | 010 | −0,004 |
| +0,371 | +0,375 | 101 | +0,004 |
| +0,620 | +0,625 | 110 | +0,005 |
При округлении к ближайшему уровню ошибка не превышает половины шага, пока вход остаётся в предусмотренном диапазоне: здесь В. В точке между двумя уровнями оба одинаково близки; для этого примера выберем верхний. Поэтому 0 В кодируется как +0,125 В, с ошибкой ровно в половину шага. Эта модель не имеет отдельного нулевого уровня; реальные форматы аудио могут иметь его и иначе распределять крайние значения.
При том же диапазоне 2 В и 16 битах шаг составит мкВ. Ещё один бит удваивает число уровней и уменьшает шаг вдвое. Частота измерений при этом не меняется.
При том же диапазоне 2 В разрядность увеличили с 3 до 4 бит. Как изменятся шаг квантования и число отсчётов за секунду?
Уровней станет 16, шаг уменьшится до В. Число отсчётов за секунду останется прежним, если частоту дискретизации не меняли.
Ошибка квантования и пределы разрядности
У последовательности отсчётов ошибки тоже образуют сигнал. Во многих случаях его приближённо рассматривают как добавленный шум. Но для тихого или периодического сигнала ошибки могут следовать за его формой и давать искажения. Поэтому модель случайного шума требует условий (Kester, MT-001).
Для идеального равномерного преобразователя отношение сигнал/шум (signal-to-noise ratio, SNR)отношение сигнал/шум (signal-to-noise ratio, SNR) — Отношение мощности полезного сигнала к мощности шума; в децибелах — 10 lg(Pсигнал/Pшум). Результат зависит от полосы измерения и условий сигнала. приблизительно равно дБ: около 98 дБ при 16 битах и 146 дБ при 24. Здесь сигнал — синусоида с амплитудой (amplitude)амплитуда (amplitude) — Наибольший модуль отклонения колеблющейся величины от равновесного значения. Для синусоиды обозначается A; единицы совпадают с единицами сигнала. полной шкалы (full scale)полная шкала (full scale) — Опорная граница уровня выбранного аудиоформата или тракта. Для нормированных аудиоотсчётов обычно принята за ±1; числовой формат с плавающей точкой способен хранить значения за этой границей., а шум квантования считается некоррелированным с ней и измеряется во всей полосе от 0 до . Это расчёт для идеальной модели, не обещание характеристик звуковой карты (Kester, MT-001).
В реальном тракте уже есть шум микрофона и электроники; есть и другие искажения. Увеличение числа бит уменьшает вклад квантования, но не убирает этот шум (Smith, глава 3.1). Связь шума и полезного уровня разобрана в разделе о динамическом диапазоне (dynamic range)динамический диапазон (dynamic range) — Разность самого высокого и самого низкого уровня сигнала или системы в децибелах; у системы нижняя граница — уровень собственного шума..
От чисел к напряжению
При воспроизведении ЦАП получает коды по порядку и преобразует их в соответствующие электрические уровни. В простой модели он удерживает уровень до следующего отсчёта — на выходе получается ступенчатое напряжение. Этот способ называют удержанием нулевого порядка (zero-order hold)удержание нулевого порядка (zero-order hold) — Способ формирования сигнала, при котором значение каждого отсчёта удерживается постоянным до следующего. Получается ступенчатая форма напряжения..
Ступени содержат дополнительные высокочастотные составляющие — спектральные копии (spectral images)спектральные копии (spectral images) — Повторения спектра около кратных частоты дискретизации при восстановлении сигнала. В тракте ЦАПа их подавляет восстановительный фильтр. полезного сигнала. Восстановительный фильтр (reconstruction filter)восстановительный фильтр (reconstruction filter) — Фильтр в тракте цифро-аналогового преобразования, который пропускает полезную полосу сигнала и подавляет высокочастотные спектральные копии. подавляет эти составляющие. Удержание также ослабляет полезные частоты (frequency)частота (frequency) — Число полных колебаний за секунду. Обозначается f и измеряется в герцах; 1 Гц означает одно колебание в секунду. неодинаково; для точного восстановления этот эффект нужно компенсировать.
В аудио-ЦАПах применяют и передискретизацию (oversampling)передискретизация (oversampling) — Работа с частотой дискретизации выше необходимой для полезной полосы. В АЦП уменьшает долю шума квантования в полезной полосе и смягчает требования к входному фильтру, в ЦАПе отодвигает спектральные копии. Новых сведений об исходном звуке не добавляет.: цифровой фильтр вычисляет дополнительные значения, повышая внутреннюю частоту обновления. Спектральные копии отодвигаются от полезной полосы, и требования к аналоговому фильтру становятся мягче. Входная запись при этом сохраняет свою частоту дискретизации; дополнительных сведений об исходном звуке не появляется (Kester, MT-017, с. 1–2).
Передискретизация в АЦП
Передискретизацию применяют и при записи. АЦП измеряет напряжение с частотой , в раз выше нужной. Затем цифровой фильтр нижних частот оставляет полосу до , и из каждых отсчётов сохраняется один. Такое понижение частоты дискретизации называют децимацией (decimation)децимация (decimation) — Понижение частоты дискретизации: цифровой фильтр нижних частот ограничивает полосу, затем сохраняется каждый L-й отсчёт. (Zölzer, «Digital Audio Signal Processing», §4.1.2, с. 98–100; Baker, ч. 2). Выигрыш двоякий.
Первый касается входного фильтра. Без передискретизации аналоговый антиалиасинговый фильтр должен пропустить полосу до и подавить всё, что выше : при 48 кГц и полосе 20 кГц на переход остаётся 4 кГц. С передискретизацией резкую границу у проводит цифровой фильтр перед децимацией, а аналоговому достаточно ослабить частоты около намного более высокой частоты . Его переходная полоса может быть широкой (там же, с. 100).
Второй касается шума квантования. В модели из раздела об ошибке квантования ошибки соседних отсчётов независимы, а каждая равномерно распределена от до . Её мощность равна и распределена равномерно по полосе от 0 до . При частоте та же мощность распределяется по полосе в раз шире, до , и на полезную полосу приходится только её -я часть. Остальное убирает цифровой фильтр. Отношение сигнал/шум растёт на дБ (формула 2) (Zölzer, §4.1.2, с. 98–100).
- отношение сигнал/шум в полезной полосе до , дБ;
- разрядность квантователя, бит;
- коэффициент передискретизации: во сколько раз частота работы АЦП выше .
Удвоение частоты даёт 3 дБ, учетверение — 6 дБ, то есть один бит. 16-битный квантователь при выигрывает 18 дБ и даёт отношение сигнал/шум, как 19-битный. Но так выигрыш растёт медленно: чтобы получить 8 дополнительных бит, понадобилось бы .
Дельта-сигма: шум уходит вверх
Дельта-сигма-модуляция (delta-sigma modulation)дельта-сигма-модуляция (delta-sigma modulation) — Преобразование с передискретизацией и обратной связью: грубый, часто однобитный квантователь вместе с интегратором выносит шум квантования к высоким частотам, где его убирает фильтр. добавляет к передискретизации обратную связь. Она не уменьшает шум квантования, а переносит его к высоким частотам, за полезную полосу. Такое перераспределение называют формированием спектра шума (noise shaping)формирование спектра шума (noise shaping) — Перераспределение шума квантования по частотам с помощью обратной связи: в полезной полосе шума становится меньше, за её пределами — больше. (Zölzer, §4.1.3, с. 100–107; Baker, ч. 1).
В модуляторе первого порядка интегратор накапливает разность между входом и предыдущим выходом, а грубый квантователь, часто однобитный, выдаёт +1 или −1. Чем выше вход, тем чаще на выходе +1, и в среднем выход следует за входом (Baker, ч. 1). Ошибка квантования каждого отсчёта вычитается на следующем шаге, поэтому выход описывает формула 3 (Zölzer, с. 102, формула 4.7).
- вход модулятора;
- выход квантователя;
- ошибка квантования на шаге .
Вход проходит на выход с задержкой на отсчёт, а ошибка входит не сама, а разностью соседних значений. Разность почти гасит медленные изменения и усиливает быстрые: синусоида с частотой после неё умножается на , где — частота работы модулятора. При и кГц модулятор работает на 3,072 МГц. На краю полезной полосы, у 24 кГц, множитель равен 0,049, а у — 2. Поэтому шум квантования почти весь оказывается выше полезной полосы, где его убирает фильтр перед децимацией.
В модуляторе второго порядка ошибка входит второй разностью, , и шум прижимается к высоким частотам ещё сильнее (Zölzer, с. 105–106). Таблица 3 сравнивает выигрыш в полезной полосе с тем же квантователем без передискретизации. Простая передискретизация даёт 3 дБ на каждое удвоение , модулятор первого порядка — 9 дБ, второго — 15 дБ.
| L | Только передискретизация | Дельта-сигма, 1-й порядок | Дельта-сигма, 2-й порядок |
|---|---|---|---|
| 4 | 6,0 | 13,0 | 17,5 |
| 16 | 12,0 | 31,0 | 47,3 |
| 64 | 18,1 | 49,0 | 77,4 |
| 128 | 21,1 | 58,0 | 92,5 |
Поэтому модулятору хватает квантователя в один бит. Многоразрядные отсчёты получаются потом: цифровой фильтр усредняет поток однобитных значений, убирает вынесенный вверх шум и при децимации выдаёт отсчёты нужной разрядности на частоте (Zölzer, с. 102; Baker, ч. 2). Большинство модуляторов в преобразователях имеют порядок выше первого: у Texas Instruments — со второго по шестой (Baker, ч. 1). В ЦАП путь обратный: отсчёты передискретизируют, цифровой модулятор превращает их в однобитный поток, а аналоговый фильтр убирает вынесенный вверх шум (Zölzer, с. 102, рис. 4.10).
Сколько даёт передискретизация в 16 раз без формирования спектра шума и сколько — с модулятором первого порядка?
Без формирования спектра шума дБ, то есть два бита. Модулятор первого порядка по таблице 3 даёт около 31 дБ: примерно на 19 дБ больше.
Что можно восстановить
Перед АЦП антиалиасинговый фильтр (anti-aliasing filter)антиалиасинговый фильтр (anti-aliasing filter) — Фильтр перед дискретизацией, который ослабляет составляющие, способные вызвать наложение спектров. В обычном аудиотракте это фильтр нижних частот перед АЦП. ослабляет частоты, которые при дискретизации вызвали бы наложение спектров (aliasing)наложение спектров (aliasing) — Наложение частотных составляющих при дискретизации: разные непрерывные сигналы дают одинаковые отсчёты. Частота выше границы Найквиста может проявиться как более низкая.. После ЦАПа восстановительный фильтр подавляет высокочастотные копии. Их задачи различаются: выходной фильтр не исправляет наложение, которое уже произошло при записи (Smith, глава 3.4).
В идеальной модели без квантования сигнал, все частоты которого строго ниже , можно точно восстановить по отсчётам — это теорема отсчётов (sampling theorem)теорема отсчётов (sampling theorem) — В принятой низкочастотной модели непрерывный сигнал можно точно восстановить по всем точным равномерным отсчётам, если его спектр лежит строго ниже половины частоты дискретизации. Также известна как теорема Котельникова.. В настоящей записи ЦАП получает уже округлённые значения. Например, код 101 из таблицы 2 сообщает уровень +0,375 В, но не позволяет узнать, было на входе +0,371 или +0,380 В. Фильтр не возвращает эту утраченную точность.
На вход АЦП с частотой дискретизации 8 кГц попал тон 5 кГц без антиалиасингового фильтра. Исправит ли запись переход с 16 на 24 бита или лучший выходной фильтр?
Нет. При такой частоте дискретизации тон 5 кГц даёт отсчёты, совместимые с тоном 3 кГц, как показано в разделе о наложении спектров. Разрядность меняет точность уровней, а выходной фильтр не может определить, какой из двух тонов был на входе. Предотвратить это нужно до дискретизации.
Источники
- Smith S. W. The Scientist and Engineer’s Guide to Digital Signal Processing. Гл. 3.1: Quantization. в списке литературы → — разделение дискретизации и квантования, ошибка округления и собственный шум тракта.
- Smith S. W. The Scientist and Engineer’s Guide to Digital Signal Processing. Гл. 3.3: Digital-to-Analog Conversion. в списке литературы → — удержание уровня, спектральные копии и компенсация частотной характеристики.
- Smith S. W. The Scientist and Engineer’s Guide to Digital Signal Processing. Гл. 3.4: Analog Filters for Data Conversion. в списке литературы → — назначение входного антиалиасингового и выходного восстановительного фильтров.
- Kester W. MT-001: Taking the Mystery out of the Infamous Formula, “SNR = 6.02N + 1.76dB,” and Why You Should Care. в списке литературы → — идеальный равномерный преобразователь, ошибка в половину шага и условия расчёта SNR.
- Kester W. MT-017: Oversampling Interpolating DACs. С. 1–2. в списке литературы → — передискретизация, цифровой фильтр и упрощение аналогового выходного фильтра.
- Zölzer U. Digital Audio Signal Processing. §4.1, с. 97–107. в списке литературы → — передискретизация в АЦП и ЦАП, распределение шума квантования по полосе и выигрыш , децимация, дельта-сигма-модуляторы первого и второго порядка и многоступенчатый, формирование спектра шума.
- Baker B. How delta-sigma ADCs work, Part 1. в списке литературы → — модулятор первого порядка с однобитным квантователем и однобитным ЦАП в обратной связи, вынос шума к высоким частотам, порядок модуляторов в преобразователях Texas Instruments.
- Baker B. How delta-sigma ADCs work, Part 2. в списке литературы → — цифровой фильтр и децимация в дельта-сигма-АЦП, многоразрядные отсчёты из однобитного потока.
Связи
Связи списком
Ссылается на
Ссылаются сюда
- Аудиоданные в программах: представление отсчётов, каналы, кадры и буферы
- Белый и розовый шум: спектр и генерация
- Дискретизация: отсчёты, период и частота дискретизации
- Звуковая волна и аналоговый аудиосигнал
- Как устроен звук: первый обзор
- Математика для аудио
- Принцип работы лимитера
- Психоакустика: как слух воспринимает звук
- Уровень сигнала: децибелы, dBFS, пик, RMS и LUFS
- Целочисленный PCM: байты, знак и перевод во float
- LFO: низкочастотный генератор и модуляция