Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

TsOS / Analog Devices / 06-ЦИФРОВЫЕ ФИЛЬТРЫ

.pdf
Скачиваний:
88
Добавлен:
31.05.2015
Размер:
879.38 Кб
Скачать

a

 

 

 

САПР-МЕТОДЫ ПРОЕКТИРОВАНИЯ КИХ-ФИЛЬТРОВ:

ПРОГРАММА ПАРКСА-МАККЛИЛЛАНА С АЛГОРИТМОМ

 

РЕМЕЗА

 

 

δ1 = неравномерность в полосе пропускания

1

 

 

 

|Усиление|

 

fc

Частота начала

 

 

 

 

 

полосы задержки

Частота окончания

fp

δ2 = Неравномерность в

полосы пропускания

 

 

 

 

полосе задержки

 

 

 

(ослабление)

0

 

 

Частота

Коэффициент

δ2

 

 

 

неравномерности =

δ1

 

 

 

 

 

 

Рис. 6.22

 

ВХОДНЫЕ ДАННЫЕ ДЛЯ ПРОГРАММЫ

ПРОЕКТИРОВАНИЯ КИХ-ФИЛЬТРОВ С

ФИКСИРОВАННОЙ НЕРАВНОМЕРНОСТЬЮ ПОЛОСЫ

ПРОПУСКАНИЯ ПОЛОСЫ ЗАДЕРЖКИ

Тип фильтра: НЧ

ВЧ

полосовой

режекторный

Дифференциатор

Мультичастотный Частота дискретизации: 44 100 Гц

Частота полосы пропускания: 18 000 Гц Частота полосы задержки: 21 000 Гц Неравномерность полосы пропускания : 0,01 дБ Неравномерность полосе задержки: 96 дБ Длина слова : 16 бит

Рис. 6.23

21

a

Программа позволяет нам выбирать между проектированием, основанным на взвешивании с использованием оконных функций, и проектированием КИХ-фильтров с фиксированной неравномерностью Паркса-Макклиллана. Если выбрать последний способ, то программа оценивает число звеньев фильтра, требуемое для его реализации с соблюдением сформулированных технических требований. В данном случае число звеньев равно 69. Можно принять это число и продолжить проектирование или уменьшить число звеньев и посмотреть, можно ли с меньшим числом достичь требуемой спецификации.

Примем это значение и дадим возможность программе закончить вычисления. Программа выдает частотную характеристику (рис.6.25), реакцию фильтра на ступенчатое воздействие (рис.6.26), данные анализа в s- и z- плоскостях и импульсную характеристику (рис.6.27). Затем программа QED1000 выдает квантованные коэффициенты фильтра, которые служат исходными данными для программы, генерирующей реальный ассемблерный код для ряда популярных DSP процессоров, включая процессоры Analog Devices. Программа обладает достаточной степенью гибкости и позволяет пользователю выполнять ряд сценариев оптимизации проектируемого фильтра.

ВЫХОДНЫЕ ДАННЫЕ ПРОГРАММЫ ПРОЕКТИРОВАНИЯ КИХ-ФИЛЬТРА

Оценка требуемого порядка фильтра: 69 Принять? Изменить? Принять

Частотная характеристика (линейная и логарифмическая шкалы)

Реакция на ступенчатое воздействие Анализ в S- и Z- плоскостях

Импульсная реакция: коэффициенты фильтра (квантованные)

Ассемблерный код DSP процессора для КИХ-фильтра

Рис. 6.24

КИХ-фильтр с 69 звеньями требует 69+5=74 командных цикла процессора ADSP-2189M быстродействием 75MIPS, дает полное время вычисления на отсчет 74*13,3 нс = 984 нс. Интервал дискретизации равен 1/44,1 кГц или 22,7 мкс. Это дает 22,7 мкс-0,984 мкс = 21,7 мкс для различных дополнительных операций и реализации других алгоритмов.

