ΣSigmaStudio English

Следящий фильтр (ADSP-SC5xx/215xx)


Следящие фильтры полезны для динамического сдвига фильтрации. Следящий фильтр позволяет определять центральную частоту по внешнему входу.
Следящий фильтр (ADSP-SC5xx/215xx)

Входные пины

NameFormat [int/dec] - [control/audio]Function Description
Pin 0: Input decimal - Audio Аудиовход
Pin 1: Control Input decimal - Control Вход управления (должен быть (2*fc)/fs, где fc — центральная частота, а fs — частота дискретизации схемы)

Выходные пины

NameFormat [int/dec] - [control/audio]Function Description
Pin 0: Output decimal - Audio Фильтрованный выход

Алгоритм Grow

Модуль не поддерживает добавление и расширение (Add and Growth).

Конфигурация


Конфигурация

GUI Control NameDefault ValueRangeFunction Description
Gain 0 -15dB to 15dB Усиление фильтра в дБ
QValue 0.04 0.04 to 16 Добротность (Q) фильтра в состоянии покоя
Boost 0dB -15dB to 15dB Значение подъёма фильтра в дБ

Информация о параметрах DSP

GUI Control NameCompiler NameFunction Description
GainTrackingFilter_SC5xxAlg1Gain Усиление фильтра в дБ
QValueTrackingFilter_SC5xxAlg1QValue Добротность (Q) фильтра в состоянии покоя
boostTrackingFilter_SC5xxAlg1boost Значение подъёма фильтра в дБ



Здесь,

  • Зелёный — Имя алгоритма
  • Красный — Номер экземпляра (изменяется для каждого экземпляра)
  • Синий — Имя параметра

Описание алгоритма

Следящие фильтры полезны для динамического сдвига фильтрации. Следящий фильтр позволяет определять центральную частоту по внешнему входу. Вход управления рассчитывается как (2*fc)/fs, где fc — центральная частота, а fs — частота дискретизации схемы.

Поддерживаемые ИС

  1. ADSP215xx
  2. ADSPSC5xx

Tracking(ADAU145x)

Tracking(ADAU145x) Следящие фильтры полезны для динамического сдвига фильтрации. Этот конкретный следящий фильтр является алгоритмом пикового фильтра (Peaking Filter). Во многих приложениях вместо фиксированной центральной частоты для пикового фильтра полезно иметь подвижную центральную частоту. Например, LFO (низкочастотный генератор) может управлять следящим фильтром для создания эффекта фазового сдвига (phasing). Следящий фильтр позволяет определять центральную частоту по внешнему входу.

Входные пины:

Блок следящего фильтра имеет два входа и один выход. Первый вход — это фактический аудиовход, который вы хотите фильтровать. Второй входной пин — это значение центральной частоты фильтра. Вы заметите, что этот пин оранжевый, что указывает на то, что это пин управления, а не аудиопин. Сюда вы можете подключать блоки LFO или DC Input, чтобы задать желаемую фиксированную или подвижную центральную частоту следящего фильтра.

Описание алгоритма:

Следящий фильтр — это уникальный фильтр в библиотеке фильтров SigmaStudio. Это один из немногих фильтров, в котором коэффициенты динамически рассчитываются процессором DSP. Уравнения встроены в код алгоритма блока, и в зависимости от входной центральной частоты генерируются коэффициенты.

Входная центральная частота, которую ожидает алгоритм следящего фильтра, представляет собой значение в формате 5.23, вычисляемое по формуле: Гц/(fs/2). Например, если вы работаете с fs = 44100 Гц и fc = 500 Гц, отправляемое значение должно быть: 0.0226757 = 500 /(44100/2).

Следящий фильтр основан на генерации коэффициентов для IIR пикового фильтра. Следующие уравнения показывают, как DSP получает 5 биквадратных коэффициентов из элементов управления. Элементами управления следящего фильтра являются overall_gain — значение dB общего усиления фильтра, boost — значение dB среза или подъёма пикового фильтра, и Q — определяет ширину полосы среза или подъёма частоты. Центральная частота fc пикового фильтра задаётся вторым входным пином.

