Проектирование фильтров с использованием метода частотной выборки

Проектирование фильтров с использованием метода частотной выборки
Проектирование фильтров с использованием метода частотной выборки
Anonim

Проектирование FIR-фильтров с использованием метода выборки частоты

В этой статье будут рассмотрены основы метода частотной выборки для проектирования фильтров с конечным импульсным откликом (FIR).

Фильтры FIR имеют два основных преимущества перед фильтрами Infinite Impulse Response (IIR):

  • FIR-фильтр не имеет обратной связи и по своей сути стабилен. (Мы всегда должны проверять стабильность фильтра IIR.)
  • FIR-фильтр может легко обеспечить линейный отклик, который имеет решающее значение в фазочувствительных приложениях, таких как передача данных, сейсмология и т. Д.

В этой статье вы узнаете, как создать FIR-фильтр, используя метод частотной выборки.

FIR Filter Design by Windowing

Предположим, что мы хотим создать фильтр с конечным импульсным откликом (FIR) с требуемым частотным откликом $$ H_ {d} ( omega) $$. Метод window применяет обратное преобразование Фурье с дискретным временем, чтобы найти соответствующее представление во временной области $$ h_ {d} (n) $$, как указано в

$$ H_ {d} (п) = \ гидроразрыва {1} {2 \ пи} Int _ {- \ р} ^ { Pi} H_ {d} ( Omega) е ^ {Jn \ Omega} d \ омега $$

Уравнение 1

Как правило, $$ h_ {d} (n) $$ не имеет конечной длины, и поскольку мы искали конечный импульсный отклик, мы можем обрезать $$ h_ {d} (n) $$ и достичь приближения желаемого ответ. Это эквивалентно умножению $$ h_d (n) $$ на прямоугольное окно.

Как обсуждалось в предыдущей статье «От фильтров» до «Параметры окна» в FIR Filter Design, мы можем использовать другие функции окна для достижения компромисса между рябью в полосе пропускания и резкостью полосы перехода.

Для многих классических фильтров мы можем легко вычислить интеграл уравнения 1. Например, предположим, что мы проектируем идеальный фильтр нижних частот с частотой среза $$ \ omega_c $$. Тогда мы имеем

$$ H_d ( omega) = \ begin {cases} 1 & | \ omega | \ leq \ omega_c \\ 0 & else \ end {cases} $$

Уравнение 2

В этом конкретном примере некоторые математические манипуляции могут легко привести нас к соответствующему $$ h_d (n) $$ (см. Уравнение (8) в этой статье), потому что $$ H_d ( omega) $$ задается простым уравнением. Затем мы можем применить подходящую оконную функцию, чтобы получить ответ на конечную длину, который является приближением нужного фильтра. Подробнее об этом обсуждении см. В этой статье о дизайне фильтра FIR при помощи окон.

Однако, если $$ H_d ( omega) $$ имеет сложное уравнение, мы не сможем легко вычислить Уравнение 1. В этих случаях мы можем использовать метод частотной выборки для проектирования КИХ-фильтров с произвольным $$ H_d ( Omega) $$.

В этой статье мы сначала рассмотрим практический пример, где требуемый КИХ-фильтр имеет сложный частотный отклик, а метод частотной выборки весьма полезен. Затем мы рассмотрим основы проектирования фильтра FIR с помощью этого метода.

FIR-фильтр для компенсации $$ \ tfrac {sin (x)} {x} $$ Искажение

Мы можем думать о практическом ЦАП как идеальном ЦАП, который производит импульсный поезд, за которым следует блок удержания нулевого порядка.

Image
Image

Рисунок 1. Практические ЦАП обычно применяют удержание нулевого порядка к выходным значениям. Изображение предоставлено цифровой обработкой сигналов

Цепь удержания требуется, потому что на практике мы не можем создавать узкие импульсы идеального ЦАП. Однако размещение удержания нулевого порядка на выходе идеального ЦАП (как показано на рисунке 1) означает, что идеальный выход $$ y_s (t) $$ будет изменен передаточной функцией схемы удержания. Можно показать, что передаточная функция удержания нулевого порядка дается формулой

$$ H (f) = t_ {h} frac {sin ( pi f t_ {h})} { pi f t_ {h}} $$

где $$ t_h $$ - время удержания, которое обычно равно периоду выборки. На следующем рисунке показан нормализованный частотный отклик схемы удержания, т. Е. $$ H_ {DAC} = \ tfrac {H (f)} {t_h} $$.

Image
Image

Рисунок 2. Нормализованная частотная характеристика схемы удержания по сравнению с $$ \ tfrac {f} {f_s} $$