Вследствие избыточности вычислительной мощности процессора в данном случае появляется целый ряд возможностей, которые включают использование более медленного процессора для этого приложения (3,3 MIPS), реализацию более сложного фильтра, который требует большего времени вычисления (до N = 1700) или увеличения частоты дискретизации до 1 MSPS.

22

a

ПРИМЕР ПРОЕКТИРОВАНИЯ КИХ ФИЛЬТРА: ЧАСТОТНАЯ ХАРАКТЕРИСТИКА

Неравномерность в полосе

18 кГц

пропускания < 0,01 дБ

УСИЛЕНИЕ

96 дБ

fs = 44,1 kSPS

ЧАСТОТА (Гц)

21 кГц

fs

Courtesy Momentum Data Systems

2

 

 

 

 

 

Рис. 6.25

ПРИМЕР ПРОЕКТИРОВАНИЯ КИХ ФИЛЬТРА: РЕАКЦИЯ НА СТУПЕНЧАТОЕ ВОЗДЕЙСТВИЕ

АМПЛИТУДА

ВРЕМЯ (мс)

Courtesy Momentum Data Systems

Рис. 6.26

23

a

ПРИМЕР ПРОЕКТИРОВАНИЯ КИХ ФИЛЬТРА: ИМПУЛЬСНАЯ ХАРАКТЕРИСТИКА (КОЭФФИЦИЕНТЫ ФИЛЬТРА)

АМПЛИТУДА

N = 69

ВРЕМЯ (МС)

Courtesy Momentum Data Systems

Рис. 6.27

ПРИМЕР ПРОЕКТИРОВАНИЯ С ИСПОЛЬЗОВАНИЕМ ADSP-2189M: ПРОЦЕССОРНОЕ ВРЕМЯ

ДЛЯ КИХ-ФИЛЬТРА 69 ПОРЯДКА

Частота дискретизации fs = 44,1 kSPS Интервал дискретизации = 1 / fs = 22,7 мкс Порядок фильтра, N = 69

Количество требуемых команд = N + 5 = 74 Процессорное время на команду = 13,3 нс (75 MIPS) (ADSP-2189M)

Общее время обработки = 74 × 13,3 нс = 984 нс Общее время обработки < интервала дискретизации и

22,7 мкс – 0,984 мкс = 21,7 мкс запас для других операций Увеличение частоты дискретизации до 1 МГц Использование более медленного процессора ЦОС

(3,3 MIPS)

Увеличение порядка фильтра (до N = 1700)

Рис. 6.28

24

a

Проектирование ВЧ, полосовых и режекторных фильтров на основе НЧ фильтров

Преобразование спроектированной импульсной характеристики НЧ фильтра в импульсную характеристику ВЧ фильтра может быть выполнено одним из двух способов. По методу инверсии спектра знак каждого коэффициента фильтра в импульсной характеристике НЧ фильтра изменяется на противоположный. Затем к центральному коэффициенту прибавляется 1. По методу реверсирования спектра изменяется знак каждого второго коэффициента. Это приводит к изменению характеристик в частотной области. Другими словами, если частота среза НЧ фильтра равна 0,2*fs, то результирующий ВЧ фильтр будет иметь частоту среза 0,5*fs - 0,2*fs = 0,3*fs. Это должно приниматься во внимание при проектировании исходного НЧ фильтра.

ПРОЕКТИРОВАНИЕ ВЧ ФИЛЬТРА С ИСПОЛЬЗОВАНИЕМ ИМПУЛЬСНОЙ ХАРАКТЕРИСТИКИ НЧ ФИЛЬТРА

Метод инверсии спектра:

Проектируем ФНЧ (линейная фаза, нечетное N) Изменяем знак каждого коэффициента в импульсной характеристике h(n)

Прибавляем 1 к коэффициенту в центре симметрии h(n)

Метод реверсирования спектра: Проектируем ФНЧ

Изменяем знак каждого второго коэффициента в импульсной характеристике h(n)

Это переворачивает характеристику в частотной области слева направо:

