- •Оглавление
- •1. Общие вопросы цифровой обработки сигналгов
- •1.1. Основные расчетные алгоритмы для цифровых фильтров
- •2. Дискретные линейные системы
- •2.1. Модель дискретной линейной системы
- •2.2. Линейное разностное уравнение первого порядка
- •2.3. Частотная характеристика цепи первого порядка
- •2.4. Геометрическая интерпретация частотной характеристики
- •2.6. Обратное z-преобразование
- •2.7. Теорема о свертке
- •2.8. Теорема о комплексной свертке
- •2.9. Решение разностных уравнений первого порядка с помощью z-преобразования
- •2.10. Решение разностных уравнений второго порядка с помощью z-преобразования
- •2.11. Двустороннее z-преобразование
- •2.12. Цепи для разностного уравнения второго порядка
- •3. Расчет цифровых фильтров в частотной области
- •3.1. Синтез цифровых фильтров
- •3.2. Различные методы расчета цифровых фильтров
- •3.3. Применение принципа инвариантности импульсной характеристики
- •3.4. Коэффициент передачи цифровых резонаторов
- •3.5. Расчет цифровых фильтров на основе непрерывных фильтров с нулями на бесконечности
- •3.6. Определение цифрового фильтра с помощью квадрата модуля передаточной функции
- •3.7. Расчет цифровых фильтров путем билинейного преобразования функции непрерывного фильтра
- •3.8. Фильтры на основе частотной выборки
- •3.9 Метод частотной выборки
- •4. Эффекты квантования в цифровых фильтрах
- •4.1. Постановка задачи
- •4.2. Ошибки, вызываемые неточными значениями постоянных параметров
- •4.3. Ошибки, вызываемые аналого-цифровым преобразованием
- •4.4. Ошибки, вызываемые квантованием произведений
- •4.5. Эффект мертвой зоны
- •4.6. Формулы для шума округления при различных реализациях цифровых цепей
- •4.7. Пример. Различные структуры цепи с двумя полюсами и одним нулем
- •5. Дискретные преобразования фурье
- •5.1. Дискретное преобразование Фурье
- •5.2. Алгоритм Герцеля
- •5.3. Быстрое преобразование Фурье
- •Прореживание по времени
- •Прореживание по частоте
- •5.4. Соотношение между прореживанием по времени и прореживанием по частоте
- •Заключение
- •394026 Воронеж, Московский просп., 14
1. Общие вопросы цифровой обработки сигналгов
1.1. Основные расчетные алгоритмы для цифровых фильтров
В настоящее время большое значение придается цифровой фильтрации и дискретному преобразованию Фурье (ДПФ), двум основным расчетным алгоритмам обработки сигналов. Это не означает, однако, что они являются единственными алгоритмами, представляющими интерес: например, в гл. 5 упоминается несколько нелинейных процессов, а в гл. 8 большое внимание уделяется логарифмированию. Для иллюстрации практических инженерных проблем, возникающих при проектировании системы цифровой обработки сигналов, в этом разделе мы ограничимся примерами фильтрации и ДПФ.
Предположим, что заданный цифровой фильтр определяется характеристиками, описывающими его в частотной области, и нам нужно написать программу или спроектировать специализированную цифровую логическую схему для решения требуемого расчетного алгоритма. Во-первых, должно быть понято, что существует много возможных алгоритмов, приводящих к теоретически идентичным фильтрам*). Здесь следует различать три больших класса таких алгоритмов, к которым мы относим (1) свертку, (2) рекурсию**) и (3) преобразование Фурье. В зависимости от конкретных особенностей фильтра наиболее желательной может быть одна из этих трех реализаций. Теперь определим в несколько эвристических выражениях характер этих алгоритмов.
Рассмотрим сигнал . Для простоты рассмотрения ограничим условием, что он равен нулю при , так что сигнал состоит из последовательности чисел и т. д. Постоянная T является интервалом дискретизации, поэтому при таком обозначении неявно подразумевается, что может быть получено путем взятия отсчетов у непрерывного сигнала через равные промежутки времени Т, т. е. в моменты времени 0, Т, 2Т и т. д. При работе в реальном масштабе времени и для удобства в системах моделирования, которые, в конечном счете, также должны работать в реальном масштабе времени, в формулировку сигнала желательно ввести Т в явной форме. При сглаживании данных, когда физическое время несущественно (например, двумерная пространственная фильтрация фотоснимков), T может быть принято равным единице, так чтобы сигнал являлся функцией только номера отсчета.
Линейный цифровой фильтр теперь можно определить с помощью принципа суперпозиции следующим образом:
(1.1)
Численно выходная последовательность представляет собой взвешенную сумму всех предыдущих значений входной последовательности. Веса определяют фильтр. Как можно видеть из (1.1), если на входе в частном случае действует последовательность 1, 0, 0, 0, ..., то выходная последовательность будет точно равна . В этой книге нас будут интересовать только устойчивые цифровые фильтры; следовательно, если входная последовательность ограничена, то выходная последовательность также должна быть ограниченной. Можно показать, что необходимым и достаточным условием устойчивости является
(1.2)
Неравенство (1.2) удовлетворяется, если отклик на единичный импульс усекается, т. е. если =0 всюду, кроме . Оно может также удовлетворяться при откликах на единичный импульс неограниченной длительности, например, при . В последнем случае расчетный алгоритм, определяемый выражением (1.1), иногда становится практически нереализуемым, так как с возрастанием n требуется проводить все большее количество расчетов для каждого последующего значения выходной последовательности. Так как (1.2) означает, что последовательность , даже если она теоретически имеет бесконечную длительность, все же стремится к нулю при достаточно большом n, то выходную последовательность можно вычислить приближенно с помощью (1.1) путем простого усечения . Такой эмпирический подход к вычислению выходной последовательности в общем случае мало пригоден, и поэтому были разработаны основы строгой теории, применительно к фильтрам с усеченной импульсной характеристикой. Чем меньше длительность импульсной характеристики, тем эффективнее вычисление, предусмотренное (1.1). Кайзер рассмотрел много полезных методов проектирования цифровых фильтров в частотной области, используй фильтры с усеченной импульсной характеристикой.
Второй основной расчетный алгоритм базируется на теории линейных разностных уравнений с постоянными коэффициентами. Простым примером служит уравнение
(1.3)
где К—постоянная, меньшая единицы. Алгоритм реализуется путем вычисления каждого последующего выходного отсчета по предыдущему выходному отсчету и самому последнему поступившему входному отсчету сигнала . В более общем случае могут быть написаны программы или построена аппаратура для решения систем линейных разностных уравнений, каждое из которых имеет следующий вид:
(1.4)
Уравнения (1.3) и (1.4) определяют расчетные алгоритмы, дающие решение для следующих друг за другом значений п. Такие уравнения могут быть исследованы теоретически как линейные динамические системы, и, в частности, отклик этих систем на дискретные синусоидальные входные сигналы может быть выражен с помощью коэффициентов и .
Теория, изложенная в гл. 2 и 3, позволяет проектировщику составить ряд разностных уравнений, обеспечивающих требуемую частотную характеристику, и, в частности, определить требуемую степень сложности алгоритма, так как обычно, чем строже требования, предъявляемые к фильтру (крутой скат характеристики, хорошее приближение к некоторой идеальной характеристике и т.д.), тем больше коэффициентов должно содержаться в разностных уравнениях. Tax как выбор разностных уравнений вообще не является единственным, то возможны многие варианты структуры фильтра; дальнейший выбор возможен с помощью положений, указанных а гл. 4, в которой проблема синтеза связывается с эффектами квантования. В этой главе будет показано, что длину регистров памяти часто можно уменьшить, если разумно выбрать специфическую конфигурацию фильтра.
Третий основной алгоритм базируется на дискретном преобразовании Фурье (ДПФ). Каким образом можно использовать ДПФ для вычислений, эквивалентных (1.1), неочевидно, поэтому этот вопрос будет подробно рассмотрен в гл. 7. Как будет видно, возникающая при применении ДПФ трудность связана с тем, что произведение двух дискретных преобразовании Фурье в частотной области эквивалентно круговой свертке во временной области, в то время как (1.1) является линейкой сверткой; этой трудности можно избежать с помощью метода соответствующего разбиения, описанного в гл. 7. Пренебрегая пока этим аспектом вычисления, опишем алгоритм ДПФ для синтеза цифрового фильтра.
ДПФ для сигнала определяется следующим образом:
(1.5)
В этом уравнении и , где N — число отсчетов сигнала, подлежащих преобразованию. Чтобы показать, как можно использовать (1.5) для алгоритма цифрового фильтра, приведем теорему о свертке, доказательство которой дается и гл. 6. Если есть ДПФ для , а есть ДПФ для , то произведение является ДПФ для свертки и :
(1.6)
где означает по модулю N. Если предположить, что эта круговая свертка может быть эквивалентна линейной свертке, то процедуру вычисления можно описать в общих чертах следующий образом.
1. Вычислить ДПФ для сигнала . Обозначим его через .
2. Умножить на , где представляет собой требуемую частотную характеристику фильтра на частотах .
3. Вычислить обратное ДПФ для произведения . Это дает требуемый выходной сигнал
(1.7)
Почти во всех случаях при практическом применении этого алгоритма используется быстрое преобразование Фурье (БПФ). При правильном использовании этот метод может применяться для синтеза фильтров с импульсной характеристикой конечной или бесконечной длительности*). Другими словами, любой фильтр, который может быть реализован с помощью вычислений (1.1) или (1.4), может быть также синтезирован с помощью алгоритма БПФ В тех случаях, когда импульсная характеристика фильтра имеет довольно большую длительность, скажем равна длительности нескольких сотен отсчетов, этот метод с точки зрения объема вычислений почти всегда эффективнее прямой свертки (1.1).
Выше была сделана попытка показать, что в распоряжении проектировщика цифровых фильтров имеется довольно иного методов расчета и синтеза. Первоочередной задачей глав 2, 3, 4, 6 и 7 является теоретическое обоснование этих методов.