Как видно из приведенного выше рисунка, частотные составляющие около $$ \ tfrac {f_s} {2} $$ испытывают затухание около $$ 4 $$ dB по сравнению с низкочастотными компонентами. Мы обсуждали в предыдущей статье о многопроцессорном DSP в преобразовании D / A, что можно использовать многоадресную систему для облегчения проблемы. Однако при относительно малых значениях отношения избыточной выборки (например, $$ L \ leq 8 $$) нам все равно придется компенсировать искажение схемы удержания. С этой целью мы можем применить фильтр с частотным откликом $$ \ tfrac {1} {H_ {DAC}} $$ до $$ y (n) $$ на рисунке 1.

Предполагая, что мы используем многоадресную систему (см. Рис. 3), мы можем модифицировать сам фильтр интерполяции, чтобы избежать использования дополнительного фильтра. В этом случае величина ответа фильтра интерполяции будет пропорциональна $$ \ tfrac {1} {H_ {DAC}} $$ в полосе пропускания фильтра ($$ 0 \ leq \ omega \ leq \ tfrac { pi} { L} $$ для L-кратной интерполяции) и нулю в противном случае.

Image
Image

Рисунок 3. $$ H (z) $$ может быть спроектирован как для устранения частотных составляющих выше $$ \ tfrac { pi} {L} $$, так и для компенсации искажения схемы удержания. Изображение предоставлено цифровой обработкой сигналов

Резюмируя, мы можем использовать уравнение 1 для создания идеальных фильтров, таких как уравнение, данное уравнением 2. Однако этот метод нелегко при проектировании фильтра с произвольным частотным откликом, например при проектировании величины $$ H (z) $$ равным $$ \ tfrac {1} {H_ {DAC}} $$ в определенной группе. В этих случаях мы можем использовать метод частотной выборки.

Метод частотной выборки

Метод частотной выборки основан на замене интеграла уравнения 1 на приблизительную сумму. Предположим, что нам нужно создать фильтр с частотным откликом, показанным на рисунке 4.

Image
Image

Рисунок 4. Метод частотной дискретизации можно использовать для создания фильтра с произвольной частотной характеристикой, такой как $$ H ( omega) $$

Чтобы иметь более простые математические выражения, мы можем аппроксимировать $$ H ( omega) $$, используя красную кривую на следующем рисунке.

Image
Image

Рисунок 5. Красная кривая - это приближение $$ H ( omega) $$

В этом конкретном примере желаемый частотный отклик выбирается на регулярных частотных интервалах $$ \ tfrac {2 \ pi} {13} k $$ для $$ k = 0, 1, 2, \ dots, 12 $$ (образцы показаны точками на рисунке). Если бы мы вычислили интеграл самой $$ H ( omega) $$, мы могли бы просто аппроксимировать интеграл, вычисляющий площадь под красной кривой, которая представляет собой сумму $$ 13 $$ прямоугольников ширины $$ \ tfrac {2 \ pi} {13} $$ и длина, определяемая образцами $$ H ( omega) $$. Для выполнения интеграла уравнения 1 нам также необходимо учитывать член $$ e ^ {jn \ omega} $$. Следовательно, для $$ N = 2M + 1 $$ выборок $$ H ( omega) $$ можно аппроксимировать уравнение 1, используя

$$ h_ {d} (n) = \ frac {1} {2 \ pi} left ( sum_ {k = -M} ^ {M} H ( omega_k) e ^ {jn \ omega_k} frac { 2 \ pi} {2M + 1} right) $$

Уравнение 3

где $$ \ omega_k = \ tfrac {2 \ pi} {2M + 1} k $$.

В приведенном выше уравнении $$ H ( omega_k) e ^ {jn \ omega_k} $$ и $$ \ tfrac {2 \ pi} {2M + 1} $$ соответственно представляют длину и ширину прямоугольников, используемых для приближения $$ H ( Omega) е ^ {Jn \ Omega} $$. Интересно отметить, что, сравнивая уравнение 3 с уравнением 2 этой статьи о DFT-анализе в DSP, мы видим, что метод частотной выборки фактически вычисляет обратное дискретное преобразование Фурье образцов $$ H ( omega) $$.

Мы можем дополнительно упростить уравнение 3, учитывая, что частотная характеристика симметрична относительно начала координат, т. Е. $$ H ( omega_k) = H ( omega _ {- k}) $$. Следовательно, получаем

$$ h_ {d} (n) = \ frac {1} {2M + 1} left (H ( omega_0) + \ sum_ {k = 1} ^ {M} H ( omega_k) left (e ^ {jn \ omega_k} + e ^ {- jn \ omega_k} right) right) $$

который дает