Значение по частоте, соответствующее 0, становится соответствующим 0,5; 0,5 становится соответствующим 0; т.е. если частота среза ФНЧ равна 0,2, то частота среза результирующего ФВЧ равна 0,3

Рис. 6.29

Полосовой и режекторный фильтры можно спроектировать, комбинируя надлежащим образом соответствующие НЧ и ВЧ фильтры. Полосовые фильтры проектируются посредством каскадного соединения НЧ и ВЧ фильтров. Вычисляя свертку двух индивидуальнх импульсных характеристик, получают эквивалентную импульсную характеристику каскадных фильтров.

Режекторный фильтр проектируется посредством параллельного подключения НЧ и ВЧ фильтров и суммирования сигналов с их выходов. Суммируя индивидуальные импульсные характеристики, получают эквивалентную импульсную характеристику.

25

a

ПРОЕКТИРОВАНИЕ ПОЛОСОВЫХ И РЕЖЕКТОРНЫХ ФИЛЬТРОВ С ИСПОЛЬЗОВАНИЕМ ФНЧ И ФВЧ

x(n)

h1(k)

 

 

h2(k)

y(n)

 

x(n)

h1(k)

h2(k)

y(n)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

= свертка

ФНЧ

ФВЧ

ПФ

 

 

 

 

 

 

 

 

 

 

ФВЧ

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

h1(k)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

x(n)

 

 

 

Σ

 

 

 

 

 

 

 

x(n)

 

 

y(n)

 

 

 

 

 

y(n)

 

 

 

h1(k) + h2(k)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

h2(k)

 

 

 

 

 

 

 

 

 

 

 

 

ФНЧ

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Режекторный

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Рис. 6.30

ФИЛЬТРЫ С БЕСКОНЕЧНОЙ ИМПУЛЬСНОЙ ХАРАКТЕРИСТИКОЙ

(БИХ)

Как было упомянуто ранее, КИХ-фильтры не имеют реальных аналоговых эквивалентов. Самой близкой аналогией является фильтр скользящего среднего с взвешиванием. Кроме того, частотные характеристики КИХ-фильтров имеют только нули и не имеют полюсов. С другой стороны, БИХ-фильтры имеют традиционные аналоговые эквиваленты (фильтры Баттерворта, Чебышева, эллиптический и Бесселя) и могут быть проанализированы и синтезированы с использованием традиционных методов проектирования фильтров.

БИХ-фильтры получили такое название, потому что их импульсные характеристики растянуты на бесконечном временном интервале. Это объясняется тем, что данные фильтры являются рекурсивными, то есть используют обратную связь. Хотя БИХфильтры могут быть реализованы с меньшим, чем КИХ-фильтры, количеством вычислений, БИХ-фильтры не могут иметь таких характеристик, которыми обладают КИХ-фильтры. Более того, БИХ-фильтр не имеет линейной фазовой характеристики. Но вычислительные преимущества БИХ-фильтра теряются, когда выходной сигнал фильтра подвергается децимации, поскольку в этом случае всякий раз приходится вычислять заново значение выходной величины.

БИХ-фильтры обычно реализуются с помощью звеньев второго порядка, которые называются биквадратными фильтрами, потому что описываются биквадратными уравнениями в z-области. Фильтры высокого порядка проектируют, используя каскадирование биквадратных звеньев. Например, фильтр шестого порядка требует трех биквадратных звеньев.

26

a

ФИЛЬТРЫ С БЕСКОНЕЧНОЙ ИМПУЛЬСНОЙ ХАРАКТЕРИСТИКОЙ (БИХ)

Имеют обратную связь (рекурсия)

Импульсная характеристика имеет бесконечную длительность Потенциально нестабильны Нелинейная фазочастотная характеристика Более эффективны, чем КИХ-фильтры

Нет вычислительных преимуществ при децимации по выходу Обычно проектируется по характеристике аналогового фильтра Обычно реализуется каскадным соединением звеньев второго порядка (биквадратные фильтры)

