Дата последнего обновления файла 21.12.2008

Цифровые фильтры

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


Рисунок 1. Идеализированная амплитудно-частотная характеристика коэффициента передачи фильтра

На этом рисунке приведена амплитудно-частотная характеристика фильтра, выделяющего нужную нам полосу частот. Однако мы знаем, что операция фильтрации (выделения полезной части данных) в частотной области эквивалентна операции вычисления свёртки во временной области и наоборот:

где S(f) - спектр сигнала
    s(t) - временная реализация сигнала
    G(f) - частотная характеристика полосового фильтра
    g(t) - импульсная характеристика полосового фильтра
    L    - длина импульсной характеристики полосового фильтра

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

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

Рассмотрим структурную схему устройства, способного вычислять операцию свёртки (цифровой фильтр). Эта схема приведена на рисунке 2.


Рисунок 2. Структурная схема устройства, способного вычислять операцию свёртки

Давайте проверим, как будет реагировать это устройство на одиночный импульс единичной амплитуды, поданный на его вход. Для наглядности рассуждений возьмем импульсную характеристику одиночного колебательного контура. Эта характеристика приведена на рисунке 3.


Рисунок 3. Форма импульсной характеристики колебательного контура

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

Частотная характеристика фильтра, обладающего импульсной характеристикой, соответствующей рисунке 3, приведена на рисунке 4. По оси абсцисс на этом рисунке приведена частота в кГц, а по оси ординат — коэффициент передачи фильтра в дБ.


Рисунок 4. Форма частотной характеристики фильтра

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

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

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

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

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

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

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

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

Литература:

  1. Микушин А.В., Сажнев А.М., Сединин В.И. Цифровые устройства и микропроцессоры. СПб, БХВ-Петербург, 2010.
  2. Куприянов М. C. Матюшкин Б. Д. Цифровая обработка сигналов. — 2-е. — СПб: Политехника, 2000. — 592 с.
  3. Шило В. Л. Популярные цифровые микросхемы. М, Радио и связь, 1987.
  4. Проектирование цифровых фильтров (exponenta.ru/)

Вместе со статьей "Цифровые фильтры" читают:

Синтез комбинационных цифровых схем по произвольной таблице истинности
http://digteh.ru/digital/SintSxem.php

Двоичные сумматоры
http://digteh.ru/digital/sum.php

Матричные умножители
http://digteh.ru/digital/mul.php

Постоянные запоминающие устройства
http://digteh.ru/digital/rom.php

Микросхемы прямого цифрового синтеза
http://digteh.ru/digital/PolMod.php


Автор Микушин А. В. All rights reserved. 2001 ... 2017

Предыдущие версии сайта:
http://neic.nsk.su/~mavr
http://digital.sibsutis.ru/

Поиск по сайту сервисом Яндекс

Поиск по сайту сервисом ГУГЛ

пЕИРХМЦ@Mail.ru


Rambler's Top100