$$ h_ {d} (n) = \ frac {1} {2M + 1} left (H ( omega_0) +2 \ sum_ {k = 1} ^ {M} H ( omega_k) cos (n \ omega_k) right) $$

Уравнение 4

Обратите внимание, что после вычисления $$ h_d (n) $$ мы можем применить оконную функцию способом, аналогичным описанному выше методу окон.

Метод выборки частоты Пример 1

Используйте метод частотной выборки для проектирования 9-контактного низкочастотного FIR-фильтра с частотой отсечки $ 0, 25 \ pi $$ радиан / образец.

Во-первых, нам нужно найти значение образцов частотной характеристики. Предполагая идеальный ответ, образцы ниже $$ 0, 25 \ pi $$ равны $$ 1 $$, а остальные образцы равны нулю. Тогда получим

Image
Image

Следовательно, уравнение 4 дает

$$ h_ {d} (n) = \ frac {1} {9} left (1 + 2cos ( frac {2 \ pi} {9} n) right) $$

Основываясь на этом уравнении, мы получаем соответствующее представление во временной области, как указано в следующей таблице:

Image
Image

Частотная характеристика сконфигурированного фильтра показана на рисунке 6.

Image
Image

Рисунок 6. Частотная характеристика фильтра, разработанного в примере 1

Этот рисунок показывает, что в полосе пропускания и в полосе пропускания сконфигурированного фильтра наблюдается некоторая рябь. Эти рябь делают полученный ответ отклоненным от значения целевого идеального фильтра. Обратите внимание, что при $$ \ tfrac {2 \ pi} {9} k $$, $$ k = 0, 1, \ dots, 8 $$ фильтр показывает точно отклик, который мы изначально искали (см. таблицу 1). Это можно объяснить, отметив, что частотная выборка основана на обратном ДПФ-анализе. Мы применили обратный ДПФ к образцам частотной области таблицы 1 и получили соответствующую временную последовательность, $$ h_d (n) $$. На рис. 6 приведено частотное содержание $$ h_d (n) $$ и его равных интервалов в $$ \ tfrac {2 \ pi} {9} k $$, $$ k = 0, 1, \ dots, 8 $$ дают девятиточечный ДПФ $$ h_d (n) $$. Очевидно, что эти образцы должны соответствовать таковым, указанным в таблице 1.

Мы можем увеличить количество выборок частотной области, чтобы получить лучшее приближение целевого фильтра и добиться более резкого перехода. Очевидно, для этого потребуется фильтр более высокого порядка. Следующий пример объясняет конструкцию 25-кратного фильтра для фильтра нижних частот в примере 1.

Частотный метод выборки Пример 2

Используйте метод частотной выборки для проектирования 25-контактного низкочастотного FIR-фильтра с частотой среза $ 0, 25 \ pi $$ радиан / образец.

Во-первых, мы находим значение образцов частотной характеристики. Предполагая идеальный ответ, образцы ниже $$ 0, 25 \ pi $$ равны $$ 1 $$, а остальные образцы равны нулю. Тогда получим

Image
Image

а также

Image
Image

Следовательно, уравнение 4 дает

$$ h_ {d} (n) = \ frac {1} {25} left (1 + 2 \ left (cos ( frac {2 \ pi} {25} n) + cos ( frac {4 \ pi } {25} n) + cos ( frac {6 \ pi} {25} n) right) right) $$

Основываясь на этом уравнении, мы получаем соответствующее представление во временной области, как указано в следующей таблице:

Image
Image

а также

Image
Image

Частотная характеристика полученного 25-кратного фильтра показана на рисунке 7.

Image
Image

Рисунок 7. Частотная характеристика 25-кратного фильтра с частотой среза 0, 25 радиан / образец

Чтобы уменьшить рябь полосы пропускания, мы можем использовать функцию окна; однако это увеличит полосу перехода, и нам, возможно, потребуется дополнительно увеличить длину фильтра для достижения более резкого ответа.

Резюме

  • Когда $$ H_d ( omega) $$ задается простым уравнением, мы можем легко вычислить интеграл уравнения 1. Однако для произвольной $$ H_d ( omega) $$ метод частотной выборки будет проще подать заявление.
  • При относительно небольших значениях отношения избыточной выборки (например, $$ L \ leq 8 $$) нам может потребоваться компенсировать искажение схемы удержания. С этой целью мы можем спроектировать фильтр интерполяции, чтобы иметь частотную характеристику $$ \ tfrac {1} {H_ {DAC}} $$.
  • Для $$ N = 2M + 1 $$ выборок $$ H ( omega) $$ мы можем определить коэффициенты фильтра метода частотной выборки, используя уравнение 4.