Рис. 6.31

Структура биквадратного БИХ-фильтра представлена на рис.6.32. Нули формируются коэффициентами прямой связи b0, b1 и b2; а полюса (порядок) определяются коэффициентами обратной связи a1 и a2.

АППАРАТНАЯ РЕАЛИЗАЦИЯ БИХ-ФИЛЬТРА ВТОРОГО ПОРЯДКА (БИКВАДРАТНОГО) ФОРМА 1

x(n)

 

 

 

b 0

Σ

 

 

 

 

 

 

y(n)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

z–1

 

 

 

 

 

 

 

z–1

 

 

 

 

 

 

b 1

 

 

–a1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

z–1

 

 

 

 

 

 

 

z–1

 

 

 

 

 

 

b 2

 

 

 

–a2

 

y(n) = b0x(n) + b1x(n–1) + b2x(n–2) – a1y(n–1) – a2 y(n–2)

 

 

 

 

 

M

 

 

 

M

N

 

 

Σ b k z–k

(нули)

 

y(n) = Σbk x(n–k) – Σak x(n–k)

 

H(z) =

k=0

 

 

 

 

 

 

 

 

N

 

 

 

k=0

k=1

 

 

(полюса)

 

 

 

 

 

1 + Σ a k z–k

 

 

 

 

 

k=1

 

 

Рис. 6.32

Общее уравнение цифрового фильтра, представленное на рис.6.32, описывает обобщенную передаточную функцию H(z), которая содержит полиномы и в числителе, и в знаменателе. Корни знаменателя определяют расположение полюсов фильтра, а корни числителя характеризуют расположение нулей. Хотя существует возможность создания непосредственно по этому уравнению БИХ-фильтра более высокого порядка (так называемая прямая реализация), накапливающиеся ошибки квантования (из-за

27

a

арифметики с фиксированной точкой и конечной длины слова) могут вызывать неустойчивость работы фильтра и большие ошибки. По этой причине правильнее расположить каскадно несколько биквадратных звеньев с соответствующими коэффициентами, чем использовать прямую форму реализации. Данные при вычислении биквадратных фильтров могут масштабироваться раздельно, а затем биквадратные звенья каскадируются для минимизации ошибок квантования коэффициентов и накапливающихся ошибок рекурсивного накопления. Каскадные биквадратные фильтры работают более медленно, чем их эквиваленты прямой формы реализации, но они более устойчивы и в них минимизируются эффекты, связанные с арифметическими ошибками конечной разрядности данных.

Первая прямая форма биквадратного звена, представленная на рис.6.32, требует использования четырех регистров. Эта конфигурация может быть заменена эквивалентной схемой, представленной на рис.6.33, которая называется второй прямой формой реализации и требует использования только двух регистров. Можно показать, что уравнения, описывающие биквадратный БИХ-фильтр второй прямой формы реализации, такие же, как и уравнения первой прямой формы реализации. Как и в случае КИХфильтра, система обозначений при изображении БИХ-фильтра часто упрощается, как показано на рис.6.34.

БИКВАДРАТНЫЙ БИХ-ФИЛЬТР ФОРМА 2

x(n)

Σ

b0

Σ

y(n)

 

 

 

 

z–1

 

 

 

 

–a1

b1

 

 

 

 

z–1

 

 

 

 

–a2

b

2

 

 

 

 

 

 

 

Приводится к такому же уравнению, как для первой прямой формы: y(n) = b0x(n) + b1x(n–1) + b2x(n–2) – a1y(n–1) – a2y(n–2)

Требует только 2 элемента задержки (регистра)

Рис. 6.33

28

a

УПРОЩЕННАЯ СХЕМА БИКВАДРАТНОГО БИХ-ФИЛЬТРА

x(n)

b0

y(n)

 

 

z–1

 

–a1

b1

 

–a2

z–1

 

b2

 

x(n)

b0

y(n)

 

–a1