gainLinear = 10^(overall_gain/20) w = 2*pi*fc/Fs alpha = sin(w)/(2*Q) A = 10^(boost/40) a0 = 1 + alpha/A a1 = -2 * cos(w) a2 = 1 - alpha/A b0 = (1 + alpha*A) * gainLinear b1 = -(2 * cos(w)) * gainLinear b2 = (1 - alpha*A) * gainLinear

Использование:

Следящий фильтр может использоваться во многих ситуациях. Его следует применять, когда желательна изменяющаяся центральная частота пикового фильтра. Для приложений с фиксированной центральной частотой следует использовать обычный фильтр второго порядка. Для поддержки изменяющейся центральной частоты в этом алгоритме требуются значительные затраты MIPS/памяти. Однако первый пример здесь использует следящий фильтр с фиксированной центральной частотой только для простоты объяснения формата центральной частоты.


Пример 1:

Здесь блок DC entry подключен ко второму пину следящего фильтра. Значение внутри блока соответствует 500 Гц. Таким образом, аудиосигнал, поступающий на первый пин, будет усилен на 5 дБ на частоте 500 Гц с добротностью Q = 1.71, и ко всей полосе частот будет применена регулировка общего усиления -3 дБ.

Пример 1:

Пример 2:

Вот более сложный пример, показывающий, как следящий фильтр может использоваться с LFO для создания эффекта фазового сдвига. Первый входной пин принимает объединённую версию входного сигнала (по сути, монофоническую версию входного сигнала). Блоки, предшествующие второму входному пину, создают LFO, который качает центральную частоту со скоростью 0.1 Гц. Диапазон качающейся центральной частоты составляет 441–11025 Гц.

Ниже приведены уравнения, объясняющие, как определяется диапазон:

Вход управления Fc = (F2 – F1)*sin(.1Hz) + F2 + F1

Поскольку обычный синусоидальный тон изменяется в диапазоне ±1, этот LFO изменяется в диапазоне от:

+(F2-F1) + F2 + F1 = 2*F2 -(F2-F1) + F2 + F1 = 2* F1

Затем, чтобы выяснить, каким частотам в Гц соответствуют значения .01 и .25 в схеме, используйте следующую формулу:

(44100/2) * Fc = Значение в Гц

Однако имейте в виду, что F1 и F2 — это числа в блоке DC, но диапазон будет от 2*F1 до 2*F2, поэтому сначала умножьте на 2, чтобы получить правильное значение диапазона, а затем используйте приведенную выше формулу, чтобы узнать значение в Гц:

(0.01*2)*44100/2 = 441 Гц (0.25*2)*(44100/2) = 11025 Гц

Пример 2:

Tracking(ADAU145x) в SigmaStudio: настройка и параметры

Tracking (ADAU145x) — это алгоритм следящего пикового фильтра (Peaking Filter) в среде SigmaStudio, предназначенный для динамического сдвига полосы фильтрации. В отличие от стандартных фильтров с фиксированной частотой, этот блок позволяет управлять центральной частотой в реальном времени, что открывает возможности для создания эффектов фазового сдвига (phasing) или автоматической фильтрации сигнала. Принцип работы блока основан на внешнем управлении. Модуль имеет два входа: аудиовход для фильтруемого сигнала и управляющий вход (Control Input), который определяет центральную частоту. Значение на управляющем пине рассчитывается по формуле (2*fc)/fs, где fc — желаемая центральная частота, а fs — частота дискретизации схемы. Выходной пин отдаёт обработанный аудиосигнал. Особенность алгоритма в том, что коэффициенты фильтра динамически пересчитываются процессором DSP, а не задаются статически. В графическом интерфейсе SigmaStudio доступны три параметра настройки. Gain регулирует усиление фильтра в диапазоне от -15 до +15 дБ. QValue задаёт добротность фильтра в состоянии покоя (значение по умолчанию 0.04, доступный диапазон до 16). Boost определяет величину подъёма фильтра в дБ (от -15 до +15). Эти параметры компилируются в соответствующие переменные алгоритма TrackingFilter_SC5xxAlg 1. Для использования следящего фильтра в проекте подключите аудиосигнал к первому входу, а ко второму (оранжевому) пину управления — любой источник управляющего сигнала, например LFO или DC Input.