В этом примере показано, как моделировать аналого-цифровое преобразование с использованием реализации алгоритма сигма-дельта.


Избыточно дискретизированный сигма-дельта аналого-цифровой преобразователь является квантователем формирования шума. Основная цель формирования шума состоит в изменении формы спектра шума квантования так, чтобы большая часть шума была отфильтрована из соответствующей полосы частот, например полосы звукового сигнала для речевых приложений. Основная цель заключается в торговле битами для выборок; то есть увеличить частоту дискретизации, но уменьшить количество битов на выборку. Результирующее увеличение шума квантования компенсируется квантователем, формирующим шум. Этот квантователь выталкивает добавленный шум квантования из соответствующей полосы частот и тем самым сохраняет желаемый уровень качества сигнала. Это уменьшение числа битов упрощает структуру АЦП и АЦП.
Как видно из этого примера, аналоговый вход предварительно фильтруется сглаживающим предварительным фильтром, структура которого упрощена из-за избыточной дискретизации. Входной сигнал избыточно дискретизируется с коэффициентом 64. Интегратор, 1 бит, Quantizer и Нулевой Заказ Держат блоки, включает двухуровневый аналого-цифровой преобразователь (ADC). Выходной сигнал функции удержания нулевого порядка вычитается из аналогового входного сигнала. Цикл обратной связи или аппроксимации приводит к тому, что шум квантования, генерируемый АЦП, фильтруется по высоким частотам, проталкивая свою энергию к более высоким частотам (64*fs/2) и вдали от соответствующей полосы сигнала. Стадия прореживания уменьшает частоту дискретизации обратно до 8 кГц. Во время этого процесса он удаляет высокочастотный шум квантования, который был введен контуром обратной связи, и удаляет любые нежелательные частотные компоненты за пределами fs/2 (4 кГц), которые не были удалены простым аналоговым предварительным фильтром.
Примеры версий иллюстрируют два возможных решения для прореживания.
Модель версии с плавающей запятой использует каскад из трех многофазных дециматоров FIR. Этот подход уменьшает требования к вычислениям и памяти по сравнению с одним прореживателем за счет использования фильтров более низкого порядка. Каждая ступень прореживания уменьшает частоту дискретизации в четыре раза. Задержка, введенная фильтрами, используется для установки соответствующей временной задержки в блоке задержки передачи. Каждый из трех фильтров децимации FIR вводит задержку 16 выборок из-за групповой задержки фильтра (фактическое значение 15,5 округляется до ближайшего целого числа выборок). Из-за операции прореживания общая задержка, введенная тремя фильтрами, такова: 16 (первый фильтр) + 4 * 16 (второй фильтр) + 16 * 16 (третий фильтр), чтобы дать конечную суммарную задержку 336. Знаменателем параметра «Временная задержка» является базовая скорость модели (512 кГц).
Версия с фиксированной точкой использует пятисекционный прореживатель CIC для уменьшения частоты дискретизации в тот же коэффициент, равный 64. Не будучи столь гибким, как дециматор КИХ, дециматор CIC имеет то преимущество, что не требует каких-либо операций умножения. Он реализуется с использованием только сложений, вычитаний и задержек. Поэтому это хороший выбор для аппаратной реализации, где вычислительные ресурсы ограничены. CIC Decimator вводит задержку 158 выборок, которая является групповой задержкой фильтра (157.5), округленной до ближайшего целого числа. Это значение используется в параметре «Time Delay» блока «Multiscage CIC Processing Delay».
Орфанидис, С. Дж. Введение в обработку сигналов, Prentice Hall, 1996.
Версия с плавающей запятой: dspdadc
Версия с фиксированной точкой: dspsdadc_fixpt