z–1

 

b1

 

–a2

z–1

 

b2

 

Рис. 6.34

МЕТОДЫ ПРОЕКТИРОВАНИЯ БИХ-ФИЛЬТРОВ

Популярный метод проектирования БИХ-фильтра сводится к тому, что сначала проектируется эквивалентный аналоговый фильтр, а затем функция передачи H(s) преобразуется математически в z-область, H(z). Проектирование фильтров более высоких порядков выполняется каскадированием биквадратных звеньев. Наиболее популярными аналоговыми фильтрами являются фильтры Баттерворта, Чебышева, эллиптические и Бесселя (см. рис.6.35). Существует множество программ САПР, способных генерировать функцию передачи фильтра, заданную с помощью преобразования Лапласа.

Фильтр Баттерворта, не имеющий нулей частотной характеристики, (также называемый фильтром с максимально плоской характеристикой), не создает пульсаций (неравномерности) в полосе пропускания и в полосе задержки, то есть обладает монотонной характеристикой в обеих полосах. Фильтр Чебышева 1-го рода имеет более быстрый спад частотной характеристики, чем фильтр Баттерворта (при равном порядке), и создает пульсации (неравномерность) в полосе пропускания. Реже используются фильтры Чебышева 2-го рода, имеющие пульсации (неравномерность) в полосе задержки, а не в полосе пропускания.

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

Наконец, фильтр Бесселя (Томпсона), который не имеет нулей частотной характеристики, обладает оптимальной импульсной характеристикой и линейной фазовой характеристикой, но имеет худший спад частотной характеристики из всех типов обсуждавшихся фильтров при том же числе полюсов (порядке).

29

a

ОБЗОР ПОПУЛЯРНЫХ АНАЛОГОВЫХ ФИЛЬТРОВ

Баттерворта Нет нулей частотной характеристики, нет пульсаций в полосе

пропускания и задержки Максимально плоская характеристика (быстрый спад без пульсаций)

Чебышева 1-го рода Нет нулей частотной характеристики, пульсации в полосе

пропускания, нет пульсаций в полосе задержки Более короткая область перехода, чем у фильтра Баттерворта для данного порядка

Фильтр 2-го рода имеет пульсации в полосе задержки, нет пульсаций в полосе пропускания

Эллиптический (Кауэра)

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

Фазовая характеристика хуже Бесселя (Томпсона)

Нет нулей частотной характеристики, нет пульсаций в полосе пропускания и задержки Оптимизирован по линейной фазовой и импульсной характеристикам

Самая длинная переходная характеристика из всех фильтров данного порядка

Рис. 6.35

Все вышеперечисленные типы аналоговых фильтров описаны в литературе, их преобразования по Лапласу H(s) доступны либо из таблиц, либо могут быть получены с помощью средств САПР. Существует три метода преобразования изображения по Лапласу в z-изображение: метод инвариантности импульсной характеристики, билинейное преобразование и согласованное z-преобразование. Результирующее z-

изображение может быть преобразовано в коэффициенты биквадратного БИХ-фильтра. Эти методы достаточно распространены в математике и в дальнейшем не будут обсуждаться.

Подход САПР при проектировании БИХ-фильтра подобен программе ПарксаМакклиллана, используемой для КИХ-фильтров. Эта методика использует алгоритм Флетчера-Пауэла (Fletcher-Powell).

При вычислении производительности специального процессора DSP, предназначенного для реализации БИХ-фильтров, необходимо исследовать эталонные требования эффективности вычислений для биквадратного звена фильтра. Для получения выходного отсчета биквадратного фильтра при его реализации на базе семейства процессоров ADSP21XX требуется семь командных циклов. Для DSP-процессора ADSP-2189M, обладающего быстродействием 75 MIPS, это соответствует 7*13,3 нс = 93 нс, что дает максимально возможную частоту дискретизации 10 MSPS (в пренебрежении дополнительными операциями).

30

Соседние файлы в папке Analog Devices