Uploaded by semchk98

Лайонс Цифровая обработка сигналов

advertisement
ВТОРОЕ
ИЗДАНИЕ
ЦИФРОВАЯ
ОБРАБОТКА
СИГНАЛОВ
ВТОРОЕ
ИЗДАНИЕ
Understanding Digital
Signal Processing
Richard G. Lyons
PRENTICE
HALL
PTR
PRENTICE HALL
Professional Technical Reference
Upper Saddle River, New Jersey 07458
www.phptr.com
Цифровая
обработка сигналов
Ричард Лайонс
Перевод с английского
под редакцией А.А. Бритова
4
Москва
Издательство БИНОМ
2006
УДК 621.372
ББК 32.811.3
ЛІ 8
Ричард Лайонс
Цифровая обработка сигналов: Второе издание. Пер. с англ. — М.: ООО
«Бином-Пресс», 2006 г. — 656 с.: ил.
Книга представляет собой учебник по цифровой обработке сигналов, написанный по­
нятным языком, снабженный достаточный количеством иллюстраций и наглядных при­
меров. Она содержит краткое введение в необходимый математический аппарат (в том
числе и ^-преобразование, преобразования Лапласа и Гильберта, статистику), в принципы
машинного представления сигналов (двоичные форматы), рассматривает вопросы перио­
дической дискретизации. Отдельные главы посвящены дискретному и быстрому преобра­
зованиям Фурье. В разделе цифровой фильтрации подробно рассмотрены фильтры с ко­
нечной и бесконечной импульсной характеристикой, фильтры на основе частотной вы­
борки и интерполированные КИХ-фильтры. Описаны квадратурные сигналы и комплекс­
ное понижающее преобразование. Разобраны принципы преобразования частоты дискре­
тизации, необходимые для проектирования полифазных и каскадированных интеграторов-гребенчатых фильтров. Усреднению сигналов (во временной и частотной области) —
когерентному и некогерентному — посвящена отдельная глава. Значительную часть кни­
ги составляет коллекция советов и «маленьких хитростей» в области цифровой обработки
сигналов. Полезен начинающим специалистам и терминологический словарь, вынесен­
ный в приложение.
Книга отличается четкостью построения, тщательной выверенностью примеров и сба­
лансированностью сложности/доступности материала. Для чтения ее достаточно иметь
базовые знания из вузовского курса математического анализа.
Все права защищены. Никакая часть этой книги не может быть воспроизведена в любой форме
или любыми средствами, электронными или механическими, включая фотографирование, маг­
нитную запись или иные средства копирования или сохранения информации без письменного раз­
решения издательства.
Authorized translation from the English language edition, entitled Understanding Digital Signal Process­
ing, 2nd Edition, by Lyons, Richard G., published by Pearson Education, Inc., publishing as Prentice Hall
PTR, Copyright © 2004.
ISBN 5-9518-0149-4 (pyc.)
ISBN 0-13-108989-7 (англ.)
© Pearson Education Inc., 2004
О Издание на русском языке.
Издательство Бином, 2006
Содержание
П редисловие......................................................................................................13
Глава 1. Дискретные последовательности и с и с т е м ы ................................21
1.1. Дискретные последовательности и связанные с ними
обозначения.......................................................................................... 22
1.2. Мгновенные значения, амплитуда и мощность сигнала.................28
1.3. Условные обозначения операций обработки сигналов.............. 29
1.4. Введение в дискретные линейные инвариантные
во времени системы............................................................................ 32
1.5. Дискретные линейные с и с т е м ы ......................................................32
1.6. Инвариантные во времени с и с т е м ы ............................................. 36
1.7. Свойство коммутативности линейных инвариантных
во времени систем ............................................................................ 38
1.8. Анализ линейных инвариантных во времени систем.................39
Глава 2. Периодическая д и с к р ети зац и я ................................................... 41
2.1. Наложение: неоднозначность представления сигнала
в частотной области......................................................................... 41
2.2. Дискретизация низкочастотных сигналов.....................................46
2.3. Дискретизация полосовых сигналов............................................. 49
2.4. Инверсия спектра при полосовой дискретизации.......................58
Глава 3. Дискретное преобразовании Ф у р ь е ......................................... 63
3.1. Смысл формулы Д П Ф ...................................................................... 64
3.2. Симметрия Д П Ф ...............................................................................75
3.3. Линейность Д П Ф ...............................................................................77
3.4. Модули Д П Ф ........................................................... .. ...................... 78
3.5. Частотная ось Д П Ф ......................................................................... 79
3.6. Теорема о с д в и г е ...............................................................................80
3.7. Обратное Д П Ф ..................................................................................82
3.8. Утечка Д П Ф ....................................................................................... 83
6
Цифровая обработка сигналов
3.9. О к н а ..................................................................................................... 90
3.10. Гребешковые искажения Д П Ф ..................................................... 97
3.11. Разрешающая способность ДПФ, дополнение нулями
и дискретизация в частотной области ...........................................98
3.12. Коэффициент улучшения Д П Ф ................................................103
3.13. ДП Ф прямоугольных функций...................................................106
3.14. Частотный отклик ДП Ф на комплексный входной сигнал . 125
3.15. Реакция ДПФ на действительный косинусоидальный
с и г н а л ............................................................................................. 129
3.16. Реакция отдельного бина ДПФ на действительный
косинусоидальный с и г н а л ........................................................ 130
3.17. Интерпретация Д П Ф .............. .................................................... 132
Глава 4. Быстрое преобразование Фурье.............................................. 139
4.1. Связь БП Ф с Д П Ф ......................................................................... 140
4.2. Советы по практическому использованию Б П Ф ....................141
4.3. Программы Б П Ф ............................................................................ 145
4.4. Разработка алгоритма БП Ф по основанию 2 ............................ 145
4.5. БИТ-реверсивная перестановка входных и выходных
данных Б П Ф .....................................................................................152
4.6. Структуры бабочек БП Ф по основанию 2 ..................................154
Глава 5. Фильтры с импульсной характеристикой конечной длины. 163
5.1. Введение в К И Х -ф и л ь тр ы ........................................................... 164
5.2. Свертка в КИ Х -фильтрах.............................................................. 169
5.3. Проектирование КИХ-фильтра нижних ч а с т о т ...................... 179
5.4. Проектирование полосовых К И Х -ф ильтров............................ 193
5.5. Проектирование КИХ-фильтров верхних частот.......................194
5.6. Проектирование КИХ-фильтров методом замен Ремеза . . . . 197
5.7. Полуполосные К И Х -ф ильтры ..................................................... 199
5.8. Фазо-частотная характеристика К И Х -ф и льтров....................200
5.9. Обобщенное описание дискретной свертки................. , . . . . 205
Глава 6. Фильтры с импульсной характеристикой бесконечной
длины....................................................... ........................................219
6.1. Введение в фильтры с бесконечными импульсными
характеристикам и......................................................................... 220
6.2. Преобразование Л а п л а с а ..............................................................223
6.3. Z-преобразование...................................................................
235
Содержание
7
6.4. Метод инвариантного преобразования импульсной
характеристики...............................................................................249
6.5. Метод проектирования БИХ-фильтров с помощью
билинейного преобразования..................................................... 263
6.6. Оптимизационный метод проектирования БИХ-фильтров. . 272
6.7. Подводные камни реализации БИХ-фильтров......................... 274
6.8. Улучшение БИХ-фильтров с помощью каскадных
структур.............................................................................................276
6.9. Краткое сравнение КИХ- и БИХ-фильтров...............................281
Глава 7. Специальные КИХ-фильтры нижних ч асто т..........................285
7.1. Фильтры на основе частотной выборки: утраченное
искусство.......................................................................................... 286
7.2. Интерполированные КИХ Ф Н Ч ................................................320
Глава 8. Квадратурные с и гн а л ы ................................................................335
8.1. Почему нас так занимают квадратурные си гн ал ы ?.................336
8.2. Запись комплексных ч и с е л ........................................................... 336
8.3. Представление действительных сигналов с помощью
комплексных фазоров...................................................................... 342
8.4. Несколько мыслей по поводу отрицательной частоты ........... 345
8.5. Квадратурные сигналы в частотной о б л ас ти ............................ 347
8.6. Полосовые квадратурные сигналы в частотной области . . . . 349
8.7. Комплексное понижающее преобразование............................... 351
8.8. Пример комплексного понижающего преобразования........... 354
8.9. Альтернативый метод понижающего преобразования........... 356
Глава 9. Дискретное преобразование Гильберта................................... 361
9.1. Определение преобразования Г и льб ер та..................................362
9.2. Почему нас так занимает преобразование Гильберта?........... 364
9.3. Импульсная характеристика преобразователя Гильберта . . . 369
9.4. Проектирование дискретного преобразователя Гильберта . . 371
9.5. Генерация аналитического сигнала во временной области . . 377
9.6. Сравнение методов генерации аналитических сигналов . . . . 379
Глава 10. Преобразование частоты д и скр ети зац и и .............................381
10.1. П рореж ивание.............................................................................. 382
10.2. И н терп оляц и я...............................................................................387
10.3. Объединение прореживания и и н терп оляц и и ...................... 389
10.4. Полифазные ф и л ь т р ы .................................................................391
10.5. Каскадные интеграторы-гребенчатые фильтры...................... 397
8
Цифровая обработка сигналов
Глава 11. Усреднение сигналов.................................................................411
11.1. Когерентное усреднение..............................................................412
11.2. Некогерентное у ср ед н ен и е........................................................ 418
11.3. Усреднение результатов быстрого преобразования Фурье . 421
11.4. Фильрующие свойства усреднения во временной области. . 429
11.5. Экспоненциальное усреднение...................................................430
Глава 12. Цифровые форматы данных и их роль в обработке
сигналов...................................................................................... 437
12.1. Двоичные форматы с фиксированной зап ято й ..................• . 438
12.2. Точность и динамический диапазон двоичных ч и сел ........... 444
12.3. Эффекты конечной длины слова двоичных чисел
с фиксированной за п я т о й ........................................................... 445
12.4. Двоичные форматы с плавающей зап ятой ...............................460
12.5. Двоичный формат с поблочно плавающей з а п я т о й .............. 465
Глава 13. Маленькие хитрости цифровой обработки сигналов. . . . 467
13.1. Перенос частоты без умножения................................................467
13.2. Быстрое приближенное вычисление длины в е к т о р а ........... 475
13.3. Взвеш ивание окном в частотной о б л а с т и ................................. 479
13.4. Быстрое умножение комплексных чисел..................................482
13.5. Эффективное вычисление БП Ф действительных
последовательностей....................................................................483
13.6. Вычисление обратного БП Ф с помощью прямого БП Ф . . . 494
13.7. Упрощенная структура КЙХ-фильтра....................................... 497
13.8. Уменьшение шума квантования А Ц П .....................................497
13.9. Методы испытаний аналого-цифровых преобразователей. . 503
13.10. Быстрая реализация КИХ-фильтров с помощью БП Ф . . . 507
13.11. Генерация нормально распределенных случайных
си гн алов.......................................................................................509
13.12. Фильтрация с нулевым сдвигом ф аз.......................................... 511
13.13. Повышение крутизны АЧХ КИХ-фильтров......................... 512
13.14. Интерполяция полосовых сигналов....................................... 514
13.15. Алгоритм локализации спектральных п и к о в ...................... 515
13.16. Вычисление поворачивающих множителей Б П Ф .............. 518
13.17. Обнаружение отдельного тона . . ...........................................520
13.18. Скользящее Д П Ф ...................................................................... 524
13.19. Увеличение масштаба БПФ по частоте..................................532
13.20. Практическая реализация анализатора спектра....................535
Содержание
9
13.21. Эффективная аппроксимация арктангенса............................... 538
13.22. Алгоритмы демодуляции частотно-модулированных
с и гн ал о в .......................................................................................... 540
13.23. Удаление постоянной составляющей............................................. 543
13.24. Усовершенствование интеграторов-гребенчатых
фильтров.......................................................................................... 546
13.25. Сглаживание импульсного ш ум а................................................ 551
13.26. Эффективное вычисление полиномов.....................................553
13.27. Проектирование КИХ-фильтров очень высокого
порядка.......................................................................................... 554
13.28. Интерполяция во временной области с помощью БПФ . . . 557
13.29. Перенос по частоте с помощью п рореж иван ия....................561
13.30. Автоматическая регулировка усиления (А Р У )........... ’. . . 561
13.31. Оценка огибающей...................................................................... 563
13.32. Квадратурный генератор........................................................... 565
13.33. Двухрежимное усреднение........................................................ 568
Приложение А. Арифметика комплексных ч и с е л ................................ 573
А.1. Графическое представление действительных
и комплексных ч и сел ....................................................................573
А.2. Арифметическое представление комплексных ч и с е л ........... 574
А.З. Арифметические операции над комплексными числами . . . 576
А.4. Некоторые практические особенности использования
комплексных чисел......................................................................... 580
Приложение В. Сумма геометрической прогрессии.............................583
Приложение С. Инверсия времени и Д П Ф .............................................585
Приложение D. Среднее, дисперсия и стандартное отклонение. . . 589
D.I. Статистические параметры........................................................... 589
D.2. Стандартное отклонение или СКЗ непрерывного
синусоидального с и г н а л а ........................................................... 592
D.3. Среднее и дисперсия случайных ф у н кц и й ...............................593
D.4. Нормальная функция плотности вероятности......................... 596
Приложение Е. Децибелы (дБ и д Б м )...................................................... 597
E.1. Использование логарифмов
для сравнения мощности сигналов............................................. 597
Е.2. Некоторые полезные числа, связанные с децибелам и........... 602
Е.З. Задание абсолютной мощности в децибелах............................ 603
10
Цифровая обработка сигналов
Приложение F. Терминология в области цифровой фильтрации . . 605
Приложение G. Вывод соотношений для фильтров на основе
частотной выборки........................................................615
G.I. Частотная характеристика гребенчатого ф и л ь т р а .................615
G.2. Частотная характеристика отдельного комплексного
Ф О Ч В ................................................................................................616
G.3. ФЧХ многосекционного комплексного Ф О Ч В .......................617
G.4. Частотная характеристика многосекционных
комплексных Ф О Ч В ....................................................................618
G.5. Передаточная функция действительного Ф ОЧВ . . ...............620
G.6. Частотная характеристика Ф ОЧВ Типа I V ............................ 622
Приложение Н. Таблицы расчета фильтров на основе частотной
выборки.......................................................................... 625
Предметный указатель............................................................................. 641
Я посвящаю эту книгу моим дочерям Джулии и Мередит, я хотел бы быть с
вами; моей матери Рут за то, что заставляла меня заканчивать домашние за­
дания; моему отцу Грэди, который не знал, за что взялся, когда построил тот
верстак в подвале; моему брату Рею за то, что сделал всех нас лучше; моему
брату Кену, который преуспел там, где я потерпел неудачу; моей сестре Нэнси,
которая постоянно мешала нам; и опытным людям из телеконференции сотр.dsp
сети Usenet, которые задают хорошие вопросы и дают наилучшие ответы. И, на­
конец, Сайджи Пардула (Batgirl), без вашей поддержки эта книга не могла бы
появиться на свет.
Об авторе
Ричард Лайонс (Richard Lyons) работает системным инженером-консультантом
и преподавателем в Besser Associates (организация, осуществляющая повышение
квалификации и переподготовку специалистов в области беспроводной связи) в Маунтейн Вью (Mountain View), Калифорния. Он получил степень бакалавра в области
электротехники (BSEE - Bachelor of Science in Electrical Engineering) в Университе­
те Акрона и прошел одногодичный курс дополнительных разделов математики для
инженеров в университете Джона Хопкинса (в лаборатории прикладной физики),
округ Колумбия. Лайонс был ведущим инженером-разработчиком множества сис­
тем обработки сигналов как для Агентства национальной безопасности (National Se­
curity Agency, NSA), так и для компании TRW Inc. (теперь это корпорация Нортроп
Грумман, Northrop Grumman Corp.). В его обязанности входили: проектирование
систем; разработка, тестирование и установка. Он специализировался в области
оценки качества алгоритмов обработки сигналов и тестирования систем.
Как преподаватель в Besser Associates и в Калифорнийском университете Santa
Cruz Extension, Ричард организовал семинары по цифровой обработке сигналов и
практические занятия в рамках многочисленных технических конференций, а так­
же в таких компаниях как Моторола (Motorola), Локхид Мартин (Lockheed Mar­
tin), Тексас Инструменте (Texas Instruments), Конексант (Conexant), Нортроп
Грумман (Northrop Grumman), Люсент (Lucent), Нокиа (Nokia), Квалкомм (Q u­
alcomm), Ханивелл (Honeywell), Нейшенел Семикондактор (National Semicon­
ductor), Дженерал Дайнемикс (General Dynamics) и Сименс (Seimens) (теперь
это Инфинион, Infinion).
Автор многочисленных статей по обработке сигналов, он является заместите­
лем редактора журнала IEEE Signal Processing, где он создал и редактирует ко­
лонку «Маленькие хитрости обработки сигналов» («DSP Tips & Tricks»). Лайонс
является членом почетного общества Эта Каппа Ню (Eta Карра Nu) и учится на­
носить прямые удары на бильярде.
К нему можно обратиться по адресу: г . ly o n s @ ie e e . огд.
Предисловие
Эта книга —развитие первого учебника «Цифровая обработка сигналов», издан­
ного в 1997 году, и ее задача, как и первого издания, состоит в том, чтобы помочь на­
чинающим понять относительно новую технологию цифровой обработки сигналов
(ЦОС). Во второе издание добавлены следующие материалы:
□
расширенное и более ясное изложение избранных вопросов спектрально­
го анализа и цифровой фильтрации, охваченных в первом издании, что де­
лает этот материал более ценным для тех, кто начинает изучать ЦОС;
□
расширенное освещение квадратурных (комплексных 1/0.) сигналов,
во многих случаях мы использовали трехмерные графики времени и
частоты, чтобы улучшить их описание и придать физический смысл
этим двухмерным сигналам;
□
с новым акцентом на квадратурные сигналы был добавлен материал,
описывающий преобразование Гильберта и его практическое примене­
ние для генерации квадратурных сигналов;
обсуждение фильтров на основе частотной выборки, интерполирован­
ных КИХ-фильтров и интеграторов-гребенчатых фильтров, которое
обеспечивает этим важным типам фильтров более широкое освещение,
чем они получили в прошлой книге по ЦОС;
значительно расширена популярная глава «Маленькие хитрости циф­
ровой обработки сигналов»;
пересмотрена терминология с целью сделать ее более совместимой с со­
временным языком цифровой обработки сигналов.
□
□
□
Стало традицией рассказывать в этой части предисловия к учебнику по
ЦОС читателям, почему им следует учить цифровую обработку сигналов. Мне
не нужно рассказывать вам о том, насколько важна ЦОС в современном мире
техники: вы уже это знаете.
Я лишь скажу, что будущее электроники —в ЦОС, и с этой книгой вы не оста­
нетесь позади.
14
Предисловие
Изучение цифровой обработки сигналов
Изучение основ и языка цифровой обработки сигналов не требует глубоких
аналитических навыков либо всесторонних знаний по математике. Все, в чем вы
нуждаетесь, — это немного опыта в элементарной алгебре, знание того, что такое
синусоидальный сигнал, эта книга и энтузиазм. Это может показаться невероятным,
особенно если вы просто полистали страницы этой книги и увидели рисунки и
уравнения, которые выглядят довольно сложными. Содержимое здесь, вы гово­
рите, выглядит подозрительно, как материал в технических журналах и учебни­
ках, который в прошлом успешно сопротивлялся вашим попыткам понять его.
Это не просто еще одна книга по цифровой обработке сигналов.
Цель этой книги —дать ненавязчивые пояснения, сопровождаемые иллюстра­
циями так, что вы не просто можете, а должны понять материал1. Помните Тот
первый раз, когда вы увидели двух людей, играющих в шахматы? Наверное, игра
выглядела загадочной и ставящей в тупик. Как вы знаете, ни один отдельный шах­
матный ход не является сложным. Имея немного терпения, различные шахматные
ходы можно выучить очень легко. Сложность игры состоит в том, чтобы решить,
какую последовательность ходов сделать и когда. Также дело обстоит и с понима­
нием цифровой обработки сигналов. Сначала мы изучаем основные правила и
процессы, а потом учимся практически использовать их комбинации.
Если изучение цифровой обработки сигналов так легко, тогда почему этот
предмет имеет репутацию сложного для понимания? Ответ частично лежит в
том, как материал обычно преподносится в литературе. Тяжело передавать тех­
ническую информацию с ее математическими тонкостями в письменной форме.
Одно дело писать уравнения, но другое —в целом объяснить их значение с прак­
тической точки зрения, и именно в этом цель этой книги.
Слишком часто письменное объяснение теории цифровой обработки сигналов
выступает в одной из двух форм: либо происходят математические чудеса, и чита­
телю просто дается короткое и легкое уравнение без дальнейшего объяснения,
либо на читателя обрушивается поток уравнений с комплексными переменны­
ми и такими фразами, как «очевидно, что» и «с разумным применением свойст­
ва однородности». В защиту этих работ следует сказать, что их авторы обычно
дают необходимую информацию, но читатель часто должен буквально брать в
руки кирку и лопату, напяливать шахтерский шлем и стараться выкопать зерна
знаний из горы математических выражений. (Эта книга представляет собой резу­
льтаты нескольких плодотворных горных экспедиций.) Сколько раз вы следили
за выводом уравнения, после которого автор утверждает, что он собирается про­
иллюстрировать уравнение примером, который оказывается просто другим урав­
нением? Несмотря на то, что математика необходима для описания цифровой
обработки сигналов, я постарался избежать подавления ею читателя, потому что
рецепт технического писания, который слишком насыщен уравнениями, тяжело
усваивается начинающими.
1 «Здесь мы имеем возможность более ясно изложить то, что уже было сказано» (Рене
Декарт, 1596-1650).
Путешествие
15
Цель этой книги выражена в замечании Е.Б Уайта из введения к его книге
«Элементы стиля» (Издательство «Макмиллан», Нью-Йорк, 1959 год).
«Уилл почувствовал, что читатель большую часть времени испыты­
вает серьезные затруднения, человек барахтается в болоте, и каждый,
кто пытается писать по-английски, обязан быстро осушить это болото
и вытащить человека на сухую землю или, по крайней мере, бросить
ему веревку».
Я старался избежать традиционных отношений «преподаватель-студент», сде­
лать чтение этой книги разговором с другом во время прогулки в парке. Я исполь­
зовал достаточно математики, чтобы развить базисное понимание теории и потом
проиллюстрировать теорию практическими примерами.
Путешествие
Изучение цифровой обработки сигналов —это не нечто такое, что вы осущест­
вляете, а путешествие, в которое вы отправляетесь. Когда вы достигаете понима­
ния какой-либо темы, появляются вопросы, которые побуждают вас исследовать
другие стороны цифровой обработки сигналов1. Вооруженные большими знания­
ми, вы, вероятно, начнете исследовать другие аспекты ЦОС, этот процесс может
оказаться очень похожим на следующую диаграмму. Эта книга —ваш туристиче­
ский путеводитель на первых шагах вашего путешествия.
Чтобы изучать материал этой книги, вам не нужен компьютер, но он непремен­
но вам поможет. Программы моделирования ЦОС позволяют начинающему изу­
чать теорию ЦОС посредством проверенного временем метода проб и ошибок2.
Особенно полезными будут программы построения графиков сигналов, быстрого
преобразования Фурье, анализа цифровых фильтров.
Когда вы будете изучать материал этой книги, не пугайтесь, если понимание
приходит медленно. Как учтиво заметил греческий математик Менехм Александ­
ру Великому, когда тот попросил быстро объяснить ему математику: «В матема­
тике нет царского пути». Менехм был уверен в своей правоте, когда говорил
Александру, что математику можно изучить только путем кропотливых занятий.
То же относится к изучению цифровой обработки сигналов. И еще, не беспокой­
тесь, если вам нужно будет прочитать материал дважды. Хотя понятия, обсуждае­
мые в этой книге, не такие сложные, как квантовая физика, не столь загадочные,
1 «Видите ли, я упорно продолжал это исследование по тому пути, по которому оно меня
вело. Это единственный путь, по которому, как я слышал, идет исследование. Я задал
вопрос, разработал метод получения ответа — и получил дополнительный вопрос.
Было возможно то или это? Вы не можете себе представить, что это значит для иссле­
дователя, какая интеллектуальная страсть овладевает им. Вы не можете представить
себе этот странный бесцветный восторг умственных желаний.» (Доктор Моро —врач и
вивисекционист, имеющий дурную репутацию, из «Острова доктора Моро» Г. Уэллса,
2 1896 год).
«Учиться следует, делая дело, поскольку, хотя вам кажется, что вы знаете, вы не знаете
наверняка до тех пор, пока вы это не попробуете» (Софокл, 496-406 до н. э.).
16
Предисловие
как слова песни «Луи Луи», не столь запутанные, как инструкции по сборке и
установке металлического гаража, они все-таки требуют определенных усилий
для усвоения. Они заслуживают вашего внимания и размышления.
Периодическая
дискретизация
Как можно проанализировать спектр
дискретизированного сигнала’
Как можно повысить
точность ДПФ’
Дискретное
преобразование Фурье
Как можно изменять частоту
дискретизации дискретных сигналов’
Как работает взвешивание
окном’
Как можно изменить
спектр сигнала’
Как можно улучшить
характеристики цифровых
фильтров’
Цифровые фильтры
Почему спектр дискретного
сигнала периодичен и что
вызывает утечку ДПФ’
Что является причиной пульсаций
АЧХ ЦФ в полосе пропускания’
Свертка
Как можно уменьшить шум в частотной
области и повысить чувствительность
при обнаружении сигналов’
Как можно усилить подавление шума
при усреднении’
Усреднение сигналов
Так что не торопитесь, читайте материал дважды, если это необходимо, потом
вы будете этому рады. Если вы проявите настойчивость, то для вас, цитируя Сью­
зан Б. Энтони, «Провал невозможен».
Что вас ожидает
Глава 1 начинается с введения условных обозначений, используемых в осталь­
ной части книги. В этой главе мы знакомим вас с понятием последовательностей
дискретных сигналов, показываем, как они относятся к непрерывным сигналам и
Что вас ожидает
17
показываем, как можно изображать эти последовательности во временной и час­
тотной областях. Кроме того, первая глава дает определение символов операций,
которые мы будем использовать при построении блок-схем для систем цифровой
обработки. Мы завершаем эту главу кратким введением в линейные системы и
увидим, почему линейность дает нам возможность использовать ряд мощных ма­
тематических средств анализа.
Глава 2 дает введение в периодическую дискретизацию — процесс, который в
цифровой обработке сигналов чаше всего неправильно понимают. Несмотря на то,
что процесс дискретизации аналогового сигнала понять легко, имеются математиче­
ские тонкости, которые требуют некоторого внимания. Начиная с простых примеров
дискретизации низкочастотных сигналов и продвигаясь постепенно к интересной
теме дискретизации полосовых сигналов, глава 2 дает объяснение и количественную
оценку неоднозначности (наложения), связанной с этим процессом.
Глава 3 посвящена одной из самых главных тем цифровой обработки сигналов —
дискретному преобразованию Фурье, которое используется в спектральном анализе.
Изложение начинается с подробных примеров, иллюстрирующих важные свойства
ДПФ и интерпретацию спектральных результатов ДПФ, переходит затем к теме
окон, которые используются для снижения утечки спектра ДПФ, и к обсуждению
коэффициента усиления ДПФ. Заканчивается глава подробным обсуждением раз­
личных форм преобразования прямоугольных функций, с которыми начинающий
специалист может встретиться в литературе. Последняя тема включена в главу, что­
бы объяснить и показать ДПФ действительных и комплексных синусоид.
Глава 4 охватывает новый алгоритм, который оказал сильное влияние на об­
ласть цифровой обработки сигналов, быстрое преобразование Фурье (БП Ф ).
Мы рассмотрим отношение популярного алгоритма БП Ф по основанию 2 к
ДПФ, дадим количественную оценку выигрыша в объеме вычислений при испо­
льзовании БПФ, покажем, почему БПФ работает именно так, как оно работает, и
рассмотрим различные структуры реализации БПФ. Глава 4 также содержит пе­
речень рекомендаций, которые помогут читателю использовать быстрое преобра­
зование Фурье на практике.
Глава 5 вводит вас в область цифровой фильтрации. Начиная с примеров про­
стого низкочастотного фильтра с импульсной характеристикой конечной длины
(КИХ), мы постепенно продвигаемся вперед, анализируя его амплитудно-частот­
ную и фазо-частотную характеристики. Затем мы узнаем, какое влияние на ха­
рактеристики КИХ-фильтров оказывают окна и как их можно использовать при
проектировании. Предлагаются методы преобразования КИХ-фильтров нижних
частот в высокочастотные и полосовые КИХ-фильтры. Мы знакомим вас с по­
пулярным методом замен Ремеза (Паркса-Маклеллана), используемым для про­
ектирования КИХ-фильтров, и даем пример его использования. В этой главе мы
знакомим читателя с процессом, который известен как свертка, и снимаем с него
покров таинственности. Приведя насколько простых примеров свертки, мы за­
вершаем главу 5 обсуждением мощной теоремы о свертке и объясняем, почему
она так полезна как качественный инструмент для понимания цифровой обра­
ботки сигналов.
Глава 6 посвящена второму классу цифровых фильтров, фильтрам с бесконеч­
ной импульсной характеристикой (БИХ-фильтрам). При обсуждении нескольких
18
Предисловие
методов проектирования БИХ-фильтров читателю предлагается мощный
инструмент анализа цифровой обработки сигналов, который называется г-преобразованием. Поскольку 2-преобразование тесно связано с непрерывным пре­
образованием Лапласа, в качестве подготовки к изучению 2 -преобразования мы
начинаем с самого начала, со свойств и использования преобразования Лапласа.
Мы увидим, как проектируются и реализуются БИХ-фильтры, и почему их ха­
рактеристики так отличаются от характеристик КИХ-фильтров. Чтобы показать,
при каких условиях стоит использовать те или другие фильтры, глава заканчива­
ется качественным сравнением ключевых свойств КИХ- и БИХ-фильтров.
Глава 7 представляет два специализированных типа цифровых фильтров, кото­
рые не получили достаточного освещения в традиционных учебниках по ЦОС.
Они называются фильтрами на основе частотной выборки и интерполированными
КИХ-филътрами и, обеспечивая улучшенную вычислительную эффективность
при реализации узкополосных ФНЧ, должны быть включены в наш арсенал ме­
тодов проектирования фильтров. Несмотря на то, что это КИХ-фильтры, их об­
суждение отложено до этой главы потому, что знакомство с 2 -преобразованием
(глава 6) делает особенности этих фильтров более легкими для понимания.
Глава 8 дает подробное описание квадратурных сигналов (их также называют
комплексными сигналами). Поскольку теория квадратурных сигналов приобрела
такое важное значение в последние годы как в анализе сигналов, так и в реализации
цифровых систем связи, она заслуживает отдельной главы. Используя трехмерные
иллюстрации, глава дает основательное физическое толкование математическим
обозначениям, преимуществам обработки и использованию квадратурных сигна­
лов. Особый акцент сделан на квадратурной дискретизации (которую называют
также комплексным понижающим преобразованием).
Глава 9 дает математически простое, но технически исчерпывающее описание
преобразования Гильберта —процесса, используемого для генерации квадратурного
(комплексного) сигнала из реального сигнала. В этой главе мы описываем особенно­
сти, поведение и метод проектирования практических преобразователей Гильберта.
Глава 10 предоставляет краткое введение в захватывающий и очень полезный про­
цесс преобразования частоты дискретизации (изменения частоты дискретизации с по­
мощью прореживания и интерполяции). Преобразование частоты дискретизации —
столь полезное для улучшения характеристик и уменьшения вычислительной слож­
ности многих схем обработки сигналов — по существу представляет собой упражне­
ние по проектированию фильтров нижних частот. В этой связи здесь описываются
полифазные и каскадированные интеграторы-гребенчатые фильтры.
Глава 11 освещает важную тему усреднения сигналов. Здесь вы узнаете, как
усреднение увеличивает точность измерения параметров сигнала благодаря сни­
жению уровня фонового шума. Это повышение точности называется улучшени­
ем, и в этой главе показано, как предсказать улучшение, связанное с усреднением
сигналов во временной и частотной областях. Кроме того, приводится объясне­
ние ключевых различий между когерентными и некогерентными методами
усреднения, подкрепленное примерами. В завершение главы рассматривается по­
пулярная схема, известная как экспоненциальное усреднение.
Благодарность
19
Глава 12 дает введение в различные форматы представления двоичных чисел, с
которыми читатель может столкнуться в современной обработке сигналов. Мы
определяем точность и динамический диапазон, присущие этим форматам, а также
указываем на некоторые подводные камни в их использовании. Наше исследова­
ние критически важной темы длины слова данных (в битах) естественно ведет к
обсуждению ограничений разрешающей способности аналого-цифровых преоб­
разователей (АЦП) и определения оптимальной длины слова АЦП для данного
применения. Рассматриваются ошибки переполнения, а также статистическое
введение в два наиболее популярных средства от переполнений — усечение и
округление. Мы заканчиваем главу освещением двоичных форматов с плавающей
запятой, которые позволяют преодолеть большинство ограничений, присущих
форматам с фиксированной запятой, особенно в части снижения отрицательных
последствий переполнений.
Глава 13 представляет вашему вниманию коллекцию «маленьких хитростей»,
которые используются, чтобы сделать алгоритмы цифровой обработки сигналов
более эффективными. Эти приемы собраны в главе в конце книги по двум причи­
нам. Во-первых, это разумно —иметь такую коллекцию трюков в одной главе, так
что вы всегда будете знать, где их найти в будущем. Во-вторых, многие из этих
схем требуют понимания материала из предыдущих глав, так что последняя гла­
ва —самое подходящее место для арсенала таких практических приемов. Во вре­
мя детального рассмотрения этих приемов повторяются и подтверждаются
многие важные идеи, освещенные в предыдущих главах.
Приложения содержат ряд необходимых начинающим тем, помогающих по­
нять сущность и математику цифровой обработки сигналов. Всестороннее описа­
ние арифметики комплексных чисел излагается в приложении А, в то время, как в
приложении В выводится часто используемое, но редко объясняемое выражение
для суммы геометрической прогрессии. Некоторые тонкие особенности и две
формы реверса направления времени в дискретных системах (одно из приме­
нений которого —фильтрация с нулевой фазой) объясняются в приложении С.
Статистические понятия среднего, дисперсии и стандартного отклонения пред­
ставлены в приложении D, а в приложении Е обсуждается происхождение и
применение логарифмической шкалы децибелов, используемой для увеличе­
ния разрешающей способности спектрального представления. Приложение F не­
сколько в другом ключе представляет словарь терминологии, используемой в об­
ласти цифровых фильтров.
Благодарность
Многие новые материалы в этом издании являются результатом того, что я уз­
нал от профи из USNET-группы comps.dsp (я мог бы назвать дюжину имен, но, сде­
лав это, я бы приобрел 12 друзей и 300 врагов). Так что я благодарю моих коллег по
ЦОС в comps.dsp за то, что они так многому меня научили в области теории ЦОС.
Благодаря их терпению в неприятном деле рецензирования ранних версий
рукописи я имел счастье получить помощь талантливых Эрика Якобсена (Eric
20
Предисловие
Jacobsen), доктора Питера Куцукоса (Peter Kootsookos), Мэтью Донадио (M at­
thew Donadio), доктора Айана Бакнера (Dr. Ian Buckner), доктора Майка Роузинга (Mike Rosing), Джерри Олапа (Jerry Olup), Клея С. Тернера (Clay S. Turner), Рэя
Эндрака (Ray Andraka), Джима Томаса (Jim Thomas), Роберта Бристоу-Джонсона
(Robert Bristow-Johnson), Джулиуса Кузьюма (Julius Kusuma) и доктора Рун Алнор (Rune Allnor). Спасибо вам, ребята, я ваш должник.
Я также благодарю Пэтти Донован (Patty Donovan) из Pine Tree Composition,
Inc., за превращение беспорядочной кучи бумаги, которая плюхнулась на ее стол,
в хорошо написанную книгу; ведущих специалистов издательства Лайзу Марков­
ски (Lisa Iarkowski ) и Анну Гарсия (Anne Garcia) из Prentice Hall за искусное
управление толпой в процессе публикации; и редактора Бернарда Гудвина' (Ber­
nard Goodwin ) за его великодушное поощрение и руководство.
Если у читателя хватило сил добраться до конца предисловия, напоследок
хочу сказать, что я отлично провел время, когда писал эту книгу, и я искренне на­
деюсь, что ее чтение принесет вам пользу. Если у вас есть любые замечания или
предложения относительно этого материала, или если вы обнаружите какие-либо
ошибки, пусть очень незначительные, пожалуйста, присылайте их мне по адресу
г . ly o n s @ ie e e . огд. Обещаю, что отвечу на ваше сообщение.
1 «Издатель живет тем, что чувствует. Авторы тоже, но авторы —слепые кроты, которые
роют свои норы; издатель же похож на вожака, который прокладывает путь, и ведет ав­
торов за собой по этому пути». (Ловат Диксон).
Глава 1
Дискретные
последовательности
и системы
Цифровая обработка сигналов никогда раньше не была так широко распро­
странена, и никогда раньше не существовало столько возможностей для ее реали­
зации. Не так давно быстрое преобразование Фурье (БП Ф ), которое мы будем
обсуждать в главе 4, представлялось загадочной математической процедурой, ис­
пользуемой только в крупных исследовательских центрах или университетах.
Сейчас, как это ни удивительно, БПФ легко доступно каждому из нас. Оно даже
реализуется в виде встроенных функций, предоставляемых недорогими пакетами
программ математических расчетов для домашних компьютеров. Доступность
более изощренных коммерческих программ обработки сигналов позволяет нам
сегодня быстрее и увереннее разрабатывать приложения обработки сигналов.
Мы можем выполнять спектральный анализ, проектировать цифровые фильтры,
разрабатывать системы распознавания речи, передачи данных, сжатия изображе­
ний с использованием программ, которые интерактивны как в части задания алго­
ритма функционирования, так и в части графического отображения результатов
работы. С середины 80-х годов та же технология, которая сделала возможным со­
здание доступных домашних компьютеров, позволила разработать мощные и недо­
рогие аппаратурные системы разработки, которые служат основой реализации
различных проектов, использующих цифровую обработку сигналов'. Тем не ме­
нее, несмотря на простоту применения современных средств разработки систем
цифровой обработки сигналов, нам все еще необходим прочный фундамент пони­
мания ее основ. Цель этой книги — построить такой фундамент.
В этой главе мы подготовим базу для тех тем, которые будут изучаться в осталь­
ной части книги, определив терминологию, используемую в цифровой обработке
1 Во время телевизионного интервью в начале 90-х один из ведущих ученых в области
компьютерных наук заметил, что, если бы автомобильная промышленность развива­
лась такими же темпами, как компьютерная, наши машины сейчас двигались бы со ско­
рость в полмиллиона миль в час (примерно 800 ООО км/ч — прим. перев.) и на одном
галлоне (примерно 4.5 л — прим. перев.) бензина проезжали бы полмиллиона миль.
Цена такой машины была бы такой низкой, что ее проще было бы выбросить на свалку,
чем заплатить за одни день парковки в Сан-Франциско.
22
Гпава 1. Дискретные последовательности и системы
сигналов, показав различные способы графического представления дискретных сиг­
налов, определив понятия, используемые при описании последовательностей значе­
ний данных, предложив условные обозначения, используемые для описания операций
обработки сигналов, и коротко введя понятие линейных дискретных систем.
1.1. Дискретные последовательности
и связанные с ними обозначения
В самом общем смысле термин обработка сигналов обозначает область науки,
которая занимается анализом физических процессов, изменяющихся во времени.
И как таковая, обработка сигналов делится на две ветви: аналоговую обработку
сигналов и цифровую обработку сигналов. Термин аналоговый используется для
описания сигналов, которые непрерывны во времени и могут принимать значения
из непрерывного диапазона. Примером аналогового сигнала является некоторое
напряжение, которое мы можем подать на вход осциллоскопа, в результате чего
на экране мы увидим непрерывную кривую как функцию времени. Аналоговый
сигнал можно также подать на обычный анализатор спектра, чтобы определить
его частотный состав. Термин аналоговый, вероятно, происходит из области анало­
говых компьютеров, использовавшихся до начала 80-х. Эти компьютеры решали
линейные дифференциальные уравнения с помощью электронных дифференциа­
торов и интеграторов, соединяемых с помощью телефонных патчкордов1. В такой
ситуации непрерывное напряжение или ток в реальной цепи представляли собой
аналог некоторой переменной в дифференциальном уравнении, такой как ско­
рость, давление воздуха, температура и т. п. (Хотя гибкость и производительность
современных цифровых компьютеров сделали аналоговые компьютеры устарев­
шими, хорошее описание короткой жизни аналоговых компьютеров вы можете
найти в работе [1].) Поскольку современная обработка непрерывных сигналов с
использованием резисторов, конденсаторов, операционных усилителей и т. п.
имеет мало общего с аналоговыми компьютерами, термин аналоговый сегодня
представляется неудачным. Более корректным было бы называть непрерывной
обработкой сигналов то, что мы сегодня обычно называем аналоговой обработ­
кой сигналов. Соответственно, в этой книге мы сведем к минимуму использова­
ние термина аналоговые сигналы и заменим его термином непрерывные сигналы
везде, где это оправдано.
Термин дискретный сигнал используется для обозначения сигнала, независимая
переменная (чаще всего время) которого квантована, так что мы знаем значения сиг­
нала только в дискретные моменты времени. Таким образом, дискретный сигнал
представляется не непрерывной линией, а набором значений. Кроме квантования
по времени, дискретные сигналы квантуются еще и по значению. Мы можем по­
яснить эти понятия на примере. Представим себе непрерывный синусоидальный
сигнал с амплитудой, равной 1, и частотой f 0, описываемый уравнением
х (0 =8 ш (2 я/ о0
(1-1)
Отрезки проводов небольшой длины со штекерами или разъемами на концах, предназ­
наченные для коммутации сигналов на панелях телефонных станций —{прим. перев.).
1.1. Дискретные последовательности и связанные с ними обозначения
23
Частота/0измеряется в герцах (Гц). (В физических системах мы обычно изме­
ряем частоту в единицах, производных от герца. Один герц —это частота, при ко­
торой совершается одно полное колебание или цикл в секунду. Один килогерц
(кГц) равен тысяче Гц, а мегагерц — одному миллиону Гц1.) Если £ в уравнении
(1-1) представляет собой время в секундах, то произведение/0 Ь имеет размер­
ность циклов (периодов), а полный аргумент 2ж/0 £ представляет собой угол, из­
меренный в радианах.
Дискретный
сигнал х(п)
х(7) в момент 7t
0.5 ■■
(Ь)
11 13 15
17
19
31
33 35
37 39
0 | 1и І І І І | ■ І I | I |< I и ■ І І І І І І І | | ■| I 1( И I I I
1 3
5 7
9
\
21 23 25 27 29
Дискретный
■!
И :■
индекс времени, п
-0 .5 ••
-1 -L
Дискретный
сигнал х(п)
■>! |<
t.
Дискретный
индекс времени, п
Рис. 1.1.
Синусоидальный сигнал во временной области: (а) представление не­
прерывного сигнала; (Ь) представление дискретного сигнала; (с) диск­
ретные отсчеты с соединительными линиями
Изобразив (1-1) в виде графика, мы получаем известную синусоидальную кри­
вую, показанную на рисунке 1.1 (а). Если наш непрерывный сигнал физически
1 Раньше частоту измеряли в циклах в секунду, вот почему шкалы настройки старых ра­
диоприемников проградуированы в килоциклах в секунду (kcps) или мегациклах в се­
кунду (Mcps). В 1960 годунаучное сообщество приняло в качестве единицы измерения
частоты Гц в честь немецкого физика Генриха Герца, который в 1887 году впервые про­
демонстрировал передачу и прием радиоволн.
24
Гпава 1. Дискретные последовательностии системы
представляет собой напряжение, мы можем взять его отсчеты по одному за каж­
дые секунд с помощью аналого-цифрового преобразователя и представить сину­
соидальный сигнал в виде последовательности дискретных значений. Изобразив
эти значения как точки, мы получим дискретный сигнал, показанный на рисун­
ке 1.1 (Ь). Мы говорим, что нечто, изображенное на рисунке 1.1 (Ь), представляет
собой «дискретную» версию непрерывного сигнала, показанного на рисунке 1.1 (а).
Независимая переменная £ в (1 -1 )и н а рисунке 1.1 (а) непрерывна. Независимая
индексная переменная п на рисунке 1.1 (Ь) дискретна и может принимать только
целые значения. То есть индекс п используется для идентификации отдельных эле­
ментов дискретной последовательности на рисунке 1.1 (Ь).
Не поддавайтесь соблазну соединить точки линиями на рисунке 1.1 (Ь). По ка­
кой-то причине люди (особенно инженеры, имеющие опыт работы с непрерывны­
ми сигналами) стремятся соединить точки прямыми линиями или ступенчатой
кривой, показанной на рисунке 1.1 (с). Не попадайте в эту с виду невинную ло­
вушку. Соединив точки линиями, вы можете дезориентировать новичка, заставив
его забыть, что последовательность д;(я) представляет собой всего лишь набор чи­
сел и больше ничего. Помните, что х(п) — дискретная последовательность отдель­
ных значений, и каждое значение изображается как отдельная точка. Дело не в
том, что мы не знаем, что лежит между этими точками, а дело в том, что между эти­
ми точками ничего нет.
Мы можем усилить это представление дискретной последовательности, изоб­
раженной на рисунке 1.1 (Ь), записав эти дискретные значения в следующем виде:
х(0) - О
(1-е значение последовательности, индекс п - О)
х( 1) - 0.31
(2-е значение последовательности, индекс п = 1)
х(2) = 0.59
(3-е значение последовательности, индекс п = 2 )
х(3) = 0.81
(4-е значение последовательности, индекс п = 3)
и так далее,
( 1- 2 )
где п представляет целочисленную последовательность временного индекса 0, 1,
2,3 и т. д., а
некоторый постоянный интервал времени. Эти значения отсчетов
можно представить кратко и все сразу с помощью дискретного выражения
х(п ) = БІП( 2 я /0 пі5)
(1-3)
(Здесь тоже аргумент 2 л / 0 представляет собой угол, измеряемый в радианах.)
Обратите внимание на то, что значения индекса п в (1-2) начинаются с 0, а не с 1.
В этом нет никакого особого смысла; первым значением с таким же успехом могла
быть и единица, но мы начинаем отсчет индекса п с нуля по привычке, потому
что, поступая так, мы получаем возможность описывать синусоидальный сигнал,
начиная с нулевого момента времени. Переменная х(п ) в (1-3) читается как «лгот
п». Уравнения (1-1) и (1-3) описывают то, что называется сигналами во временной
области, потому что независимые переменные, непрерывное время £в (1-1) и зна­
чения дискретного времени тг£х, используемые в (1 -3), являются мерами времени.
Усвоив понятие дискретного сигнала, мы можем сказать, что дискретная сис­
тема представляет собой набор аппаратурных компонентов или программных
1.1. Дискретные последовательности и связанные с ними обозначения
25
процедур, которые выполняют некоторые операции над дискретными сигналами.
Например, дискретная система может представлять собой процесс, который вы­
дает выходную последовательность у(0), у( 1), у(2 ) и т. д., когда на его вход посту­
пает дискретная входная последовательность х(0), х(1), х(2) и т. д., как показано
на рисунке 1.2 (а). Снова, чтобы сделать наши обозначения краткими и сохранить
контроль над индивидуальными элементами входной и выходной последователь­
ностей, мы используем сокращенные обозначения, показанные на рисунке 1.2 (Ь),
где п представляет собой целочисленную последовательность О, 1,2,3 и т. д. Та­
ким образом, х (п ) и у(п) являются обобщенными переменными, которые обо­
значают две разные последовательности чисел. Рисунок 1.2 (Ь) позволяет нам
описывать выход системы простыми выражениями, такими как
у(п) = 2х(п) - 1
( 1-4 )
Для иллюстрации уравнения (1-4) рассмотрим случай, когда х (п ) является
последовательностью из пяти элементов: х(0) = 1, х (1 ) = 3, х(2) =5, х (3) = 7 и
х(4 ) = 9. В этом случае у(п) также содержит пять элементов у(0) = 1, у( 1) = 5,
У(2) = 9, у(3) = 13 и у (4 ) = 17.
х(0),х(1), х(2), х ( 3 ) , . . .
(а)
(Ь)
Рис. 1.2.
х(п)
Дискретная
система
Дискретная
система
у(0),у(1),у(2),у(3),
У(п)
При подаче на вход дискретной системы сигнала система выдает выход­
ной сигнал: (а) входной и выходной сигналы представляют собой после­
довательности отдельных значений; (Ь) входной и выходной сигналы
обозначаются какх(л) и у(п)
Фундаментальное различие в представлении времени в непрерывных и диск­
ретных системах приводит к очень важному различию в том, как представляется
частота в непрерывных и в дискретных системах. Чтобы показать это, рассмотрим
непрерывный синусоидальный сигнал на рисунке 1.1 (а). Если бы он представлял
напряжение между двумя проводами, мы могли бы измерить его частоту, подав
его на вход осциллоскопа, анализатора спектра или частотомера. Однако если бы
нам дали последовательность значений, подобную приведенной в (1-2), и попро­
сили определить частоту сигнала, который представляется этими числами, мы
столкнулись бы с проблемой. Мы построили бы график этих дискретных значе­
ний, мы распознали бы на этом графике один период синуса, как на рисун­
ке 1.1 (Ь). Теперь мы можем сказать, что сигнал повторяется каждые 20 отсчетов,
но у нас нет никакого способа определить точное значение частоты только по ди­
скретным отсчетам. Возможно, вы уже догадались, куда я веду. Если бы мы знали
интервал времени между отсчетами — период дискретизации — мы могли бы
определить абсолютную частоту дискретного синусоидального сигнала.
26
Гпава 1. Дискретные последовательностии системы
Если период дискретизации составляет, скажем, 0.05 миллисекунды/отсчет,
период синусоидального сигнала равен
Период синусоидального сигнала =
= (20 отсчетов/период) • (0.05 миллисекунды/отсчет) =
= 1 миллисекунда
(1-5)
Так как частота синусоидального сигнала обратна его периоду, мы теперь зна­
ем, что абсолютная частота синусоидального сигнала составляет 1/(1 мс) или
1 кГц. С другой стороны, если бы мы установили, что период дискретизации в
действительности равен 2 миллисекундам, дискретные отсчеты на рисунке 1.1 (Ь)
представляли бы синусоидальный сигнал, период которого равен 40 миллисекун­
дам, а частота —25 Гц. Важно здесь то, что в дискретных системах абсолютное зна­
чение частоты в Гц зависит от частоты дискретизации / 5=УДХ. Нам придется
вспоминать об этой зависимости на протяжении всей оставшейся части книги.
В цифровой обработке сигналов часто бывает необходимо описать частотный
состав дискретных сигналов. Когда мы делаем это, такое частотное представление
имеет место в так называемой частотной области. В качестве примера возьмем
дискретную синусоидальную последовательность х 1 (п) с произвольной частотой
/ 0 Гц, как показано в левой части рисунка 1.3 (а). Мы можем также описать сигнал
х 1 (п) так, как показано в правой части рисунка 1.3 (а), показав, что он содержит
частоту 1 в единицах/0и никаких других частот. Хотя мы сейчас на этом не задер­
жимся, обратите внимание на то, что представления в частотной области на ри­
сунке 1.3 сами являются дискретными.
Чтобы проиллюстрировать наши представления во временной и частотной об­
ластях дальше, на рисунке 1.3 (Ь) показан другой дискретный синусоидальный
сигнал х2 (п), амплитуда которого равна 0.4, а частота —2 /0. Дискретные отсчеты
х2 (п) выражаются уравнением
х 2(п) =0.4 • бш (2я2/0п£х)
(1-6)
Когда два синусоидальных сигнала х 1(п) и х2 (п) складываются, давая новый
сигнал хзит (п), его уравнение во временной области имеет вид:
х5ит(п) = х ^ п ) + х2(п) = $т (2л2/0
)+ 0 .4 • 8ш(2л 2 /0 п )
(1-7)
а его представления во временной и частотной областях имеют вид, показанный
на рисунке 1.3 (с). Рисунок 1.3 (с) помогает нам понять смысл описания в частот­
ной области или спектра Х зит (т), показывая, что Х шт (п) содержит составляю­
щую с частотой/0 Гц и составляющую пониженной амплитуды с частотой 2 /0 Гц.
Обратите внимание на три особенности рисунка 1.3. Во-первых, для обозначе­
ния временнь/х последовательностей используются строчные буквы, например,
"х " в х 1(п), а заглавные буквы используются для обозначения переменных частот­
ной области, например, "Х"в Х 1 (т). Запись Х 1(т) читается как «спектральная
последовательность икс один от эм». Во-вторых, т. к. представление временной
последовательности х 1(п) в частотной области Х 1(т) в свою очередь является по­
следовательностью (набором чисел), мы используем индекс "т "для отслеживания
отдельных элементов в Х 1(т). Можно перечислять члены последовательностей в
частотной области точно так же, как мы это делали с членами временной последо­
вательности в (1 -2). Например, Х шт (т) записывается в виде списка значений как
1.1. Дискретные последовательности и связанные с ними обозначения
'вит (0 ) = 0
Х5ит (1)= 10
(2-е значение Х5ит (т), индекс т = 1)
Х зит (2 ) = 0 -4
(3-е значение Хзит (т), индекс т = 2)
27
(1-е значение Х5ит (т), индекс т = 0)
'вит (3) = 0
(4-е значениеХзит (т), индекс т = 3)
и так далее,
где индекс частоты т представляет собой целочисленную последовательность О,
1,2,3 и т. д. В-третьих, т. к. синусоидальные сигналы в х 1(п) + х2 (п) имеют рав­
ный нулю фазовый сдвиг относительно друг друга, нам нет необходимости бес­
покоиться об изображении фазовых соотношений в Х шт (т) на рисунке 1.3 (с).
В общем случае, однако, фазовые соотношения в частотной области имеют боль­
шое значение, и мы поговорим на эту тему в главах 3 и 5.
. х,(п) во временной области
1■■
Х-| {т) в частотной области
1
■
0.5 ■■ *
■
я
(а)
■-
%
25
0.5
30
о * 1 111 1 1 1 1 1 1 1 111 |» + н 1 ї ї н
5
10
• Время (п)
15
0
0
-0.5 ■■
Г0 2/0 34 4/0 Ы0
Частота
-1
Х 2(ш ) в ч а с то тн о й о б л а с ти
хг(п)
Хг(П)во
ВОвременной
Е
области
!
1-
0.5
«***»
25
30
(Ь) о ■I I I I | IЖI■I I I I I I I■+++-Н-+-+«4-Н-+-ЙЧ.^
41
5 ■. ■. ■ 20 ■
■
Время^
-0.5-
0.5 ■■
Жі
*
04
----- — .-V
о
!0 2 ^ ЗС0 Ц } Ы0
Частота
х,и„(п) во временной области
Х зит(т) в частотной области
1.5 ■■
1
1■■
0.5
(С )
0
-°-1-5■
■
■■
1
20
»ПН I I I I I I I I
5‘
10
,
25
0.5 +
30
>1 и I I I I I I I I
15
."■
■»»*■
►
Н-- 1-- *—•—■
'* Время (п) о
0
А0 2/0 3Г0 4f0 Ы0
Частота
-1.5
Рис. 1.3.
Графические представления во временной и частотной областях: (а) си­
нусоидальный сигнал частотой f0\ (Ь) синусоидальный сигнал понижен­
ной амплитуды с частотой 2f0■,(с) сумма первых двух сигналов
Ключевым моментом, о котором нужно помнить, является то, что мы теперь
знаем три эквивалентных способа описания дискретных сигналов. Математиче­
ски мы можем использовать уравнение во временной области, наподобие (1-6).
Кроме того, мы можем представлять сигнал во временной области графически,
как мы делали это в левой части рисунка 1.3, а также мы можем изобразить соот­
ветствующие сигналу дискретные эквиваленты в частотной области, как в правой
части рисунка 1.3.
28
Гпава 1. Дискретные последовательности и системы
Как оказывается, дискретные сигналы во временной области, которыми мы за­
нимаемся, квантованы не только по времени, их мгновенные значения тоже кван­
тованы. Так как мы представляем все численные значения двоичными числами,
разрешающая способность или гранулярность представления значений диск­
ретных чисел ограничена. Хотя квантование мгновенных значений может быть
важным моментом —мы рассматриваем его в главе 12 —мы пока не будем беспо­
коиться о нем.
1.2. Мгновенные значения, амплитуда
и мощность сигнала
Определим два важных термина, которые мы будем использовать на протяже­
нии всей книги: мгновенное значение и амплитуда. Не удивительно, что для диле­
танта эти термины обычно слабо различимы'. В инженерном деле они, однако,
обозначают два разных понятия, и мы должны выяснить эту разницу. Мгновенное
значение переменной —это мера того, на какую величину и в каком направлении пе­
ременная отклоняется от нуля. Таким образом, мгновенные значения сигнала могут
быть как положительными, так и отрицательными. Временные последовательности
на рисунке 1.3 демонстрировали мгновенные значения отсчетов для трех разных
сигналов. Обратите внимание на то, что одни мгновенные значения положительны,
а другие —отрицательны.
Модуль переменной — это мера того, насколько ее значение отличается от
нуля независимо от направления отклонения. Таким образом, модуль сигнала
всегда положителен. На рисунке 1.4 показано, что модуль х ^ п ) с рисунка 1.3 (а)
равен мгновенному значению, но знак его всегда положительный. Для обозначе­
ния модуля х 1(п) мы используем | х 1(п)|. Иногда в литературе по цифровой об­
работке сигналов вместо термина модуль употребляется термин абсолютное
значение. Амплитудой сигнала называется модуль наибольшего его отклонения
от нуля, следовательно, амплитуда всегда положительна.
^
|Х1 (п )|
1+
■■*■»* ■
*
0.5 •-
■■***■ ■
я
*
я
"
■
: *
Я
*
Я
я
"
*
Я
*
я
0 ■ I I I I | I I I I | М I I |" I I I | I I I I | I I I I | I
5
10
15
20
25
30
►
Время (п)
-0.5
Рис. 1.4.
Отсчеты модуля |хг (л) | сигнала, показанного на рисунке 1.3 (а)
Когда мы изучаем сигналы в частотной области, нас часто интересует уро­
вень мощности этих сигналов. Мощность сигнала пропорциональна квадрату
1 Конечно, под дилетантами мы понимаем «других людей». Для инженера нейрохирург
является дилетантом. Для нейрохирурга инженер является дилетантом.
29
1.3. Условные обозначения операций обработки сигналов
его амплитуды. Если мы предположим, что коэффициент пропорциональности
равен 1, мы можем выразить мощность последовательности во временной или
частотной области как
хрш (п )= х (п ) = \х(п)\( 1-8)
или
Хрш (т )= Х (т )2 = \Х (т ){
( 1- 8 ' )
Очень часто нам требуется знать разницу уровней мощности двух сигналов в ча­
стотной области. Из-за квадратичной зависимости мощности от амплитуды два
сигнала с небольшой разностью амплитуд будут иметь гораздо большую разность
мощностей. На рисунке 1.3, например, амплитуда сигнала х 1(п) в 2.5 раза больше
амплитуды сигнала х2 (п), а его мощность в 6.25 раз больше мощности х 2 (п). Это
показано на рисунке 1.5, где показаны и амплитуда, и мощность X
(т).
модуль Хвию(т)
і в частотной области
1
1 -- ■
1 ■■
0.5
0*- н— ь
0
2Г0
мощность Хът(т)
в частотной области
0.5 ■■
0.4
я
3/о 4Г0 5/-0
Частота
0*0
0.16
-я—я-
г0 2Г0 З/о 4Г0 5ґ0
Частота
Рис. 1.5. Модуль и мощность сигналаХзит (п) (рисунок 1.3 (с)) в частотной области
На графиках мощности из-за ее квадратичной природы часто приходится отобра­
жать в одной системе координат как очень большие, так и очень маленькие значения.
Чтобы облегчить построение и восприятие таких графиков, специалисты часто
используют значения, выраженные в децибелах, как описано в приложении Е.
1.3. Условные обозначения операций
обработки сигналов
Для графического изображения реализации операций цифровой обработки
сигналов мы будем использовать блок-схемы. Эти блок-схемы будут содержать
набор базовых условных обозначений основных операций, наиболее употреби­
тельные из которых показаны и определены математически на рисунке 1.6.
На рисунке 1.6 (а) показано поэлементное сложение двух дискретных после­
довательностей, в результате которого образуется новая последовательность.
Если значения индекса времени п нашей последовательности начинаются с 0, мы
говорим, что первое значение выходной последовательности равно сумме первого
элемента последовательности Ь и первого элемента последовательности с, или
а(0) = Ь(0) + с(0). Соответственно, второе значение выходной последовательно­
сти равно сумме второго элемента последовательности Ь и второго элемента по­
следовательности с, или а(1) = Ь(1) + с(1). Уравнение (1-7) дает нам пример
сложения двух последовательностей. Операция вычитания, показанная на рисун­
ке 1.6 (Ь) генерирует выходную последовательность, которая представляет собой
зо
Гпава 1. Дискретные последовательности и системы
поэлементную разность двух входных последовательностей. Иногда мы должны
вычислять элементы новой последовательности, которые являются суммой более
чем двух значений. Эта операция, показанная на рисунке 1.6 (с), называется сум­
мированием и встречается очень часто в цифровой обработке сигналов. Обратите
внимание на то, что верхнее и нижнее значения индекса суммирования к в выра­
жении на рисунке 1.6 (с) точно указывают нам, какие элементы последовательно­
сти Ь необходимо сложить, чтобы получить требуемое значение а(п). Так как мы
будем встречать операцию суммирования очень часто, давайте убедимся в том,
что мы правильно поняли ее обозначение. Если мы повторим уравнение операции
суммирования здесь, мы получим
и+З
о (« )= 1 * № )
(1-9)
к=п
Сумматор
(а)
а (л )
Ь(л)
а (л ) = Ь(п) + с(п)
Т
с{п)
Вычитатель.
Ь(п)
(Ь)
а(л)
t
a{n) = b(n) - c(n)
Р(п)
Суммирование'
/?+3
a(n)
(с)
a(n) =уГь(к) = b(n) + Ь(п+1) + Ь(л+2) + Ь(л+3)
к- п
Умножение
b ( n ) --------------^
(d )
а (п )
a(n) = b(n )c{n) = b (n )-c (n )
к
[И н о гд а д л я обо зна чен и я ум нож ения
мы используем зн а к “ ”]
с(л)
Единичная задержка'
Ь(п)
З ад ерж ка
а(л)
(е)
а(л) = Ь(л-1 )
Ь(л)
Рис. 1.6.
а(л)
Термины и условные обозначения, используемые в блок-схемах цифро­
вой обработки сигналов
31
1.4. Введение в дискретные линейные инвариантные во времени системы
Это значит, что:
при п —0, индекс к принимает значения от 0 до 3, так что
a(0) = b(0) + b(1) + b(2) + b{3)
при п = 1, индекс к принимает значения от 1 до 4, так что
a(1) = b(1) + b(2) + b{3) + b(4)
при л = 2, индекс к принимает значения от 2 до 5, так что
а{2) = Ь{2) + Ь(3) + Ь(4) + Ь(5)
при п = 3, индекс к принимает значения от 3 до 6, так что
а(3) = Ь(3) + Ь(4) + Ь(5) + Ь(6)
и так далее.
О 'Ю )
Мы начнем использовать операцию суммирования всерьез, когда мы будем об­
суждать цифровые фильтры в главе 5.
Умножение двух последовательностей показано символически на рисунке 1.6 (d).
Умножение генерирует выходную последовательность, которая является поэ­
лементным произведением двух входных последовательностей: а(0) = Ь(0)с(0),
а( 1) = Ь( 1)с( 1) и так далее. Последняя базовая операция, которую мы будем ис­
пользовать, на рисунке 1.6 (е) называется единичной задержкой. Поскольку в
данный момент у нас нет необходимости убеждаться в ее важности, мы просто
скажем, что символ единичной задержки обозначает операцию, в результате ко­
торой выходная последовательность а(п) равна задержанной входной последо­
вательности Ь(п). Например, а(5) = Ь(4), а(6) = Ь(5), а(7) = Ь(6) и т. д. Как мы
увидим в главе 6, благодаря математическим методам, используемым для анали­
за цифровых фильтров, единичная задержка часто обозначается как z~1.
Символы на рисунке 1.6 напоминают нам о двух аспектах цифровой обработки
сигналов. Первый заключается в том, что операции всегда выполняются над по­
следовательностями отдельных значений, а второй — в том, что элементарные
операции сами по себе очень просты. И что интересно, как бы сложно ни выгля­
дели алгоритмы цифровой обработки сигналов, подавляющее большинство их
можно реализовать, используя комбинации этих простых операций. Если мы
представим себе некоторый алгоритм цифровой обработки сигналов как рецепт,
то условные обозначения на рисунке 1.6 — это ингредиенты.
1.4. Введение в дискретные линейные
инвариантные во времени системы
Придерживаясь традиции, мы даем введение в линейные инвариантные во
времени (ЛИВ) системы в самом начале этой книги. Хотя понимание ЛИВ-систем несущественно для изучения следующих трех глав, при изучении цифровых
фильтров мы будем опираться на строгие определения линейности и инвариантно­
сти во времени. Мы должны распознавать и понимать понятия линейности и инва­
риантности во времени не только потому, что огромное большинство дискретных
систем, используемых на практике, являются ЛИВ-системами, но и потому, что
32
Гпава 1. Дискретные последовательности и системы
Л ИВ-системы очень удобны для анализа. Это хорошая новость для нас, потому что
мы можем использовать простые методы для предсказания характеристик любой
схемы цифровой обработки сигналов, если только она линейна и инвариантна во
времени. Так как линейность и инвариантность во времени — две очень важные
характеристики систем, имеющие особые свойства, мы обсудим их в следующих
разделах.
1.5. Дискретные линейные системы
Термин линейная определяет особый класс систем, выходной сигнал которых
представляет собой суперпозицию, или сумму, отдельных выходных сигналов,
полученных при подаче на вход системы составляющих входного сигнала по от­
дельности. Например, мы можем сказать, что при подаче на вход системы сигнала
х 1(п) мы получим на выходе у 1(п). Можно обозначить эту ситуацию символиче­
ски с помощью следующего выражения:
x-f (п) вызывает реакцию у -/ (п)
(1*11)
При подаче на вход другого си гн ала^ (п) мы получим на выходе сигналау 2(п)
в соответствии с
х2 (п) вызывает реакцию у2 (п)
(1-12)
Чтобы система была линейна, необходимо, чтобы при подаче на ее вход суммы
Х1 (п) + х 2 (и) выходной сигнал был суммой индивидуальных выходных сигналов,
так что
х ^ п ) + х2 (п) вызывает реакцию у 1(п) + у2 (п)
(1-13)
Кроме того, понятие линейности включает в себя такое свойство как пропорци­
ональность. Это значит, что если входные сигналы умножаются на коэффициен­
ты с1и с2 , то составляющие выходной последовательности также умножаются на
эти же коэффициенты, т. е.
с1х 1(п) + с2х2 (п) вызывает реакцию с1у 1(п)+ с2 у 2 (п)
(1-14)
В литературе свойство пропорциональности называют также свойством гомо­
генности или однородности. Запомнив все это, продемонстрируем понятие ли­
нейности на примере.
1.5.1. Пример линейной системы
Чтобы продемонстрировать линейность системы, предположим, что мы имеем
дискретную систему, показанную на рисунке 1.7 (а), выходной сигнал которой
определяется как
у(п) = -х (п ) / 2
(1-15)
то есть выходная последовательность равна входной, взятой с обратным знаком
и с уменьшенной в 2 раза амплитудой.. Если мы подадим на вход последователь­
ность х 1(и), представляющую собой синусоидальный сигнал с частотой 1 Гц, ди­
скретизированный с частотой 32 отсчета на период, мы получим выходную
последовательность у 1(п), показанную на рисунке 1.7 (Ь). График в правой части
1.5. Дискретные линейные системы
33
рисунка 1.7 (Ь) представляет частотный спектр выходной последовательности
у 1(п), который показывает, что выходной сигнал содержит единственный тон с ам­
плитудой -0.5 и частотой 1 Гц1. Далее, подавая входную последовательностьх2(п),
представляющую собой синусоидальный сигнал частотой 3 Гц, на выходе получаем
последовательность^ (и)> как показано в центре рисунка 1.7 (с). Спектр выходной
последовательности у2 (п), У2 (т ), подтверждающий присутствие единственной си­
нусоиды с частотой 3 Гц, показан в правой части рисунка 1.7 (с). Наконец —именно в
этот момент проявляется линейность —если мы подаем входную последователь­
ность х3 (п), которая представляет собой сумму двух синусоид с частотами 1 Гц и
3 Гц, мы получаем выходную последовательность^ (п), показанную в центре ри­
сунка 1.7 ((1). Обратите внимание на то, что у3 (п) представляет собой поэлемент­
ную сумму у 1(п) и у 2(п). Рисунок 1.7 ((1) показывает также, что спектр выходного
сигнала У3 (т) есть сумма У1(т) и У2 (т). Это и есть линейность.
(а )
Линейная
дискре тн а я
систем а
Входной сигнал
І
х ,(п )
Выходной сигнал у(п) = -х(п)/2
У1(л)
Л
(Ь)
-0.5
І
■
Ч
2
Т
4
6
8
10 12 14 Частота
(Гц)
*
-11
У2(п)
гж
0.5
■*
■
«вЖ
У2(т)
1
0.5
0 ЖЖ »№ Ж 4НН»» Ш Ш НЖ Н
,л
-11!
ж жж »■Время
05 I
%>.“*
її*
I Ж
0.5
І
I
0
*
-0.5 І *
1
(с)
»■'"'г.
0.5- •
Ж; ж
о ■ж+«нж
Л ж \н ",н т н н н н н« В■р е м я о | Г , р
Уі(т)
0.5- ■
1
.•
ж
'0
■.
■
1“
Время
I
0і іжжнжжмньТжі.Тіж »- 0Ш'М’в+И'М'И'М'М'М'Ж-М'М'ИМ'М^. ■
■ _
М *
Время
0
■> ‘
6
8 10 12 14 Частота
V/
V
(ГЦ)
05
I
05 ■
-1
Рис. 1.7. Соотношения вход-выход линейной системы: (а) блок-схема системы, где
у(п) = -х{п)/2\ (Ь) вход и выход системы при подаче синусоидального сиг­
нала частотой 1 Гц; (с) при подаче синусоиды частотой 3 Гц; (с1) при подаче
суммы двух синусоидальных сигналов с частотами 1 Гц и 3 Гц
Здесь мы допускаем использование отрицательно амплитуды, чтобы показать, что от­
счеты выходного сигнала имеют знак, противоположный знаку входных отсчетов, не
прибегая к понятию фазы —{прим. перев.)
34
Глава 1. Дискретные последовательности системы
1.5.2. Пример нелинейной системы
Легко показать, как нелинейная система дает выходной сигнал, не равный сум­
ме у 1(п) и у 2 (п), когда у нее на входе х 1(п) + х2 (п). Простой пример нелинейной
дискретной системы приведен на рисунке 1.8 (а), где выходной сигнал равен
квадрату входного в соответствии с
у(п)= [х(п)]2
(1-16)
Чтобы предсказать выходной сигнал в случае, когда на вход системы подаются
простые синусоидальные сигналы, мы используем хорошо известные тригоно­
метрические тождества и немного аналитических преобразований. Используя
форму уравнения (1-3), запишем синусоидальную последовательность с часто­
той / 0 = 1 Гц в виде
х ^ п ) = з т (2 я / 0 п1$) = 8 т(2 л • 1 • п£5)
(1-17)
Уравнение (1-17) описывает последовательность х 1 (п) в левой части рисун­
ка 1.8 (Ь). При подаче на вход последовательности х 1 (п) выходная последователь­
ность нелинейной системы у 1 (п) равна квадрату синуса частотой 1 Гц или
у ^ п ) = [ х ^ п )]2 = 8ш(2я • 1 • п ^ ) 8 т ( 2 л • 1 •гй8)
(1-18)
Мы можем упростить выражение для у 1 (п) в (1-18), используя следующее
тригонометрическое тождество:
Б т а • в т/? = [с о з (« - / ? ) ] / 2 - [с о 8 (а + /3 ) ] /2 .
(1-19)
Используя (1-19), мы можем у 1(п) выразить как
УАП) = [со8(2л • 1*гЛ5 - 2л •1*М8)]/2 - [соъ(2л*1тгй5 + 2л •7*и£9)]/2 =
= со$(0)/2 - со8(4л*1*п^)/2 = 1/2 - со8(2я*2»и£5) / 2 ,
(1-20)
что показано как положительная последовательность в центре рисунка 1.8 (Ь).
Так как, согласно (1-19), умножение двух синусоид приводит к появлению суммы
(а + /?) и разности (а - /3) частот, выходная последовательность у 1(п) будет пред­
ставлять собой косинусоидальный сигнал частотой 2 Гц и амплитудой 0.5, сложен­
ный с константой 1/2. Константа 1/2 в (1-20) интерпретируется как составляющая
с частотой 0 Гц, что отражено в спектре У1(т) на рисунке 1.8 (Ь). Мы могли бы про­
делать те же выкладки для последовательности х2 (п) и установить, что выходная
последовательность нелинейной системы у2 (п) в этом случае будет содержать со­
ставляющие с частотами 0 Гц и 6 Гц, как показано на рисунке 1.8 (с).
Нелинейность системы становится очевидной, когда мы подаем на ее вход после­
довательность х3(п), образованную в результате суммирования синусоидальных
сигналов с частотами 1 Гц и 3 Гц, как показано на рисунке 1.8 (с1). Мы можем пред­
сказать частотный состав выходной последовательности у 3 (п), используя алгебраи­
ческое тождество
(а+Ь)2 =а2 + 2аЬ + Ь2
(1-21)
где а и Ь представляют слагаемые входной последовательности. Из (1-19) следу­
ет, что член а 2 в (1-21) приводит к появлению синусоидальных составляющих с
частотами 0 Гц и 3 Гц, показанных на рисунке 1.8 (Ь). Аналогично, член Ь 2 дает
1.5. Дискретные линейные системы
35
еще одну составляющую с частотой 0 Гц и синусоиду с частотой 6 Гц, показанные
на рисунке 1.8 (с). Но член 2аЬ приводит к появлению в у3(п) синусоидальных со­
ставляющих с частотами 2 Гц и 4 Гц. Мы можем показать это аналитически, испо­
льзуя (1-19) и выражая член 2аЬ в (1-21) как
2аЬ = 2 • 8т(2л: • 1 •
= [2со5(2лг •
) • 5т(2тг
• 3 • Ш8) =
1 • Ш5- 2 л • 3 •
)]/2 - [2соз(2я • 1 • п15 +2л • 3 •
= соз(2я • 1 • п Ь Л - со б(2 л • 4 • пЬ5) .
(а)
х, (л)
Ф*
Ї
(Ь)
Нелинейная
дискретная
система
Входной сигнал х(п) ----■
►
ж*
— ►
Выходной сигнал у(п) = [x(nj] ‘
Уі(л)
1 ■■
*
Ж Время
Ж
Ж: ' '
Ж. :
V
*л
Y ,(m )
жГж
08., * *
0.6 . . * 1
0 -ні
* піні іііііі-н«
:і Я V *т н ін т
Ж
04 . .
(1-22)1
■
ж
0.2 . ,
ж
Ж;
К
жI•
ш я
Компонент нулевой частоты
4
ж
ж
0.5
0L2
8
-0 5
10
ж
12 14 Частота
(Гц)
0^ інніии»Мнит »имя Время
,х 2(п)
У ,(п)
К
ж' L
0.5 .Ж :
(С)
|
ж
0.8
ж ;ж
ж :;
0■ІІИИІІНННИІІІНІІІІИИІІ Время
os 4-
06 . .
"ж
Ж:
І
2.5
/V. Ж
л
Рис. 1.8.
м жж’ ;!
4
щ
8
10
12 14
Частота
(Гц)
АУ3(т)
Уз(п>
1і
2 ..
ж ж.
0.5
1.5
Ж
Ж
2
-0 5
; Ж :! :Ж !
Время
х 3(л)
(d)
6
о1.
:Ж
0t.
ЧІТі(f
IИ1III
IIIH*1ill11■!Ilia
II■III
III| *|I III
ЦІ ^
*П
гг«
*
Y2(m)
0.5 Ж
О'4 • ■
0.2
-1 І1.
4
1. .
жж
Время
1
4
6
0 0Ж^Ж+Ж-|-Ж'Ж'Ж'Ж.Ж.Ж'*Ж«^-
1. .
8
0.5 .Ж
ж ж
і
:і
0ж(тн'>*нм-жнш->иннн-»>
10
12 14 Частота
(Гц)
Время
Соотношения вход-выход нелинейной системы: (а) блок-схема системы,
где у(л) = [х(л)]2; (Ь) вход и выход системы при подаче синусоидального
сигнала частотой 1 Гц; (с) при подаче синусоидального сигнала частотой
3 Гц; (d) при подаче суммы синусоидальных сигналов с частотами 1 Гц и
3 Гц
Первый член в (1-22) выглядит как соъ(2лт$- 6лМ$) = со$(-4лп1) = со$(-2л2п15). Од­
нако, т. к. косинус является четной функцией, т е соз( -а ) = со5(а5, мы можем записать
этот член как со$,(2л2п15).
36
Гпава 1. Дискретные последовательности и системы
Уравнение (1-22) говорит нам, что в у3 (п) присутствуют две дополнительные
составляющие, обусловленные нелинейностью системы: косинусоидальный сиг­
нал частотой 2 Гц, амплитуда которого равна 1, и косинусоидальный сигнал час­
тотой 4 Гц, имеющий амплитуду 1 и включенный в состав сигнала со знаком
минус. Эти спектральные компоненты показаны в составе Y3 (m) в правой части
рисунка 1.8 (d).
Обратите внимание на то, что, когда на вход нелинейной системы подается
сумма двух синусоид, выходной сигнал содержит синусоиды (см. (1-22)), кото­
рых нет в случае, когда каждое из слагаемых подается на вход системы отдельно.
Эти дополнительные синусоиды появились в результате взаимодействия двух
входных синусоид при выполнении возведения в квадрат. Это и есть нелиней­
ность, условие (1-13) не выполняется. (Инженеры в области электротехники и
электроники хорошо знакомы с этим явлением как с интермодуляционными иска­
жениями.) Хотя нелинейные системы трудно анализировать, они иногда исполь­
зуются на практике. Например, в работах [2], [3] и [4] описывается их применение
при построении нелинейных цифровых фильтров. Напомним еще раз: (1-13) и
(1-14) утверждают, что выходной сигнал линейной системы при подаче на ее вход
суммы отдельных сигналов представляет собой суперпозицию (сумму) отдель­
ных выходных сигналов. Они также требуют, чтобы выходная последовательность
у 1(п) зависела только отх1(п) и от характеристик системы и не зависела от другой
составляющей входного сигнала х2 (п), т. е. чтобы отсутствовало взаимодействие
входных сигналов х 1 (п) и х2 (п) на выходе линейной системы.
1.6. Инвариантные во времени системы
Инвариантная во времени система —это система, для которой задержка (или
сдвиг) во времени входной последовательности вызывает эквивалентную вре­
менную задержку выходной последовательности. Помня о том, что п — просто ин­
дексная переменная, которую мы используем, чтобы отслеживать входные и
выходные отсчеты, скажем, что система выдает на выход последовательность у(п)
при подаче на вход последовательности х(п) или
х(п) вызывает реакцию у(п) .
(1-23)
Чтобы система была инвариантной во времени, для сдвинутой версии исход­
ного сигнала х(п), х'(п) должно выполняться следующее соотношение:
х'(п) = x(n+k) вызывает реакцию у '(п) =y(n+k) ,
(1-24)
где k — некоторое целое число, представляющее задержку в k периодов дискретиза­
ции. Чтобы система была инвариантной во времени, условие (1-24) должно выпол­
няться для любого целого k и для любой входной последовательности.
1.6.1. Пример инвариантной во времени системы
Рассмотрим простой пример инвариантности во времени, показанный на ри­
сунке 1.9. Предположим, что исходная входная последовательность представляет
собой синусоидальную последовательность единичной амплитуды и частотой 1 Гц,
выходная последовательность обозначена как у(п), как показано на рисунке 1.9 (Ь).
37
1.6. Инвариантные во времени системы
Рассмотрим другую входную последовательность х \ п ) вида
х'(п) = х(п + 4 ).
(1-25)
Уравнение (1 -25) показывает, что входная последовательность х '(п) совпадает с
последовательностью х(п), сдвинутой на четыре отсчета влево, то есть х'(0) = х(4),
х'(1) = х(5),х'(2) =х(6)итакдалее, как показано в левой части рисунка 1.9 (с). Ди­
скретная система инвариантна во времени, потому что выходная последователь­
ность у \п ) равна последовательности у(п), сдвинутой влево на четыре отсчета, или
у \ п ) =у(п +4). Мы можем видеть, что у'(0) = у(4),у'(1) =у(5),и'(?) =у(6) итак да­
лее, как показано на рисунке 1.9 (с). Для инвариантных во времени систем величи­
на сдвига по времени последовательности у равна величине сдвига по времени
последовательности х.
Некоторые авторы поддаются соблазну определять инвариантную во време­
ни систему как такую систему, параметры которой не меняются со временем.
Это определение страдает неполнотой и может причинить нам неприятности,
если мы не будем достаточно внимательны. Мы просто остановимся на формаль­
ном определении, гласящем, что инвариантная во времени система —это система,
для которой сдвиг во времени входной последовательности приводит к равному
сдвигу во времени выходной последовательности. Между прочим, в литературе
инвариантные во времени системы часто называют инвариантными относитель­
но сдвига системами1.
Инвариантная
во времени
дискретная
система
Входной сигналх (п ) --------- ►
(а)
Выходной сигнал у(п) = -х(п)/2
І х(п)
1■•
05 . . ■
ЛГ
(Ь)
18
21
24
27
І
30
03
0 " П t ♦♦ t H t И t n !■ - I f I I I ' H <»Н Н 4 *
Ах'(п)
.!
Рис. 1.9.
“ «12
15
18
»
:
21
24
27
оIf Ц+НЧ-ННЧ 111II11II11111■f(4.—
1
3
І М И І н І > »1 ■ 18
21
24
27
30
Время
ку(гі)
1т
0,5 t
0
+
15 ,
»*
° :і
-0.5
12
Ь-'‘і,...'1
II
15 * м
(с)
69
о f t 11» n I I I І И і
6
9
е-
. * 3 0
° ’5 0
3
6
9
ЗО
0 |||Ц||ІІІ^*Ті|ІІ|Н(ІІ|Іі‘»гЦ-*-
в Ремя
J
.
-0.5
*'■■,»***
и
12
15
18
21
24
27
*
Время
1
Соотношения вход-выход для инвариантной во времени системы:
(а) блок-схема системы, для которой у(п) = -х{п)/2\ (Ь) вход и выход сис­
темы при подаче синусоидального сигнала частотой 1 Гц; (с) вход и вы­
ход системы при подаче синусоидального сигнала частотой 1 Гц,
сдвинутого на четыре отсчета. Если х'(п) =х{п + 4), то у'{п) = у(п + 4)
Примером дискретного процесса, который не является инвариантным во времени, яв­
ляется процесс понижения частоты дискретизации или децимация (прореживание),
описанный в главе 10.
38
Гпава 1. Дискретные последовательности и системы
1.7. Свойство коммутативности линейных
инвариантных во времени систем
Хотя мы не будем обосновывать этот факт до раздела 6.8, сейчас вполне можно
понять, что ЛИВ-системы обладают полезным свойством коммутативности, со­
гласно которому их порядок следования может быть изменен без изменения резу­
льтирующего выходного сигнала. Эта ситуация показана на рисунке 1.10, где две
разные ЛИВ-СИС1 СМЫ соединены последовательно.
Рис. 1.10. Последовательное включение линейных инвариантных во времени
(ЛИВ) систем: (а) исходное соединение ЛИВ-систем; (Ь) изменение по­
рядка включения двух систем не изменяет результирующий выходной
сигнал у(п)
Изменение порядка включения каскадированных систем не изменяет окончате­
льный выходной сигнал. Хотя промежуточные последовательности / ( п) и g(n) в
общем случае не будут совпадать, обе пары ЛИВ-систем будут иметь идентичные
выходные последовательности у(п). Это свойство коммутативности приходит на
помощь разработчикам цифровых фильтров, как мы увидим в главах 5 и 6.
1.8. Анализ линейных инвариантных
во времени систем
Как утверждалось выше, ЛИВ-системы можно анализировать с целью предска­
зания их свойств. В частности, если мы знаем импульсную характеристику некото­
рой ЛИВ-системы, мы можем вычислить все, что можно узнать об этой системе,
т. е. импульсная характеристика системы полностью характеризует ее. Под импу­
льсной характеристикой мы понимаем выходную последовательность системы во
временной области при подаче на вход системы единственного импульса, равного
единице, (единичного импульса), которому предшествуют и за которым следуют
нулевые отсчеты, как показано на рисунке 1.11 (Ь).
Библиография
39
Зная импульсную характеристику ЛИВ-системы, мы можем определить выход­
ную последовательность для любой входной последовательности, т. к. выходная
последовательность равна свертке входной последовательности и импульсной ха­
рактеристики. Более того, имея импульсную характеристику во временной области,
мы можем найти частотную характеристику системы, взяв преобразование Фурье
в форме дискретного преобразования Фурье от импульсной характеристики [5].
Линейная
инвариантная
во времени
дискретная
система
Входной сигнал х(п)
(а)
Выходной сигнал у(п)
4 Импульсная характеристика у(п)
4 Импульсный входной сигнал х(п)
1+ V
единичным отсчет
(Ь)
3
0
3
6
9
12
15
18
21
24
Время
■***“Время
Рис. 1.11. Импульсные характеристики ЛИВ-систем: (а) блок-схема системы; (Ь)
входная последовательностьх(п) и импульсная характеристика у(п)
Не расстраивайтесь, если вы не совсем четко представляете себе, что такое сверт­
ка, частотная характеристика или дискретное преобразование Фурье. Мы введем
эти понятия постепенно и аккуратно по мере надобности в последующих главах.
Здесь же следует уяснить себе, что ЛИВ-системы могут проектироваться и анали­
зироваться с использованием ряда понятных и мощных методов. Эти методы мы
будем добавлять к нашему инструментарию по мере продвижения в изучении
цифровой обработки сигналов.
Библиография
1. Karplus, W. J., and Soroka, W. W. Analog Methods, Second Edition, McGraw-Hill,
New York, 1959, p. 117.
2.
Mikami, N., Kobayashi, М., and Yokoyama, Y. «А New DSP-Oriented Algorithm
for Calculation of the Square Root Using a Nonlinear Digital Filter,» IEEE Trans,
on Signal Processing, Vol. 40, No. 7, July 1992.
3.
Heinen, P., and Neuvo, Y. «FIR-Median Hybrid Filters,» IEEE Trans, on Acoust.
Speech, and Signal Processing, Vol. ASSP-35, No. 6, June 1987.
40
4.
r nasa 1. flucKpeTHbie nocneflOBaTenbHOcmm CMCTeMbi
Oppenheim, A., Schafer, R., and Stockham, T. «Nonlinear Filtering of Multiplied
and Convolved Signals,» Proc. IEEE, Vol. 56, August 1968.
5. Pickerd, John. «Impulse-Response Testing Lets a Single Test Do the Work of Tho­
usands,» EDN, April 27,1995.
Глава 2
Периодическая
дискретизация
Периодическая дискретизация — процесс представления непрерывного сиг­
нала последовательностью дискретных значений —используется во всех облас­
тях цифровой обработки сигналов. На практике дискретизация выполняется
путем подачи непрерывного сигнала на вход аналого-цифрового преобразовате­
ля (АЦП), который выдает на выход последовательность цифровых значений.
Поскольку теория дискретизации играет важную роль в определении точности
и реализуемости любой схемы цифровой обработки сигналов, нам потребуется
уверенное знание эффектов периодической дискретизации, которые часто по­
нимаются не совсем правильно. Первое, что необходимо выяснить в отношении
дискретизации —как часто следует брать отсчеты непрерывного сигнала, чтобы
сохранить содержащуюся в нем информацию. Мы можем дискретизировать не­
прерывный сигнал с любой частотой, с какой пожелаем, и получать последова­
тельность дискретных значений, но возникает вопрос: насколько хорошо эти
значения представляют исходный сигнал? Давайте получим ответ на этот во­
прос и параллельно исследуем различные методы дискретизации, используе­
мые в цифровой обработке сигналов.
2.1. Наложение: неоднозначность
представления сигнала в частотной
области
Существует неоднозначность в частотной области, связанная с отсчетами ди­
скретных сигналов, которая отсутствует в мире непрерывных сигналов, и мы
можем понять влияние этой неопределенности, разобравшись в природе диск­
ретных данных. Для примера предположим, что вы имеете следующую последо­
вательность значений:
х(0 ) = О
х( 1) = 0.866
х(2) = 0.866
х(3) = О
42
Гпава 2. Периодическая дискретизация
х(4) = -0.866
х(5 ) = -0.866
х(6) = О,
и вам сказали, что эти значения представляют мгновенные значения синусоидаль­
ного сигнала во временной области, взятые через одинаковые интервалы време­
ни. А затем вас попросили начертить график этого синусоидального сигнала. Вы,
видимо, начали бы с изображения последовательности значений, показанной на
рисунке 2.1 (а), точками. Затем, вероятно, вы начертили бы синусоиду, показан­
ную на рисунке 2.1 (Ь) сплошной линией, которая проходит через точки, изобра­
жающие нашу последовательность.
Другой человек, однако, мог бы начертить синусоиду, показанную на рисун­
ке 2.1 (Ь) более светлой линией. Мы видим, что исходная последовательность с рав­
ной достоверностью могла бы представлять дискретизированные версии обеих
синусоид. Главное здесь то, что, если последовательность данных представляет
собой равноотстоящие по времени отсчеты синусоиды, мы не можем однозначно
определить частоту синусоиды только по этим отсчетам.
Знакомство с математическими истоками этой частотной неоднозначности
позволяет нам не только справиться с ней, но и извлечь из неё пользу. Выведем
выражение для этой неопределенности в частотной области, а затем посмотрим
несколько конкретных примеров. Рассмотрим непрерывный синусоидальный
сигнал, определенный как
х (г )= $ т (2 л /01).
(2-1)
0.8661
(а)
Время
-
0.866
•Рис. 2 .1 . Частотная неоднозначность: (а) дискретная последовательность значе­
ний; (Ь) две разные синусоиды, которые проходят через точки, соответ­
ствующие отсчетам дискретной последовательности
2.1. Наложение: неоднозначность представления сигнала в частотной области 43
Этот сигнал х (£) представляет собой искусственный синусоидальный сигнал,
частота которого р авн а/0 Гц. Теперь дискретизируем х(£) с частотой / 5отсчетов в
секунду, т. е. через равные интервалы времени длительностью £5 секунд, где
Ь3=1/ / 3. Если мы начинаем дискретизацию в момент С= 0, то получим отсчеты в
моменты времени 0£5, Н3, 2 ^ и так далее. Таким образом, согласно (2-1), первые п
последовательных отсчетов имеют значения
0-й отсчет
х(0) = s\г\(2яfo0ts)
1-й отсчет
х(1) = ъ\г\(2^0 И3)
2-й отсчет
х(2) = зт(2л/г02Г5)
п-й отсчет
х{п) = бп~\{2л^М3)
(2-2)
Выражение (2-2) определяет значение и-го отсчета последовательности х(п)
как значение исходного сигнала в момент времени пЬ3. Поскольку два значения
■синусоиды идентичны, если соответствующие значения аргумента разнесены на
интервал, кратный 2л радиан т. е.,
(ф) = бш(<р+2лт) , где т —любое целое чис­
ло, мы можем модифицировать (2-2) следующим образом:
х(п ) = §т (2л/0 п13 ) = $т (2л/0 п13 + 2лт) = $т (2л(/0 + т/(гй,3))пЬ3)
(2-3)
Если мы выберем т кратным п, т = кп, мы можем заменитьотношение т /п в
(2-3) целочисленной переменной так что
х(п) = з т (2 л (/0 + к /^ )и^ ) .
(2-4)
Поскольку/5= 1/(3, мы можем приравнять последовательности х(п) в (2-2) и (2-4):
х(п) = $\п(2л/0 Ш3) = $т (2л(/0 + к/5 )гА$).
(2-5)
Следовательно, множители / 0 и ( / 0+ к/3 ) в (2-5) дают одинаковый результат.
Смысл (2-5) имеет критическое значение. Это выражение показывает, что последо­
вательность цифровых отсчетов х(п), представляющая синусоиду частотой / 0 Гц,
точно так же представляет синусоиды с другими частотами, а именно / 0 + к/3.
Это одно из важнейших соотношений в области цифровой обработки сигналов.
Это нить, которой сшиты все схемы дискретизации. Словами смысл (2-5) мож­
но выразить так:
При дискретизации с частотой /^отсчетов в секунду мы не можем различить ди­
скретизированные значения синусоиды частотой ^ Гц и синусоиды частотой
+ М5) Гц, если к — любое положительное или отрицательное целое число.
Это действительно так. Никакая последовательность значений, хранимая в па­
мяти компьютера, например, не может однозначно представлять одну и только
одну синусоиду без дополнительной информации. Это положение в равной мере
применимо к выходным отсчетам АЦП и к отсчетам сигналов, сгенерированных
компьютерными программами. Дискретная природа любой последовательности
значений приводит к тому, что эта последовательность представляет бесконеч­
ное количество разных синусоид.
Формула (2-5) оказывает влияние на все схемы цифровой обработки сигналов.
В этом лежит причина того, что, хотя мы показали это только для синусоидаль­
ных сигналов, спектр любой дискретной последовательности значений содержит
44
Гпава 2. Периодическая дискретизация
периодически повторяющиеся копии исходного спектра непрерывного сигнала
(подробнее мы поговорим об этом в главе 3). Период повторения этих копий спек­
тра в частотной области всегда равен f s , и периодический спектр простирается от
постоянной составляющей до бесконечности в обоих направлениях частотной
оси. Это происходит потому, что k в (2-5) может быть любым положительным
или отрицательным целым числом. (В главах 5 и б мы узнаем, что (2-5) является
причиной периодичности частотных характеристик всех цифровых фильтров в
частотной области и играет важную роль при анализе и проектировании попу­
лярного типа цифровых фильтров, известных как фильтры с бесконечной им­
пульсной характеристикой.)
Чтобы продемонстрировать влияние (2-5), построим на рисунке 2.2 и рассмот­
рим процесс дискретизации синусоиды частотой 7 кГц с частотой дискретизации
6 кГц. Отсчеты берутся каждую 1/6000 секунды или один раз за каждые 167 мик­
росекунд, а их значения изображены на рисунке 2.2 (а) точками.
Заметьте, что значения отсчетов вообще не изменились бы, если бы вместо на­
шей синусоиды мы дискретизировали синусоиду частотой 1 кГц. В этом примере
параметры (2-5) равны:/0 = 7 кГц,/5 = 6 кГц tfk = -1, так что f 0+kfs = [7+( -1 • 6)] =
7 кГц. Проблема состоит в том, что никакой алгоритм обработки не может опреде­
лить, является ли данная последовательность дискретных отсчетов, значения ко­
торых показаны точками, результатом дискретизации синусоиды частотой 7 кГц
или синусоиды частотой 1 кГц. Если подать эти значения на некоторый цифровой
прибор, который измеряет энергию сигнала на частоте 1 кГц, то выход прибора
покажет энергию на частоте 1 кГц. Но мы-то знаем, что в нашем исходном сигнале
нет составляющих с частотой 1 кГц —наш входной сигнал представляет собой чи­
стый тон с частотой 7 кГц. Формула (2-5) заставляет синусоиду с именем 7 кГц
выступать под псевдонимом (alias) 1 кГц. Попросить кого-нибудь определить, си­
нусоида какой частоты дала отсчеты, показанные на рисунке 2.2 (а), — это то же
самое, что спросить: «Когда я сложил два числа, я получил сумму четыре. Какие
числа я складывал?» Ответ состоит в том, что существует бесконечное количест­
во пар чисел, сумма которых дает четыре. '
Рисунок 2.2 (Ь) показывает другой пример частотной неоднозначности, кото­
рую мы будем называть наложением (aliasing), когда синусоида частотой 4 кГц
может быть принята за синусоиду частотой -2 кГц. На рисунке 2.2 (Ь) параметры
(2-5) имеют значения: / 0 = 4 кГц,/х = 6 кГц и к = -7 , так ч т о /0+&/5= [4+ (-1 • 6)] =
- 2 кГц. Как и раньше, если мы рассмотрим внимательно последовательность чи­
сел, представляющих точки на рисунке 2.2 (Ь), то не сможем определить, какая си­
нусоида была дискретизирована — тон частотой 4 кГц или тон частотой -2 кГц.
(Хотя понятие отрицательной частоты может показаться несколько странным, оно
обеспечивает нам красивую и состоятельную методику предсказания эффектов ди­
скретизации. В главе 8 обсуждаются отрицательные частоты и их связь с действи­
тельными и комплексными сигналами.)
Если мы ограничим интересующий нас спектральный диапазон частотами в
пределах ± f s /2 Гц, предыдущие два примера приобретают особое значение. Час­
тота f s /2 в теории дискретизации является важной величиной и в литературе из­
вестна под разными названиями1: критическая частота Найквиста, половина
В русскоязычной литературе эта частота традиционно не имеет специального назва­
ния, но в последнее время под влиянием англоязычной литературы появилась тенден­
ция называть ее частотой Найквиста —{прим. перев ). •
2.1. Наложение: неоднозначность представления сигнала в частотной области 45
частоты Найквиста, частота заворота. Графическое изображение двух наших при­
меров наложения частот приведено на рисунке 2.2 (с). Нас интересуют компонен­
ты сигнала, которые вследствие наложения отображаются в диапазоне частот от
~/5/2 до +/5/2. Обратите внимание на то, что в интересующем нас диапазоне час­
тот (±3 кГц, т. к./5= 6 кГц), имеется энергия на частотах -2 кГц и +1 кГц, получен­
ная вследствие наложения частот 4 кГц и 7 кГц, соответственно. Заметим также,
что вертикальные позиции точек на рисунке 2.2 (с) не имеют значения, но их го­
ризонтальные позиции показывают, какие частоты накладываются друг на друга.
Время
-2 КГц
Время
Интересующий нас
диапазон частот
Частота
(КГц)
Рис. 2 .2 .
Эффекты частотной неоднозначности, вытекающие из (2-5): (а) дискре­
тизация синусоиды частотой 7 кГц с частотой дискретизации 6 кГц; (Ь)
дискретизация синусоиды частотой 4 кГц с частотой дискретизации 6
кГц; (с) спектральные соотношения, демонстрирующие наложение сину­
соид с частотами 7 кГц и 4 кГц
Общее изображение наложения имеет вид зубчатой структуры на рисунке 2.3
(а). Обратите внимание на то, что пики структуры расположены на частотах,
46
Гпава 2. Периодическая дискретизация
кратных / 5 Гц. Структура показывает, как сигнал, лежащий на пересечении го­
ризонтальной линии с одной из наклонных линий, накладывается на все пересе­
чения этой же горизонтальной линии со всеми другими наклонными линиями с
таким же наклоном. Например, структура на рисунке 2.3 (Ь) показывает, что ди­
скретизация синусоиды частотой 7 кГц с частотой дискретизации 6 кГц дает диск­
ретную последовательность чисел, спектр которых представляет тоны с частотами
1 кГц, 7 кГц, 13 кГц, 19 кГц и т. д. Остановимся на минуту и дадим этим весьма
важным понятиям немного устояться. Представление непрерывного сигнала ди­
скретной последовательностью содержит в себе неизбежную неоднозначность в
частотной области. Эту неоднозначность необходимо учитывать во всех практиче­
ских алгоритмах цифровой обработки сигналов.
Интересующий
(КГц)
Рис. 2 .3.
Зубчатая структура: (а) наложение на частотах, кратных частоте дискре­
тизации; (Ь) наложение синусоиды частотой 7 кГц на 1 кГц, 13 кГц и 19 кГц
А теперь рассмотрим эффекты дискретизации сигналов, которые представля­
ют больший интерес, чем простые синусоиды.
2.2. Дискретизация низкочастотных
сигналов
Рассмотрим дискретизацию непрерывного действительного сигнала, спектр
которого показан на рисунке 2.4 (а). Заметим, что спектр симметричен относите­
льно частоты 0 Гц и его значения равны 0 для частот выше +В Гц и ниже - В Гц, т. е.
это сигнал с ограниченным спектром. (С практической точки зрения термин сиг­
нал с ограниченным спектром просто означает, что энергия сигнала за пределами
диапазона ±В Гц ниже чувствительности нашей системы.) Задавшись частотой
дискретизации / 5 отсчетов в секунду, мы можем увидеть эффект размножения
спектра при дискретизации на рисунке 2.4 (Ь), на котором показаны исходный
спектр, а также бесконечное количество копий, повторяющихся с периодом/5Гц.
2. 2. Дискретизация низкочастотных сигналов
47
(Хотя в разделе 1.1 мы установили, что представление дискретных последовате­
льностей в частотной области само является дискретным1, копии спектра на ри­
сунке 2.4 (Ь) показаны непрерывными линиями, а не дискретными точками,
просто для того, чтобы рисунок не выглядел слишком загроможденным. Мы рас­
смотрим все особенности дискретного частотного спектра в главе 3.)
Рис. 2 .4 .
Размножение спектра: (а) спектр исходного непрерывного сигнала; (Ь)
размножение спектра дискретного сигнала при fs /2 > В; (с) наложение
частот при слишком низкой частоте дискретизации, потому что fs/ 2 < B
Вернемся немного назад, чтобы понять всё значение рисунка 2.4. На рисун­
ке 2.4 (а) показан спектр непрерывного сигнала, который может существовать то­
лько в одной из двух форм. Либо это непрерывный сигнал, который можно
дискретизировать с помощью АЦП, либо это просто абстрактное понятие, такое
как математическое выражение для сигнала. Он не может быть представлен в
цифровой машине в форме с ограниченным спектром. Как только сигнал пред­
ставляется последовательностью дискретных значений, его спектр принимает
размноженную форму, показанную на рисунке 2.4 (Ь).
Размноженные спектры —не просто плод воображения математиков; они ре­
ально существуют и оказывают глубокое влияние на последующую цифровую
обработку сигналов2. Размножение спектра может показаться безвредным, и
1 Это не совсем так, но оставим данное утверждение на совести автора —(прим. перев.).
2
К концу раздела 5.9 в качестве примера использования теоремы о свертке будет приве­
дено другое обоснование размножения спектра при периодической дискретизации
48
Гпава 2. Периодическая дискретизация
естественно было бы спросить: «Зачем уделять так много внимания размноже­
нию спектра? Нас ведь интересует только диапазон частот в пределах ± / 5 /2». Это
так, но если мы выполняем операцию переноса по частоте или изменяем частоту
дискретизации путем прореживания или интерполяции, размноженный спектр
сдвигается как раз в интересующий нас диапазон частот ± / 5/2 и может вызвать
проблемы [ 1]. Рассмотрим, как можно управлять расположением копий спектра.
В практических схемах АЦП / 5 всегда берется больше 2В, чтобы оставить раз­
делительный промежуток в районе частот заворота ± / 5/2. Это очень важное соот­
ношение: У5 > 2В — известно как критерий Найквиста . Чтобы показать, почему
частота/5 /2 называется частотой заворота, понизим частоту дискретизации до ве­
личины / 5 = 1.5В Гц. Спектральный результат такой дискретизации показан на ри­
сунке 2.4 (с). Копии спектра теперь перекрывают исходный спектр с центром на
частоте 0 Гц. Ограничив наше внимание окрестностью частот ± /5/2 Гц, мы видим
два очень интересных эффекта. Во-первых, нижняя и верхняя границы копий спек­
тра с центральными частотами +/5и - / 5теперь лежат в интересующей нас полосе
частот. Эта ситуация эквивалентна заворачиванию исходного спектра влево отно­
сительно частоты +/5/2 и вправо относительно частоты —/ $/2. Части копий спек­
тра теперь взаимодействуют с исходным спектром, в результате чего появляются
ошибки наложения. Дискретные отсчеты, связанные со спектром, показанным на
рисунке 2.4 (с), больше не представляют корректно исходный сигнал. Спектраль­
ная информация в полосах частот от - В до - В /2 и от В /2 до В Гц искажена. Мы
показываем уровень спектра в областях наложения более бледной линией, поско­
льку мы точно не знаем, каким он будет.
Второй эффект, иллюстрируемый рисунком 2.4 (с), состоит в том, что весь спектр
исходного непрерывного сигнала сосредоточен в полосе частот между - / $/2 и + / 5/2.
Это ключевое свойство показано на рисунке 2.4 (Ь) и будет иметь место всегда, неза­
висимо от дискретизируемого сигнала и частоты дискретизации. Этот эффект осо­
бенно важен, когда мы оцифровываем непрерывные сигналы. Он предупреждает нас
о том, что любая энергия, расположенная выше +В Гц и ниже - В Гц в спектре ис­
ходного непрерывного сигнала, показанного на рисунке 2.4 (а), всегда после диск­
ретизации окажется в интересующей нас полосе частот, независимо от частоты
дискретизации. По этой причине на практике необходимы непрерывные (аналого­
вые) фильтры нижних частот.
Проиллюстрируем сказанное, показывая на рисунке 2.5 (а) непрерывный сиг­
нал с шириной спектра В, сопровождаемый шумом. Дискретизация этой непре­
рывной смеси с частотой, которая превышает 2В, позволяет избежать наложения
копий спектра полезного сигнала, но вся энергия шума все равно попадает в диа­
пазон частот между - / 5/2 и + / 5/2 нашего дискретного спектра, показанного на
рисунке 2.5 (Ь).
Практически эта проблема решается применением аналогового антиэлайзингового фильтра нижних частот перед АЦП для уменьшения любой нежелательной
энергии сигнала на частотах выше +В и ниже - В Гц, как показано на рисунке 2.6.
Пример характеристики фильтра нижних частот показан более бледной линией,
наложенной на спектр исходного непрерывного сигнала на рисунке 2.6. Заметьте,
что спектр выходного сигнала фильтра нижних частот ограничен, и наложений в
спектре выходных данных АЦП удается таким образом избежать.
' В русскоязычной литературе в этом случае ссылаются на теорему Котельникова —
(прим. перев.).
49
2.3. Дискретизация полосовых сигналов
Шум
Рис. 2 .5.
Шум
Рис. 2 .6 .
Интересующий
нас сигнал
Шум
Размножение спектра: (а) спектр смеси сигнала с шумом; (Ь) спектр ди­
скретного сигнала, в котором шум искажает полезный сигнал
Шум
Низкочастотная фильтрация перед дискретизацией счастотой ^ Гц
Этим завершается обсуждение простой низкочастотной дискретизации. Те­
перь перейдем к более сложной схеме дискретизации, которая оказалась весьма
полезной на практике.
2.3. Дискретизация полосовых сигналов
Хотя дискретизация низкочастотных сигналов, иллюстрируемая рисунком 2.6,
удовлетворяет большинству требований, это не единственная схема дискретиза­
ции, используемая на практике. Для дискретизации непрерывных полосовых сиг­
налов, центральные частоты которых отличны от нуля, мы можем использовать
метод, известный как полосовая дискретизация. Когда ширина спектра и централь­
ная частота непрерывного входного сигнала позволяют, полосовая дискретизация
не только дает возможность снизить требуемое быстродействие АЦП по сравне­
нию с традиционной низкочастотной дискретизацией, но и уменьшает объем памя­
ти, необходимый для хранения сигнала на заданном интервале.
В качестве примера рассмотрим дискретизацию сигнала с ограниченным спек­
тром, показанного на рисунке 2.7 (а), с центральной частотой/с = 20 МГц и шири­
ной спектра В = 5 МГц. Мы используем термин полосовая дискретизация для
50
Гпава 2. Периодическая дискретизация
процесса дискретизации непрерывных сигналов, центральные частоты которых
отличны от 0 Гц. То, что мы называем полосовой дискретизацией, в литературе
упоминается под различными другими названиями, такими как дискретизация
ПЧ, гармоническая дискретизация [2], суб-найквистовская дискретизация и ди­
скретизация с пониженной частотой [3]. В случае полосовой дискретизации нас
больше волнует ширина спектра сигнала, чем его наивысшая частота. Заметим,
что часть сигнала, соответствующая отрицательным частотам, с центром на часто­
те - / с, представляет собой зеркальное отражение части, соответствующей положи­
тельным частотам, как и должно быть для действительных сигналов. Наивысшая
частота в спектре нашего полосового сигнала составляет 22.5 МГц. В соответст­
вии с критерием Найквиста (дискретизация с частотой, превышающей в 2 раза
наивысшую частоту в спектре сигнала) частота дискретизации должна состав­
лять не менее 45 МГц. Рассмотрим, что произойдет, если частота дискретизации
будет равна 17.5 МГц, как показано на рисунке 2.7 (Ь). Заметим, что исходные
спектральные компоненты остаются на частотах ± /с, а копии спектра расположены
в области низких частот, смыкаясь на нулевой частоте. Рисунок 2.7 (Ь) показывает,
что для того, чтобы избежать наложений спектра, не нужна дискретизация с часто­
той 45 МГц — вместо этого мы используем эффект размножения спектра (2-5)
для достижения своей цели.
П олосовой спе ктр
(непр ер ы вного
сигнала)
(а)
Частота
Рис. 2 .7 .
Дискретизация полосового сигнала: (а) спектр исходного непрерывного
сигнала; (Ь) размножение спектра дискретизированного сигнала при ча­
стоте дискретизации 17.5 МГц.
Полосовая дискретизация выполняет оцифровку и перенос по частоте как
один процесс, который часто называют дискретизирующим переносом.. В мире
цифровой обработки сигналов процессы дискретизации и переноса по частоте
тесно связаны друг с другом, а каждая операция дискретизации внутренне приво­
дит к размножению спектра. Любопытный читатель может спросить: «А можем
ли мы дискретизировать с еще более низкой частотой и не иметь наложений?»
Ответ: да, но чтобы установить, как это сделать, мы должны пробиться сквозь
вывод одного важного соотношения полосовой дискретизации. Вознагражде­
ние, однако, будет стоить затраченных усилий, потому что именно здесь полосо­
вая дискретизация действительно становится интересной.
2.3. Дискретизация полосовых сигналов__________________________________ 51
Предположим, что мы имеем непрерывный входной сигнал с шириной спектра
В. Его несущая частота равна / с Гц, т. е. центральная частота его спектра равна / с
Гц, а спектр дискретизированного сигнала показан на рисунке 2.8 (а). Мы можем
дискретизировать этот непрерывный сигнал с частотой, скажем, / 5 Гц, так что ко­
пии спектра для положительных и отрицательных частот, Р и (), стыкуются как
раз на частоте 0 Гц. Эта ситуация, показанная на рисунке 2.8 (а), напоминает ри­
сунок 2.7 (Ь). При произвольном количестве копий, например, т в диапазоне 2 /с
— В мы видим, что
или Л ’ =
= 21с ~ в
( 2- 6)
- в )/т -
2ГС-В
-►1«—
—,
Г -В/2 ■
(а)
|Ч.-] Г-, ..-1 :ч
І Ш
І І и
.ч
| р.
/ті М н
С
-2 Г
2Г.
Ч а сто та
2ГС-В
I
(Ь)
•
*
Ї
\
•
•
, І1±1[±1
її
• •Р !
Ч-.'
Р:
±:..и±
Ч а сто та
/К
(с)
1
-Л
Рис. 2 .8 .
г*
•
і-Л -Ш
і"
Л
-2Г.
1
г'
■
і ,.і ;р =
'і:
г*
1
*1
I*
'
*1
•
*1
г
I
•’ , = і 1. 1 І і Г. Г
2Г.
►
Ч а сто та
Пределы частоты при полосовой дискретизации: (а) частота дискрети­
зации = {21с - В)/6; (Ь) частота дискретизации меньше /д>; (с) минима­
льная частота дискретизации
< /д.
На рисунке 2.8 (а) т = 6 принято только для иллюстрации. Конечно, т может
быть любым положительным числом, если только / 5>не меньше 2В. Если частота
дискретизации/5-повышается, исходный спектр (жирная линия) не смещается, но
все его копии смещаются. Вблизи нулевой частоты полоса Р сдвигается вправо, а
полоса () —влево. Эти копии перекроются, и возникнут искажения наложения. Та­
ким образом, из (2-6) следует, что для произвольного т существует частота, кото­
рую частота дискретизации не должна превосходить, или
Л ' ^ (2Л - в ) / т или (2/с - в ) / т - Л
(2-7)
Если мы уменьшим частоту дискретизации ниже значения/5-, показанного на ри­
сунке 2.8 (а), промежутки между копиями будут уменьшаться в направлении стре­
лок на рисунке 2.8 (Ь). В этом случае исходный спектр тоже не будет смещаться при
изменении частоты дискретизации. При некоторой новой частоте дискретизации
15"< / 5’, копия Р 'упрется в исходный спектр в области положительных частот с цент­
ром на частоте/ >как показано на рисунке 2.8 (с). В этом случае мы знаем, что
( т + 1)/5~= 2 /с + В или / 8.. = (2/с + В )/(т + 1) .
(2-8)
52
Гпава 2. Периодическая дискретизация
При дальнейшем уменьшении/5„копия Р' будет сдвигаться вниз по частоте и
начнет накладываться на исходный спектр на частоте / с , что приведет к искаже­
ниям. Следовательно, согласно (2-8) для т+1 существует частота, которую часто­
та дискретизации всегда должна превышать, или
Л - г ( 2 / с + В ) /( т + 0 -
(2-9)
Теперь мы можем объединить (2-7) и (2-9) и сказать, что для предотвращения
наложений частота/ 5 должна выбираться в диапазоне от / 5- д о /5-, или
(2/с - В )/т > / 5 > (2{с + В )/(т + 1) ,
(2- 10)
где т —произвольное положительное целое число, которое выбирается так, чтобы
выполнялось соотношение/5 > 2В. (Для этого типа периодической дискретизации
действительных сигналов, известного как действительная дискретизация первого
порядка, по-прежнему должен удовлетворяться критерий Найквиста/5 > 2В.)
Чтобы лучше понять важное соотношение (2-10), вернемся к нашему примеру
полосового сигнала, для которого (2-10) позволяет построить таблицу 2.1. Эта таб­
лица говорит нам, что частота дискретизации может находиться в диапазоне от 22.5
до 35 МГц, в диапазоне от 15 до 17.5 МГц или в диапазоне от 11.25 до 11.66 МГц.
Никакое значение частоты дискретизации ниже 11.25 МГц неприемлемо, посколь­
ку оно не удовлетворяет ни соотношению (2-10), ни условию /5 > 2В. Спектры
для нашего полосового сигнала при нескольких частотах дискретизации из табли­
цы 2.1 показаны на рисунке 2.9. Заметим, что, когда/, равна 7.5 МГц (т = 5), мы име­
ем наложение, потому что ни нижняя граница в (2-10), ни условие / 5 > 2В не
соблюдаются. Значение т = 4 также неприемлемо, т. к. условие/5 > 2В не удовлет­
воряется. Последний столбец таблицы 2.1 содержит оптимальные значения час­
тоты дискретизации для каждого подходящего значения т. Оптимальная частота
дискретизации определяется здесь как частота, при которой копии спектра не со­
прикасаются друг с другом, за исключением окрестности нулевой частоты. На­
пример, в диапазоне допустимых частот для т = 1 гораздо легче выполнять
последующую цифровую фильтрацию или другую обработку отсчетов сигнала,
спектр которого показан на рисунке 2.9 (Ь), чем в случае спектра, показанного на
рисунке 2.9 (а).
Таблица 2 .1 . Результат применения (2-10) к примеру полосового сигнала
т
(2Гс- В ) / т
(2Гс+ В ) / ( т + 1 )
Оптимальная
частота
дискретизации
1
35.0 МГц
22.5 МГц
22.5 МГц
2
17.5 МГц
15.0 МГц
17.5 МГц
3
11.66 МГц
11.25 МГц
11.25 МГц
4
8.75 МГц
9.0 МГц
—
5
7.0 МГц
7.5 МГц
—
2.3. Дискретизация полосовых сигналов
53
Читатель может поинтересоваться: «Всегда ли оптимальная частота дискрети­
зации равна минимальному допустимому согласно (2-10) значению/5?» Ответ за­
висит от конкретного приложения — возможно, имеются некоторые системные
ограничения, которые следуёт учесть. Например, в цифровой телефонии для
упрощения дальнейшей обработки частоты дискретизации выбираются кратны­
ми 8 кГц [4]. Другим фактором, зависящим от приложения и влияющим на выбор
оптимальной/5, является форма характеристики аналогового антиэлайзингового
фильтра [5]. На практике часто компоненты высококачественных АЦП настраи­
ваются в процессе производства так, чтобы обеспечить максимальную линей­
ность на высоких частотах ( >5 МГц). Их использование на более низких частотах
не рекомендуется.
Для иллюстрации природы (2-10) было бы интересно построить график мини­
мальной частоты дискретизации, (2 /с+В)/(т+1), при разных значениях т, как
функцию переменной Я, определяемой как
7? = (наивысшая частота)/(ширина спектра) = ( /с + В /2 )/В . (2-11)
Исходи э|й спектр
(а)
I
-25.0
м
I
-20 .0
Ис> одный спектр
У 2 .
^ = 35.0 М Гц
1
т = 1
I
I
-15.0
I
■ I
-10 .0
-5 .0
■
>
Э
I
5.0
'
I
10.0
I
15.0
Ьт-^
20.0
25.0
У2
Г3 = 2 2 .5 М Гц
т= 1
(Ь)
' Г
-25.0
(с)
'1
-20.0
I
'
-15.0
Г " "т
-10.0
I
1
-5 .0
1
0
1
5.0
I
10.0
1
I
15.0
I
I
25.0
V2
I
-25.0
I
I
-20.0
-15.0
I
-10 .0
1 ■ 1
-5. 0
■11"""
3
50
10.0
т
■I '
'I '
15.0
20.0
№
I'
(е)
-20.0
-15 .0
-10 .0
-5 .0
0
5.0
11.25 МГц
'‘
У2
Г ■ 1 1 1 1 1 1
-25.0
-20.0
-15 .0
-10.0
/_ = 7.5 М Гц
1
25.0
М1 Ц
=2
М Гц
т=2
/~ = 15.0 М Гц
-25.0
77^ -
Г
20.0
1
-5 .0
10.0
^11Г1
1 1 1 1
0
Наложение
5.0
10.0
I »' Г
15.0
20.0
1 1 > 1
15.0
20.0
I
25.0
М Гц
г 1^3
гя
1 МГ
25.0
Наложение
т=5
(О
-25.0
-20 .0
-15 .0
-10 .0
-5 .0
0
5.0
10.0
15.0
20.0
25.0
М Гц
Рис. 2 .9. Различные варианты размножения спектра из таблицы 2.1: (а) ^=35 МГц; (Ь)
/д=.22.5 МГц; (с)
17.5 МГц; (с!) ^=15 МГц; (е) 15=11.25 МГц; ф ^=7.5 МГц
54
Гпава 2. Периодическая дискретизация
Если мы пронормируем минимальную частоту дискретизации из (2-10), раз­
делив ее на ширину спектра В, мы получим график в нормированных координа­
тах, показанный жирной линией на рисунке 2.10. Этот рисунок показывает
минимальную нормированную частоту дискретизации как функцию наивыс­
шей нормированной частоты в спектре полосового сигнала. Заметим, что, неза­
висимо от значения Я, минимальная частота дискретизации никогда не должна
превосходить 4В и приближается к 2В при увеличении несущей частоты. Как
это ни удивительно, минимальная допустимая частота дискретизации в дейст­
вительности понижается при увеличении несущей частоты полосового сигнала.
Мы можем интерпретировать рисунок 2.10, рассмотрев снова наш пример поло­
сового сигнала на рисунке 2.7, где Л = 22.5/5 = 4.5. Это значение отмечено на
рисунке 2.10 серой линией, показывая, что тп = 3 и/ 5/В = 2.25. При В = 5 МГц по­
лучаем минимальное значение / 5 = 11.25 МГц, что согласуется с таблицей 2.1.
Крайняя левая линия на рисунке 2.10 соответствует случаю низкочастотной дискре­
тизации, когда частота дискретизации / 5 должна равняться удвоенной наивысшей
частоте в спектре. Таким образом, нормированная частота дискретизации / 5 /В
равна удвоенной наивысшей частоте, деленной на В, другими словами, равна 2К
. Минимальное значение ^В
Рис. 2 .1 0 . Минимальная частота полосовой дискретизации согласно (2-10)
Рисунок 2.10 хорошо известен по литературе, но его обычное представление
позволяет читателю прийти к ложному заключению о том, что допустимой часто­
той дискретизации будет любая частота выше минимума, показанного на данном
рисунке [6-12]. Существует разумный способ избежать недоразумений [13]. Если
мы построим график приемлемых диапазонов частоты полосовой дискретизации
согласно (2-10) как функцию Л, мы получим картину, приведенную на рисун­
ке 2.11. Как мы видели из (2-10), таблицы 2.1 и рисунка 2.9 допустимые частоты
полосовой дискретизации образуют ряд частотных диапазонов, разделенных неп­
риемлемыми диапазонами частот дискретизации, т. е. допустимая частота поло­
совой дискретизации должна быть выше минимума, показанного на рисунке 2.10,
но не может быть просто любой частотой, превышающей минимум. Серые облас­
ти на рисунке 2.11 показывают те нормированные частоты полосовой дискретиза­
ции, которые приводят к наложению спектров. Частоты дискретизации в белых
2.3. Дискретизация полосовых сигналов
55
областях рисунка 2.11 допустимы. Таким образом, для полосовой дискретизации
мы хотим выбрать частоту дискретизации в одной из белых расходящихся полос,
соответствующей некоторому значению тп из (2-10). Попробуем понять значение
рисунка 2.11с помощью рассмотренного раньше примера полосового сигнала, по­
казанного на рисунке 2.7.
Отношение наивысшей частоты компонента к ширине спектра
Рис. 2 .1 1 . Области допустимых значений частот полосовой дискретизации соглас­
но (2-10), нормализованных относительно ширины спектра сигнала ^5/В
На рисунке 2.12 значение Я (наивысшая частота/ширина спектра) для нашего
примера, равное 4.5, показано жирной серой вертикальной линией. Поскольку эта
линия пересекает всего три белые клинообразные области, можно сделать вывод,
что существуют всего три диапазона допустимых частот дискретизации, и это со­
гласуется с результатами, приведенными в таблице 2.1. Пересечение линии Я = 4.5
с границами белых клинообразных областей дает значения частот дискретизации,
приведенные в таблице 2.1. Таким образом, рисунок 2.11 дает значительно более
наглядное изображение границ допустимых значений частот полосовой дискрети­
зации, чем рисунок 2.10.
Хотя рисунки 2.11 и 2.12 показывают, что мы можем использовать частоту ди­
скретизации, лежащую на границе между серой и белой областями, этих значений
частоты дискретизации на практике следует избегать. Неидеальность аналоговых
полосовых фильтров, нестабильность генераторов тактовых сигналов частоты
дискретизации, несовершенство имеющихся АЦП делают невозможной точную
реализацию этого идеального случая. Для уверенности было бы разумно выбирать
56
Глава 2. Периодическая дискретизация
значение/5, несколько удаленное от границ области. Рассмотрим сценарий поло­
совой дискретизации, показанный на рисунке 2.13. При использовании типового
(неидеального) аналогового полосового фильтра, частотная характеристика ко­
торого показана серой линией, разумно было бы использовать в наших уравнени­
ях в качестве ширины полосы пропускания не В, а Вф. То есть мы создаем по обе
стороны полосы пропускания фильтра защитные полосы, так что становится воз­
можным некоторое наложение спектров, которое не искажает полезный сигнал,
как показано в нижней части рисунка 2.13.
Рис. 2 .1 2 . Допустимые частоты дискретизации для примера полосового сигнала (В
= 5 MHz) при R =4.5
Мы можем связать эту идею использования защитных полос с рисунком 2.11,
посмотрев более внимательно на один из белых клиньев. Как показано на рисунке
2.14, мы хотели бы выбрать частоту дискретизации как можно ближе к вершине
белой области —чем ниже мы смещаемся по клину, тем ниже частота дискретиза­
ции. Однако, чем ближе мы находимся к границе затененной области, тем уже дол­
жны быть защитные полосы, для чего требуется аналоговый полосовой фильтр с
более крутыми скатами частотной характеристики, а также более узкие допуски на
точность и стабильность частоты задающего генератора нашего АЦП. (Помните,
что работа на границе между белой и затененной областями приводит к тому, что
копии спектра соприкасаются друг с другом.) Поэтому для безопасности мы ра­
ботаем в некоторой промежуточной точке, на некотором расстоянии от границ за­
тененных зон, как показано на рисунке 2.14. Дальнейший анализ соотношения
ширины защитных полос и параметров синхросигналов АЦП приводится в [13].
В нашем обсуждении мы только констатируем, что хорошим является выбор та­
кой частоты дискретизации, которая лежит не слишком близко к границам между
белыми и затененными областями на рисунке 2.11.
2.3. Дискретизация полосовых сигналов
57
Рис. 2 .1 3 . Полосовая дискретизации при наличии наложений только в защитных
полосах
Ширина защитной полосы
Рис. 2 .1 4 . Типовый выбор рабочего значения ^ для компенсации неидеальности
аппаратуры
Имеется несколько способов обеспечить работу вдали от границ. Один состо­
ит в том, чтобы установить значение частоты дискретизации посреди белого
клина для заданного значения К. Мы делаем это, вычисляя среднее между мак­
симальным и минимальным значениями частоты дискретизации в (2-10) для
конкретного значения т, т. е. для центрирования рабочей точки частоты дискре­
тизации внутри клина мы используем выражение
/,
cn.tr
- [(.2/с - В )/т + (2 /с + В )/(т + 1)] /2 -
- ( / с -В /2 )/т + ( /с + В/2)/(т + 1).
(2-12)
58
Глава 2. Периодическая дискретизация
Другой способ не попасть на границу на рисунке 2.14 состоит в использовании
следующего выражения для определения промежуточной рабочей точки / 5:
i
15 = 4 /с/тпш ,
(2-13)
I
где тоМ — нечетное целое [14]. Использование (2-13) дает то преимущество, что
спектр интересующего нас дискретизированного сигнала будет центрирован отно­
сительно частоты, равной четверти частоты дискретизации (/5. /4). Эта ситуация
привлекательна, т. к. при этом существенно упрощается последующее комплексное
понижающее преобразование (перенос по частоте), используемое во многих при­
ложениях цифровой связи. Конечно, значение т0^ должно выбираться так, чтобы
выполнялось ограничение НайквистаД. > 2В. Результаты применения уравнений
(2-12) и (2-13) к нашему полосовому сигналу приведены на рисунке 2.15.
Рис. 2 .1 5 . Промежуточные рабочие значения
и /§сп^ согласно (2- 12) и (2- 13), по­
зволяющие избежать работы на границах серых зон, для примера поло­
сового сигнала с В = 5 МГц и Я = 4.5
2.4. Инверсия спектра при полосовой
дискретизации
Некоторые допустимые значения/5, удовлетворяющие (2-10), хотя и позволя­
ют избежать проблем с наложением, дают основной спектр (сосредоточенный в
районе 0 Гц), который инвертирован по отношению к исходному спектру, т. е.
форма спектра в области положительных частот будет совпадать с формой исход­
ного спектра в области отрицательных частот. Эта инверсия спектра происходит
2.4. Инверсия спектра при полосовой дискретизации
59
всегда, когда т в (2-10) является нечетным целым, как показано на рисунках 2.9 (Ь)
и 2.9 (е). Когда компоненты исходного спектра, соответствующие положительным
частотам, симметричны относительно^, инверсия спектра не порождает никаких
проблем, и может быть выбрано любое значение/5из (2-10), не приводящее к нало­
жениям. Однако, когда инверсии спектра следует избегать, например, при обработ­
ке однополосных сигналов, минимальная допустимая частота дискретизации, при
которой отсутствует инверсия спектра, определяется соотношением (2-10) при
одном ограничении: т должно быть наибольшим четным числом, при котором
выполняется неравенство/5 > 2В. При использовании нашего определения опти­
мальной частоты дискретизации выражение, которое дает оптимальные неинвер­
тирующие частоты дискретизации и не позволяет копиям спектра соприкасаться
нигде, кроме нулевой частоты, имеет вид
(2-14)
Л0 = (2/с - в)/т ,even ’
где теьеп = 2 ,4 ,6 ит. д. Для нашего примера полосового сигнала (2-14) при т = 2
дает оптимальную неинвертирующую частоту дискретизации/5 = 17.5 МГц, как
показано на рисунке 2.9 (с). В этом случае обратите внимание на то, что спектр,
перемещенный на нулевую частоту, имеет ту же ориентацию, что и исходный
спектр, расположенный на центральной частоте 20 МГц. Если же в вашем прило­
жении инверсия спектра не имеет значения, мы можем определить минимальную
частоту дискретизации, не выбирая разные значения т в (2-10) и не создавая таб­
лицу, как мы делали в случае таблицы 2.1. Рассматривая рисунок 2.16, вопрос
можно поставить так: «Сколько копий положительных и отрицательных частей
спектра шириной В можно уместить в полосе частот шириной 2 /с + В без наложе­
ний?» Количество таких копий составляет
(2-15)
Чтобы избежать перекрытия копий спектра, мы должны быть уверены в том,
что количество копий равно целому числу, не превышающему Л в (2-15). Таким
образом, мы можем определить целое количество копий как Щп1:, где
или
(2-16)
!<
2fc+B
В <
->! В <-
N
о
Частота
Рис. 2 .1 6 . Диапазон частот, занимаемый непрерывным полосовым сигналом
60
Гпава 2. Периодическая дискретизация
С
копий спектра в полосе частот 2/с + В, следовательно, период повторения
спектра, или минимальное значение частоты дискретизации / 5 .и, равно
fsmin- ^ f c + B )/R ,nt
(2-17)
В нашем примере полосового сигнала для вычисления первым делом необхо­
димо найти подходящее значение в (2-16) как
Кы < ( 2 2 5 ) / 5 < К ы +1,
так что Кы = 4. Затем из (2-17) находим частоту дискретизации / 5 = (40+5)/4 =
11.25 МГц, которая равна частоте дискретизации, показанной на рисунках 2.9 (е)
и 2.12. Таким образом, мы можем использовать (2-17) и избавиться от необходи­
мости использовать разные значения для т в ( 2 - 10 ) и создавать таблицу наподо­
бие таблицы 2.1. (Однако будьте внимательны. Формула (2-17) помещает нашу
частоту дискретизации на границу между белой и серой полосами рисунка 2 . 12 , и
мы должны прибегнуть к использованию защитных полос, которые мы обсужда­
ли выше.) Коротко говоря, в нашем примере полосового сигнала дискретизация с
частотой 11.25 МГц, полученной из (2-17), позволяет избежать наложений и ин­
вертирует спектр, а дискретизация с частотой 17.5 МГц, полученной из (2-14), по­
зволяет избежать наложений без инверсии спектра.
А теперь хорошие новости. Дополнив процедуру дискретизации несложной
цифровой обработкой, мы можем дискретизировать с частотой 11.25 МГц, получив
инвертированный спектр, а затем легко реинвертировать его, восстановив, таким
образом, его исходную ориентацию. Спектр любого цифрового сигнала можно
инвертировать, умножив отсчеты сигнала на последовательность чередующихся
плюс единиц и минус единиц (1, -1,1, - 1 ит. д.), которую в литературе обозначают
лаконичным выражением ( - 1 ) п. Эта схема позволяет выполнять полосовую диск­
ретизацию с меньшими частотами, удовлетворяющими (2-17), с последующей кор­
рекцией инверсии спектра, избегая, таким образом, необходимости использования
более высоких частот дискретизации, получаемых из (2-14). Хотя умножение от­
счетов на ( - 1 ) п подробно излагается в разделе 13.1, здесь достаточно помнить
простое правило, согласно которому умножение отсчетов действительного сигна­
ла на ( - 1)п эквивалентно умножению на косинус, частота которого р а в н а /?/2.
В частотной области это умножение зеркально отображает положительные часто­
ты в диапазоне от 0 до + / с/2 Гц относительно частоты / 5/4 Гц, а также отображает
отрицательные частоты от - / 5/2 до 0 Гц зеркально относительно частоты ~ /с /4 Гц,
как показано на рисунке 2.17. Последовательность ( - 1 ) п используется не только
для инверсии спектра полосовых последовательностей, ее можно также исполь­
зовать для инвертирования спектра дискретных низкочастотных сигналов.
Имейте ввиду, однако, что в случае дискретизации низкочастотного сигнала лю­
бой компонент постоянного тока (нулевой частоты) в исходном сигнале после
умножения на ( - 1)п будет перенесен как на частоту + /с/ 2 , так и на частоту —/ с/ 2 .
В литературе по ЦОС вы иногда можете увидеть последовательность ( - 1)п, пред­
ставленную эквивалентными выражениями со8(яи) и е)ЛП.
Мы завершаем данную тему, собрав в таблице 2.2 все, что нам нужно знать о
полосовой дискретизации.
2.4. Инверсия спектра при полосовой дискретизации
Полоса полезного
сигнала
-
61
Полоса полезного
сигнала
Рис. 2 .1 7 . Инверсия спектра посредством умножения н а (-7 )л: (а) исходный спектр
временной последовательности; (Ь) новый спектр произведения исход­
ной последовательности на последовательность (-1)
Таблица 2 .2 . Соотношения полосовой дискретизации
Требуемая величина
Допустимые границы
для полосовой
дискретизации: ( 2 - 10 )
Частота дискретизации в
середине полосы
допустимых частот: (2 - 1 2 )
Выражение для частоты
дискретизации
(2fc - B)/m > f s >
—(2fc + B )/(m + 1)
fs
cntr
= (f c - B /2 )/m +
+ (JC+ B /2 )/(m + 1)
Условия
m — любое
положительное целое
число, для которого
fs —2 В
m — любое
положительное целое
число, для которого
fSc„,rZ 2 B
Частота дискретизации,
при которой спектр
сигнала размещается на
одной четвертой частоты
дискретизации: (2-13)
Оптимальная частота
дискретизации, при
которой инверсия
отсутствует: (2-14)
Минимальное значение /д,
при котором отсутствуют
наложения: (2-17)
fs.
c / m odd
modd ~ любое целое
положительное нечетное
число, такое, что fs. > 2В
(инверсия спектра
возникает, когда modd=3,
7, 11 ит. д.)
me v e n - nio6oe
even
положительное целое
число, такое, что
> 2В
f s.,.
'mm - (2fc + B )/R ,int
<Я/П(+ '
62
Гпава 2. Периодическая дискретизация
Библиография
1.
Crochiere, R.E. and Rabiner, L.R. «Optimum FIR Digital Implementations for
Decimation, Interpolation, and Narrow-band Filtering», IEEE Trans, on Acoust.
Speech, and Signal Proc., Vol. ASSP-23, No. 5, October 1975.
2.
Steyskal, H. «Digital Beamforming Antennas», MicrowaveJournal, January 1987.
3.
Hill, G. «The Benefits of Undersampling», Electronic Design, July 11,1994.
4.
Yam, E., and Redman, M. «Development of a 60-channel FDM-TDM Transmul­
tiplexer», COMSAT Technical Review, Vol. 13, No. 1, Spring 1983.
5.
Floyd, P., and Taylor, J. «Dual-Channel Space Quadrature-Interferometer Sys­
tem», Microwave System Designer's Handbook, Fifth Edition, Microwave Systems
News, 1987.
6.
Lyons, R. G. «How Fast Must You Sample», Test and Measurement World, Novem­
ber 1988.
7.
Stremler, F. Introduction to Communication Systems, Chapter 3, Second Edition,
Addison Wesley Publishing Co., Reading, Massachusetts, p. 125.
8.
Webb, R. C. «IF Signal Sampling Improves Receiver Detection Accuracy», Micro­
waves & RF, March 1989.
9.
Haykin, S. Communications Systems, Chapter 7, John Wiley and Sons, New York,
1983, p. 376.
10. Feldman, С. B., and Bennett, W. R. «Bandwidth and Transmission Performance»,
Bell System Tech. Journal, Vol. 28, 1989, p. 490.
11. Panter, P. F. Modulation Noise, and Spectral Analysis, McGraw-Hill, New York,
1965, p. 527.
12. Shanmugam, K. S. Digital and Analogue Communications Systems, John Wiley and
Sons, New York, 1979, p. 378.
13. Vaughan, R., Scott, N. and White, D. «The Theory of Bandpass Sampling», IEEE
Trans, on Signal Processing, Vol. 39, No. 9, September 1991, pp. 1973-1984.
14. Xenakis B., and Evans, A. «Vehicle Locator Uses Spread Spectrum Technology»,
RF Design, October 1992.
Г.пава 3
Дискретное
преобразование
Фурье
Дискретное преобразование Фурье (Д П Ф ) - одна из двух наиболее распро­
страненных и мощных процедур цифровой обработки сигналов. (Другая проце­
дура —цифровая фильтрация.) ДПФ позволяет анализировать, преобразовывать
и синтезировать сигналы такими способами, которые невозможны при непрерыв­
ной (аналоговой) обработке. Хотя сегодня ДПФ используется практически во
всех областях инженерной деятельности, мы увидим, что сфера его применения
продолжает расширяться по мере того, как расширяется понимание его полезно­
сти. По этой причине Основательное понимание ДПФ необходимо всем, кто рабо­
тает в области цифровой обработки сигналов.
ДПФ — это математическая процедура, используемая для определения гармо­
нического, или частотного, состава дискретных сигналов. Хотя для нас дискретный
сигнал представляет собой набор значений, полученных в результате периодиче­
ской дискретизации непрерывного сигнала во временной области, мы увидим,
что ДПФ полезно для анализа любых дискретных последовательностей, незави­
симо от того, что на самом деле эти последовательности представляют. Истоком
ДПФ, конечно же, является непрерывное преобразование Фурье Х (/), которое
определяется как
00
Х (/) = / х{£)е-)2л1г<к
^ 1^
гдел:(£) —некоторый непрерывный сигнал во временной области .1
В области обработки непрерывных сигналов (3-1) используется для преобра­
зования аналитического выражения для непрерывной временной функции х(Ь)
в непрерывную функцию Х (/) в частотной области. Последующее вычисление
значений выражения Х('/) дает нам возможность определить частотный состав
любого сигнала, используемого на практике, и открывает широкий спектр воз­
1 В английском языке фамилия Фурье пишется Fourier и произносится примерно как four
year (англ. «четыре года»). В институте мы называли (3.1) преобразованием four year, по­
тому что для решения одной домашней задачи нужно было примерно четыре года.
64
Гпава 3. Дискретное преобразование Фурье
можностей для анализа и обработки сигналов в физике и технике. Несомненно,
преобразование Фурье — наиболее значительный и широко распространенный
математический механизм для анализа физических систем. (Это мнение лучше
сформулировано в знаменитой цитате лорда Кельвина: «Теорема Фурье —не то­
лько один из наиболее красивых результатов современного анализа, можно ска­
зать, что она предоставляет нам необходимый инструмент для рассмотрения почти
каждого трудного вопроса в современной физике». Кстати, история оригинальной
работы Фурье по гармоническому анализу, относящейся к проблеме теплопро­
водности, поистине захватывающая. Тем, кто интересуется этим вопросом, не­
плохо было бы начать с [ 1 ] и [2 ].)
С приходом в нашу жизнь цифровых компьютеров усилия пионеров цифро­
вой обработки привели к разработке ДПФ, которое определяется как дискретная
последовательность Х (т ) в частотной области,
Формула ДПФ
(экспоненциальная -»
форма):
Х(т) = 21 х(п)е~) 7111171/ .
(3-2)
п=0
В нашем обсуждении формулы (3-2) х (п ) представляет собой дискретную
последовательность значений, полученных дискретизацией во временной обла­
сти непрерывной переменной ,г(£). Символ "е" в (3-2), конечно же, обозначает
основание натуральных логарифмов, а^ = V ( - 1).
3.1. Смысл формулы ДПФ
Уравнение (3-2) имеет замысловатый и не слишком воодушевляющий вид, но
не стоит отчаиваться. К концу этой главы формула (3-2) станет для вас одним из
самых доступных и мощных инструментов в цифровой обработке сигналов. Начнем
с того, что запишем формулу (3-2) другим способом и внимательно рассмотрим ее.
Из тождества Эйлера е~^ = со$(ф)
следует, что (3-2) эквивалентно сле­
дующему выражению:
Формула ДПФ
4^1
(тригонометрическая Х(т) = 2^х(п)[соБ(2лпт/М) ~/5т(2лпт/М)\ .
форма):
п=0
(3-3)
Мы разделили комплексную экспоненту в (3-2) на действительную и мнимую
части,где
Х(т) — т-й компонент ДПФ, т. е. Х(0), Х( 1), Х(2), Х(3) и т. д.,
т — индекс ДПФ в частотной области,
т = О, 1,2,3, . . . ,N - 1 ,
х(п) —последовательность входных отстчетов х(0), х( 1), х(2), х(3) и т. д.,
п — временной индекс входных отсчетов п = 0, 1,2,3, . . . , Ы - 1,
;-•/(-/)
N — количество отсчетов входной последовательности и количество частот­
ных отсчетов результата ДПФ.
Хотя (3-3) выглядит более сложно, чем (3-2), его легче понять. (Если вы чувст­
вуете себя не слишком уверенно по отношению к 7 = V ( - 1), не стоит отчаиваться.
65
3.1. Смысл формулы ДПФ
Это просто удобная абстракция/которая помогает нам сравнивать фазовые соот­
ношения между различными синусоидальными компонентами сигнала. В главе 8
оператору обсуждается несколько подробнее.)1В стандартной записи ДПФ ин­
дексы входных значений ( п) и выходных отсчетов ДПФ (т ) всегда принимают
значения от 0 до Ы - 1. Это значит, что при наличии N входных отсчетов во вре­
менной области ДПФ определяет спектральный состав входного сигнала в Л^равномерно распределенных точках частотной оси. Значение N является важным
параметром, т. к. оно определяет необходимое количество входных отсчетов, раз­
решающую способность результата по частоте, а также время, необходимое для
вычисления /'/-точечного ДПФ.
Полезно рассмотреть структуру выражения (3-3), записав слагаемые суммы
по отдельности. Например, при N = 4 пп, и т принимают значения от 0 до 3, а
(3-3) превращается в
Х (т ) = 2
х ( п )[ соб(2лпгп/4)
-]$т(2лпт/4)] .
(3-4а)
п=0
Запишем все слагаемые первого отсчета ДПФ, которому соответствует т = О,
Х(0) = х(0)со$(2л *0* 0/4) -]х(0)$т(2л * 0 • 0/4)
+ х( 1)соъ(2л * 1 * 0/4) ~ ]х( 1)б1п(2л * 1 * 0/4)
+ х ( 2 ) с о б ( 2 л *2 * 0/4)
- ] х ( 2 ) б [ п ( 2 л *2
•0/4)
^
+ х(3)соэ(2л *3*0/4) - ]х(3)$'т(2тс *3 *0/4)
Для второго выходного отсчета ДПФ, соответствующего т = 1, (3-4а) прини­
мает вид
Х( 1) = х (0)соб(2л *0* 1/4) - ] х (0)бш(2л *0* 1/4)
+ л:( 1)со$(2л * 1 •1/4) -]х ( 1)ът(2л * 1 • 1/4)
+ х(2)соъ(2л * 2 * 1/4) - ] х (2)б1п (2л •2 •1/4)
(3-4с)
+ х (3)соб(2л *3 * 1/4) -]х(3)ът(2л *3 * 1/4)
Для третьего выходного отсчета, соответствующего т = 2, (3-4а) превращается в
Х(2) = х (0)соб(2л *0*2/4) -)х(0)Бт(2л * 0 *2/4)
+ х( 1)с,оъ(2л * 1 * 2/4) -]х ( 1)бш (2л *1 * 2/4)
+ х(2)со§(2л *2 *2/4) -]х(2)$т(2л *2 *2/4)
(3-4(1)
+ х (3)соб(2л *3*2/4) -]х(3)ып(2л *3 *2/4)
Наконец, для четвертого, и последнего, выходного отсчета, которому соответ­
ствует индекс т = 3, (3-4а) превращается в
Имейте ввиду, что для представления оператора V (-1 ) математики часто используют
букву I вместо].
66
Гпава 3. Дискретное преобразование Фурье
Х (2 ) = х (0) соб(2л • 0*3/4) -}х(0)$\п(2л • 0 •3/4)
+ х (1) соб(2л • 1 *3/4) - ]х(1)ь\1\(2я • 1*3/4)
(3-4е)
+ х (2) соб(2л • 2 • 3/4) -]х(2)$іп(2л •2 •3/4)
+ х(3)соъ(2л *3 •3/4) -]х(3)ът (2л •3 •3/4)
Символ умножения " •" в (3-4) используется просто для разделения сомножи­
телей в синусных и косинусных слагаемых. Структура выражений (3-4Ь) —(3-4е)
теперь понятна, и мы ясно видим, почему в (3-3) удобнее использовать символ
суммирования. Каждый выходной отсчет ДПФ Х(т) представляет собой сумму
почленных произведений входной последовательности отсчетов сигнала на по­
следовательность отсчетов комплексной синусоиды (гармоники) вида
соъ(ф) -уи п (ф). Точные значения частоты разных синусоид зависят как от часто­
ты дискретизации / 5, с которой был дискретизирован исходный сигнал, так и от
количества отсчетов N. Например, если мы дискретизуем непрерывный сигнал с
частотой 500 отсчетов в секунду, а затем выполняем 16-точечное ДПФ дискретазированных данных, основная частота синусоид будет равна / 5 /Ы = 500/16 или
31.25 Гц. Другие частоты, соответствующие Х(т), кратны основной частоте, т. е.
Х(0)
Х(1)
Х(2)
Х(3)
= 1-й частотный отсчет, частота анализа которого = 0 • 31.25 = 0 Гц,
= 2-й частотный отсчет с частотой анализа = 1 • 31.25 - 31.25Тц,
= 3-й частотный отсчет с частотой анализа = 2 • 31.25 = 62.5 Гц,
= 4-й частотный отсчет с частотой анализа = 3 • 31.25 = 93.75 Нг,
Х(15) = 16-й частотный отсчет с частотой анализа = 15 • 31.25 = 468.75 Гц.
N разных частот анализа ДПФ определяются выражением
(3-5)
Таким образом, в этом примере отсчет ДПФ Х(0) сообщает нам амплитуду
компонента входного сигнала, имеющего частоту 0 Гц (постоянной составляю­
щей), отсчет Х( 1) задает амплитуду компонента с частотой 31.25 Гц, Х(2) — амп­
литуду компонента с частотой 62.5 Гц и т. д. Более того, как мы увидим дальше на
примере, отсчеты ДПФ определяют также фазовые соотношения между частот­
ными составляющими входного сигнала.
Довольно часто нас интересует как амплитуда, так и мощность (амплитуда в
квадрате) каждого отсчета Х(т), и для их вычисления, как показано на рисунке
3.1, применимы стандартные соотношения в прямоугольном треугольнике.
Если мы представим произвольный отсчет ДПФ Х(т) как сумму действитель­
ной и мнимой частей:
Х(т) = Х геа1(т) +]Хшщ(т) = Х та§ с углом Хф( т ) ,
(3-6)
то амплитуда Х(т) вычисляется как
(3-7)
3 . 1. Смысл формулы ДПФ
67
Мнимая ось 0)
Эта точка представляет
комплексное число
Х{т) = Хгеа\(т) +р^ітад(т )О
■^геа|(т )
Действительная ось
Рис. 3 .1 . Тригонометрические соотношения для отдельного комплексного значе­
ния Х(т)
По определению, фазовый угол Х(т), Хф(т), вычисляется как
Хф(т) = іап 1[Хша§(т )/Х та§(т) ] .
(3-8)
Мощность отсчетов Х(т), которая называется спектром мощности, представ­
ляют собой амплитуду, возведенную в квадрат:
Хр5 (т) = Х таё(т )2 = Х геа1(т )2 + Х іта§(т )2 .
(3-9)
3 .1 .1 . Пример ДПФ №1
Смысл выражений (3-2) и (3-3) станет более ясным на примере, так что давай­
те подробно, по шагам, рассмотрим простую ситуацию. Допустим, мы хотим диск­
ретизировать непрерывный сигнал, содержащий компоненты с частотами 1 кГц и
2 кГц следующего вида:
х іп(і) = 8Іп(2я • 1000 • і) + 0.5 зіп(2я • 2000 • і + З л /4 ) ,
(3-Ю)
а затем выполнить 8 -точечное ДПФ этого сигнала.
Чтобы сделать входной сигнал несколько более интересным, мы сдвинули
компонент с частотой 2 кГц по фазе на 135° (З л /4 радиан) по отношению к компо­
ненту с частотой 1 кГц. При частоте дискретизации / 5 мы берем отсчеты входного
сигнала каждые 1 // 5 = секунд. Поскольку N = 8 , нам нужно взять 8 входных от­
счетов, над которыми необходимо выполнить ДПФ. Таким образом, 8 -элементная последовательность х(п) равна х ы(Г), отсчеты которого берутся в моменты
времени п£5:
х(п) = х 1п(п^) = з1п(2я • 1000 • и£5) + 0.5 в т (2л • 2000 •
+ Зл/4) .
(3-11)
Если мы выберем частоту дискретизации / 5 = 8000 отсчетов в секунду, то, со­
гласно (3-5), результат ДПФ будет показывать амплитуды составляющих, содер­
жащихся вх(я), с частотами анализа ти/5/Л^, или 0 кГц, 1 кГц, 2 кГц,..., 7 кГц. При
/ 5 = 8000 отсчетов/с наши восемь отсчетов х(п) равны:
х(0) = 0.3535,
х(1) = 0.3535,
х{2) = 0.6464,
х(3) = 1.0607,
х(4) = 0.3535,
х(5) = -1.0607,
х(6) = -1.3535,
х(7) = -0.3535.
(3-11')
68
Гпава 3. Дискретное преобразование Фурье
Эти значения отсчетов х(п) показаны точками на сплошной непрерывной кри­
вой, изображающей х 1п{Ь) на рисунке 3.2 (а). (Обратите внимание на то, что сумма
синусоидальных составляющих в (3-10), изображенных штриховыми линиями
на рисунке 3.2 (а), равна хги(£).)
Теперь мы готовы использовать (3-3) для вычисления ДПФ нашего входного
сигнала х(п). Мы начнем с ш = 1, потому что случай т = 0 дает особый результат,
который мы вкратце обсудим позже. Итак, для т = 1, или для отсчета ДПФ с час­
тотой 1 кГц (т/5 /]У= 1 »8000/8), (3-3) в этом примере преобразуется в
7
Х(1) = 2 ] [х ( п) соб(2лп/ 8) -]х(п)5т(2лп/8)].
(3-12)
п=0
Затем мы умножим х(п) на последовательные отсчеты косинуса и синуса первой
частоты анализа, которые на восьми отсчетах проходят полный период. В нашем
примере для т = 1 мы просуммируем произведения отсчетов последовательности
х(п) на отсчеты косинусоиды частоты 1 кГц и на отсчеты синусоиды частоты 1 кГц,
вычисленные для значений аргумента 2 лп /8. Эти гармоники анализа показаны на
рисунке 3.2 (Ь) штриховыми линиями. Обратите внимание на то, что на нашем
интервале анализа косинусоида и синусоида имеют т = 1 полный период.
Подставляя значения отсчетов х(п) в (3-12) и записывая косинусоидальные
члены в левом столбце, а синусоидальные —в правом, получаем:
Х(1) =
0.3535
+ 0.3535
+ 0.6464
+ 1.0607
+ 0.3535
- 1.0607
- 1.3535
- 0.3535
1.0
0.707
0.0
-0.707
- 1.0
-0.707
0.0
0.707
=
<- это слагаемое с п=0
-КО.3535 • 0.0)
< - это слагаемое с п=1
-1(0.3535 • 0.707)
-КО. 6464 1.0)
< - это слагаемое с п=2
-К 1.0607 0.707)
-К0.3535 0.0)
-К-1.0607 • -0.707)
- К - 1.3535 * - 1 0 )
-І (-0.3535 • - 0.707) <- это слагаемое с п=7
0.3535
+І0.0
-І0.250
+ 0.250
-І0.6464
+ 0.0
-І0.750
-0.750
- у'0 .0
- 0.3535
-у 0.750
+ 0.750
+ 0.0
- і 1.3535
-І0.250
- 0.250
= 0.0-}4.0
= 41. -90°.
Итак, мы теперь видим, что входной сигнал х(п) содержит компонент с часто­
той 1 кГц. Используя (3-7), (3-8) и (3-9) для Х( 1) получаем: Х таё( 1) =4,ХР8(1) = 16
и фазовый угол Х(1) по отношению к косинусоиде с частотой 1 кГц составляет
Хф(1) = - Ж .
'лыДПФ______________________________________________ 69
15
1
зт(2лЮ000
*,п(0
05
0
-0 5
-1
0.5з!п(2л:2000^+Зл:/4)
■1 5
1
2
3
15
1
т = 1
05
0
0 5
-1
■1 5
15
1
т=2
05
О
■0 5
-1
■1 5
15
1
т =3
05
0
05
-1
■1 5
р ДПФ №1: (а) входной сигнал; (Ь) входной сигнал и гармоники
: 1; (с) входной сигнал и гармоники для т = 2 ,( с1) входной сигнал и
1ики для т = 3
составляющей с т = 2 мы находим корреляцию х(п) с косинудой с частотой 2 кГц. Эти сигналы изображаются штриховыми
гке 3.2 (с). Заметьте, что косинусоидальный и синусоидальный
1 интервале анализа на рисунке 3.2 (с) имеют ровно т = 2 полставляя значения отсчетов х(п) в (3-3) для т = 2, получаем
70
Гпава 3. Дискретное преобразование Фурье
Х(2)
0.3535 • 1.0
-К 0 .3 5 3 5 • 0.0)
+ 0.3535 • 0.0
-К О .3535 -1 .0 )
+ 0.6464
-1 .0
-К О .6464 • 0.0)
+ 1.0607
0.0
- К 1 0607 • -1 .0)
+ 0.3535
1.0
- КО.3535 • 0.0)
- 1.0607
0.0
- К -1 .0 6 0 7 • 1.0)
- 1.3535 • -1 .0
-у (-1.3535 • 0.0)
- 0.3535
- К - 0.3535 • -1.0)
0.0
0.3535
+І0.0
+ 0.0
-І0 .3 5 3 5
-0 .6 4 6 4
-у 0.0
- 0 .0
+ у1.0607
+ 0.3535
-у'0.0
+ 0.0
+ у1.0607
+ 1.3535
-у'0.0
- 0 .0
-у 0.3535
1.414 + ІІ.4 1 4
2 / . 45°.
В этом случае входной сигнал х(п ) содержит составляющую с частотой 2 кГц,
относительная амплитуда которой равна 2 , а фазовый угол по отношению к коси­
нусоиде с частотой 2 кГц составляет 45°. Для т = 3 мы находим корреляцию х(п) с
косинусоидой и синусоидой с частотой 3 кГц. Эти составляющие на рисунке
3.2 (с!) показаны штриховыми линиями. На интервале наблюдения на рисунке
3.2 (с1) и косинусоида, и синусоида имеют т = 3 полных периода. Подставляя зна­
чения отсчетов х(п) в (3-3) для т = 3 получаем:
Х(3) =
0 .3 5 3 5 -1 .0
-К О .3535 • 0 . 0 )
+ 0.3535 • - 0.707
-К О .3535 • 0 .707)
+ 0.6464 • 0.0
-К О .6464 •
+ 1.0607 • 0.707
-у (1.0607 • 0 .707)
+ 0.3535 • -1 .0
-К О .3535 • 0. 0 )
- 1.0607 •0.707
- К - 1-0607 • - 0.707)
- 1.3535 • 0.0
1. 0 )
- К - 0.3535 • -0 .7 0 7 )
+І 0.0
- 0.3535 • -0 .7 0 7
=
0.3535
-К -1 -3 5 3 5
- 1. 0 )
•
- 0.250
-І0 .2 5 0
+ 0.0
+І0.6464
+ 0.750
-І0 .7 5 0
- 0.3535
-} 0.0
-0 .7 5 0
-І0 .7 5 0
+ 0.0
+ у1.3535
3.1. Смысл формулы ДПФ
71
+ 0.250
=
Рис. 3 .3 .
0.0-10.0
-№ .250
=
0£0°.
Пример ДПФ №1: (а) входной сигнал и синусоиды для т = 4\ (Ь) входной
сигнал и синусоиды для т = 5; (с) входной сигнал и синусоиды для т = 6\
(с!) входной сигнал и синусоиды для т = 7
ДПФ показывает, чтох(и) не содержит компонентов с частотой 3 кГц. Продол­
жим вычисление ДПФ для т = 4 с использованием синусоид, показанных на ри­
сунке 3.3 (а).
Итак, (3-3) приобретает вид:
72
Гпава 3. Дискретное преобразование Фурье
Х(4)=
0 .3 5 3 5 -1 .0
(0.3535 - 0.0)
+ 0.3535 - -1 .0
(0.3535 - 0.0)
+ 0.6464 - 1.0
(0.6464 • 0.0)
+ 1.0607- -1 .0
(1.0607 • 0.0)
+ 0.3535 - 1.0
(0.3535 • 0.0)
- 1.0607 - -1 .0
(-1.0607 • 0.0)
1.3535 • 0.0)
- 1.3535 - 1.0
-0 .3 5 3 5 • -1 .0
=
(-0.3535 • 0.0)
+ 0.3535
-І0.0
-}0.0
-І0.0
-І0.0
-І0.0
+ 1.0607
- І 0 .0
- 1.3535
-у0.0
-І0.0
0.3535
-0 .3 5 3 5
+ 0.6464
- 1.0607
+ 0.3535
=
0 ^0 °.
0 .0 -І0.0
Для частотного отсчета ш = 5 с использованием синусоид, приведенных на ри­
сунке 3.3 (Ь) ДПФ дает:
Х(5)=
0 .3 5 3 5 -1 .0
-І(0.35 35 - 0.0)
+ 0.3535 - -0.7 07
-}(0.3535 • -0.707)
+ 0.6464 - 0.0
-К О .6464 -1 .0 )
+ 1.0607 - 0.707
- К 1 0607 • -0.707)
+ 0.3535 • -1 .0
-К О .3535 - 0.0)
- 1.0607 - 0.707
- К - 1 0607 • 0.707)
- 1.3535 - 0.0
-К -1 .3 5 3 5 - -1.0)
-0 .3 5 3 5 - -0 .70 7
-К -0 .3 5 3 5 • 0.707)
=
0.3535
-І0 .0
- 0.250
+І0.250
+ 0.0
-10.6464
+ 0.750
+І0.750
- 0.3535
-у 0.0
-0 .7 5 0
+І0.750
+ 0.0
- у1.3535
+ 0.250
+І0.250
= О.О-уО.О =
0 ^ 0 °.
ого отсчета т = 6 с использованием синусоид
(3-3) дает
3.1. Смысл формулы ДПФ
73
0.3535 • 1.0
-К О .3535 • 0.0)
+ 0.3535 • 0.0
- КО.3535 • -1.0)
+ 0.6464 • -1 .0
-К О .6464 • 0.0)
+ 1.0607 • 0.0
- К 1 0607 • 1.0)
+ 0.3535 • 1.0
- КО.3535 • 0.0)
- 1.0607 • 0.0
- К - 1 0607 • -1.0)
- 1.3535 • -1 .0
-К -1 .3 5 3 5 • 0.0)
- 0.3535 • 0.0
-К -0 .3 5 3 5 • 1.0)
0.3535
-у 0.0
-0 .6 4 6 4
-у 0.0
+ 0.0
-у 1.0607
+ 0.3535
-у 0.0
+ 0.0
-у /. 0607
+ 1.3535
-у 0.0
+ 0.0
+уО.3535
-и
+у0.3535
-и
I
»—
—
*..
+ 0.0
•—
*
II
=
=
2 /. -45°
Для т = 7 и синусоид с рисунка 3.3 (с!) (3-3) дает:
0.3535 • 1.0
-КО .3535 • 0.0)
+ 0.3535 • 0.707
-К О .3535
-0.707)
+ 0.6464 • 0.0
-К О .6464
-1.0)
+ 1.0607 • -0.707
-К 1 0607
-0.707)
+ 0.3535 • -1 .0
-К 0 .3 5 3 5 • 0.0)
- 1.0607 • -0.707
- К - 1-0607 • 0.707)
- 1.3535 • 0.0
-К -1 .3 5 3 5 • 1.0)
-0 .3 5 3 5 • 0.707
-К -0 .3 5 3 5 • 0.707)
=
=
0.3535
+у0.0
+ 0.250
+10.250
+ 0.0
+Ю.6464
- 0.750
+у'0.750
- 0.3535
-10.0
+ 0.750
+10.750
+ 0.0
+11.3535
- 0.250
+10.250
0 .0 + 14 .0 =
4 £90°.
Если мы построим график модулей Х(т), как функции частоты, мы получим
амплитудный спектр входной последовательности х(п), приведенный на рисун­
ке 3.4 (а). Фазовые углы отсчетов Х (т ) изображены на рисунке 3.4 (Ь).
74
Гпава 3. Дискретное преобразование Фурье
П ример!: Модуль Х(т)
4
Пример 1: Действительная часть Х(т)
..
1.5 ■■
3--
1 ■■
2 -•
1 ■■
0 .5 "
3
яг
,
4
(С )
О
3
(КГц)
Прил
Пример 1: Мнимая часть Х(т)
(
Пример 1: Ф а з а Х(т) в градусах, Х ,(т )
4
1 *
6
(Ь) 0¥--- 1— 1--- *—*--- ---- 1---- К т
-45
-90
Рис. 3.4.
т
(КГц)
4
і
(КГц)
2
(с!) О*
-2
-4
і
1
3
-м
4
5
т
(КГц)
Результат ДПФ из примера №1: (а) модульХ(т); (Ь)фазаХ(/т7); (с) дейст­
вительная частьХ(т); (с1) мнимая частьХ(т)
Сделаем последнее усилие, мы уже почти закончили с этим примером. Мы
оставили вычисление отсчета с т = 0 напоследок, т. к. он имеет особое значение.
Когда т = 0, мы находим корреляцию х(п) с соб(0) -у и п (0), так что (3-3) превра­
щается в
N-1
Х(Р) = I ] *(Я)[СО8(0)
п=0
(
5ІП(0)].
Поскольку СО8(0) = 1, а 8Іп(0) = 0,
N-1
Х (0 )= ^х(п ).
(3-13)
(3-13’)
п=0
Мы можем видеть, что (3-13’) представляет собой сумму отсчетов х(п). Эта
сумма, конечно же, пропорциональна среднему значению х(п). (Точнее, отсчет
Х (0) равен среднему значению х(п), умноженному на М) Это не случайно, т. к. от­
счет Х(0) в частотной области представляет собой не изменяющийся во времени
(постоянный) компонент х(п). Если быХ(0) был отличен от нуля, это подсказало
бы нам, что последовательность д:(п) имеет некоторое постоянное смещение, и ее
среднее значение не равно нулю. Для нашего конкретного примера (3-10) сумма
равна 0. Входная последовательность не имеет постоянной составляющей, так что
мы знаем, что Х(0) будет равным нулю. Но не поленимся, и для успокоения совес­
ти все-таки вычислим Х(0).
Вычисляя значение (3-3) или (3-13') при т = 0, мы видим, что
Х(0) =
0.3535
1.0
- І (0.3535 • 0.0)
+ 0.3535
1.0
-К 0 .3 5 3 5 • 0.0)
+ 0.6464
1.0
- І (0.6464 • 0.0)
+ 1.0607
1.0
- К 1.0607 • 0.0)
+ 0.3535
1.0
-К О .3535 • 0.0)
- 1.0607
1.0
- К~ 1-0607 • 0.0)
3.2. Симметрия ДПФ
75
- 1.3535 • 1.0
-у (-1.3535
-0 .3 5 3 5 • 1.0
-К -0 .3 5 3 5
Х(0) =
0.3535
-у 0.0
+ 0.3535
-у 0.0
+ 0.6464
-у 0.0
+ 1.0607
-\0 .0
+ 0.3535
-у'0.0
- 1.0607
-у 0.0
- 1.3535
-у 0.0
- 0.3535
-у 0.0
о.о-ю.о
0 /.0°.
Таким образом, х(п) не имеет постоянной составляющей, и, следовательно, его
среднее значение равно нулю. Заметим, что рисунок 3.4 показывает, что х1Я(0 из
(3-10) имеет компоненты с частотами 1 кГц (т = 1) и 2 кГц (ш =2). Более того, ам­
плитуда тона с частотой 1 кГц в два раза выше амплитуды тона с частотой 2 кГц.
Результат ДПФ, показанный на рисунке 3.4, показывает нам точный спектраль­
ный состав сигнала, определяемого уравнениями (3-10) и (3-11).
Наблюдательный читатель должен был бы задать здесь два вопроса. Во-пер­
вых, что означают ненулевые значения амплитуды при ш = 6 ига = 7на рисунке
3.4 (а)? А во-вторых, почему амплитуды оказались в четыре раза больше, чем мы
ожидали? Это хорошие вопросы, и мы вскоре на них ответим. Приведенный при­
мер 8 -точечного ДПФ, хотя и довольно простой, иллюстрирует две очень важные
особенности ДПФ, которые мы не должны забывать никогда. Во-первых, любое
отдельное значение Х(т) — не более чем сумма почленных произведений вход­
ной последовательности отсчетов на косинусоиду и синусоиду (или корреляция),
частота которых такова, что на интервале наблюдения из N отсчетов укладывает­
ся т. их полных периодов. Это справедливо независимо от того, какова частота ди­
скретизации / 5, и независимо от величины N в И- точечном ДПФ. Второй важной
особенностью ДПФ действительного сигнала является симметрия выходных от­
счетов ДПФ.
3.2. Симметрия ДПФ
Взглянув на рисунок 3.4 (а), можно увидеть явную симметрию результатов
ДПФ. Хотя стандартное ДПФ предназначено для обработки комплексных вход­
ных последовательностей, большинство реальных входных сигналов (таких как
оцифрованные отсчеты некоторого непрерывного сигнала) относятся к действи­
тельным сигналам: действительные входные сигналы имеют отличные от нуля
действительные части, а их мнимые части полагаются равными 0. Когда входная
последовательность х(п) действительна, как это будет во всех наших примерах,
комплексные отсчеты ДПФ для т от 1 до (N/2) - 1 тесно связаны с частотными
76
Гпава 3. Дискретное преобразование Фурьё
отсчетами с т > (N/2). т-й отсчет ДПФ имеет тот же модуль, что и (А^-т)-й от­
счет ДПФ. Фазовый угол т-го отсчета ДПФ равен фазовому углу (М -т)-го от­
счета, взятому с противоположным знаком. Таким образом, т-й и (Л^-т)-й
отсчеты связаны следующими соотношениями:
Х(т) = | Х(т) | с углом Хф(т) градусов
(о -14)
= | Х(ЛГ-т) | с углом -Хф(М-т) градусов.
Мы можем утверждать, что, когда входная последовательность ДПФ действи­
тельна, Х(т) и Х(М -т) образуют комплексно-сопряженную пару, или
Х(т) = Х * ^ - т ) ,
(3-14'У
где верхний индекс * обозначает комплексную сопряженность.
Обратите внимание на то, что в нашем примере, рассмотренном выше на ри­
сунках 3.4 (Ь) и 3.4 (с1) отсчеты Х(5), Х(6) и Х( 7) комплексно сопряжены отсчетам
Х(3), Х(2) и Х (1) соответственно. Аналогично симметрии модуля ДПФ действи­
тельная часто Х(т) обладает тем, что называется четной симметрией, как показа­
но на рисунке 3.4 (с), а мнимая часть ДПФ обладает нечетной симметрией, как
показано на рисунке 3.4 (с1). Именно это соотношение имею'!' ввиду, когда в лите­
ратуре называют ДПФ сопряженно-симметричным. Это значит, что, если мы вы­
полняем ^-точечное ДПФ действительной последовательности, мы получим N
отдельных комплексных отсчетов, но только N/2+1 отсчетов будут независимы­
ми. Следовательно, чтобы получить ДПФ последовательности х (п ), нам необхо­
димо вычислить только первые N/2+1 отсчетов Х(т) при 0 < т < (N/2); отсчеты
от Х ^ / 2 + 1 ) до X (Л^-1) не дают дополнительной информации о спектре действи­
тельной последовательности х(п).
Хотя (3-2) и (3-3) эквивалентны, экспоненциальная форма ДПФ (3-2) имеет
огромное преимущество перед формой (3-3).Форма (3-2) не только позволяет сэ­
кономить чернила и бумагу, экспонентами в (3-2) гораздо легче манипулировать,
когда мы пытаемся анализировать соотношения, связанные с ДПФ. При исполь­
зовании (3-2) умножение членов сводится к сложению показателей степени и,
при всем нашем уважении к Эйлеру, нам не нужно запоминать все необходимые
тригонометрические тождества. Продемонстрируем это, доказав справедливость
выражения (3-14) и симметрию ДПФ действительных последовательностей.
Подставляя N-171 вместо т в (3-2), мы получаем выражение для (Л^-га)-го компо­
нента ДПФ:
N-1
N-1
Х(А1-т) = 2 х ( п ) е ^ 2лп^ - т^ ы = 2 х(п)е~12лпм/ м е-; 2я/г(-т)/]У=
п=°
дг-/
п=0
(3-15)
= 2 х ( п ) е ^ 2лп е)'2лпт/ м
п=0
Так как е~12лп = со$(2жп) - ] ^т(2жп) = 1 для всех целых значений, то выраже­
ние (3-15) приобретает вид
С учетом ваших обозначений, число, комплексно сопряженное числу х = а +/6, опреде­
ляется как д:* = а - ]Ь\ т. е. мы просто меняем знак мнимой части х. В эквивалентной
форме, если х= е&, то х*= е~->Ф.
77
3.3. Линейность ДПФ
N-1
Х(Ы - от) = 2 х(п)е!2*пт/ м .
(3-15')
п=0
Мы видим, чтоХ(Л^-от) в (3-15') —это просто Х(т) в (3-2) с инвертированным
знаком показателя степени —а это не что иное, как определение комплексной со­
пряженности. Это иллюстрируется графиком фазовых углов ДПФ на рисун­
ке 3.4 (Ь) для нашего примера ДПФ №1. Попробуйте вывести (3-15'), используя
косинусы и синусы в (3-3), и вы увидите, почему экспоненциальная форма ДПФ
так удобна для аналитических выкладок.
Существует еще одно свойство симметрии ДПФ, которое заслуживает упоми­
нания здесь. На практике нам иногда приходится вычислять ДПФ действитель­
ных последовательностей, для которых индекс п принимает как положительные,
так и отрицательные значения. Если такая действительная последовательность
четна, то последовательность Х(т) всегда действительна и четна; т. е., если дейст­
вительная последовательность такова, что х(п) = х( -п), то величина Х геа{т ) в об­
щем случае отлична от нуля, а Х 1таё(т) равна 0. И наоборот, если действительная
последовательность нечетна, т. е. х(п) = - х ( - п ) , то Хгеа/(от) всегда равна 0, а
Х 1та„ (от) в общем случае отлична от 0. Это свойство ДПФ, связанное с симмет­
рией входных последовательностей, присуще не только ДПФ, но и непрерывному
преобразованию Фурье — мы рассмотрим конкретные его примеры позже в раз­
деле 3.13 и главе 5.
3.3. Линейность ДПФ
ДПФ обладает очень важным свойством, известным как линейность. Это свой­
ство заключается в том, что ДПФ суммы двух сигналов равно сумме преобразова­
ний отдельных сигналов; т. е., если входная последовательность лг^(п) имеет ДПФ
Ху(от), а другая входная последовательность х2(п) имеет ДПФ Х 2(т), то ДПФ
суммы этих последовательностей хзит(п) = х ^ п ) + х2(п) равно
Хшт(т) - Х+т ) + Х 2( т ) .
(3-16)
Это достаточно легко доказать. Если мы подставимх5ит(п) в (3-2), чтобы получить* 5мш(от),то
N-1
х шт(т) = 2 1х 1(п) + х2^пУ\е ~)2лпт^ =
п=0
N-1
N-1
= 2 Х ^ п У Ч2лпт/М + 2 Х2 (и) б?-;2я/ш/ЛГ =Х1(т) + Х 2(т) .
п=0
п=0
Без этого свойства линейности ДПФ было бы бесполезным как аналитиче­
ский инструмент, потому что мы могли бы преобразовывать только те сигналы,
которые содержат единственную синусоиду. Сигналы реального мира, которые
мы хотим анализировать, значительно сложнее, чем отдельные синусоиды.
78
Гпава 3. Дискретное преобразование Фурье
3.4. Модули ДПФ
Результаты примера ДПФ № 1 [Х( 1) | = 4 и |Х(2)|= 2 могут озадачить читателя,
потому что входной сигнал х(п) вида (3-11) содержит гармоники с амплитудами,
равными 1.0 и 0.5 соответственно. Имеется важная особенность, о которой всегда
следует помнить, рассматривая ДПФ, определяемое соотношением (3-2). Когда
действительный входной сигнал содержит синусоидальный компонент с ампли­
тудой Л0 и целым количеством периодов на N отсчетах, амплитуда выходного от­
счета ДПФ, соответствующего конкретной синусоиде, равна Мг где
Мт~ А ^ / 2 .
(3-17)
Если на вход ДПФ поступает комплексная синусоида амплитуды А 0 (т. е.
А 0е)2п№) с целым количеством периодов на Л^отсчетах, модуль соответствующего
отсчета ДПФ равен Мс, где
МС= А 0М.
(3-17')
Как утверждалось в связи с (3-13'), если входной сигнал имеет постоянную со­
ставляющую £>0, то модуль отсчета ДПФ Х(0) равен 0 ()Ы.
В случае действительного входного сигнала частотой 1000 Гциз(3-11)Л 0 = 7 и
N = 8, так что Мгеа[ = 1 • 8/2 = 4, что совпадает с результатом, полученным в при­
мере. Соотношение (3-17) может быть не столь важным, когда мы выполняем
ДПФ программно или аппаратно, используя числа с плавающей точкой, но если
мы реализуем ДПФ в целочисленной арифметике, мы должны отдавать себе от­
чет в том, что результат может принимать значения, которые в N /2 раз превыша­
ют пиковое значение входного сигнала. Это значит, что для действительного
сигнала аппаратные регистры должны быть достаточно длинными, чтобы в них
помещались большие числа, которые в N /2 раз больше максимальной амплитуды
входного сигнала. Несколько позже в этой главе мы обсудим вопрос об амплитуде
отсчетов ДПФ подробнее. Выражения (3-17) и (3-17') являются причиной того,
что мы часто видим в литературе определение ДПФ в форме:
N-1
Х \ т ) = (У /Л 02 *(п) е-^я/ш/дг.
(3-18)
п=0
Масштабирующий коэффициент 1/М в (3-18) делает модули Х \ т ) равными
половине пикового значения синусоиды во временной области ценой дополните­
льной операции деления на N. Программные и аппаратурные реализации ДПФ
обычно используют (3-2), а не (3-18). Конечно, как всегда, имеются исключения.
Существуют коммерческие пакеты программ, в которых используется следую­
щая формула прямого и обратного ДПФ:
N-1
Х \ т ) - (1 / у[ Щ ^ х(п) е-;'2я«т/лг
п=0
N-1
х(п) = ( 1 / Щ % X "(т) еі2лпт/ м .
(3-18')
79
3.5. Частотная ось ДПФ
(В разделе 3.7, мы обсудим смысл и значение обратного ДПФ.) Масштабирую­
щие множители в (3-18') кажутся несколько странными, но они позволяют вы­
полнять вычисления так, что при последовательном выполнении прямого и
обратного ДПФ масштаб сигнала не изменяется. На практике при анализе спект­
ра сигнала нас больше интересуют относительные значения отсчетов ДПФ, а не
их абсолютные значения, поэтому обычно масштабные множители для нас не
имеют значения.
3.5. Частотная ось ДПФ
Частотная ось ш результатов ДПФ на рисунке 3.4 заслуживает того, чтобы мы
обратили на нее внимание еще раз. Предположим, что мы не видели наш пример
№ 1 , нам дали восемь отсчетов входного сигнала из (3-11') и попросили выпол­
нить 8 -точечное ДПФ. Мы выполнили сложные расчеты согласно (3-2) и получи­
ли значения Х(т), показанные на рисунке 3.4. Затем мы спрашиваем: «Какова
частота в Герцах компонента Х (т ) с наибольшим модулем?» Ответ 1 будет оши­
бочным. Ответ зависит от частоты дискретизации/5. Не зная ее заранее, мы не мо­
жем ничего сказать о том, с каким временным интервалом брались отсчеты,
следовательно, мы не знаем масштаб частотной оси. Правильный ответ состоит в
том, чтобы взять/хи подставить ее в (3-5) при т=1. Таким образом, если/ 5 = 8000
отсчетов в секунду, то частота, соответствующая отсчету ДПФ наибольшей вели­
чины, равна
1апа1У51з(т) = т1 з /М =1апа1узгз(1) = (1*8000),/8 = 1000 Гц
Если бы нам сказали, что частота дискретизации / 5 равна 75 отсчетам в секун­
ду, мы бы знали, благодаря (3-5), что частота, соответствующая наибольшему от­
счету, равна
/« « * * < * )-<**75)/«Гч
Ну ладно, пока хватит об этом, просто помните, что расстояние по частоте меж­
ду отсчетами ДПФ (разрешение) равно/ 5/№
Итак, подведем итог тому, что мы узнали:
□ каждый выходной отсчет ДПФ есть сумма почленных произведений
входной последовательности на последовательности, представляющие
синусоидальный и косинусоидальный сигналы;
□
для действительных сигналов Л^-точечное ДПФ дает только N/2+1 не­
зависимых отсчетов;
□
ДПФ представляет собой линейную операцию;
□
модули результатов ДПФ прямо пропорциональны №,
□
разрешающая способность ДПФ по частоте составляет/х/Ы.
Важно также понимать, что согласно (3-5) отсчет Х(Ы /2+1), для которого т =
N/2+1, соответствует половине частоты дискретизации, т. е. частоте заворота (ча­
стоте Найквиста) / 5 /2.
80
Гпава 3. Дискретное преобразование Фурье
3.6. Теорема о сдвиге
ДПФ обладает важным свойством, которое выражают теоремой о сдвиге. Тео­
рема утверждает, что сдвиг периодической последовательности х(п) во времени
проявляется в результатах ДПФ как добавка к их фазовым углам. (Здесь мы не
будем доказывать эту теорему, т. к. доказательство имеется практически в любом
учебнике по ЦОС.) Если мы берем отсчеты х(п), начиная с некоторого п, равного
целому &, а не с п = О, ДПФ этой сдвинутой последовательности будет Х3^ е(^т )
х *Ы{1ес1(™) ~ е’2лкт/Мх(т) .
(3-19)
Выражение (3-19) показывает, что, если начало взятия отсчетов х(п) смещает­
ся вправо на к отсчетов, то спектр Х $щ 1е^ (т) состоит из комплексных отсчетов
Х(т), умноженных на фазовый множитель , что приводит просто к сдвигу фазы
на^я&га/Л^радиан, или наЗбОкт/Ыградусов. Если же начало взятия отсчетов х(п)
сдвигается на к отсчетов влево, спектр Х 8щ 1ед (т) получается умножением Х(т)
на
Проиллюстрируем (3-19) примером.
3 .6 .1 . Пример ДПФ №2
Предположим, что мы начали брать отсчеты сигнала из примера №1 на к = 3
отсчета позже. На рисунке 3.5 показан исходный входной сигнал:
х т(0 = зт(2л 10000 + 0.5ът(2л:2000г + Зл/4).
Легко увидеть, что график на рисунке 3.5 является продолжением графика на
рисунке 3.2 (а). Новая последовательность х(п) содержит отсчеты, показанные на
рисунке 3.5 жирными черными точками.
В примере 1 ДП Ф вычислялось
по этим восьми отсчетам
I
I_________________________________________________________________ I
В примере 2 ДПФ вычисляется
по этим восьми отсчетам
Рис. 3 .5.
Сравнение моментов взятия отсчетов в примерах ДПФ №1 и №2
Значения этих отсчетов следующие:
81
3.6. Теорема о сдвиге
х(0) = 1.0607,
х(1) = 0.3535,
х(2) = -1.0607,
х(3) = -1.3535,
х(4) = -0.3535,
х(5) = 0.3535,
х(6 ) = 0.3535,
х(7) = 0.6464.
(3-20)
Выполнив ДПФ последовательности (3-20), получаем следующие значения
(^0
ш
Действитель­
ная часть
^/7/АесДт )
Модуль
Фаза
^в/7/ЯесДт )
Мнимая
часть
7/ЯесКт )
0
0
0
0
0
1
4
+45
2.8284
2.8284
2
2
-4 5
1.4142
-1.4142
3
0
0
0
0
4
0
0
0
0
5
0
0
0
0
6
2
+45
1.4142
1.4142
7
4
-4 5
2.8284
-2.8284
(3-21)
Значения из (3-21) показаны точками на рисунке 3.6. Обратите внимание на
то, что рисунок 3.6 (а) идентичен рисунку 3.4 (а). Соотношение (3-19) говорит
нам, что модули Х 5^Ше(1(т) равны модулям Х(т). Не следует ожидать изменения
модуля ДПФ исходного периодического сигнала х іп(І) просто потому, что мы ди­
скретизуем его на другом интервале времени. Фазы же ДПФ меняются в зависи­
мости от момента, с которого мы начинаем брать отсчеты х іп(ґ).
/ , П рим ер
П рим ер 2: Д ействительная часть
2: М одуль
ж
4'
ж
3(а)
Ж
21■
0)
I
[
і
, т
3' ■
2 -(с)
1 ■■
0*
45+
в градусах
ж
3
4
5
т
(КГц)
(СІ) О*
-2
-Л
Рис. 3 .6 .
3
4
5
-+-►
7
т
(КГц)
4
2
ж--------ж -
2
Прик
П рим ер 2: М ним ая часть Х ^ ^ т )
ж
-ж —
к
4— *— *— *-
0
(К Гц )
П ри м ер 2: Ф аза
*
■
і ’
-ж- -Ж-----ж---- Ь3 4
5
6
/77
ж (КГц)
Результат ДПФ примера №2: (а) модульХ5Шес/ ( т ); (Ь) фаза ХзШес/(ту, (с)
действительная частьХзШ еб(т)', (с1) мнимая частьХзШес/(т)
82
Гпава 3. Дискретное преобразование Фурье
Посмотрев на компонент X ( т ) с т = 1, например, мы можем проверить
правильность значений фаз, показанных на рисунке 3.6 (Ь). Используя (3-19) и
вспомнив, что в примере №1 Х( 1) имел модуль 4 и фазу -90° (или - я / 2 радиан), а
к = 3 и N = 8, получаем
Х 5ы /ы ( 1) = е)2лкт/ мХ( 1) = е # л3*1/ 8 • 4е -)л/ 2 = 4еХ6л/ 8~4л'>= 4 е ^ / 4. (3-22)
Таким образом, Х5^ 1е(^ 1 ) имеет модуль, равный 4, и фазовый угол, равный
я /4 , или +45°, что и требовалось для обоснования использования (3-19).
3.7. Обратное ДПФ
Хотя главной темой этой главы является ДПФ, сейчас уместно ввести обрат­
ное дискретное преобразование Фурье (ОДПФ). Обычно мы считаем, что ДПФ
преобразует данные временной области в представление в частотной области. Но
мы можем обратить этот процесс и получить исходный сигнал во временной обла­
сти, выполнив ОДПФ отсчетов Х(т) в частотной области. Стандартные выраже­
ния для ОДПФ имеют вид:
N-1
х(п) = ( 7 /Л 0 2 Х(т) е)2ппт/ ^
(3-23)
т =0
N-1
или
х(п) = ( 7 / ^ ) 2 Х (т ) [соз(2лтп/Ы) + ]в\п(2лтп/Ы)] .
(3-23')
т =0
Вспомним наше утверждение из раздела 3.1 о том, что дискретный сигнал во
временной области можно рассматривать как сумму синусоид с разными анали­
тическими частотами и что результат ДПФ, Х(т), представляет собой набор N
комплексных отсчетов, которые отражают амплитуды и фазы этих синусоид.
Формулы (3-23) и (3-23’) представляют собой математические выражения этого
утверждения. Читателю очень важно понять это. Если мы выполняем ОДПФ,
подставляя результаты ДПФ из примера №1 в (3-23), мы возвращаемся из час­
тотной области обратно во временш/ю и получаем исходные действительные от­
счеты х(п) из (3-11'), имеющие значения
х(0) = 0.3535 + ^.О
х(1) = 0.3535 + ^ .0
х(2) = 0.6464 + К).0
х(3) = 1.0607 + ^.О
х(4) = 0.3535 + ^ .0
х(5) = -1.0607 + ^.О
х(6 ) = -1.3535 + Д О
х(7) = -0.3535 + Д).0
Обратите внимание на то, что выражение (3-23) отличается от ДПФ (3-2) то­
лько масштабирующим множителем 1/N n знаком показателя степени. Кроме мо­
дуля результатов, все характеристики, которые мы до сих пор рассматривали для
ДПФ, также присущи и ОДПФ.
3.8. Утечка ДПФ
83
3.8. Утечка ДПФ
А теперь держитесь за стул покрепче. Именно сейчас ДПФ становится дейст­
вительно интересным. Два предыдущих примера дали корректные результаты
потому, что входные последовательности х(п ) представляли собой специально
подобранные синусоиды. Оказывается, ДПФ дискретизированных сигналов ре­
ального мира дает в частотной области результаты, которые могут сбивать с тол­
ку. Особенность ДПФ, известная как утечка, приводит к тому, что результаты
ДПФ представляют собой только аппроксимацию истинного спектра исходного
непрерывного сигнала. Хотя существуют способы минимизации утечки, мы не
можем устранить ее полностью. Таким образом, нам необходимо точно понять,
как она влияет на результат Д П Ф 1.
Начнем с начала. ДПФ применяется к конечным множествам N отсчетов, по­
лученным дискретизацией сигнала с частотой / 5, с целью получить N-точечное
преобразование, дискретные отсчеты которого ассоциируются с отдельными ана­
литическими частотами f anaiyns(m)>гДе
fanalysis(m}
mf s / ^
(3-24)
при m= 0,1, 2,..., N -l.
Выражение (3-24), которое мы использовали в примере №1, может выглядеть
совершенно безобидно, хотя на самом деле оно таит в себе проблему. ДПФ дает
правильный результат только тогда, когда входная последовательность данных
содержит энергию точно на аналитической частоте (3-24), на частоте, кратной
фундаментальной частоте / s /N. Если входной сигнал содержит компонент с некото­
рой промежуточной частотой, лежащей между аналитическими частотами mfs /N,
скажем 1.5f s /N, то этот входной сигнал проявится в некоторой степени на всех N
частотах анализа! (Мы обычно говорим, что энергия входного сигнала проявляет­
ся на всех выходных бинах ДПФ, и мы скоро увидим, почему фраза «выходные
бины» подходит для этого случая.) Попробуем понять значение этой проблемы
на следующем примере.
Предположим, что мы вычисляем 64-точечное ДПФ последовательности, по­
казанной точками на рисунке 3.7 (а). Последовательность представляет собой си­
нусоидальный сигнал, имеющий ровно 3 периода, содержащихся ъ N = 64
отсчетах. На рисунке 3.7 (Ь) показана первая половина ДПФ входной последова­
тельности, которая показывает, что последовательность имеет нулевое среднее
значение (Х (0) = 0) и не содержит никаких компонентов ни на каких частотах,
кроме частоты, соответствующей пг = 3. Пока ничего удивительного. На рисун­
ке 3.7 (а) показана для примера аналитическая синусоида с m = 4, наложенная на
входную последовательность, которая напоминает нам, что аналитические сину­
соиды всегда имеют целое количество периодов на всем интервале в 64 отсчета.
Сумма произведений отсчетов входной последовательности на отсчеты синусои­
ды m = 4 равна 0. (Другими словами, мы можем сказать, что корреляция входной
последовательности с аналитической синусоидой m = 4 равна 0.) Сумма произ­
ведений этой конкретной входной последовательности, содержащей три периоЯвление утечки имеет место не только для ДПФ, но и для обычного интегрального
преобразования Фурье —(прим. перев.).
84
Глава 3. Дискретное преобразование Фурье
да сигнала, на отсчеты любой аналитической синусоиды, кроме синусоиды с тп =
3, равна 0. В качестве продолжения нашего примера утечки на рисунке 3.8 (а) точка­
ми показана входная последовательность, имеющая 3.4 периода на N = 64 отсче­
тах. Речь идет о входной последовательности, которая не имеет целого
количества периодов на интервале в 64 отсчета, входная энергия «протекает» во
все другие выходные бины ДПФ, как показано на рисунке 3.8 (Ь).
т = 4 частота анализа
Входная частота = 3 периода
1| . ■■
' ш'
0.8 .- м
Я
0.6
Я
0.4 |
02+
я
ш
*
:
0
(а)
■ ;
я.
.
- 0.2 +
-0.4
-
0.6
0.8
я
Время
■■
м
-1 ..
■А
Модуль ДПФ
35
м
30
25
20 -■
15
(Ь)
10 ..
5 -0
Рис. 3 .7 .
2
4
6
8 10 12 14 16 18 20 22 24 26 28 30
т
(Частота)
64-точечное ДПФ: (а) входная последовательность из трех периодов и
аналитическая синусоида с т = 4; (Ь) модуль ДПФ
Бин т = 4, например, не равен нулю, потому что сумма произведений отсчетов
входной последовательности на отсчеты анализирующей синусоиды с т = 4 уже
не равна 0. В этом и состоит утечка спектра — она приводит к тому, что спектр
входного сигнала, частота которого не равна точно центральной частоте одного из
бинов, «растекается» по всем остальным бинам. Более того, утечка —неизбежный
эффект при выполнении ДПФ реальных последовательностей конечной длины.
Теперь, как сказал бы английский философ Дуглас Адамс: «Не паникуйте».
Чтобы узнать, как предсказывать и минимизировать неприятное влияние утечки,
взглянем на ее причину. Чтобы понять влияние утечки, нам необходимо опреде­
лить амплитудно-частотную характеристику ДПФ при подаче на его вход произ­
вольной реальной синусоиды. Подробно этот вопрос обсуждается в разделах 3.14
и 3.15, а сейчас достаточно сказать, что для действительного косинусоидального
входного сигнала, имеющего &периодов на N отсчетах, амплитудно-частотная
85
3.8. Утечка ДПФ
характеристика бина ./V-точечного ДПФ в зависимости от индекса бина m аппрок­
симируется фукцией sine
X (m ) = (N/2 ) • {^n[n(k-m )]/[n(k-m )]}
Входная часто та = 3.4 периода
1 ■■ :
■
т = 4 часто та ан ал и за
1«
я
i
а'
0 6 ■■*;
к
!
0.2 408
\ *
04V
(а)
,
—И.
0*1
-0 2
(3-25)
Время
- -
-0 4 . .
ш
■
-0 6 ■■
-0 8
я I*
V
-1
30
Vя
Модуль ДПФ
я
25
20 -■
15
(Ь)
10 ■■
5 * *
*
I
0
Рис, 3 .8 .
**
2
4
6
8
10
12
14
16
18 2 0
22 24 26
28
30
т
(Частота)
64-точечное ДПФ: (а) входная последовательность из 3.4 периодов и
аналитическая синусоида с т = 4\ (Ь) модуль ДПФ
Мы используем функцию (3-25), график которой приведен на рисунке 3.9 (а),
чтобы определить уровень утечки, возникающей при ДПФ. Мы можем рассмат­
ривать кривую на рисунке 3.9 (а), состоящую из главного лепестка и периодиче­
ски повторяющихся пиков и впадин, которые называют боковыми лепестками,
как непрерывный положительный спектр действительной косинусоидальной по­
следовательности, состоящей из N отсчетов и содержащей к полных периодов. Ре­
зультатом ДПФ являются дискретные отсчеты, которые лежат на кривой,
изображенной на рисунке 3.9; т. е. результат ДПФ будет представлять собой диск­
ретизированную версию этого непрерывного спектра. (На рисунке 3.9 (Ь) мы
приводим амплитудно-частотную характеристику ДПФ при подаче действитель­
ного входного сигнала как функцию частоты в Гц.) Когда входная последователь­
ность ДПФ имеет ровно ^ полных периодов (т. е. центральная частота ее спектра
точно совпадает с бином т = к), утечка не возникает, как на рисунке 3.9, потому
что, когда значение аргумента в знаменателе (3-25) отлично от 0 и кратно я, синус
этого аргумента равен нулю.
86
Гпава 3. Дискретное преобразование Фурье
Дискретная последовательность
отсчетов ДПФ,
определяемая выражением
_ Ц ятЫк-т)]
“ 2
я(к-т)
Непрерывный
положительный спектр
дискретной косинусоиды
(а)
Частота
т- к
(т)
/с-3
к- 1
к+<\
к+3
/с+5
(к-3)уы
(к-^)уЫ
(к+Щ1Ы
(/с+3)^/Л/
(/с+5)ул/
(Ь)
Рис. 3 .9.
Положительная частотная характеристика ДПФ, обусловленная Л/-то­
чечной входной последовательностью, содержащей к периодов дейст­
вительной косинусоиды: (а) амплитудно-частотная характеристика как
функция индекса бина т\ (Ь) амплитудно-частотная характеристика как
функция частоты в Гц
Мы можем показать на примере, что происходит, когда частота входного сиг­
нала не совпадает с центром бина. Предположим, что действительная синусоида с
частотой 8 кГц, амплитуда которой равна единице, дискретизирована с частотой
/ 5 = 32000 отсчетов/с. Если мы вычислим 32-точечное ДПФ этой последователь­
ности, то разрешение по частоте, или интервал между бинами, составит / 5 /Ы =
32000/32 Гц = 1.0 кГц. Мы можем предсказать АЧХ ДПФ, поместив центр спект­
ра входной синусоиды на частоту 8 кГц, как показано на рисунке 3.10 (а). Точки
изображают модули отсчетов ДПФ.
Здесь следует запомнить важный факт: результат ДПФ представляет собой ди­
скретизированную версию непрерывного спектра, показанного на рисунке 3.10 (а).
Эти дискретные отсчеты в частотной области, расположенные на частотах т/5/Л/, и
есть точки на рисунке 3.10 (а). Поскольку частота входного сигнала точно совпа­
дает с частотой бина ДПФ, результат ДПФ содержит только одно ненулевое зна­
чение. Другими словами, когда выборка из N отсчетов содержит целое количество
периодов входного сигнала, отсчеты ДПФ ложатся точно на максимум непрерыв-
87
3.8. Утечка ДПФ
ного спектра и точно на точки, в которых этот спектр равен нулю. Из (3-25) мы
знаем, что пиковое значение амплитуды выходного отсчета равно 32/2 = 1 6 .
(Если входная действительная синусоида имела амплитуду, равную 2, пиковое
значение кривой спектра будет равно 2 • 32/2, или 32.) На рисунке 3.10 (Ь) пока­
зана утечка ДПФ, возникающая при частоте входного сигнала 8.5 кГц, и здесь мы
видим, что в результате дискретизации в частотной области модули всех бинов
ДПФ отличны от 0. Входной сигнал с частотой 8.75 кГц даст результат ДПФ с
утечкой, показанный на рисунке 3.10 (с). Если мы сидим за компьютером и изуча­
ем утечку, строя графики модуля ДПФ, мы, конечно, получим точки, изображен­
ные на рисунке 3.10, но не увидим непрерывные спектральные кривые.
16
Входная частота =8.0 КГц .’
3
4
5
6
7
Входная частота =8.5 КГц
(Ь)
3
4
5
ш
ш,ч /
6
7
11
8
9
10
*
в
10.17
гш
8
/
12
. -м
9
10
■
14.05
11
13 Частота
(КГц)
х
^
12
13 Частота
(КГц)
12
13 Частота
(КГц)
Входная частота =8.75 КГц
5.15
(с)
—■—
3
щ
<4- -“+ -ч ----■— V"
4
5
678
-►
-1
91011
Рис. 3 .1 0 . Частотные отклики ДПФ: (а) частота входного сигнала ДПФ = 8.0 кГц; (Ь)
частота входного сигнала ДПФ = 8.5 кГц; (с) частота входного сигнала
ДПФ = 8.75 kHz
Здесь внимательный читатель должен был бы подумать: «Если непрерывный
спектр, который мы дискретизуем, симметричен, то почему результат ДПФ на
рисунке 3.8 (Ь) такой асимметричный?» На рисунке 3.8 (Ь) модули бинов справа
от третьего бина уменьшаются быстрее, чем модули бинов слева от третьего бина.
«И, кроме того, вычисление значения непрерывного спектра X (f) для аргумента,
равного 0.4, дает относительное значение амплитуды 0.75. Умножая на этот коэф­
фициент пиковое значение спектра 32, мы должны были бы иметь модуль третье­
го бина, равный примерно 32 • 0.75 = 24. но на рисунке 3.8 (Ь) этот модуль
несколько больше 25. Что здесь происходит?» Мы можем ответить на этот во­
прос, вспомнив, что на самом деле представляет собой рисунок 3.8 (Ь). Изучая ре­
зультат ДПФ, мы обычно интересуемся бинами от m = 0 до m = (N / 2 - 1 ).
Следовательно, при наших 3.4 периодах на интервал выборки на рисунке 3.8 (Ь),
88
Гпава 3. Дискретное преобразование Фурье
показаны только первые 32 бина. Результат ДПФ периодичен в частотной облас­
ти, как показано на рисунке 3.11. (Мы поговорим об этой периодичности в разде­
ле 3.17.) Изучая результат ДПФ для все более и более высоких частот, мы как бы
ходим по кругу, и спектр повторяется бесконечно.
■
*
т - 33
Рис. 3 .1 1 . Циклическое представление копий спектра при вычислении ДПФ сигна­
ла, имеющего 3.4 периода на интервале наблюдения
Более обычный путь изображения результата ДПФ состоит в том, что спектр
на рисунке 3.11 разворачивают и получают спектр, показанный на рисунке 3.12.
На рисунке 3.12 показаны некоторые из копий спектра для сигнала, имеющего 3.4
периода на интервале наблюдения. Что же касается проблемы асимметрии ДПФ,
заметим, что в случае нашего сигнала утечка возникает во 2-м, в 3-м, в 1-м, в 0-м
бинах и продолжается в -1-м, -2-м и т. д. бинах. Вспомним, что 63-й бин —это то
же, что и -1-й, 62-й бин —это тоже, что и -2-й, и т, д. Эта эквивалентность бинов
позволяет нам рассматривать бины ДПФ так, как если бы они продолжались в об­
ласть отрицательных частот, как показано на рисунке 3.13 (а). Результат состоит
в том, что утечка заворачивается вокруг бина т = 0, а также вокруг бина т =К. Это
не удивительно, потому что частота т = 0 — это и есть частотат = N. Заворот утеч­
ки относительно частоты т = 0 и несет ответственность за асимметрию ДПФ от­
носительно бина т = 3 на рисунке 3.8 (Ь).
Вспомним обсуждение симметрии ДПФ действительной последовательности
х(п), когда отсчеты ДПФ от т = 0 до т = (N /2 -1 ) симметричны бинам с т >
(N/2), где N — размер ДПФ. т-й отсчет ДПФ будет иметь тот же модуль, что и
( N - 171)-й отсчет, т. е. | Х(т) \ = | Х ^ - т ) | . Это значит, что заворот утечки возни­
кает также и вокруг бина т = N/2. Это можно показать, взяв входной сигнал, имею­
щий 28.6 (32 - 3.4) периодов на интервале накопления, спектр которого показан на
рисунке 3.13 (Ь). Отметим сходство рисунков 3.13 (а) и 3.13 (Ь). Таким образом,
ДПФ демонстрирует заворот утечки относительно бинов т = Опт = N/2. Мини­
мальная асимметрия, вызванная утечкой, будет в районе N /4 -го бина, как показа­
но на рисунке 3.14 (а), на котором приведен полный спектр входного сигнала,
содержащего 16.4 периода на интервале наблюдения. Рисунок 3.14 (Ь) содержит
первые 32 бина спектра этого сигнала в увеличенном масштабе.
3.8. Утечка ДПФ
89
Входной сигнал также
проявляется на частоте
64 - 3.4 = 60.6 и 64 + 3.4 = 67.4
периода на интервал
Входной сигнал также
проявляется на частоте
О - 3.4 = -3.4 периода
на интервал
Входной сигнал имеет
частоту 3.4 периода
на интервал
В этом направлении
спектры повторяю тся
В этом направлении
спектры повторяю тся
Г ■м I I II I М І I І і І І І I I I I II ■■т і I М Г | І І І І І І І І І І І І І I 1-М І ' і ►
-12 -10 -8
-6 -4
-2
0
2
4
8
10
12
52
54
56
58
60
62
64
66
68
70
72
74 76
П1
(Ч астота)
Рис. 3 .1 2 . Размножение спектра для сигнала, имеющего 3.4 периода на интервале
наблюдения
*
Модуль ДПФ
(при входном сигнале
3.4 периода/интервал)
т=0
(а)
I
*
у
ж
■ ,>
ж
—іI і■ іI гГ"Н"|т -Г-Н .1 * \ І Н І» М М М ! ■г- і ■ і
50 52 54
56 58 60 62
(-14) (-12) (-10) (-8) (-6) (-4) (-2)
0
2
468 10
12
14
т
(Ч а с то та )
»
Модуль ДПФ
(при входном сигнале
26.8 периода/интервал)
т = N12
= 32
а
■
0
М М I М I М М М * ■?> I м
18
20
22
24
26
28
30
32
34
36
38
40
42 44
46
Ш
(Ч а с то та )
Рис. 3 .1 3 . Модуль ДПФ: (а) для сигнала, имеющего 3.4 периода на интервале на­
блюдения; (Ь) для сигнала, имеющего 28.6 периодов на интервале на­
блюдения
Читать об утечке спектра можно целый день. Однако наилучший способ оце­
нить ее влияние — сесть за компьютер и использовать программу ДПФ в форме
быстрого преобразования Фурье (БП Ф ) для обработки ваших собственных тес­
товых сигналов, подобных показанным на рисунках 3.7 и 3.8. При этом вы сможе­
те экспериментировать с разными комбинациями частот входных сигналов и
разными размерами ДПФ.
90
Гпава 3. Дискретное преобразование Фурье
Модуль ДПФ
(при входном сигнале
16.4 периода/интервал)
25.:
20 ■■
15 ■■
(а)
10 ..
*
а
5
И1'
Т-м-
12 16 20 24 28 32 36 40 44 48 52 56 60
т
(Частота)
i I
Модуль ДПФ
(при входном сигнале
16.4 периода/интервал)
20
15 ■■
(Ь)
10 ..
5 ■■
0
Ц"Н-НЦ Н Ч И И Н■НН1 Н
>' 1Ч + ^
0
2
4
6
8
10 12 14 16 18 20 22 24 26 28 30
т
(Частота)
т = Л//4 = 16
Рис. 3 .1 4 . Модуль ДПФ для сигнала, имеющего 16.4 периода на интервале на­
блюдения: (а) полный спектр; (Ь) спектр в увеличенном масштабе, де­
монстрирующий асимметрию, вызванную утечкой, относительно
частоты т = Л//4
Вы сможете показать, что утечка ДПФ не безобидна, т. к. бины, содержащие
сигналы низкого уровня, могут оказаться искаженными боковыми лепестками
соседних бинов, содержащих сигналы большой амплитуды.
Хотя утечку невозможно устранить полностью, для уменьшения ее вредного
влияния можно использовать часто применяемый метод взвешивания окном.
Рассмотрим несколько примеров окон.
3.9. Окна
Взвешивание окном уменьшает утечку ДПФ за счет уменьшения уровня боко­
вых лепестков функции (3-25), показанных на рисунке 3.9. Это достигается тем,
что отсчеты в начале и конце последовательности постепенно приводятся к одно­
му общему значению. Рисунок 3.15 демонстрирует, как работает описанный меха­
низм. Если мы рассмотрим сигнал бесконечной длительности во временной
области, показанный на рисунке 3.15 (а), ДПФ можно выполнить только над ин­
тервалом конечной длительности, подобным показанному на рисунке 3.15 (с).
91
3.9. Окна
Мы можем рассматривать входной сигнал ДПФ на рисунке 3.15 (с) как произве­
дение входного сигнала, существующего на всей оси времени (рисунок 3.15 (а)) и
прямоугольного окна, отсчеты которого равны 1 на всем интервале анализа, пока­
занного на рисунке 3.15 (Ь). Каждый раз, когда мы вычисляем ДПФ от последова­
тельности конечной длительности, мы по умолчанию умножаем эту
последовательность на окно, все отсчеты которого равны единице, и, по существу,
умножаем все отсчеты последовательности за пределами окна на 0. Оказывается,
форма функции sin(x)/x в (3-25), показанной на рисунке 3.9, объясняется этим
прямоугольным окном, потому что непрерывное преобразование Фурье этого
прямоугольного окна (рисунок 3.15 (Ь)) и есть эта самая функция sine.
Как мы скоро увидим, именно резкие переходы прямоугольного окна от 0 к 1
являются причиной появления боковых лепестков функции sin(x)/x. Чтобы ми­
нимизировать утечку спектра, обусловленную этими боковыми лепестками, нам
необходимо уменьшить их амплитуду, используя отличные от прямоугольного
окна. Представим себе, что мы умножаем входную последовательность ДПФ, по­
казанную на рисунке 3.15 (с), на треугольное окно (рисунок 3.15(d)), чтобы полу­
чить взвешенный сигнал, показанный на рисунке 3.15(e). Заметьте, что значения
отсчетов сигнала, как показывает рисунок 3.15 (е), оказываются одинаковыми в
начале и в конце интервала наблюдения. Уменьшенный разрыв снижает уровень
относительно высокочастотных составляющих в отсчетах ДПФ; т. е. уровни бо­
ковых лепестков ДПФ при использовании треугольного окна уменьшаются. Су­
ществуют и другие окна, которые снижают уровень утечки больше, чем
треугольное окно, такие как окно Хэннинга, показанное на рисунке 3.15 (f)- Про­
изведение этого окна на входную последовательность дает сигнал, показанный на
рисунке 3.15 (g). Другое часто используемое окно —это окно Хэмминга, показан­
ное на рисунке 3.15 (h). Оно очень похоже на окно Хэннинга, но имеет подставку.
Прежде, чем мы узнаем точно, насколько хорошо эти окна минимизируют
утечку спектра, давайте определим их математически. Предполагая, что N отсче­
тов сигнала индексируются переменной п, причем 0 < п < N - 1, мы обозначим N
отсчетов окна как w(n)\ таким образом, перед выполнением ДПФ входная после­
довательность х(п) умножается на соответствующие отсчеты окна w(n). Следова­
тельно, ДПФ взвешенной окном последовательности х(п), X w(m), приобретает
форму
N -1
X w(m) = 2 w(ri) *х(п)е -рлпт/N
(3-26)
Чтобы использовать окна, нам необходимы их математические описания, как
функции п. Отсчеты окон определяются следующими выражениями:
Прямоугольное окно
w{n) = 1, п = 1, 2 ,..., N-1
(3-27)
Треугольное окно (очень
w(n) = n/(N/2) при N = 1 ,2 ,..., N/2,
похоже на окна Бартлетта [3] и w(n) = 2 -n /(N /2 )
Парзена [4,5]),
при п = N/2+1, N/2+2,
N-1
(3-28)
Окно Хэннинга (его еще
называют приподнятым
косинусом, а также окном
Ханна, или фон Ханна)
(3-29)
w[n) = 0 .5 - 0.5cos(27in/N-1)
при п = 1,2, ..., N-1
92
Гпава 3. Дискретное преобразование Фурье
Окно Хэмминга
w{n) = 0.54 - 0.46cos(2nn/N-1)
при п = 1, 2 , N- 1
(3-30)
Интервал
накопления
(а)
Время
^
Время
Интервал
накопления
I.U
(Ь)
Прямоугольное
окно
--------------------►
Время
Время
Интервал
накопления
(с)
Время
null И
Интервал
накопления
Интервал
накопления
Рис. 3.15. Минимизация разрывов на концах интервала наблюдения: (а) бесконеч­
ная синусоида; (Ь) прямоугольное окно для конечного интервала наблю­
дения; (с) произведение прямоугольного окна и бесконечной
синусоиды; (d) треугольное окно; (е) произведение треугольного окна и
бесконечной синусоиды; (f) окно Хэннинга; (д) произведение окна Хэн­
нинга и бесконечной синусоиды; (h) окно Хэмминга
Если мы теперь построим графики w(n) по выражениям (3-27)—(3-30), мы по­
лучим соответствующие окна, похожие на те, что изображены на рисунках 3.15 (Ь),
3.15(d), 3.15(f) и 3.15(h)1.
В литературе уравнения для функций окон зависят от диапазона изменения индекса п.
Мы приняли, что п изменяется в диапазоне 0< п< Ы -1. Некоторые авторы определяют
п в диапазоне -N /2 <п< N/2, и в этом случае, например, выражение для окна Хэммин­
га будет иметь вид т(п) = 0.5 + 0.5со$(2жп/К-1).
93
3.9. Окна
Спектр прямоугольного окна используется как эталон для оценки спектров
других окон; т. е. мы обычно оцениваем спектр некоторого окна, сравнивая его со
спектром прямоугольного окна, амплитудный спектр которого выглядит так, как
показано на рисунке 3.9 (Ь). Мы повторяем этот спектр, |\У(т)\, на рисунке 3.16 (а).
Кроме того, рисунок 3.16 (а) содержит амплитудные спектры окон Хэмминга,
Хэннинга и треугольного окна. (Ось частот на рисунке 3.16 построена так, что
кривые изображают характеристику одного бина А^-точечного ДПФ при исполь­
зовании разных окон.) Можно видеть, что последние три окна обладают пони­
женным уровнем боковых лепестков по сравнению с прямоугольным окном.
Поскольку окна Хэмминга, Хэннинга, а также треугольное окно снижают уровень
сигнала, который подвергается ДПФ, пиковое значение их главного лепестка ока­
зывается меньше, чем у прямоугольного окна. (Из-за близких к 0 значений т(п)
на концах анализируемого интервала эти потери сигнала называют коэффициен­
том обработки или коэффициентом потерь окна.) Как бы то ни было, мы в первую
очередь интересуемся боковыми лепестками окна, которые на рисунке 3.16 (а)
увидеть трудно из-за линейного его масштаба. Мы преодолеем эту трудность, по­
строив амплитудные спектры в логарифмическом масштабе в дБ и нормализовав
каждый график так, чтобы пиковое значение главного лепестка было равно 0 дБ.
(В приложении Е обсуждается происхождение логарифмического масштаба и
польза от измерения частотных характеристик в логарифмическом масштабе с
использованием децибелов.) Обозначив логарифмический спектр как |1У^(т)|,
мы вычисляем его по формуле
| ^ в( т ) | =20 • 1оё 10[ | ^ в( т ) | / № ав(0)\]
(3-31)
(Отсчет | (?)| в знаменателе (3-31) есть значение №(171), соответствующее
пику главного лепестка, для которого т = 0.) Кривые |1У^в ( т ) | для разных окон
показаны на рисунке 3.16 (Ь). Теперь мы действительно видим, как соотносятся
боковые лепестки спектров разных окон.
Глядя на спектр прямоугольного окна, мы видим, что его главный лепесток са­
мый узкий из всех, и его ширина равна/ 5/Ы. Но, к сожалению, его первый боковой
лепесток имеет уровень всего -13 дБ по отношению к пику главного лепестка, что
не так хорошо. (Имейте ввиду, что на рисунке 3.16 мы показываем только часть
спектра, соответствующую положительным частотам.) Боковые лепестки треуго­
льного окна ниже, но за это мы заплатили тем, что ширина главного лепестка уве­
личилась в два раза по сравнению с шириной главного лепестка прямоугольного
окна. Широкие главные лепестки различных непрямоугольных окон ухудшают
разрешающую способность взвешенного ДПФ почти в два раза. Однако, как мы
увидим, выгоды от снижения утечки обычно перевешивают потерю разрешаю­
щей способности.
Обратите внимание на еще меньший уровень первого бокового лепестка и бы­
строе уменьшение боковых лепестков окна Хэннинга. Окно Хэмминга имеет еще
более низкий первый боковой лепесток, но скорость спада боковых лепестков у
него меньше, чем у окна Хэннинга. Это значит, что утечка на расстоянии трех или
четырех бинов от центрального бина будет ниже для окна Хэмминга, чем для окна
Хэннинга, а утечка на расстоянии полудюжины, или около того, бинов от центра­
льного бина будет ниже для окна Хэннинга, чем для окна Хэмминга.
94
Гпава 3. Дискретное преобразование Фурье
Д Модули спектров окон в линейном масштабе | И/(/т?)|
Ч
>■
:
Прямоугольное (пунктирная)
Ж "
0.8
Хэмминга (штрих-пунктирная)
^ Треугольное (штриховая)
/ Хэннинга (сплошная)
___ ►
О
/3/Л/
2/ 8/Л/
4^1N Частота
Модули спектров окон в логарифмическом масштабе |1Л^ь(/7?)|
Хэннинга (сплошная)
Прямоугольное (пунктирная)
Треугольное (штриховая)
. . \ Хэмминга (штрих-пунктирная)
2 /;/Л/
4Ш
Частота
Рис. 3 .1 6 . Амплитудные спектры окон: (а) | )Л/(т) | в линейном масштабе; (Ь) {№^[01)1 в
нормированном логарифмическом масштабе
Когда мы применим окно Хэннинга к сигналу, имеющему 3.4 периода на анали­
зируемом интервале, показанному на рисунке 3.8 (а), мы получим на входе Д П Ф
сигнал, показанный на рисунке 3.17 (а) под огибающей окна Хэннинга. Результат
Д П Ф взвешенного окном сигнала показан на рисунке 3.17 (Ь) вместе с результатом
95
3.9. Окна
ДПФ невзвешенного сигнала, т. е. сигнала, взвешенного прямоугольным окном.
Как мы и ожидали, спектр в случае использования окна Хэннинга оказывается
шире и имеет более низкий максимум, но утечка по боковым лепесткам сущест­
венно ниже, чем в случае прямоугольного окна.
Входной сигнад взвешенный окном
1 ■■
Окно
0.8
■■
0.6
■■
Л
Х э н н и н га
0.4 ■■
0.2
■■
0 аП'1'
(а)
- 0.2 . .
-0.4 ..
-
0.6
*!
п
Я \
(Время)
■■■
■■
х ( п ) = [ 0 . 5 - 0 . 5 с о 8 ( 2 т 1 Л /6 4 ) ] • [ 8 т ( 2 л 3 . 4 л / 6 4 ) ]
- 0.8 . .
-1 ■■
синусоида с частотой
3.4 периода на интервал
Модули ДПФ
(Ь)
^А
.
.
.
*
Результат с прямоугольным окном
а
Результат с окном Хэннинга
^
^
"
Ш
А -А —
Ш
Щ
Я
Ц „
5 6 7 8 9 1011 12131415 161718
Г
Г
г'
Г'
^
272829 3031
т
(Частота)
Рис. 3 .1 7 . Окно Хэнниннга: (а) 64 отсчета произведения окна Хэннинга на синусои­
дальный сигнал, имеющий 3.4 периода на интервале анализа; (Ь) резу­
льтат ДПФ с окном Хэннийга в сравнении с ДПФ с прямоугольным окном
Мы можем продемонстрировать, как использование окна помогает обнару­
жить слабый сигнал в присутствии близкого по частоте мощного сигнала. Приба­
вим к сигналу, изображенному на рисунке 3.8 (а), 64 отсчета синусоидального
сигнала, имеющего на анализируемом интервале 7 периодов, с амплитудой 0.1.
Применяя окно Хэннинга к сумме сигналов, получим входной сигнал, показанный
96
Глава 3. Дискретное преобразование Фурье
на рисунке 3.18 (а). Если бы мы не применяли взвешивание, результат ДПФ был
бы таким, какой показан на рисунке 3.18 (Ь) квадратиками, и в этом случае утечка
спектра сделала бы компонент сигнала с пг = 7 едва различимым. Но результат
ДПФ взвешенных данных, показанный треугольниками на рисунке 3.18 (Ь), позво­
ляет нам проще обнаружить присутствие компонента ш = 7. На практике специали­
сты, которые используют ДПФ для обнаружения реальных сигналов, выяснили,
что общая разрешающая способность и чувствительность к сигналам зависят боль­
ше от размера и формы используемого окна, чем просто от размера ДПФ.
Входной сигнад
і і взвешенный окном
синусоиды с частотой 3 4 и 7
периодов на интервал
1 ■■
..
х(л) = [0.5 - 0 5соэ(2 пл/64)] • [віп(2яЗ 4 л /6 4) +0 1зіп(2>г7л/64)1
0.8
*■«*
0.6 ..
0.4 ■■
0.2 ..
0
(а)
-
0.2
ж *
\ і ■■
■■
-0.4 ..
-
0.6
-
0.8
-
1.2
.
1ЖЇЇЖ,.1.
*!
■
Я \\ І X
хИ
X
-■Ш
X : XX
V X
П
(Время)
■■
-1 ..
■■
М одули Д ПФ
2 5 --
20
- -
*
Результат с прямоугольны м окном
ж
Результат с окном Хэннинга
15 - (Ь)
10 -Компонент сигнала
с индексом т - 1
5
о4=4—і—і—і—ь 4 н —
0 1 2
3 4
5 6 7 8
і—*—і—і—І—і—і—Ї—І—
9 10 11 12 13 14 15 16 17 18 19
5—*28 29 30 31
т
(Ч астота)
Рис. 3 .1 8 . Повышение чувствительности обнаружения сигнала при использовании
окна: (а) 64 отсчета произведения окна Хэннинга и суммы синусоидаль­
ных сигналов, имеющих 3.4 и 7 периодов на интервале анализа; (Ь) резу­
льтат ДПФ с пониженной благодаря окну Хэннинга утечкой в сравнении с
результатом ДПФ с прямоугольным окном
3.10. Гоебешковые искажения ДПФ
97
Когда мы станем более опытными в использовании окон, мы увидим, что раз­
ные окна имеют свои индивидуальные преимущества и недостатки. Кроме того,
независимо от используемого окна, мы понижаем уровень утечки спектра по
сравнению с утечкой прямоугольного окна. Имеется множество разных окон,
описанных в литературе по ЦОС. Их так много, что для обозначения этих окон
использованы имена всех, кто имел отношение к ЦОС. Не совсем ясно, сильно ли
отличаются многие из этих окон. Единственное, что мы твердо знаем, это то, что
выбор окна — всегда компромисс между шириной главного лепестка, уровнем
первого бокового лепестка и скоростью убывания боковых лепестков с ростом ча­
стоты. Использование того или иного конкретного окна зависит от приложения
[5], а приложений имеется великое множество.
Окна используются для улучшения точности спектрального анализа с помо­
щью ДПФ [6], при проектировании цифровых фильтров [7,8], для моделирова­
ния диаграмм направленности антенн и даже для улучшения качества некоторых
преобразователей механических сил в напряжение [9]. Таким образом, для чита­
телей, жаждущих дальнейшего изучения данной области, информация об окнах
имеется в избытке. (Праматерью всех технических публикаций об окнах является
работа Харриса [ 10]. А полезная работа Нутталла внесла коррективы и дополнения
к некоторым разделам статьи Харриса[11].) Наилучший способ изучить влияние
окон — сесть за компьютер, запустить программу, реализующую ДПФ (БПФ ), и
начать анализировать взвешенные окнами сигналы. (Кстати, имеются еще две
обычно используемые функции окна, которые можно использовать для уменьше­
ния утечки ДПФ, хотя их обсуждение мы отложили до раздела 5.3. Это окна Чебы­
шева и Кайзера, которые имеют параметры, позволяющие находить компромисс
между расширением главного лепестка и снижением боковых лепестков.)
3.10. Гребешковые искажения ДПФ
Гребешковые искажения —это флуктуации общего амплитудного спектра при
JV-точечном ДПФ. Мы подробно разберем их в разделе 3.16, а сейчас отметим толь­
ко, что, когда окна не используются, все бины ДПФ дают составляющие, имеющие
форму вида sin(x)/x На рисунке 3.19 (а) показан общий спектр, полученный в ре­
зультате наложения составляющих вида sin(.r)/r от нескольких бинов'.(Поскольку
боковые лепестки функции sine в данном случае не играют роли, на рисунке 3.19 (а)
они не показаны.) На рисунке 3.19 (Ь) общая реакция ДПФ в частотной области
показана толстой линией, огибающей главные лепестки бинов. Эта пульсирующая
кривая, причину которой также называют эффектом частокола, отображает поте­
ри, возникающие для частот, лежащих между центрами бинов.
По рисунку 3.19 (Ь) мы можем определить, что модуль ДПФ изменяется от 1 в
центре бина до 0.637 на равном удалении от двух соседних бинов. С точки зрения
энергетического спектра эти пульсации приведут к гребешковым искажениям
почти в -4 дБ на равном удалении от соседних бинов. На рисунке 3.19 показан
1 Возможно, картина на рисунке 3.19 (а) послужила причиной того, что отдельные от­
счеты ДПФ называют бинами. Вся энергия сигнала под кривой sin(.r)/.r попадает в
«хранилище» данного отсчета ДПФ. («Bin» по-английски значит «ларь», «бункер» —
прим перев )
98
Гпава 3. Дискретное преобразование Фурье
случай, когда окна не используются (т. е. мы имеем дело с прямоугольным ок­
ном). Поскольку непрямоугольные окна расширяют главный лепесток, их исполь­
зование приводит к менее серьезным гребешковым искажениям [10,12]. Их более
широкие главные лепестки перекрываются в большей степени и заполняют про­
валы, имеющиеся на рисунке 3.19 (Ь). Например, гребешковые искажения для
окна Ханнинга составляют примерно 0.82, или -1.45 дБ посредине между центра­
ми соседних бинов. На практике, однако, гребешковые искажения не являются
серьезной проблемой. Реальные сигналы обычно имеют спектр, занимающий не­
сколько бинов, гак что пульсации спектра могут оказаться практически незамет­
ными. Рассмотрим схему, которую называют дополнением нулями и которая
используется как для уменьшения гребешковых искажений, так и для улучшения
разрешающей способности по частоте.
(т+Щ
(т + З )^
(т+5)ґ3
N
N
N
П
А
А
П
А
А
А
10
\ 1
0.637
(Ь)
Частота
тґ3
N
(т+2 Уз
~
(т+4 )^
лГ~
Рис. 3 .1 9 . Амплитудно-частотная характеристика бинов ДПФ: (а) отдельные кри­
вые вида б і п ( х ) / х для каждого бина ДПФ; (Ь) общая амплитудно-частот­
ная характеристика
3.11. Разрешающая способность ДПФ,
дополнение нулями и дискретизация
в частотной области
Один популярный метод, используемый для улучшения оценки спектра с помо­
щью ДПФ известен как дополнение нулями. Суть его заключается в добавлении
нулевых отсчетов к исходной анализируемой последовательности для увеличения
общего количества отсчетов входных данных. Исследование метода дополнения
99
3.11. Разрешающая способность ДПФ
нулями иллюстрирует важное свойство ДПФ —дискретизацию по частоте, о кото­
рой мы упоминали при обсуждении утечки спектра. Когда мы дискретизируем не­
прерывный сигнал во временной области, имеющий непрерывный спектр, и затем
берем ДПФ от полученных отсчетов, ДПФ дает в частотной области дискретизи­
рованную аппроксимацию непрерывного спектра. Чем больше точек в ДПФ, тем
точнее ДПФ аппроксимирует непрерывное преобразование Фурье.
Чтобы проиллюстрировать эту мысль, предположим, что мы хотим аппрокси­
мировать непрерывное преобразование Фурье непрерывной функции /(£), пока­
занной на рисунке 3.20 (а). Колебание/(?) простирается до бесконечности в обоих
направлениях по времени, но отлично от нуля только на интервале в Т секунд.
Если ненулевая часть функции представляет собой синусоиду, имеющую три пе­
риода на интервале в Т секунд, ее непрерывный амплитудный спектр выглядит
так, как показано на рисунке 3.20 (Ь). (Поскольку непрерывное преобразование
Фурье вычисляется на бесконечном интервале времени, шаг изменения частоты
бесконечно мал, так что спектр является непрерывным.) Этот спектр мы будем
аппроксимировать с помощью ДПФ.
.................................. —— г —->-<■
частота
Рис. 3 .2 0 . Непрерывное преобразование Фурье: (а) непрерывная функция време­
ни f(t), состоящая из усеченной синусоиды частотой 3/Т] (Ь) модуль не­
прерывного преобразования Фурье функции f(t)
Предположим, что мы хотим использовать 16-точечное ДПФ для аппроксима­
ции непрерывного преобразования функции f(t), показанной на рисунке 3.20 (а).
16 отсчетов /(£), охватывающих три периода синусоиды в f(t), показаны в левой
части рисунка 3.21 (а). Подавая эти отсчеты на вход 16-точечного ДПФ, получаем
дискретные отсчеты в частотной области. Часть отсчетов, соответствующая поло­
жительным частотам, показана точками в правой части рисунка 3.21 (а). Мы мо­
жем видеть, что выходные отсчеты ДПФ являются отсчетами непрерывного
преобразования Фурье, показанного на рисунке 3.20 (Ь). Если мы добавим в ко­
нец исходной входной последовательности 16 нулей (дополним ее нулями) и вы­
числим 32-точечное ДПФ, мы получим результат, приведенный в правой части
100
Глава 3. Дискретное преобразование Фурье
рисунка 3.21 (Ь), из которого видно, что мы уменьшили интервал дискретизации
в частотной области в 2 раза. Теперь ДПФ чаще дискретизует непрерывное пре­
образование Фурье. Добавив еще 32 нуля и беря 64-точечное ДПФ, мы получаем
результат, показанный в правой части рисунка 3.21 (с). Результат 64-точечного
ДПФ теперь начинает проявлять истинную форму непрерывного спектра сигна­
ла. Добавив еще 64 нуля и вычислив 128-точечное ДПФ, мы получаем результат,
показанный в правой части рисунка 3.21 ((1). Способность ДПФ дискретизиро­
вать спектр в частотной области теперь очевидна, но заметьте, что индексы бина,
соответствующего центру главного лепестка для всех случаев, показанных на ри­
сунке 3.21, разные.
Модуль ДПФ
і Входной сигнал
1+ ■
«
ж
8■■
«
6*■
0.5
4 - ■
(а)
' '
о»І і
і
і
і
ї
ї
I ■ і
О
2
3
4
5
6
7
1
8
ї
ї І
і І і
9 10 11 12 13 14 15
Ппаї
Время
2 ■■
0 М -
-м -
0
2
Модуль ДПФ
і I Входной сигнал
*
0 .5 - ■
(Ь)
ОМП »І I ММ і і ц М 1*.тцжтштт*т*жт-шАт.-^
0
3
I
Г
(С )
6
9
12
15
18
21
24
27'
30
Время
* ж
, Мч
о м — «— м ----I— м — к
О
Входной сигнал
8-•
I"-
Ї
2----- 3
4
I
5
|и—м—
4-­
6
10
7
11
12
Модуль ДПФ
6*■
0 *М *Д 4 Ж Н
0
5
10
:
І ММ
15 20
25 30
35 40 45
50 55
60
ВР®МЯ
»'* ■ \/
■! *
о*+++*+++*++++-н-+, +++*-и-+*—Частота
И
О
2
4
6
8
10
12
14
16
18
20
22
24
м м^
; м м
сигнал
А Входной
Вх
м
м*
IИМ
Модуль ДПФ
8■
Ум
м
0.5
м
м
(сі) о*-*
121 Время
м
м
м
-0.5 - *
мм
-1 -їм
м
о ■ ж ш -« н ж + іч і п н и п н і пч н н + » н н ь Т » 0
4
8
12
16
20
24
28
32 36
40
44
48
Рис. 3 .2 1 . Дискретизация в частотной области при вычислении ДПФ: (а) 16 вход­
ных отсчетов и N = 16\ (Ь) 16 входных отсчетов, 16 добавленных нулей и N
= 32; (с) 16 входных отсчетов, 48 добавленных нулей и N = 64\ (с1) 16 вход­
ных отсчетов, 112 добавленных нулей и N = 128
101
3.11. Разрешающая способность ДПФ
Значит ли это, что мы должны переопределять частотную ось ДПФ при исполь­
зовании дополнения нулями? На самом деле, нет. Если мы дополняем нулями Ь
ненулевых отсчетов и получаем всего N отсчетов во временной области для ^-то­
чечного ДПФ, средние частоты бинов ДПФ дополненной последовательности
связаны с исходной частотой дискретизации давно знакомым нам выражением
(3-5), или
центральная частота т-го бина = т/5/ЛГ.
(3-32)
Таким образом, в примере, иллюстрируемом рисунком 3.21 (а), мы использу­
ем (3-32), чтобы показать, что, хотя индекс бина ДПФ дополненной нулями по­
следовательности, соответствующего максимуму главного лепестка, изменяется
с ростом М частота этого бина остается неизменной. Следующая таблица показы-'
вает, чтр при этом происходит:
Максимум главного
лепестка
соответствует т =
/. =
N=
3.21 (а)
3
16
16
3 ^ /1 6
3.21 (Ь)
6
16
32
6fs/32 = Зfs/^6
3.21 (с)
12
16
64
12^ /6 4 = 3 ^ /1 6
3.21 (с!)
24
16
128
24/д/128 = З/д/16
№ рисунка
Частота ма ксимума
главного л епестка
по отноше* 1ИЮ к fs =
Выиграем ли мы что-нибудь, еще дополнив последовательность нулями и вы­
числив ДПФ еще большего размера? Выиграем, но мало, потому что 128-точечное
ДПФ дискретизует непрерывный спектр достаточно подробно на рисунке 3.21 (с1).
Брать отсчеты чаще с помощью ДПФ большего размера бесполезно, т. к. это не
улучшит наше понимание частотной структуры спектра. Суть здесь в том, что
добавление нулей к входной последовательности улучшает разрешение 1 по час­
тоте, но существует практический предел того, что мы можем достичь с его по­
мощью. В нашем примере 128-точечное ДПФ выявляет подробную структуру
спектра. Здесь мы столкнулись с законом убывающей отдачи. Выполнение 256или 512-точечногоо ДПФ в нашем случае дало бы мало новой информации2. Для
этой конкретной последовательности нет смысла существенно уменьшать интер1 В отечественной литературе под разрешающей способностью по частоте понимают
минимальную разность частот гармоник, при которой в спектре эти гармоники раз­
личаются как отдельные составляющие. В этом смысле разрешающая способность по
частоте определяется только длительностью дискретизированной выборки сигнала.
Дополнение нулями позволяет лишь уменьшить интервал дискретизации по частоте и
подробнее рассмотреть спектр сигнала. —(прим. перев.)
Обратите внимание на то, что размер ДПФ (Ы) в наших примерах равен целой степени
2 (64,128, 256,512). Это объясняется тем, что для выполнения ДПФ мы на самом деле
используем специальных алгоритм, известный как быстрое преобразование Фурье
(БПФ). Как мы увидим в главе 4, типовая реализация БПФ требует, чтобы Добыло це­
лой степенью двойки.
102
Гпава 3. Дискретное преобразование Фурье
вал дискретизации непрерывного спектра по частоте. Конечно, и 128-точечное
ДПФ в данном случае не является незыблемым пределом. В зависимости от ко­
личества отсчетов в некоторой произвольной входной последовательности и ча­
стоты дискретизации на практике могло бы потребоваться дополнение каким
угодно количеством нулей для получения требуемого разрешения по частоте.
Относительно дополнения нулями следует сделать два последних замечания.
Первое, выражения для модуля ДПФ (3-17) и (3-17') неприменимы в случае до­
полнения нулями. Если мы дополняем нулями Ь ненулевых отсчетов синусоиды,
частота которой совпадает с частотой бина, в результате чего получаем общее ко­
личество N входных отсчетов и выполняем АГ-точечное ДПФ, то для вычисления
величины отсчетов ДПФ мы должны в (3-17) и (3-17') заменить ЛГна I. И второе,
если мы хотим выполнить дополнение нулями и взвешивание окном, мы не дол­
жны накладывать окно на всю последовательность, включая и добавленные нули.
Окно должно накладываться только на исходные ненулевые отсчеты, иначе нулевые
отсчеты приведут к тому, что часть окна будет фактически обнулена и искажена, что
приведет к ошибочным результатам. (В разделе 4.5 даются дополнительные прак­
тические указания по выполнению ДПФ с использованием алгоритма БПФ при
анализе сигналов реального мира.)
Чтобы немного отвлечься, сейчас подходящий момент для определения диск­
ретно-временного преобразования Фурье (ДВПФ), которое читатель может встре­
тить в литературе. ДВПФ представляет собой непрерывное преобразование Фурье
дискретной 1 -точечной последовательности, и некоторые авторы используют
ДВПФ для описания многих понятий цифровой обработки сигналов, о кото­
рых мы говорили в этой главе. Мы не можем выполнить ДВПФ на компьютере,
потому что оно обладает бесконечным разрешением по частоте, но мы можем
аппроксимировать его с помощью ^-точечного ДПФ 1-точечной последователь­
ности при Ы> Ь. Фактически речь идет о том, что мы делали на рисунке 3.21, когда
дополняли нулями исходную последовательность из 16-отсчетов. (Когда N = Ь,
аппроксимация ДВПФ совпадает с ДПФ.)
Чтобы увидеть связь между ДВПФ и ДПФ, вспомним, что модуль ДВПФ (т. е.
модуль непрерывного преобразования Фурье) последовательности из 16 ненуле­
вых отсчетов, показанной на рисунке 3.21 (а), представляет собой функцию вида
зт(л:)/:г, обозначенную серыми линиями на рисунке 3.21. Наши ДПФ аппрокси­
мируют (дискретизируют) эту функцию. При увеличении количества нулей, ко­
торыми дополняются исходные 16 ненулевых отсчетов, просто выполняется
интерполяция дискретизированной посредством ДПФ версии ДВПФ с уменьша­
ющимся шагом дискретизации по частоте.
Запомните, пожалуйста, что дополнение нулями не улучшает нашу способность
различать два близко расположенных по частоте сигнала. (Например, главные ле­
пестки спектров, изображенных на рисунке 3.21, не меняются по ширине, выражен­
ной в Герцах, при увеличении количества добавляемых нулей.) Чтобы улучшить
спектральное разрешение двух сигналов, необходимо анализировать больше нену­
левых отсчетов. Правило, по которому мы должны жить, заключается в следую­
щем: чтобы реализовать разрешающую способность по частоте на уровне Рге5 Гц, мы
должны накопить отсчеты сигнала на интервале времени 1/Рге5 секунд.
Применения дополнения нулями во временной области мы обсудим в разделе
13.15, дополнения нулями в частотной области в разделе 13.28 и вернемся к
ДВПФ в разделе 3.17.
3.12. Коэффициент улучшения ДПФ
103
3.12. Коэффициент улучшения ДПФ
С ДПФ связаны два коэффициента улучшения. Те, кто использует ДПФ для
обнаружения сигнала в шуме, часто говорят о коэффициенте улучшения ДПФ
потому, что ДПФ может выделить сигнал на фоне шума. Это возможно благодаря
усилению сигнала, связанному с вычислением внутренней корреляции, которое
имеет место при вычислении ЛГ-точечного ДПФ. Кроме этого естественного улуч­
шения отношения сигнал/шум можно получить дополнительное интегральное
улучшение при усреднении результатов ДПФ. Рассмотрим сначала внутренний
коэффициент улучшения.
3 .1 2 .1 . Коэффициент улучшения отдельного ДПФ
Понятие коэффициента улучшения ДПФ очевидно, если мы рассматриваем
отдельный бин ДПФ как узкополосный фильтр. Поскольку частотная характери­
стика бина ДПФ имеет вид функции 8т ( х ) /г , значение этого бина определяется
главным образом энергией сигнала, попадающей в его главный лепесток. Бин
ДПФ можно рассматривать как полосовой фильтр, центр полосы пропускания
которого находится на частоте т/5 /N. Из (3-17) мы знаем, что максимально воз­
можное значение отсчетов ДПФ возрастает при увеличении длины преобразова­
ния N. Кроме того, при увеличении N главный лепесток бина становится уже.
Таким образом, бин ДПФ можно рассматривать как полосовой фильтр, коэффици­
ент передачи которого можно увеличить, а ширину полосы пропускания умень­
шить, увеличивая значение N. Уменьшение ширины полосы пропускания полезно
при обнаружении энергии сигнала, потому что в дололнение к уменьшению энер­
гии шума, попадающей в пределы его полосы пропускания, улучшается и разре­
шающая способность по частоте. Мы можем продемонстрировать это, рассмотрев
ДПФ тона (синусоиды постоянной частоты), смешанного со случайным шумом.
На рисунке 3.22 (а) в логарифмическом масштабе показаны первые 32 отсчета
64-точечного ДПФ, при этом частота тона совпадает с центром бина т = 20. Уров­
ни мощности (квадрат модуля ДП Ф ) на рисунке 3.22 (а) нормированы так, что
мощность наибольшего бина принята за 0 дБ. Поскольку мощность исходного
тона меньше мощности шума, при N = 64 обнаружить его не так просто. (Шум во
временной области, использованный для генерации сигнала, представленного на
рисунке 3.22 (а), имеет нулевое среднее, т. е. не содержит постоянной составляю­
щей, или смещения уровня.) Если же мы увеличим количество отсчетов в четыре
раза и размер ДПФ до N = 256, мы увидим, как мощность тона поднимается над
уровнем шума на бине т = 80 на рисунке 3.22 (Ь). Повышение размера ДПФ до
N = 1024 дает дополнительное улучшение, так что спектр тона еще больше подни­
мается над уровнем шума, как показано на рисунке 3.22 (с).
Чтобы численно оценить улучшение ДПФ, мы можем определить отношение
сигнал/шум как отношение уровня мощности сигнала к уровню мощности шума в
частотной области. (Конечно же, на практике нам хотелось бы, чтобы это отноше­
ние было как можно больше.) Есть ряд причин, по которым трудно предсказать, ка­
ким будет отношение сигнал/шум для любого конкретного ДПФ. Это объясняется
104
Гпава 3. Дискретное преобразование Фурье
тем, что мы не можем точно предсказать энергию данных N отсчетов случайного
шума. Кроме того, если частота сигнала не совпадает с центральной частотой
бина, возникающая при этом утечка приводит к повышению уровня шума и сни­
жает отношение сигнал/шум. В дополнение к этому, любое используемое окно
оказывает влияние на уровень утечки и, следовательно, на отношение сигнал/
шум. Единственное, что мы можем сказать наверняка, это то, что отношение сиг­
нал/шум растет с ростом ЛГ, потому что стандартное отклонение (СКЗ) шума для
бина ДПФ пропорционально л/АГ, а величина бина, в котором находится сигнал,
пропорциональна N. В более общем виде для действительного входного сигнала,
если N > N', отношение сигнал/шум при ^/-точечном ДПФ БИКК возрастает по
сравнению с отношением сигнал/шум ЛГ-точечного ДПФ 8 МШ\Г в соответствии с
соотношением:
SNRN = SNRN■+ 2 0 1о§ 10(х /Щ О
(3-33)
Н ом е р б и н а Д П Ф
Рис. 3 .2 2 .Улучшение отношения сигнал/шум при одном ДПФ: (а) Л/=64; (Ь) N=256',
(с) N= 1024
3.12. Коэффициент улучшения ДПФ
105
/
Рис. 3 .2 3 . Коэффициент улучшения ДПФ в зависимости от размера ДПФ N для раз­
ных значений отношения сигнал/шум на входе: (а) линейный масштаб по
оси Л/; (Ь) логарифмический масштаб по оси N
Если мы повышаем размер ДПФ с N ' ло N = 2N', согласно (3-33) отношение
сигнал/шум возрастает на 3 дБ. Мы поэтому говорим, что коэффициент улуч­
шения ДП Ф увеличивается на 3 дБ при каждом удвоении N. Имейте ввиду, что
в присутствии случайного шума удвоение размера ДП Ф может увеличить от­
ношение сипгал/шум меньше, чем на 3 дБ. С другой стороны, мы можем полу­
чить улучшение немного больше, чем 3 дБ. Это зависит от природы случайного
шума. Если мы выполняем много ДПФ, мы можем получить средний коэффи­
циент улучшения для разных отношений сигнал/шум на входе, как показано
на рисунке 3.23 (а). Поскольку нас интересует наклон кривых на рисунке 3.23 (а),
мы начертили их в логарифмическом масштабе для N на рисунке 3.23 (Ь), при
этом кривые линии превратились в прямые. Глядя на графики рисунка 3.23 (Ь),
мы можем ясно видеть увеличение отношения сигнал/шум на 3 дБ при удвоении
N если N превышает 20 —30, а сигнал не слишком сильно спрятан в шуме. Абсо­
лютные значения, изображаемые графиками на рисунках 3.23 (а) и 3.23 (Ь) не яв­
ляются незыблемыми. Они были получены путем моделирования шума и тона,
106
Гпава 3. Дискретное преобразование Фурье
частота которого совпадала с центром бина. Если бы частота тона была располо­
жена между центрами бинов, эти кривые опустились бы ниже, но их форма оста­
лась бы такой же', т. е. (3-33) выполняется независимо от частоты тона.
3 .1 2 .2 . Улучшение интегрирования при усреднении
нескольких ДПФ
Теоретически мы могли бы получать неограниченно большие коэффициенты
улучшения, увеличивая размер ДПФ. Проблема состоит в том, что количество опе­
раций умножения при выполнении БПФ растет пропорционально ЛГ2, и вычисле­
ние ДПФ длинных последовательностей становиться трудоемким. Поскольку
операция сложения выполняется проще и быстрее, чем умножение, мы можем
усреднять результаты нескольких ДПФ для повышения коэффициента улучше­
ния и чувствительности при обнаружении сигналов. Усреднение результатов
ДПФ рассматривается в разделе 11.3.
3.13. ДПФ прямоугольных функций
Мы завершаем эту главу, предлагая вашему вниманию математические детали
двух важных аспектов ДПФ. В первую очередь мы получим выражения для ДПФ
прямоугольной функции (прямоугольного окна), а затем мы используем эти ре­
зультаты для иллюстрации частотной характеристики ДПФ. Частотная характе­
ристика ДПФ интересует нас потому, что она дает альтернативную точку зрения
для понимания утечки, которая возникает при использовании ДПФ как инстру­
мента анализа сигналов.
Вычисление ДПФ прямоугольной функции является наиболее распростра­
ненной и важной операцией в области цифровой обработки сигналов. Мы встре­
чаемся с ним в теории дискретизации, теории окон, в обсуждении свертки, в
спектральном анализе и в проектировании цифровых фильтров. Несмотря на такое
широкое распространение ДПФ прямоугольных функций, литература, посвящен­
ная этому предмету, может оказаться слишком сложной для начинающих в области
цифровой обработки сигналов по нескольким причинам. На первых порах стан­
дартные математические обозначения воспринимаются трудно, а выкладки иногда
подаются со слишком скудными пояснениями. Проблема для новичков усугубля­
ется тем, что для ДПФ существуют разные выражения. В литературе мы можем
найти все перечисленные ниже формы ДПФ прямоугольной функции:
В Р Т прямоу/ функции = Ы П ( Х ) М П ( Х / М ) ] ,
или 8т ( . г ) / г , или 5т (Ш /2)/ъ\п(х/2) .
(3-34)
В этом разделе мы покажем, как получены все формы в (3-34), увидим, как
они связаны друг с другом и создадим таблицу, которая призвана сыграть роль
Графики сместятся вниз, свидетельствуя о понижении отношения сигнал/шум, пото­
му что утечка приведет к повышению средней мощности шума, а гребешковые искаже­
ния понизят мощность бина.
107
3.13. ДПФ прямоугольных функций
Розеттского камня и позволяет переходить от одной формы выражения для ДПФ
к другой. Вдохните поглубже, и начнем с определения прямоугольной функции.
3 .1 3 .1 . ДПФ обобщенной прямоугольной функции
Обобщенную прямоугольную функцию х(п) можно определить как N отсчетов,
среди которых имеется К отсчетов, равных единице, как показано на рисунке 3.24.
Полная ^-точечная последовательность х(п) и есть прямоугольная функция, ко­
торую мы хотим преобразовать. Мы называем эту форму обобщенной формой
прямоугольной функции, потому что пакет К единичных отсчетов начинается в
произвольный момент времени - п 0. Вычислим ДПФ последовательности х(п),
показанной на рисунке 3.24 и получим требуемый результат Х(т). Используя ин­
декс т для нумерации отсчетов в частотной области, мы можем записать выраже­
ние для ^-точечного ДПФ в виде
N/2
Х(т) = 21 х(п)е -Г^пт/ы
(3-35)
и=-(ЛГ/2) + 7
Поскольку отсчеты х(п) отличны от нуля только в диапазоне - п 0 < п < - п 0 +
( К - 1), мы можем изменить пределы суммирования в (3-35) и выразить Х(т) как
- п0 Ц К - 1 )
Х(т) = ^1х(п)е -)2лпт/М '
п=-п0
(3-36)
потому что только К отсчетов вносят вклад в значение Х(т). Этот последний шаг
важен, т. к. он позволяет нам избавиться от х(п) и сделать (3-36) более простым
для последующих манипуляций. Чтобы немного облегчить восприятие последу­
ющих выражений, введем обозначение д = 2 ят/Л^.
х(п)
■<------- К К
- N12 +1
А О
п = -по
— >►
А
п = - п 0 + ( К - 1)
^
п
Д//2
Рис. 3 .2 4 . Прямоугольная функция шириной К отсчетов на интервале в N отсчетов,
где К < N
Итак, теперь на сцену выходит алгебра. Опускаем множитель 1 под знаком
суммы и получаем
-п0ЦК-1)
Х(У) = 2 е-Яп =
П=-П0
= е~М~по> + е~М(-по+1'>+ е~М(~по+2Л>+ ... + е~Я\~г,о+(К~1^ =
См. примечание в конце раздела 8.3 —(прим ред перев.).
108
Гпава 3. Дискретное преобразование Фурье
= е~М~по) е-1°Я + е~М(~по>е~11Я + е-М ~по \ е - ^ + ... + е-Ж -«0) е~}Я(К~1) =
= е М по>[е~]°я + е~)1(1 + е~№ + ... + е~я(к ~1">].
(3-37)
Ряд в квадратных скобках в (3-37) можно просуммировать, так что
К-1
Х(д) = ек(п0) 2 е-лч
(3-38)
р=0
Выражение (3-38), конечно же, выглядит ничуть не проще, чем (3-36), но на са­
мом деле оно проще. Выражение (3-38) есть не что иное, как сумма геометриче­
ской прогрессии и, согласно сказанному в приложении В, ее можно выразить в
замкнутой форме вида
к- 1
2 е-л>я = (1 - е~Щ /( 1 - е-п)
( 3- 39)
р=0
Теперь мы можем упростить (3-39), что вполне уместно здесь. Если мы умно­
жим и разделим числитель и знаменатель в правой части (3-39) на экспоненту,
показатель степени которой разделен на два, мы разделим экспоненты на две час­
ти каждую и получим
к- 1
2
е~№4 = [е~МК/2(еМК/2 - е~МК/2)]/[е~М/2(еМ/2 - е~м/2)]
р=0
= е М К - - 1 ) / 2 ( е м К / 2 _ е -1ЧК / 2 у ( е М / 2 _ е -]ц / 2 )
(3 -4 0 )
Задержимся здесь на мгновение, чтобы вспомнить, куда мы движемся. Мы ста­
раемся придать выражению (3-40) пригодную для использования форму, потому
что оно является частью выражения (3-38), которое мы используем для вычисле­
ния Х (т ) в (3-36) в нашем неустанном поиске понятного выражения для ДПФ
прямоугольной функции.
Выражение (3-40) выглядит еще сложнее, чем (3-39), но мы можем упростить
выражения в скобках. Согласно тождествам Эйлера Б т( 0 ) = ( е]ф- е~}ф)/2] (3-40)
превращается в
К-1
2 е ~]М = е~м(К~ 1}/212]$1п((]К/2)]/12р\п(у/2)] =
р=0
= е-м(к -1)/2[$[п(дк/2)]/[$т (д/2)]
(3 .4 1 )
Подставляя (3-41) вместо суммы в (3-38), получаем выражение для Х(д)
Х(<7) = е^("о) е-м(к -1)/2[8т(цК/2)]/[$т(д/2)] =
= еМ ”о(К-1)/2] [$ \п ^К /2 )]/[$ \п ^ /2 ) ] .
Возвращая переменной q значение 2лт/ N. приходим к .
Х ( т ) = е^2лт/Щп0(К-1)/2] ^\п{2лтК/2)\/[ът(2лт/2)\,
или
(3-42)
3 . 13. ДПФ прямоугольных функций
яуфа^ирихле-
Х(т) = е ^ 2лт^ 1 по(к ~1)/2\ [sm(jimK/N)]/[sin(.4m/N)]
109
(3-43)
Вот и готово. Формула (3-43) представляет собой общее выражение для ДПФ
прямоугольной функции, показанной на рисунке 3.24. Отсчеты Х(т ) описывают­
ся комплексными выражениям, в которых отношение синусов дает амплитуду
Х(т ), а показатель степени экспоненты —фазовый угол Х(т)'. График множите­
ля, содержащего отношение синусов в (3-43), представляет собой периодическую
кривую на рисунке 3.25 (а), и, как и во всех представлениях JV-точечного ДПФ,
период Х(т) равен N. Эта кривая известна как ядро Дирихле (или совокупность
наложенных функций sine) и подробно описана в литературе [10,13,14]. (Она на­
звана в честь немецкого математика девятнадцатого века Петера Дирихле, который
изучал сходимость тригонометрических рядов, используемых для представления
произвольных функций.)
Мы можем увеличить изображение этой кривой вблизи точки т = 0 и рассмот­
реть ее более подробно на рисунке 3.25 (Ь). Точки на этом рисунке напоминают
нам, что ДПФ прямоугольной функции дает дискретные отсчеты, лежащие на
кривой. Таким образом, когда мы выполняем ДПФ, дискретный его результат яв­
ляется дискретизйрованной версией непрерывной кривой функции sine, пока­
занной на рисунке 3.25 (а). Как мы покажем позже, в (3-43) нас в первую очередь
интересует абсолютное значение, или модуль, ядра Дирихле. Этот модуль, \Х(т) |,
показан на рисунке 3.25 (с). Мы впервые увидели график функции sine на рисун­
ке 3.9 в разделе 3.8, где мы познакомились с утечкой ДПФ, и мы будем часто
гзетречать эту кривую при изучении цифровой обработки сигналов.
На данный момент нам известно всего несколько фактов, касающихся ядра
Дирихле, которые необходимо помнить. Первое: ДПФ прямоугольной функции
имеет главный лепесток, центр которого находится в точке т = 0. Пиковое значе­
ние главного лепестка равно К. В этом пиковом значении заложен некоторый
смысл, не правда ли? Отсчет ДПФ Х (0 ) равен сумме исходных отсчетов, а сумма
К единиц равна К. Мы можем показать это более строго, вычислив (3-43) при т =
0. Когда мы подставляем т = 0 в (3-43), возникает трудность, т. к. мы получаем
выражение sin(<9)/sin(0), которое представляет собой неопределенное отношение
0/0. Придется призвать на помощь высшую математику. Используя правило Лопиталя, мы можем взять производную числителя и знаменателя (3-43), и после
этого подставить т = 0 для определения пикового значения ядра Дирихле. Это
выполняется следующим образом
\Х(т) \ т^,0= (d/dm )X(m ) = {d[sin(nmK/N)]/dm}/{d[sin(mn/N)]/dm} =
=[cos(7zmK/N)/cos(7rm/N)] •[d(nm K/N )/dm \/[d(nm /N )/dm \ =
[cos(0)/cos(0)] •(n m K /N )/(n m /N ) = 1 • К = К ,
(3-44)
1 На рисунке 3 24, изображающем х(гі), Добыло четным. Если бы Добыло нечетным числом,
пределы суммирования в (3-35) были бы такими: -(./V-1)/2 < п< (Ы-1)/2. Использова­
ние таких пределов суммирования привело бы нас точно к такому же выражению для
Х(т), как и (3-43).
110
Гпава 3. Дискретное преобразование Фурье
что и требовалось показать. (Мы могли бы быть сообразительнее и вычислить
(3-35) при т = 0, чтобы получить этот результат. Попробуйте сделать это, помня,
что е^° = 1.) Если бы значения ненулевых отсчетов были равны не единице, а неко­
торому А 0, то, конечно же, пиковое значение ядра Дирихле было бы равно АдК
вместо К. Следующий важный момент, касающийся ядра Дирихле, который сле­
дует отметить — это ширина главного лепестка. Первый ноль выражения (3-43)
возникает на частоте, на которой аргумент числителя равен ж, т. е. когда жтК/М =
ж. Таким образом, значение т для первого нулевого отсчета равно
тУ
первого нучя = л:АУжК = N/ К
(3-45)
как показано на рисунке 3.25 (Ь). Таким образом, ширина главного лепестка рав­
на 2Ы/К, как показано на рисунке 3.25 (с), и обратно пропорциональна К \
1 .00.8 0.6-
Х{т)
0.4-
(Ь) 0.2 0 ■
-0.2 ■
і и | III«■■*
0
А* ■
т = -Л//К
\Х(т)\
1.0
0.8
0.6
(с)
Главный
лепесток
а *'
т
т = Л//К
■
■ ■
К
0.4
0.2
0
т
і _і
1
)
)
)
)
Рис. 3 .2 5 . Ядро Дирихле: (а) периодическая непрерывная кривая, на которой лежат
отсчеты Х{т)ш
, (Ь) значения отсчетовХ(т) вблизи т = 0\ (с) модули |Х (т)|
в окрестности т = 0
Посмотрите, главный лепесток на рисунке 3.25 (а) окружен рядом волн, кото­
рые называются боковыми лепестками, как на рисунке 3.25 (с). Амплитуды этих
Это фундаментальное свойство преобразования Фурье. Чем уже функция в одной об­
ласти, тем шире ее преобразование в другой области
111
3.13. ДПФ прямоугольных функций
боковых лепестков уменьшаются по мере удаления от главного лепестка. Но как
бы далеко боковые лепестки ни удалялись от главного, их амплитуда никогда не
становится в точности равной 0 — и они представляют собой источник изрядной
головной боли для специалистов по ЦОС. Боковые лепестки вызывают маскиро­
вание сигналов небольшой амплитуды мощными сигналами по соседству при
спектральном анализе и создают определенные трудности при проектировании
цифровых фильтров. Как мы увидим в главе 5, нежелательные пульсации АЧХ в
полосе пропускания и небольшое ослабление в полосе задерживания простых
цифровых фильтров обусловлены боковыми лепестками ДПФ прямоугольной
функции. (Для минимизации вредного влияния боковых лепестков, которые хо­
рошо видны на рисунке 3.25, пришлось прибегнуть к проектированию и анализу
окон, а также к разработке рекомендаций по их применению.)
Продемонстрируем использование (3-45) на простом конкретном примере.
Предположим, что мы вычисляем 64-точечное ДПФ прямоугольной функции,
содержащей 64 отсчета, показанной на рисунке 3.26 (а). В этом примере N = 64 и
К = 11. В результате вычисления ДПФ этой последовательности мы получаем по­
следовательность Х(т), действительная и мнимая части которой Х геа[(т) и Х та^(т)
изображены на рисунках 3.26 (Ь) и 3.26 (с) соответственно. Рисунок 3.26 (Ь) дает
хорошую иллюстрацию того, что действительная часть ДПФ действительной
последовательности обладает четной симметрией, а рисунок 3.26 (с) подтвержда­
ет, что мнимая часть ДПФ действительной последовательности обладает нечет­
ной симметрией.
■<-к
х(п)
(а)
■3
-28
12Т
10-■
8..
6-.
-24
-20 -16
-12
-8
-4
0
4
12
real (т)
16
20
24
28
32
К - 11
4 -.
(Ь)
2..
■
.
-2 1
-20
-16
1111111111
-4
- 1 2 .*
0
ш
, °
4
*■ *
12
16
20
'■ о *
т
2T*imag(m)
1.5 ..
1..
0.5 ..
■*
ж
-20 m
я
-8
4
12
16«
24
28
|.н+| л 1 1Ц1 1 1 Н 1 1 Н | | ‘ 1 | И 1<<1 й-н-н-нч-Нн<-н-и-н44и«■*»**■
(с)
-0.5 ■■
1
-1.5 • •
-2 -.
-28
-24 «
* -16
*.*
■
*
-4
.
.*
0
8
■ *
.
■*
*
‘
20
-■
т
*■
Рис. 3 .2 6 . ДПФ прямоугольной функции: (а) исходная функция х(л); (Ь) действите­
льная часть ДПФ х(п), Х,„я/(т ); (с) мнимая часть ДПФ х(п), X
(т)
'есЛ1
1тад
Хотя Х геа1(т) и Х 1тпаё(т) могут сообщить нам все, что можно узнать о ДПФ по­
следовательности^«), об истинной природе спектра Х(т) легче судить, рассмат­
ривая его абсолютное значение (модуль). Модуль спектра, рассчитанный
112
Гпава 3. Дискретное преобразование Фурье
согласно (3-7), приведен на рисунке 3.27 (а), на котором хорошо видны главный и
боковые лепестки. Как мы и ожидали, пиковое значение главного лепестка равно
11, потому что мы имеем К = 11 единичных отсчетов х(п). Ширина главного лепе­
стка, согласно (3-45), равна 64/11, или 5.82. Следовательно, первая положитель­
ная частота, на которой модуль уменьшается до 0, лежит немного ниже отсчета
дискретного спектра |Х (т)|, показанного квадратиками на рисунке 3.27 (а) с ин­
дексом ш = 6. Фазовые углы спектра, определенные выражениями (3-6) и (3-8),
показаны на рисунке 3.27 (Ь).
Рис. 3 .2 7 . ДПФ обобщенной прямоугольной функции: (а) модуль |Х (т) |; (Ь) фаза в
радианах
Чтобы глубже понять природу ДПФ прямоугольных функций, обсудим еще
несколько примеров менее общих прямоугольных функций, которые в цифровой
обработке сигналов встречаются чаще, чем х(п ) с рисунка 3.24.
3 .1 3 .2 . ДПФ симметричной прямоугольной функции
Выражение (3-43) сложновато, т. к. исходная функция х(п) задана в самом об­
щем виде. На практике частные случаи прямоугольных функций приводят к бо­
лее простым версиям (3-43). Рассмотрим симметричную прямоугольную
функцию х(п), показанную на рисунке 3.28. Как показано на этом рисунке, нам
необходимо вычислить ДПФ прямоугольной функции, центр которой совпадает
с индексом п = 0. Такую задачу приходится решать на практике довольно часто. В
этом случае последовательность из К единичных отсчетов начинается с индекса п
= - п 0 = - ( К - 1 ) /2 . Соответственно, подстановка ( К - 1 )/2 вместо по в (3-43) дает
Х(т ) = е./(2я т /^ [(^ -0 /2 -(К -0 /2 ] . [ът^лтК/Щ/ът^лт/Щ] =
= еЛ^лт/Л^ХО) • [$т (лтК/М )/5т(лт/К)].
(3-46)
Поскольку е $ = 1, (3-46) превращается в
адрТдГ„Ч
ГеЯФ°РМа
х (т )-* п (лт К /Ы )М п (лт /Ю -
(3-47)
3.13. ДПФ прямоугольных функций
113
< --------- к
О
-N/2+1
х(п)
А
л = (К-1)/2 .
N12
Рис. 3 .2 8 . Прямоугольная функция х(п), содержащая К отсчетов с центром в точке
п=0
Формула (3-47) показывает, что ДПФ симметричной прямоугольной функ­
ции является действительной функцией, т. е. комплексная экспонента в (3-47) от­
сутствует, так что в этом частном случае ДПФ не имеет мнимой части или
фазового множителя. Как мы установили в разделе 3.2, если х(п ) —действитель­
ная и четная функция, т. е. х(п ) = х( -п), то Х геа1 (т) отлична от 0, а Х 1таё(т) всегда
равна 0. Мы покажем это, вычислив 64-точечное ДПФ последовательности, пока­
занной на рисунке 3.29 (а). х(п) в этом случае содержит 11 единичных отсчетов,
центр которых приходится на индексе п = 0. ДПФ этой последовательности дает
последовательность Х(т), действительная и мнимая части которой показаны на
рисунках 3.29 (Ь) и 3.29 (с) соответственно. Как и предсказывало выражение
(3-47), Х геа1 (т) отлична от 0, а Х 1т (т) равна 0. Графики модуля и фазы Х{т)
приведены на рисунках 3.29(с1) и 3.2§(е).
Обратите внимание на то, что модули, показанные на рисунках 3.27 (а) и
3.29(с1), идентичны. Это подтверждает очень важную теорему о сдвиге, т. е. мо­
дуль \Х(т) | зависит только от количества ненулевых отсчетов в х(п), К, и не зави­
сит от их позиции по отношению к п = 0. Сдвиг К единичных отсчетов при
центрировании их относительно индекса п = 0 влияет только на фазу отсчетов
Х(т) и не влияет на их модуль.
Говоря о фазовых углах, здесь интересно будет отметить, что, хотя Х [та^тп) на
рисунке 3.29 (с) равна 0, фазовый угол Х (т ) отличен от нуля. В этом случае фазо­
вые углы отсчетов Х(т) на рисунке 3.29 (е) принимают значения +л, 0 или - л ра­
диан. При необходимости мы легко можем восстановить Х геа1(т) по \Х(т)\ и
фазовому углу Хф(т), поставив в соответствие углам +л и - л радиан множитель
-1. Отсчеты Х геа[(т) равны отсчетам \Х(т) |, взятым со знаком, который меняется
на противоположный при переходе из одного бокового лепестка в другой'. Чтобы
яснее представить себе, что ДПФ прямоугольной последовательности является
дискретизированной версией ядра Дирихле, увеличим количество ненулевых от­
счетов последовательности х(п). На рисунке 3.30 (а) показана 64-точечная после­
довательность х(п), содержащая пакет из 31 единичного отсчета с центром в точке
п = 0. Модуль Х (т ) приведен на рисунке 3.30 (Ь). Расширяя прямоугольную фун­
кцию х(п) , т. е. увеличивая К, мы сделали ядро Дирихле Х(т) уже. Это следует из
(3-45), не так ли? Частота первого нуля ядра обратно пропорциональна К, следо­
вательно, по мере увеличения К мы сжимаем |Х (т) \ в направлении к т = 0. В этом
примере N = 64 и К = 31. Из (3-45) следует, что положительная частота первого
нуля Х{т) равна 64/31, т. е. расположена немного правее отсчета ст=2 на рисун­
ке 3.30 (Ь). Заметьте также, что пиковое значение |Х(ш)| = К = 31, как и должно
быть согласно (3-44).
Конкретная картина распределения значений +л и - л на рисунке 3.29 (е) определяется
программой, которую использовали для получения этого рисунка Другие программы
могут показать другую картину, но пока ненулевые значения фазовых углов равны +л
и -л, результат будет правильным.
114
Гпава 3. Дискретное преобразование Фурье
1 Т *(п )
Т
0.5 і
(а)
Л Г
■28 -24
12
*
-20
-16
-12
-8
-4
Хгеаі(т )
10 ..
0
4
*
ш
8 ..
6 ..
(Ь)
............................... ..
І І І І І І І II I
0
8
12
16
20
24
28
32 "
11
■
■
4 ..
«т*
2
-2 т
-4
■*** "® *
-28 -24
"
-16
-12
* . , * -4
-20
-16
-12
-8
■
0
4
12
16
**"
26 28 &
^0.4®. ■хітад(т )
0.3
0.2-■
(С)
0.1
■■
О*ш
-28 -24
-4
0
4
и Т
10 ..
8
12
16
20
24
28
т
11
8 ..
6
№)
4 ..
2_ ..
«*'»
I"" ■
_■■■_ ■■***_
....
о 4 н 4 * г > И | ¥« 1-І |Т ? И І І * * І I | І * І I И І І
-28 -24 -20 -16 -12
-8
-4
4 т
3
~
II
_■■■■ 0
І І ) Т І І І 11 Т 4 < І |*Т і І І I » * 4 1 1* » ? | ►
048
12
1620
Х0(т)
2 ■■
І\
(е)
О
-1
-2
-3
..
-28 -24
I
-20.
\
-16
-12
1
4
8 . 12
16 20
24
28
I I | И^* «■ »■ ■ И Ч » »*! | І І | І І 0 0 0 0 0 1 I | І I | | » « » » *Ч
-8
-4
т
-4 ..
Рис. 3 .2 9 . ДПФ прямоугольной функции, центр которой приходится на п = 0: (а) ис­
ходная последовательность х(п)\ (Ь) Хгеа/(т ); (с) X.
(т)\ (с1) модуль
ітад
Х(т); (е) фазовый угол Х(т) в радианах
тоЛ1
1 т х(п)
(а)
0.5
о
I
1111 1111111111111111 1 11 111111
-28
зо |Х(т)|
-24
-20
-16
-12
-8
-4
0
4
8
12
16
і
і
і
і
20
24
28
32
31
25 ..
(Ь)
20
..
15 ..
10 ..
5 ..
0і
| | , . - | , , , | , . . | , , 1,Т.Т|Т,Т|Т . I | I .Т,Т,Т|Т,Т| 1.1,.
-28 -24 -20 -16 -12
-8
-4
0
4
8
12
16
|
20
|
24
.
28
т
Рис. 3 .3 0 . ДПФ симметричной прямоугольной функции, содержащей 31 единич­
ный отсчет: (а) исходная последовательностьх(п); (Ь) модульХ(т)
24
3.13. ДПФ прямоугольных функций
115
,
3.13.3. ДПФ прямоугольной функции все отсчеты которой
равны 1
Как и раньше, мы вычисляем ДПФ частного случая последовательности х(п),
в результате чего приходим к еще одной упрощенной форме выражения (3-43). В
литературе мы часто встречаем прямоугольную функцию, для которой К = ЛГ; т. е.
N отсчетов х(п) отличны от нуля, как показано на рисунке 3.31. В этом случае па­
кет из N единичных отсчетов начинается'при п = - п 0 = - ( N - 0 / 2 . Мы получим
выражение для ДПФ функции, показанной на рисунке 3.31, подставив К = ]Уип0
= ( N - 0 / 2 в (3-43), что дает
Х (т ) = еК2хт/Щ{Ь!-1)/2-ф-1)/2\ .
• [Бт(лтМ/М)/8т(лт/М)] =
= е }(2 лт/М )(0) • [$т(лгп)/$\х\(лт/Щ] , или
Форма ядра Дирихле
для функции, все
отсчеты которой
равны 1 (Тип 1):
= ф п(я т ) / 81п(я т / дг)]
< --------------------------------------
1
H
I M
M
4
-n0 = -(N - 1)/2
M
M
X
M
I I H
(3.48)
K = N ---------------------------------- — > -
I I I I I I M
X
M
X
I I M
I I K
M
M
M
I M
о
x{n)
I
I
n
{N- 1)/2
Рис. 3 .3 1 . Прямоугольная функция, содержащая N единичных отсчетов
Формула (3-48) соответствует одной из форм выражения (3-34), которую мы
упоминали в начале раздела 3.131. Рисунок 3.32 показывает смысл выражения
(3-48). Модуль ДПФ последовательности х(п), состоящей из единичных отсче­
тов и показанной на рисунке 3.32 (а), показан на рисунках 3.32 (Ь) и 3.32 (с). Об­
ратите внимание на то, что если бы переменная т была непрерывной, (3-48)
описывало бы графики, нарисованные серыми линиями на рисунках 3.32 (Ь) и
3.32 (с). Если же т может принимать только целые значения, то (3-48) описывает
точки на этих рисунках.
Ядро Дирихле Х(т) на рисунке 3.32 (Ь) теперь имеет наименьшую возможную
ширину. Первый ноль на положительной оси частот возникает на отсчете т =
64/64 = 1 на рисунке 3.32 (Ь), а пиковое значение \Х(т) \ = N= 64. Когда все отсче­
ты х(п) равны 1, \Х(т) \=0 для всех значений т * 0. Функция sine в (3-48) имеет
важнейшее значение, как мы увидим в конце этой главы, она определяет общую
частотную характеристику ДПФ при подаче на его вход синусоидальной после­
довательности, кроме того, она представляет собой АЧХ одного бина.
Кстати, название «Ядро Дирихле типа 1» для (3-48) не является общепринятым. Мы
использовали слова «типа 1» просто для того, чтобы отличать (3-48) от других матема­
тических выражений, с которыми мы вскоре встретимся.
116
Гпава 3. Дискретное преобразование Фурье
Форма (3-48) позволяет нам продвинуться на один шаг вперед и определить вы­
ражение для содержащей только единичные отсчеты ДПФ последовательности,
которая наиболее часто встречается в литературе. Чтобы сделать это, нам необхо­
димо использовать принцип аппроксимации, применяемый в тригонометрии, о
котором, возможно, вы уже слышали раньше. Согласно этому принципу при ма­
лых а значение 8т ( а ) примерно равно а, т. е. 8т ( а ) ~ а. Это соотношение прихо­
дит на помощь, когда мы рассматриваем круговой сектор радиуса 1 , показанный
на рисунке 3.33 (а). Этот сектор определяется длиной дуги а, измеренной в радиа­
нах, и ее хордой Ь. Если мы начертим внутри сектора прямоугольный треуголь­
ник, то мы можем сказать, что а = 8т ( а ) . При уменьшении а длинные стороны
нашего треугольника становятся почти параллельными, длина хорды Ь приближа­
ется к длине дуги а, а длина отрезка а приближается к длине Ь. Итак, как показано
на рисунке 3.33 (Ь), при малом а « Ь ~ а ?= 8т(сс). Мы используем приближенное
равенство 8т ( а ) ~ а, рассматривая знаменатель выражения (3-48). Когда значение
ят/А^мало, Бт(лт/Ы) примерно равен лт/Ы. Следовательно, при больших N мы
можем утверждать, что
Форма ядра Дирихле
Х(т) * $\п(лт)/(лт/Ы) = N • Бт (лт )/(лт )'
(3-49)
\
\
/
\ / / \ / \
/
для функции, все
отсчеты которой
равны 1 (Тип 2):
х(п)
1
(а )
0 ,5 - .:
0.
Н И
I I I I I Ц »Н I I Н і I I I I I I I I I I
-28
70 Т
60
50
40 ..
-24
-20
-16
-12
-8
-4
і І І І >І
0
І II І
4
\Х(т)\
І І І I I І І І І І І Й - Н Н 14 -І И
12
16
» »
20 24 28 32п
64
Іі
ЗО..
(Ь) 20
..
10 ..
рГФІ І
0
-28
-24
-20
-16
-12
-8
8
-4
70
60
50 ..
40 . .
(С)
»І
8
12
16
20
24
28
т
64
ЗО..
20
..
10 . .
0
Ч,,!'
■
-5
-З
-2
-1
1
І
4
т
Рис. 3 .3 2 . Функция, все отсчеты которой равны 1: (а) прямоугольная функция с N =
64 единичными отсчетами; (Ь) модуль ДПФ функции, состоящей только
из единичных отсчетов; (с) укрупненный вид модуля ДПФ функции, со­
стоящей только из единичных отсчетов
3 . 13. ДПФ прямоугольных функций
117
(а)
Рис. 3 .3 3 . Соотношение угла а, длины отрезка а = зт(а) и хорды Ь: (а) при большом
угле а\ (Ь) при малом угле а
Было показано, что если в (3-48) N превышает, скажем, 10, (3-49) достаточно
точно описывает значения отсчетов Д П Ф 1. (3-49) часто нормализуют, разделив
на И, так что мы можем выразить нормализованное ДПФ прямоугольной функ­
ции, содержащей только единичные отсчеты, в виде
Форма ядра Дирихле
для функЦии, все отсчеты
которой равны 1 (Тип 3):
Х(т) = Бт(л:т)/лт
(3-50)
Соотношение (3-50), принимая вторую форму (3-34), которая часто встреча­
ется в литературе, также дает модуль ДПФ, показанный на рисунках 3.32 (Ь) и (с).
3 .1 3 .4 . Частотная и временная оси, связанные
с прямоугольными функциями
Определим физические размерности, связанные со значениями индексов п и
т. До сих пор в наших рассуждениях индекс п был просто целым числом, позволя­
ющим нам различать отдельные отсчеты последовательности^«). Если индекс п
представляет моменты времени, мы можем задать интервал времени, разделяю­
щий соседние отсчеты х(п), чтобы определить масштаб оси времени для х(п ) и
масштаб частотной оси для Х(т). Рассмотрим прямоугольную функцию во вре­
менной области, показанную на рисунке 3.34 (а). Эта функция содержит N отсче­
тов, полученных с интервалом секунд, при этом полный интервал накопления
составляет М 5 секунд. Отсчет х(п ) для некоторого значения п берется в момент
времени
секунд. Например, значение отсчета с индексом п = 9, х(9) = 0, появ­
ляется в момент времени 9ts секунд.
Мы можем принять этот результат со спокойной душой, потому что, если положить
К=ЛГ, мы увидим, что пиковое значение Х(т) в (3-49) при т = 0 получается равным И,
что согласуется с выражением (3-44).
118
Гпава 3. Дискретное преобразование Фурье
л//с
(а)
х (п )
т/■\*
/ \Щ
Ж
Значение Х(ш)
/
\
т
.
*
х(9)
время = 9Ґ секунд
> <
ш
/
!
5
1/(М5) - у N
-> <
"»-И"'ч4~*"+/ I Ч | I И
/3/Л/ Гц
(Ь)
(ш5 /Л/)
^ гц
(2л/д = (о5 радиан/с)
[со = 2л радиан]
-^ /2 Гц
( - СОд 12 ~ *
[-71]
[ш //V]
4 12 Гц
(со5 /2 —
|
т =7
[я]
частота = 7 /д/Л/ Гц
(частота = 7ы3 /Л/ радиан/с)
[нормированный угол = 7ю /Л/ радиан]
Рис. 3 .3 4 . Размерности временной и частотной осей ДПФ: (а) временная ось использу­
ет индекс времени л; (Ь) различные представления частотной оси ДПФ
Частотная ось Х(т) может быть представлена несколькими разными способа­
ми. Три популярных способа маркировки частотной оси ДПФ показаны на ри­
сунке 3.34 (Ь) и перечислены в таблице 3.1. Рассмотрим каждое представление в
отдельности.
Таблица 3 .1 . Характеристики различных представлений
частотной оси ДПФ
Представление Частотная Разрешающая
частотной оси переменная способность
Х(ш)
ДПФ
Частота в Гц
Частота в
радианах
Период
повторения
Х (т )
т ^ /Л /
ум
и
171(05 /Ы ИЛИ
(о8 /Л/ или
(о5 или 2л13
2лтґ3 /Л/
2л Г8 /Л/
Диапазон
изменения
частоты
/2 до
*3 &
от -о)5 /2 до
ш3/2 или от
от
—ТГ/д ДО л1 д
Нормированный
угол в радианах
2лтт}/Л/
2л/И
2л
от - л до л
3.13.4.1. Частотная ось ДПФ в Герцах (Гц)
Если мы хотим связать Х(лг) с периодом дискретизации по времени или с
частотой / 5 = 1/ts, то частота будет принимать значения т/Ш 8 = т / 5 /Л^. Таким
3.13. ДПФ прямоугольных функций
119
образом, каждый отсчетХ(т) соответствует частоте т/3 /МГц. В этом случае раз­
решение по частоте составляет / 3 /ЛГ. Период повторения ДПФ равен / 5 Гц, как
показано на рисунке 3.34 (Ь). Если мы в (3-47) подставим частоту т/3/Ы вместо
т/Ы, мы получим выражение для ДПФ симметричной прямоугольной функции
при К < М, в котором частоты выражены через частоту дискретизации / 3в Гц. Это
выражение имеет вид
Х (т /$) = [в т (лтК/3/Щ /ъ т (пт /5/ Щ .
(3-51)
Для прямоугольной функции при К = N нормированная по амплитуде аппрок­
симация функции 8т ( х ) / г в (3-50) может быть выражена через частоту дискрети­
зации / 3 в Гц как
Х (т /5) = [$т(лт/3)/5т(лт/ 3) ] .
(3-52)
3.13.4.2 Частотная ось ДПФ в радианах в секунду
Мы можем измерять частоту отсчетов спектра Х(т ) в радианах/с, выразив час­
тоту дискретизации во временной области в радианах/с как со3=2л/3. В этом случае
каждому отсчету Х(т) соответствует круговая частота со3//V = 2лт/3/ N радиан/с.
При этом разрешение по частоте составляет со3 /ЛГ = 2 л /3/ЛГрадиан/с, а период
повторения ДПФ равен со3 = 2 л f3 радиан/с, как показано на рисунке 3.34 (Ь) в
скобках. Поскольку со3 = 2 л /3, л / 5 = со3/2. Если мы подставим в (3-51 )со3/2 вместо
л / 3, мы получим выражение для ДПФ симметричной прямоугольной функции
при К < Л^как функцию частоты дискретизации со3 в радианах/с:
Х(тсо8) = 8т (лтКсо3 /2Щ/^т{лтсо3 /21\Г) .
(3-53)
Для прямоугольной функции при К = N нормированная по амплитуде аппрок­
симация 8т (д :)/г в (3-50) может быть выражена как функция частоты дискрети­
зации со3 в радиан/с как
Х(тсо5) = 2^т(то)3 /2)/тсо3.
(3-54)
3.13.4.3 Частотная ось ДПФ при использовании
нормированной угловой переменной
Многие авторы упрощают запись выражений, используя нормированную пе­
ременную для круговой частоты со3 = 2 л /3. Под нормированием мы понимаем то,
что частота дискретизации / 5 полагается равной 1 , вследствие чего нормирован­
ная круговая частота со3 принимает значение 2л. Следовательно, частотная ось
Х(ш) теперь размечена значениями нормированного угла со, и каждому отсчету Х(т)
соответствует угол гто/Ы радиан. При использовании этого соглашения разрешение
по частоте равно со/М радиан, а период повторения ДПФ составляет со = 2л радиан,
как показывает выражение в квадратных скобках на рисунке 3.34 (Ь).
К сожалению, использование этих трех представлений частотной оси ДПФ
иногда ставит новичков в тупик. При изучении литературы читатель может пере­
водить одно представление в другое с помощью рисунка 3.34 и таблицы 3.1.
120
Гпава 3. Дискретное преобразование Фурье
3 .1 3 .5 . Альтернативная форма ДПФ прямоугольной
функции, состоящей из одних единиц.
Использование нормированной формы частотной оси, показанной в послед­
ней строке таблицы 3.1, приводит к другой часто используемой форме ДПФ пря­
моугольной функции, все отсчеты которой равны 1, показанной на рисунке 3.31.
Если мы примем дискретную переменную в частотной области в форме о)т =
2ят/К, то яти = Мсот /2. Подставляя Мсот/2 вместо пт в (3-48), мы получаем
Форма ядра Дирихле
для прямоугольной
функции, все отсчеты
которой равны 1
(Тип 4):
Х(та>3) = 8ш(Муот /2)/$\.п((от /2 )
(3-55)
Выражение (3-55), соответствующее третьей форме выражения (3-34), иногда
встречается в литературе и также имеет модуль, изображенный на рисунках 3.32 (Ь)
и 3.32 (с).
Мы рассмотрели такч много разных форм ДПФ различных прямоугольных
функций, что здесь уместно свести их все в одну общую таблицу 3.2.
3 .1 3 .6 . Обратное ДПФ обобщенной прямоугольной
функции
Теперь подумаем о вычислении обратного ДПФ прямоугольной функции в
частотной области. Имея прямоугольную функцию Х(т), найдем соответствую­
щую функцию во временной области х(п). Мы можем определить обобщенную
форму прямоугольной функции в частотной области так, как мы это делали на ри­
сунке 3.24, получив результат, показанный на рисунке 3.35.
>< ....... к
1. . . . . . . . . . . . .
К
-Л//2+1
А
Х(т)
т
О
т = -т0+ (К-1)
т = - т0
N12
Рис. 3 .3 5 . Обобщенная прямоугольная функция в частотной области длительность
в К отсчетов на интервале в N отсчетов при К< N
Обратное ДПФ прямоугольной функции Х(т), показанной на рисунке 3.35
имеет вид
N/2
х(п ) = ( 1/Щ 2 Х (т ) е)2лтп/м .
(3-56)
т = ~ (^Ы /2 )+ 1
Те же алгебраические преобразования, которые мы использовали в (3-43),
можно применить к (3-56), что приводит нас к
х (п ) = е -№лп/Ы)[т0-(,к-1)/2]
• [$т (2лпК/ Щ / $т(лп/
( 3 -5 7 )
3.13. ДПФ прямоугольных функций
121
для обратного ДПФ прямоугольной функции, показанной на рисунке 3.35. Все,
что мы говорили о (3-43), в равной степени применимо и к (3-57), за исключением
масштабирующего множителя 1/М и изменения знака показателя экспоненты.
Воспользуемся уравнением (3-57), чтобы вычислить 64-точечное обратное ДПФ
прямоугольной функции, содержащей 64 отсчета, которая показана на рисунке
3.36 (а). Обратное ДПФ последовательности, показанной на рисунке 3.36 (а),
дает нам последовательность х(п), действительная и мнимая части которой, хгея/
( п ) и х 1таё(п), показаны на рисунках 3.36 (Ь) и 3.36 (с) соответственно. Положив в
этом примере N = 64 и К = 11, мы получили возможность легко сравнить функ­
ции, полученные в результате обратного ДПФ и показанные на рисунке 3.36, с
функциями, полученными в результате прямого ДПФ и показанными на рисунке
3.26. Замечаете подобие действительных частей, Х геа[ (т) и х геа[(п), на рисунках
3.26 (Ь) и 3.36 (Ь)? Обратите также внимание на противоположность знаков мни­
мых частей на рисунках 3.26 (с) и 3.36 (с).
я я ця я
1 т Х(т)
0.5
;(
(а)
0 ■
| | и | | ч | | ія.яя.яя
-28
-24
-20 -16
-12
-8
-4
0
4
8
12
16
20
24
28
32 т
0.2 т
0.172
х геа! (п )
*:I
-8
чЯ і ^
-0.05 1
0.03
111
-20 -16
-12
-4
-16
.
-4
ч 111 и ;++++*:”
0
4
"*■
12
16
■*¥***
20
хітад(л)
0.02
0.01 ■■ -28
-24 *
0
8
-
0.01
-
0.02
» , .■
■■■
-20
■
жі
«
-8
4
!I
п
20
0 і **ж-И-н4*-н+ИИ4н-н 1 1 1 1 1 і*і Iи і - 1 1 1 1 <»і <»и'і н і | "н і і < н
(С)
-■
12
16 ■
Ж
24
28
■'ж
1я*
-0.03
Рис. 3 .3 6 . Обратное ДПФ обобщенной прямоугольной функции: (а) исходная функ­
ция Х(/77); (Ь) действительная частьхгеа/(п); (с) мнимая частьхітад (л)
Модуль и аргумент х(п) показаны на рисунках 3.37 (а) и 3.37 (Ь). Обратите вни­
мание на разность пиковых значений главных лепестков на рисунках 3.27 (а) и
3.37 (а). Пиковое значение на рисунке 3.37 (а) равно К/М= 11/64 и л и О. 172. Обра­
тите также внимание на то, что знаки фазовых углов на рисунках 3.27 (Ь) и
3.37 (Ь) противоположны. Графики на рисунках 3.26, 3.27, 3.36 и 3.37 дают хоро­
ший пример фундаментальной дуальности прямого и обратного ДПФ.
Таблица 3 .2 . Д П Ф различных прямоугольных функций
Описание
ДПФ обобщенной прямоугольной функции при /«Л / как функция
целого индекса т
ДПФ симметричной прямоугольной функции при КСЛ/ как функция
целого индекса т
ДПФ прямоугольной функции, все отсчеты которой равны 1, как
функция целого индекса т (ядро Дирихле типа 1)
ДПФ прямоугольной функции, все отсчеты которой равны 1, как
функция целого индекса т (ядро Дирихле типа 2)
Нормированное по амплитуде ДПФ прямоугольной функции, все
отсчеты которой равны 1 , как функция целого индекса т (ядро
Дирихле типа 3)
ДПФ симметричной прямоугольной функции при /«Л/,
выраженное через частоту дискретизации в Гц
Нормированное по амплитуде ДПФ прямоугольной функции, все
отсчеты которой равны 1 , выраженное через частоту
дискретизации ^ в Гц
ДПФ симметричной прямоугольной функции при КСЛ/, выраженное
через круговую частоту дискретизации а>5 в радианах/с
Нормированное по амплитуде ДПФ прямоугольной функции, все
отсчеты которой равны 1 , выраженное через круговую частоту
дискретизации а>5 в радианах/с
ДПФ прямоугольной функции, все отсчеты которой равны 1,
выраженное через нормированную дискретную частотную
переменную сот (ядро Дирихле типа 4)
Выражение
Х (т ) = [5т(лтК/М )/Бт(лт//V)] *
. е ) ( 2 л т / к ) ( п 0 -( <К - 1 ' ) / 2 )
(3-46)
Х(т) = 8\п(лтК/М )/^т(лт/М )
(3-47)
Х(т ) = $т (лт)/$т (лт /М )
(3-48)
Х(т ) ~ N • $\п{лт )/(лт )
(3-49)
Х(т ) ~ $\п(лт )/(лт )
(3-50)
Х(т/ ) = $\п(лт К/ /Щ /$ т (л т / /К )
5
5*
(3-51)
^(™ /5) ~ ?> Щ лт /)/(лт / )
(3-52)
5
Х(та)ь) = Бт(тш3 К /2й)/ът (т а)5/2Ы)
(3-53)
' Х(та)5) ~ 2Бт(тсо5 /2)/(т (о5)
(3-54)
Х(ы) = Бт(Ма)т /2)/ъ\п(о)т /2 )
(3. 55)
3.13. ДПФ прямоугольных функций
02
123
- |Х(Л)|
0.172
О 15 ••
0.1
■■
(а)
005 Т
I
.
-28
-24
-20
****
-16 -12
'
- 8 - 4
0
4
8
12
16
20
24
28
п
3Т *?№
2 -1 ■■ -28
0■■•^1 I
(Ь)
-1
■■
-2
■■
.3
1
•*
-4
? ■-Ъо" 1-16
I I I
||п 1 ф I
I
I
И
I ft
И
I 11
I
161
О
20
28
| \ l I I I >РII I I 1\н 1-н у1-н 1»■»М
I
I
**■
■
Рис. 3 .3 7 . Обратное ДПФ обобщенной прямоугольной функции: (а) модуль |х(п)|;
(Ь) фазах(п) в радианах
3 .1 3 .7 . Обратное ДПФ симметричной прямоугольной
функции
Обратное ДПФ обобщенной прямоугольной функции, приведенной на рисун­
ке 3.36, не часто встречается в цифровой обработке сигналов. Но при обсуждении
вопросов, связанных с цифровыми фильтрами, мы будем иметь дело с обратным
ДПФ симметричных прямоугольных функций. С обратным ДПФ такой функции
мы сталкиваемся при изучении проектирования цифровых КИХ-фильтров ниж­
них частот методом окон. Расчет фильтра этим методом начинается с определе­
ния симметричной функции Н(т ) в частотной области, такой же, как на рисунке
3.38. Затем для вычисления коэффициентов КИХ Ф Н Ч вычисляется обратное
ДПФ этой последовательности. (Коэффициенты КИХ-фильтра во временной об­
ласти обычно обозначаются как h(ri) вместо х(п), так что в оставшейся части кни­
ги, посвященной обратному ДПФ, мы будем использовать обозначение h(n).)
В случае функции Н(т) в частотной области, имеющей вид, приведенный на
рисунке 3.38, пакет из К отсчетов, равных единице, начинается при т = -т 0 =
- (К -1 ) /2 . Подставляя (К -1 ) /2 вместо т0 в (3-57) получаем
h(n) = е№лп/ м)[(К-1)/2-(К-1)/2] *(1/N) •[sin( 7inK /N )/sin(jm /N )]
= e j(2nn/N)(0) •(•//JV) • [sm (jznK /N)/sin(jzn/N)].
к
1
l
- N12 + 1
Ä
т = - т 0 = -(К -1 )/2
(3-58)
H(m)
0
т
т =(К-1)/2
N12
Рис. 3 .3 8 . Прямоугольная функция в частотной области шириной К отсчетов, опре­
деленная на N отсчетах
124
Гпава 3. Дискретное преобразование Фурье
1Т
(а)
Н (т )
°1
[m |1 II I и ........................................ _
-28
-24
-20
-16
-12
-8
-4
0
4
8
12
16
20
24
28
32т
0 2 T h real (° )
0.172
0.15-•
0.1
(Ь>
■■
0 ,0 5 ..
0
11 і , і 1 1 1 1 1 1 1 1 1 1 . й
* '
-0 .0 5 І
0.4
-16
-12
■ « , * -4
0
i
4
12
26 28 3<T n
16
T ^imag(n )
0.3
(c )
0 .2- ■
0 . 1- ■
0
-28
-24
-20
-16
-12
-8
-4
0
4
8
12
16
20
24
28
20
24
28
0 2 T |Л(л)І
0.172
0.15..
0 . 1- ■
(d )
0 .0 5 ..
0 4^*|н*Т«н]їТ1| >H |?l I I I? Ц I II 11 II І ІГ<| II*** I I
I
-28
-24
-20
-16
-12
-8
-4
0
4
4т М л)
3 -.
2-! . . -28
(e)
0 ЧЧ
-24
-20
-16
-12
-8
16
\
I
\
n
я.шяяяш
-4
/ і І І І І і\ ■»■. l+if¥h}\e0 ■■J ІІ ►
++Ч4++
4
ї■
-Зї ■■
12
яяяяяя
0 ■
' + + *«J м п +
+ -Н* + ч■ і I
* + + 4 + *Щ« *» • .w* і . •Ж
Н -Й
-2
8
8
12
16
20
24
28
I
-41
Рис. 3.3 9 . Обратное ДПФ прямоугольной функции, центр которой находится в точ­
ке т = 0: (а) исходная функция Н(т)\ (b) hreaj (л); (с) hjmag (л); (d) модуль
h(n): (е) фаза h(n) в радианах
И, т. к.
= 1, (3-58) превращается в
h(n) = ( 1/N) *[sm(nnK/N)/sin(7in/N)].
(3-59)
Выражение (3-59) говорит нам, что обратное ДПФ симметричной прямоуго­
льной функции, показанной на рисунке 3.38, тоже является действительной фун­
кцией, и это мы можем показать на примере. Мы выполним 64-точечное обратное
ДПФ последовательности, показанной на рисунке 3.39 (а). Здесь функция Н(т)
представляет собой 11 отсчетов, равных единице и центрированных относитель­
но индекса т = 0. В этом случае обратное ДПФ дает последовательность h(n), дей­
ствительная и мнимая части которой приведены на рисунках 3.39 (Ь) и 3.39 (с)
3.14. Частотный отклик ДПФ на комплексный входной сигнал
125
соответственно. Как и предсказывает (3-47), hreai (п) отлична от нуля, а himaJ n )
равна нулю. Модуль и фаза последовательности h(n) показаны на рисунках 3.39’(d)
и 3.39 (е). (Здесь мы тоже сделали функции на рисунке 3.39 более удобными для
сравнения с прямым ДПФ на рисунке 3.29.) На самом деле нам нужна действите­
льная часть h(n). Значения hreai(n ) используются как коэффициенты фильтра при
проектировании КИХ-фильтров нижних частот, которые мы будем рассматри­
вать в разделе 5.3.
3.14. Частотный отклик ДПФ
на комплексный входной сигнал
В этом разделе мы определим частотный отклик iV-точечного ДПФ, когда вход­
ная последовательность представляет собой дискретную комплексную синусоиду,
обозначенную как х с( п ) . Под частотным откликом мы имеем ввиду выходные от­
счеты ДПФ при преобразовании комплексной синусоидальной последователь­
ности. Мы начнем с графика входной последовательности х с( п ) , приведенного на
рисунке 3.40. Эта последовательность имеет форму
x c(n) = e]2™k/ N,
(3-60)
где k — количество полных циклов на интервале в N отсчетов. На рисунке 3.40 по­
казана хс(п) для случая k = 2. Если мы обозначим выходную последовательность
Д П Ф как Х с( гп) и подставим наш сигнал х с( п ) в формулу Д П Ф (3-2), то получим
N-1
N-1
Х с(т) = 2 Xc( n ) e -i2n nm /N = 2 eJ2jTrlk/ N е -)2nnm/N
n=0
n=0
N-1
= 2 ßj2nn(k-m)/N
n^O
(3-61)
Если мы положим N = К, n = pw q = -2 n (k -m )/N , выражение (3-61) превраща­
ется в
К-1
Х с(т) = Ц е -Jpg .
(3-62)
р=0
Почему мы сделали подстановки в (3-61) с целью получить (3-62)? Потому,
что мы уже работали с выражением (3-62), когда оно имело номер (3-39). Резуль­
тат в замкнутой форме был представлен выражением (3-41), которое мы повторя­
ем здесь в виде
К-1
Х с(т) = 2
е -jpg = е jg(K 1)/2 •sin(qK /2)/sin(q/2).
(3-63)
р=0
Возвращая переменные из (3-61), мы получаем окончательный результат:
Ш(Т1
„
ДПФ комплексной
синусоиды:
Хг(т) = еЛ*(*-от)-я(*-т)/М] .
'
•ы п\лф -т )\/ьт \ж (к-m )/N \
(3-64)
'
126
Гпава 3. Дискретное преобразование Фурье
^ Действительная часть хс(п)
Щ
(а)
О
*
■
ш
я
И # I I I--- ►
+-Н-*-НН I I ) 1Я П И И » 11
■
щ
-1
■
■
■щ*
... Время (л)
ЛИ
^ Мнимая часть хс(п)
1
Время (л)
Рис. 3 .4 0 . Комплексная последовательность хс(п) = е!2Рпк/М во временной облас­
ти, имеющая два полных периода (к = 2) на интервале в N отсчетов:
(а) действительная часть*с(л); (Ь) мнимая часть хс(п)
Как и ядро Дирихле в (3-43), Х с(лг) в (3-64) представляет собой комплексное
выражение, в котором отношение синусов есть амплитуда Хс(т), а экспоненциаль­
ный сомножитель дает фазовый угол Х с(т). В данный момент в (3-64) нас интере­
сует только отношение синусов. Его модуль показан на рисунке 3.41. Заметьте, что,
т. к. хс(п) является комплексным, в Х с(т) отсутствуют компоненты с отрицатель­
ными частотами. Сосредоточимся на серой кривой на рисунке 3.41. Эта кривая
представляет собой непрерывное преобразование Фурье комплексной последова­
тельности .г; (п) и может рассматриваться как непрерывный спектр последователь­
ности .гД/г)1. Под непрерывным спектром мы понимаем спектр, который определен
для всех значений частоты, а не только для частот анализа М-точечного ДПФ,
кратных / 5 /Ы. Форма этого спектра с главным и боковыми лепестками является
прямым и неизбежным следствием анализа последовательности ограниченной
длительности, подобной последовательности хс(п) на рисунке 3.40.
Мы можем получить этот непрерывный спектр аналитически, взяв непрерывное
преобразование Фурье нашей дискретной последовательности хс(п), которое неко­
торые авторы называют дискретно-временным преобразованием Фурье (ДВПФ),
но мы не можем практически вычислить непрерывный спектр на компьютере.
Поэтому ДВПФ определено только для бесконечно длинных последовательно­
стей, а его частотная переменная непрерывна при бесконечно малом разрешении
по частоте. Но мы можем, однако, использовать ДПФ для вычисления аппрокси­
мации непрерывного спектра последовательностих с(п). Результатом ДПФ, пред­
ставленным точками на рисунке 3.41, является дискретизированная версия
непрерывного спектра. Мы могли бы брать отсчеты непрерывного спектра более
Точно так же, как мы вычислили пиковое значение ядра Дирихле в (3-44) с помощью
правила Лоииталя, мы можем показать, что пиковое значение Хс(т) вида (3-64) равно
3 . 14. Частотный отклик ДПФ на комплексный входной сигнал
127
часто, т. е. получать более точную аппроксимацию, дополнив исходную последо­
вательность хс(п) нулями и вычисляя ДПФ большей длины. Мы проделывали
это на рисунке 3.21.
Рисунок 3.41 показывает, почему, когда частота входной последовательности
точно совпадает с центром бина т = к, выходные отсчеты ДПФ равны нулю для
всех бинов за исключением бина т = к. Если бы частота нашей входной последо­
вательности была такой, что на том же интервале умещалось бы к+0.25 периодов,
ДПФ дискретизировало бы непрерывный спектр так, как показано на рисунке
3.42, где все выходные отсчеты ДПФ отличны от 0. Это иллюстрация утечки спек­
тра, описанной в разделе 3.8.
Эта кривая представляет
непрерывное преобразование
і |Хс ( т ) |Д П Ф
характеристика
Фурье от х(п) = в 12ппк/ы
ж'--- Ж— ж— ж— ж-
- К - ...............
1 к -4 1 к-2
1
к- 5 К 4 к- 3 ^ к-1
к к+1 к+2 к+3 к+Л /сіб
Рис. 3 .4 1 . Модуль реакции ДПФ на комплексную синусоиду, имеющую /(полных пе­
риодов на интервале в N отсчетов, вида хс{п) =
|Хс ( т ) | ДПФ
характеристика
N
■у
-
к
|
ж
%/ ж
І
'У
I
г
/с-5 к' 4 к-3 к' 2 /с-1
II
-V «У •ч,-'"' ■ чч
I
|
»
г IV
к \ к+: к+2 /с+3 к+А к+5
т
/с+0.25
Рис. 3 .42. Модуль Л/-точечного ДПФ комплексной синусоиды, имеющей к+0.25 пе­
риодов на N отсчетах последовательности хс(п), демонстрирующий
утечку спектра
Аналогично тому, как для ДПФ прямоугольных функций мы построили не­
сколько выражений, собранных в таблице 3.2, можно выразить амплитуду отсче­
тов ДПФ комплексной синусоиды разными способами и получить таблицу 3.3.
Здесь вдумчивый читатель может заметить, что реакция ДПФ на комплекс­
ную синусоиду, имеющую к периодов на интервале накопления, на рисунке 3.41
выглядит подозрительно похожей на реакцию ДПФ на прямоугольную функ­
цию, все отсчеты которой равны единице, приведенную на рисунке 3.32 (с). При­
чина, по которой формы этих двух кривых на рисунках так похожи, состоит в том,
что эти кривые одинаковы. Если бы наша входная последовательность была комп­
лексной синусоидой, имеющей к = 0 периодов, т. е. представляла бы собой последо­
вательность одинаковых отсчетов, то отношение синусов в (3-64) было бы равно
Таблица 3 .3 . Различные формы реакции ДПФ на комплексную синусоиду, имеющую к периодов
на интервале накопления
Выражение
Описание
Амплитудная характеристика ДПФ комплексной
последовательности в терминах целого частотного
индекса т [из (3-64)]
Х с(т) = Бт[л(1г-т)]/$т[л(1г-т)/М\
Альтернативная форма амплитудной характеристики
ДПФ комплексной последовательности в терминах
целого частотного индекса т [на основе (3-49)]
Нормированная амплитудная характеристика ДПФ
комплексной последовательности в терминах целого
частотного индекса т
_ . ,
ч1/г ✓»_
л с\ т) ~ 8Ш[ щ к - т ) \ / [ л ( / г - т ) \
Амплитудная характеристика ДПФ комплексной
последовательности в терминах частоты дискретизации
^вГц
Нормированная амплитудная характеристика ДПФґ \ ~
комплексной последовательности в терминах частоты
дискретизации ^ в Гц
Нормированная амплитудная характеристика ДПФ
комплексной последовательности в терминах круговой
частоты дискретизации со5
. г /и
Ч1 /г
Ч1
[л(к-т)]/[л(к-т)]
Х с(™>«
ґ \ ~ \ т ш \ (Ъ
(І
л с(ш /5) — ІУ 8іп[я( -тп)/3\ / [ л (
• \ (Ъ
\ f \ z \ (Ъ
~
'»/'1
0 . г ,
ч
/щ /г/*.
ч і
Х с(та)5) ~ 2$,т[(к-т) й>5 / 2 ] / [ ( я - т ) о>5]
(3-65)
(3_66)
(3-67)
( 3 - 68)
(3-69)
(3-70)
3.15. Реакция ДПФ на действительный косинусоидальный сигнал
129
sin[n(0-m )]/sin[n(0-m )/N ] = sin(nm )/[-sin(nm /N )] =
= s\n(jtm )/[s\n(nm /N )]
что идентично форме ядра Дирихле для последовательности, состоящей из одних
единиц, в (3-48). Форма отклика ДПФ Х с(ш) представляет собой функцию sine
ядра Дирихле.
3.15. Реакция ДПФ на действительный
косинусоидальный сигнал
Теперь, когда мы знаем, как выглядит ДПФ комплексной синусоидальной после­
довательности, легко определить ДПФ действительной косинусоидальной после­
довательности. Допустим, мы хотим получить ДПФ действительной дискретной
косинусоиды, подобной показанной на рисунке 3.40 (а) и выражаемой в виде
x r(n)
= cos(2nnk/N ),
(3-71)
где k — целое количество полных периодов, умещающихся в N отсчетах. Вспом­
нив тождество Эйлера cos(^) = (е $ + е~ $ )/2 , мы можем представить требуемое
ДПФ Х Т(т ) как
N-1
N-1
Х г(т ) =
х 1(п)е~ ^лпт/ ^ = ^ cos(2nnk/N )e~j2jinm/N =
n=0
n=0
N-1
=
(ej2nnk/N + e-j2nnk/NуJ2 • Q-j2nnm/N =
N-1
N-1
= (1/2) 2 ej2jin(k- m)/N + (1/2) 2 e -}2nn(k+m)/N'
n=0
n=0
(3-72)
К счастью, мы только что закончили вывод замкнутой формулы для суммы
вида (3-72), так что мы можем записать Х г(т) в замкнутом виде
Действительной
Х Т(т) = eJ[^(k-m)-n(k-m)/N] .
•(1/2)sin[jt(k-m )]/sm [n(k-m )/N ] +
+ еЛл(к+т)_л(к+т)/М] .
косинусоиды
.(У/2) sin^(£+m)] /sin [n(k+ m )/N \.
д Пф
(3-73)
Модули двух отношений синусов показаны в виде функций sine на рисун­
ке 3.43. Здесь, как и раньше, ДПФ дает дискретизированную версию непрерывно­
го спектра входной косинусоиды, и т. к. k = т, только-один бин ДПФ отличен от
нуля. Поскольку входная последовательность ДПФ действительна, Х Т(т) содер­
жит компоненты как на положительных, так и на отрицательных частотах. Первое
слагаемое в (3-73) описывает часть спектра, соответствующую положительной
частоте на рисунке 3.43, а второе слагаемое описывает компоненты Х Т(т), соот­
ветствующие отрицательным частотам.
130
Гпава 3. Дискретное преобразование Фурье
Если изменить частоту анализируемого косинусоидального сигнала так, что
она не будет соответствовать центру £-го бина и станет соответствовать, напри­
мер, к+0.25, то мы снова увидим утечку спектра, как показано на рисунке 3.44.
(Мы использовали это представление о ДПФ действительной последовательно­
сти, чтобы показать утечку спектра, в разделе 3.8.) ,
Приведенные в таблице 3.4 различные математические выражения для реак­
ции ДП Ф в области положительных частот на входную действительную коси­
нусоидальную последовательность представляют собой просто выражения из
таблицы 3.3 с дополнительным множителем 1/2.
характеристика
N
Л
2
'і!
2
^
V/
Iи кривая, шинипил
лии Iы
Эта
включая V«
ее часть
/ \ в области отрицательных частот,
\
представляет непрерывное
\
преобразование Фурье от
\^
= сов(2ппк/Ы)
Рис. 3 .4 3 . Модуль Л/-точечного ДПФ действительной косинусоидальной последо­
вательности хг (п) = соБ(2лпк/М), к полных периодов которой укладыва­
ются на интервале в N отсчетов
3.16. Реакция отдельного бина ДПФ
на действительный косинусоидальный
сигнал
Теперь, когда мы разобрались с реакцией М-точечного ДПФ на действитель­
ную косинусоиду, мы завершаем эту главу, рассматривая реакцию отдельного
бина ДПФ. Мы можем рассматривать отдельный бин ДПФ как своего рода поло­
совой фильтр и это полезное представление используется, например, для описа­
ния гребешковых потерь (раздел 3.10), при проектировании банков фильтров в
частотной области, а также при реализации метода частотного мультиплексиро­
вания в телефонии, известного как трансмультиплексирование [15]. Чтобы опре­
делить частотную характеристику отдельного бина, рассмотрим случай, когда на
вход ДПФ подается действительная косинусоидальная последовательность
х т(п), и будем фиксировать модуль единственного бина т = к. Пусть частота вход­
ной косинусоидальной последовательности изменяется от частоты, при которой
на интервале накопления укладывается к<т периодов косинусоиды, до частоты,
при которой на интервале накопления укладывается к>т периодов косинусоиды.
Если мы при этом измеряем значение бина т = к, мы увидим, что его модуль дол­
жен изменяться в соответствии с непрерывным спектром входной косинусоиды,
показанным на рисунке 3.45 серой линией.
Табл ица 3 .4 . Разные формы реакции ДПФ в области положительных частот на входную действительную
косинусоиду, имеющую период, который на интервале накопления укладывается к раз
Описание
Выражение
Реакция ДПФ на действительный входной сигнал в терминах
целого частотного индекса т [из (3-73)]
Х Т(т) = ^\п[л(к-т)]/{2ъ\п[л(к-т)/Щ }
(3-74)
Х Т(т) ~ Л ^ т [л (& -т )]/[2 я (£ -т )]
(3-75)
Х Т(т) ~ бш[л(к-т )]/[2л(к-т )]
(3-76)
Х г(т /$) ~ Ж п [я (& -т )/ 5]/[ 2 я (& -т )/5]
(3-77)
Нормированная реакция ДПФ на действительный входной
сигнал в терминах частоты дискретизации ^ в Гц
Х Т(т /5) ~ 8т [л(к-т )/$]/[2л(к-пг)/5\
(3-78)
Нормированная реакция ДПФ на действительный входной
сигнал в терминах круговой частоты дискретизации а>3
Х Т(та)5) ~ Бт[л(к-т)а)3/2]/[(к-т)со3]
(3-79)
Альтернативная форма реакции ДПФ на действительный
входной сигнал в терминах целого частотного индекса т [из
(3-49)]
Нормированная реакция ДПФ на действительный входной
сигнал в терминах целого частотного индекса т
Реакция ДПФ на действительный входной сигнал в терминах
частоты дискретизации ^ в Гц
132
Гпава 3. Дискретное преобразование Фурье
\Xr(m)\ ДПФ
характеристика
N
N
2
■V-
-/с-4
П ҐП
k-З
■ , і . к+2.
; і ; і -к+4
; ■■AV
к
-/с-1 Г -к +1
-к- 0.25
-/(+3
W
я
*
■
■
чч
і !, I 1 і J, і ' ^
к- 4 , „ к - 2, „ /с , > к+2 , „ к +4
/с+1
/с-3
/с-1
к+3
/с+0.25
171
Рис. 3 .4 4 . Модуль /V-точечного ДПФ, демонстрирующий утечку спектра действитель­
ной косинусоиды хДл), которая на Л/ отсчетах имеет к+0.25 периода
На рисунке 3.45 (а) показано значение бина m = k , когда частота входного сиг­
нала х т(п) равна k = m -2.5 периодов на интервал накопления. Повышая частоту
х т(п) до k = т -1 .5 периодов на интервал накопления, мы получаем значение бина
пг= к, показанное на рисунке 3.45 (Ь). Продолжая повышать частоту х т(п), при к =
m мы получаем значение бина m = к, показанное на рисунке 3.45 (с). Изменяя час­
тоту входного сигнала, мы можем заметить, что модуль бина m = k должен изме­
няться по тому же закону, что и непрерывный спектр косинусоидальной
последовательности, показанной на рисунке 3.45(d) черной линией. Это значит,
что частотная характеристики отдельного бина при подаче на вход ДПФ действи­
тельной синусоиды описывается функцией sine, которая определяется выраже­
ниями (3-74) — (3-79).
3.17. Интерпретация ДПФ
Теперь, когда мы кое-что узнали о ДПФ, самое время убедиться в том, что мы
правильно понимаем, что в действительности представляет собой ДПФ, и поста­
раться избежать обычных заблуждений относительно его поведения. В литерату­
ре по ЦОС мы найдем разделы, посвященные непрерывному преобразованию
Фурье,рядам Фурье, дискретно-временному преобразованию Фурье, дискретному
преобразованию Фурье и периодическим, спектрам. Чтобы не запутаться во всех
этих понятиях, требуется приложить определенные усилия, особенно когда вы
читаете или слышите что-то вроде «ДПФ предполагает, что его входная последо­
вательность периодична во времени». (Вы удивляетесь, почему это так, посколь­
ку ничего не стоит вычислить ДПФ апериодической последовательности.) Такое
замечание в лучшем случае сбивает с толку, т. е. ДПФ не требует подобных пред­
положений. Далее я постараюсь изложить свое понимание природы периодично­
сти последовательностей во времени и по частоте.
Рассмотрим непрерывный сигнал бесконечной длительности, содержащий
единственный импульс конечной длительности, показанный на рисунке 3.46 (а).
Модуль непрерывного преобразования Фурье (Н П Ф ) такого сигнала представ­
ляет собой непрерывную функцию частоты Х ^ш ). Если этот импульс можно опи­
сать аналитически (математической формулой), то функцию Х ^ ш ) можно также
найти аналитически, взяв интеграл Фурье. (Весьма вероятно, что вы делали это в
3.17. Интерпретация ДПФ
133
качестве домашней или контрольной работы.) Непрерывная частота со измеряется в
радианах в секунду. Если мы возьмем НПФ бесконечного по длительности сигнала,
представляющего собой периодическую последовательность импульсов, показан­
ную на рисунке 3.46 (Ь), мы получим линейчатый спектр, известный как ряд Ф у­
рье 1 Х 2((о). Линии этого спектра имеют бесконечно малую ширину, а Х 2((о)
хорошо определен в промежутках между этими линиями, т. к. Х 2((о) является не­
прерывной функцией частоты.
Модуль
т - го бина
А
(а)
0
т-4
| т-2
т -3
Модуль
1т-го бина
/\
/ \
:
>
/ Ь
(Ь)
/
/ \
/Л /
0
— г- 1 — 1— 1--------------- ■- —
л | т + 2 | т+4
к
т+1
т+3
|
т-1
V
т -4
\
/*
\/ \
V
|
т -2
т -3
г?
|
| т+2 | т+4
т+1
т+3
т-1
Модуль
1 т-го бина
(С)
' V
т -4
т-3
АЧХ
V
=
V
т -2
V
|
о
\
\А
/
А/
-
V
V
\
/
Эта кривая представляет
непрерывную АЧХ
'
т-го бина ДПФ
действительного сигнала
\
/
1
1
к
А
/
\
/
■
^
|
т-1
(<1)
т-4
‘
т+2 | т+4
т+1
т+3
т
N12
1 отдельного
■ бина
0
к
,*
*
/
0
/~ \
I
| т -2 \
т-3
т-1
(
т
к
|
■
1
1
т+2 | т+4
т+1
т+3
^
Входная
частота к
Рис. 3 .4 5 . Определение модуля т -го бина Л/-точечного ДПФ: (а) действительная по­
следовательность хг(п) имеет к = т-2.5 периодов на анализируемом ин­
тервале; (Ь) действительная последовательность х (л) на анализируемом
интервале имеет к = т-1.5 периодов; (с) действительная последователь­
ность хг(л) на анализируемом интервале имеет/с = т периодов; (с!) частот­
ная характеристика отдельного бина ДПФ т = к
Точнее, спектр представляет собой коэффициенты ряда Фурье —(прим. перев.).
134
Гпава 3. Дискретное преобразование Фурье
Непрерывный и апериодический
х,(0
Непрерывный
и апериодический
НПФ
(а)
Время
Частота
Непрерывный и периодический
хМ)
X»
НПФ
(Ь)
г. . Г- -.
Линейчатый спектр
(ряд Фурье)
I I
Время
Частота
Апериодическая дискретная
последовательность бесконечной длины
Непрерывный
и периодический
■■■■■■■■
х(л)
ДВПФ
(с)
Частота
Время
(О
х1(°)
ДПФ.
Дискретный
и периодический
Дискретный и периодический Обратное
■ ■■■■■■■
■■■■■■■■
НПФ—
хЛп)
Хі(ш) ".
*•
НПФ-^
(сі)
Время
*>
-Г
Рис. 3 .4 6 . Сигналы и последовательности во временной области и модули их пре­
образований в частотной области
Рисунок 3.46 (Ь) показывает пример непрерывной периодической функции,
спектр которой содержит ряд дискретных компонентов. Вы можете считать ряд Фу­
рье Х2(о>) дискретизированной версией непрерывного спектра на рисунке 3.46 (а).
Это соотношение между временным и частотным представлением сигнала х 2(Ь) и
Х 2(ш) показывает, что периодической функции в одной области соответствует
дискретная по своейлрироде функция в другой области.
Далее, рассмотрим бесконечную по длительности дискретную последователь­
ность х (и), содержащую несколько ненулевых отсчетов, показанную на рисунке
3.46 (с). Мы можем вычислить НПФ х(п), которое описывает спектр в виде непре­
рывной функции Х3(си). Этот непрерывный спектр называется дискретно-времен­
ным преобразованием Фурье (ДВПФ), которое определено как [см. стр. 48 в 16]
ЦЦ
Х((о) = 2 х(п)еЧа)П .
(3-80)
Я=-оо
Чтобы проиллюстрировать ДВПФ, предположим, что у нас есть последовате­
льность видах 0(я) = (0.75)п при п > 0. Ее ДВПФ имеет вид
П =
-
00
П= - 00
(3-81)
Выражение (3-81) представляет собой геометрическую прогрессию (см. при­
ложение В) сумма которой равна
3 . 17. Интерпретация ДПФ
135
Х 0(о)) = 1/(1-0.75е- > ) = <?>/(<?>-0.75) .
(3-82)
Спектр Х 0(о>) непрерывен и периодичен с периодом 2л, его модуль показан на
рисунке 3.47. Это пример дискретной функции времени, имеющей периодиче­
ский спектр. Для особо любознательного читателя мы можем проверить перио­
дичность ДВПФ, используя целое число &в следующем выражении:
00
00
Х(ю + 2я к ) х ( п ) е ~ К<“ * 2лк)п - 2 х(п)е-’юпе~>ыкп „=-00
„=-00
оо
= ^ х (п )е ^ шп = Х(си)
(3-83)
„=-00
потому что е~)2лкп = 1 для целых значений к.
Х 3(си) на рисунке 3.46 (с) также имеет период 2л, если представить его как
функцию круговой частоты а>5 = 2 л /5, где частота / 5 представляет собой величину,
обратную периоду отсчетов х(п). Непрерывная периодическая функция Х3(оо)
представляет собой то, что мы хотели бы иметь на практике, но мы не можем этого
добиться. Мы используем компьютеры, и как это ни грустно, не можем выпол­
нять анализ непрерывных сигналов из-за дискретной природы самих компьюте­
ров. Любые операции обработки данных выполняются над дискретными
числами, хранящимися в памяти компьютера, и вследствие этого все сигналы во
временной области и все частотные спектры представляют собой дискретные по­
следовательности, полученные в результате дискретизации. Следовательно,
НПФ и обратное НПФ последовательностей, с которыми мы работаем, будут пе­
риодическими.
Рис. 3 .4 7 . Модуль ДВПФ |Х0(<у)|
Преобразования, показанные на рисунках 3.46 (а) — (с) представляют собой
результат математических выкладок на бумаге. В компьютере, использующем ди­
скретные последовательности конечной длины, мы можем только аппроксимиро­
вать НПФ (ДВПФ ) последовательности х(п) бесконечной длины, показанное на
рисунке 3.46 (с). Эта аппроксимация называется дискретным преобразованием
Фурье (ДПФ), и это единственный инструмент Фурье, который нам доступен.
Вычисляя ДП Ф последовательности х ^ п ) , которая является конечной частью
х(п), мы получаем дискретные периодические отсчеты Ху(ш), показанные на ри­
сунке 3.46 (с!). Обратите внимание на то, что ХДш) есть дискретизированная
136
Гпава 3. Дискретное преобразование Фурье
версия непрерывного периодического спектра Х3(а>). Однако спектр Х^(т) в точ­
ности равен НПФ периодической последовательности х2(п) на рисунке 3.46 (d).
Так что, когда кто-нибудь говорит: «ДПФ предполагает, что входная последова­
тельность периодична во времени», —он имеет ввиду, что ДПФ равно непрерыв­
ному преобразованию Фурье (которое называется ДВПФ) периодической
дискретной последовательности. Итог всего сказанного заключается в следующем:
если функция периодична, ее прямое/обратное ДВПФ будет дискретным; если
функция дискретна, ее прямОе/обратное ДВПФ будет периодическим.
Библиография
1.
Bracewell, R. «The Fourier Transform», Scientific American,]une 1989.
2.
Struik, D. A Concise History o f Mathematics, Dover Publications Inc., New York,
1967, p. 142 (неоднократно издавались русские переводы, например: Стройк
Д. Я. Краткий очерк истории математики. М. Наука, 1990, 256 с.).
3. Williams, С. S. Designing Digital Filters. Section 8.6, Prentice-Hall, Englewood
Cliffs, New Jersey, 1986, p. 122.
4.
Press, W., et al. Numerical Recipes—The Art o f Scientific Computing. Cambridge
University Press, 1989, p. 426.
5.
Geckinli, N. C., and Yavuz, D. «Some Novel Windows and a Concise Tutorial
Comparison of Window Families,» IEEE Trans, onAcoust. Speech, and Signal Proc.,
Vol. ASSP-26, No. 6 , December 1978. (Кстати, на странице 505 этой статьи фра­
за «такой, что W (f) > OVf» означает, что функция W (f) никогда не бывает от­
рицательной. Символ V значит «для всех».)
6.
O'Donnell, J. «Looking Through the Right Window Improves Spectral Analysis,»
EDN, November 1984.
7.
Kaiser, J. F. «Digital Filters,» in System Analysis by Digital Computer. Ed. by F. F.
Kuo and J. F. Kaiser, John Wiley and Sons, New York, 1966, pp. 218-277.
8.
Rabiner, L. R., and Gold, B. The Theory and Application o f Digital Signal Processing.
Prentice-Hall, Englewood Cliffs, New Jersey, 1975, p. 88 (есть русский перевод:
Рабинер Л., Голд Б. «Теория и применение цифровой обработки сигналов»,
М.: Мир, 1978, доступен по адресу http://geogin.narod.ru/arhiv/dsp/dsp3.htm .
Кстати на этом сайте по адресу http://geogin.narod.ru/readall.htm есть непло­
хая подборка книг по ЦОС в электронном виде.).
9.
Schoenwald, J. «The Surface Acoustic Wave Filter: Window Functions», RFDe­
sign, March 1986.
10. Harris, F. «On the Use of Windows for Harmonic Analysis with the Discrete Fou­
rier Transform,» Proceedings o f the IEEE, Vol. 66, No. 1, January 1978.
Библиография
137
11. Nuttall, A. H. «Some Windows with Very Good Sidelobe Behavior», IEEE Trans.
onAcoust. Speech, and Signal Proc., Vol. ASSP-29, No. 1, February 1981.
12. Yanagimoto, Y. «Receiver Design for a Combined RF Network and Spectrum Ana­
lyzer», Hewlett-PackardJournal, October, 1993.
13. Gullemin, E. A. The Mathematics o f Circuit Analysis. John Wiley and Sons, New
York, 1949, p. 511.
14. Lanczos, C. Discourse on Fourier Series, Chapter 1, Hafner Publishing Co., New
York, 1966, p. 7-47.
15. Freeny, S. «TDM /FDM Translation As an Application of Digital Signal Proces­
sing,» IEEE Communications Magazine, January 1980.
16. Oppenheim, A., et.al., Discrete-Time Signal Processing, 2nd ed. Prentice-Hall,
Upper Saddle River, New Jersey, 1999, pp. 48-51.
Для заметок
Гпава 4
Быстрое
преобразование
Фурье
Хотя ДПФ представляет собой наиболее простую математическую процедуру
определения частотного состава временных последовательностей, оно ужасно не­
эффективно. При увеличении количества точек ДПФ до сотен и тысяч количество
выполняемых операций превышает все разумные пределы. В 1965 году была опуб­
ликована статья Кули и Тьюки, описывающая очень эффективный алгоритм реа­
лизации ДПФ [1]. Этот алгоритм сегодня известен как быстрое преобразование
Фурье (БП Ф )'. До появления БПФ ДПФ длиной в несколько тысяч точек требо­
вало так много времени, что его применение ограничивалось крупными исследова­
тельскими и университетскими вычислительными центрами. Благодаря Кули и
Тьюки, а также полупроводниковой промышленности сегодня 1024-точечное ДПФ
может быть вычислено за несколько секунд на домашнем компьютере.
О
БПФ написаны тома, и, как никакое другое изобретение, разработка этого ал­
горитма изменила цифровую обработку сигналов, сделав доступной всю мощь ана­
лиза Фурье. В этой главе мы покажем, почему наиболее популярные алгоритмы
БПФ (которые называют БПФ по основанию 2) имеют преимущества над классиче­
ским алгоритмом ДПФ, дадим ряд рекомендаций, позволяющих получить больше
практической пользы от БПФ, и приведем ссылки на листинги исходных текстов
программ на разных языках программирования. Для читателей, желающих уз­
нать некоторые детали, мы завершаем эту главу выводом алгоритма БПФ по
основанию 2 и демонстрацией нескольких способов реализации БПФ.
В действительности БПФ имеет интересную историю. Исследуя рассеяние рентгенов­
ских лучей, два физика в 1940-х годах воспользовались преимуществами симметрии
синусов и косинусов, применив математический метод, основанный на опубликован­
ном в начале 1900-х приеме. Прошло более 20 лет, прежде чем алгоритм БПФ был от­
крыт заново Полную историю вы найдете в [2]
140
Гпава 4. Быстрое преобразование Фурье
4.1. Связь БПФ с ДПФ
Существует ряд различных алгоритмов БПФ. В этом разделе мы увидим, по­
чему алгоритм БПФ по основанию 2 так популярен, и узнаем, как он связан с
классическим ДПФ. Алгоритм БП Ф по основанию 2 — это очень эффективный
алгоритм вычисления ДПФ, когда длина ДПФ равна целой степени двух. (То
есть количество точек преобразования равно N = 2 к, где k - некоторое положите­
льное число.) Посмотрим, почему практикующие специалисты по ЦОС предпо­
читают БПФ по основанию 2.
Вспомните пример 1 главы 3, в котором мы отметили некоторое количество избы­
точных операций при выполнении 8-точечного ДПФ. (Например, мы вычисляли
произведение 1.0607 »0.707 четыре раза.) БПФ по основанию 2 устраняет эту избы­
точность и существенно снижает количество необходимых арифметических опера­
ций. Чтобы оценить эффективность БПФ, рассмотрим количество комплексных
умножений, необходимых для выполнения давно знакомого нам N-точечного ДПФ
X(m) - t m e - ^ nm/N.
(4-1)
п=0
В случае 8-точечного ДПФ из (4-1) следует, что нам необходимо выполнить N 2,
или 64, комплексных умножений. (Потому что для каждого из восьми отсчетов
Х (т ) мы должны просуммировать восемь комплексных произведений при изме­
нении п от 0 до 7.) Как мы убедимся в последних разделах этой главы, количество
комплексных умножений для N-точечного БП Ф равно примерно
(N /2) • log 2N.
(4-2)
, (Мы говорим «примерно», потому что некоторые умножения выполняются на +1
или -1 и сводятся к простой перемене знака.) Величина (N/2 ) log 2 N указывает на
значительное снижение количества комплексных умножений по сравнению с N 2
операций, необходимых для реализации (4-1), особенно при больших N. Насколь­
ко значительно это снижение, показывает рисунок 4.1, на котором сравнивается
количество комплексных умножений, необходимых для реализации ДПФ и БПФ
по основанию 2 при разных значениях N. При N = 512, например, ДПФ требует в
200 раз больше комплексных умножений, чем БПФ. При N = 8192 ДПФ требует
1000 комплексных умножений на каждое комплексное умножение в алгоритме
БПФ! А вот мой любимый пример эффективности БПФ по основанию 2. Если мы
выполняем БПФ длиной в два миллиона точек (N = 2 097 152) на нашем персона­
льном компьютере, оно занимает 10 секунд. С другой стороны, вычисление ДПФ
такой последовательности на настольном компьютере займет более трех недель!
Публикация и распространение алгоритма БПФ по основанию 2 были, наверное, са­
мым важным событием в цифровой обработке сигналов.
Здесь уместно подчеркнуть, что БПФ не является аппроксимацией ДПФ. Это
в точности ДПФ. Более того, все характеристики ДПФ, описанные в предыду­
щей главе: симметрия, линейность, утечки, гребешковые искажения и прочие, —
присущи также и БПФ.
4.2. Советы по практическому использованию БПФ
141
Количество комплексных умножений
Рис. 4 .1 .
Количество комплексных умножений, как функция /V, при реализации
ДПФ и БПФ по основанию 2
4.2. Советы по практическому
использованию БПФ
Учитывая ценность БПФ для практики, мы приводим здесь ряд практических
указаний по накоплению данных и использованию БП Ф по основанию 2 для ана­
лиза сигналов реального мира.
4 .2 .1 . Дискретизируйте достаточно часто и достаточно
долго
Как мы знаем из главы 2, при преобразовании непрерывных сигналов в цифро­
вую форму с помощью АЦП частота дискретизации должна быть не менее чем в
два раза больше ширины спектра непрерывного сигнала, чтобы предотвратить на­
ложения в частотной области. На практике в зависимости от приложения исполь­
зуют частоту дискретизации, которая в два с половиной —четыре раза превышает
ширину спектра сигнала. Если мы знаем, что ширина спектра преобразуемого
сигнала не очень велика по сравнению с максимальной частотой преобразования
нашего АЦП, от наложений легко избавиться. Если мы не знаем, какова ширина
спектра непрерывного сигнала, как нам определить, имеются ли наложения или
нет? В этом случае нам следует с недоверием относиться к результатам БПФ,
если имеются спектральные компоненты значительного уровня на частотах вбли­
зи половины частоты дискретизации. В идеале нам хотелось бы работать с сигна­
лами, спектр которых убывает с ростом частоты. Будьте очень осторожны, когда в
спектре обнаруживаются компоненты, частоты которых зависят от частоты диск­
ретизации. Если у нас есть подозрение, что возникает наложение или что непре­
рывный сигнал содержит широкополосный шум, необходимо перед АЦЦ
включить аналоговый ФНЧ. Частота среза ФНЧ должна быть несколько выше мак­
симальной интересующей нас частоты и ниже половины частоты дискретизации.
142
Глава 4. Быстрое преобразование Фурье
Хотя мы знаем, что БП Ф по основанию 2 требует N = 2 к входных отсчетов,
сколько же именно отсчетов должны мы накопить для анализа? Ответ состоит в
том, что интервал времени, на котором выполняется накопление, должен соответ­
ствовать требуемой разрешающей способности БПФ при заданной частоте диск­
ретизации / 5. Длительность интервала накопления данных является величиной,
обратной требуемой разрешающей способности, и чем больше мы берем отсчетов с
фиксированной частотой дискретизации / 5, тем выше разрешение по частоте; т. е.
общий интервал накопления равен Ы //5секунд, а разрешающая способность А^-то­
чечного БПФ равна/х/Л^Гц. Следовательно, если нам необходима разрешающая
способность 5 Гц, то / 5 /ЛГ = 5 Гц и
ЛГ = / А/(:требуемое разрешение) = / 5/ 5 = 0.2/5.
(4-3)
В этом случае, если / 5 равна, скажем, 10 кГц, то N должно быть не меньше
2000, и нам придется взять N = 2 0 4 8 , потому что это ближайшее число, равное
целой степени 2 .
4 .2 .2 . Предварительная обработка данных
Если при использовании БП Ф по основанию 2 мы не можем повлиять на коли­
чество получаемых отсчетов, и длина последовательности не равна целой степени
двойки, можно применить один из двух подходов. Мы можем отбросить часть от­
счетов данных так, чтобы длина оставшейся последовательности была равна целой
степени двойки. Использование этого варианта не рекомендуется, т. к. игнориро­
вание части отсчетов данных приведет к ухудшению разрешения по частоте. (Чем
больше ЛГ, тем лучше разрешение, не правда ли?) Лучше дополнить последовате­
льность нулями так, чтобы получить необходимое общее количество отсчетов.
Например, если у нас есть 1000 отсчетов, которые необходимо преобразовать,
вместо того, чтобы анализировать 512 из этих отсчетов, нам следует добавить в
конец последовательности 24 нулевых отсчета и использовать 1024-точечное
БПФ. (Метод дополнения нулями более подробно обсуждается в разделе 3.11.)
БП Ф подвержено тем же эффектам утечки спектра, которые мы обсуждали в
разделе 3.8 для ДПФ. Для уменьшения утечки мы можем умножить исходную
последовательность на окно. Будьте, однако, готовы к тому, что использование
окон уменьшает разрешение по частоте. Кстати, при дополнении последователь­
ности нулями мы должны умножать последовательность на окно до добавления
нулей. Применение окна к дополненной нулями последовательности приведет к
искажению окна и ухудшит утечку спектра.
Хотя взвешивание окном и уменьшает утечку спектра, оно не устраняет проб­
лему полностью. Даже при использовании окна мощные спектральные составля­
ющие могут замаскировать слабые компоненты спектра. Это особенно заметно,
когда исходные данные содержат постоянную составляющую. При вычислении
БП Ф в этом случае постоянная составляющая высокого уровня на частоте 0 Гц за­
крывает соседние компоненты спектра. Мы можем устранить эту проблему, вычислив
среднее значение исходных данных и вычтя его из исходной последовательности.
(Усреднение и вычитание должны выполняться до взвешивания окном.) Этот
143
4.2. Советы по практическому использованию БПФ
подход позволяет сделать постоянную составляющую равной нулю и удаляет со­
ставляющую с частотой 0 Гц из результата БПФ.
4 .2 .3 . Улучшение результатов БПФ
Если мы используем БП Ф для обнаружения энергии сигнала в присутствии
шума, и у нас есть достаточно данных, мы можем улучшить чувствительность
нашего обнаружителя, применяя усреднение результатов нескольких БПФ.
Этот метод, рассматриваемый в разделе 11.3, может быть использован для обна­
ружения сигналов, мощность которых ниже среднего уровня шума. Другими
словами, имея достаточно данных во временной области, мы можем обнаружи­
вать компоненты сигнала при отрицательном отношении сигнал/шум.
Если данные во временной области имеют действительные значения, мы можем
воспользоваться преимуществами метода 2Л^-точечного действительного БПФ,
описанного в разделе 13.5, для ускорения обработки; т. е. 2Лг-точечная действитель­
ная последовательность может быть преобразована с помощью одного Л^-точечно­
го комплексного БПФ по основанию 2. Таким образом, мы можем получить
частотное разрешение ^-точечного БПФ по цене стандартного А^-точечного БПФ.
Другая возможность ускорения БПФ состоит в применении взвешивания окном
в частотной области, описанного в разделе 13.3. Если нам нужно БПФ невзвешен­
ных данных и одновременно мы хотим иметь БП Ф тех же данных, взвешенных
окном, нам нет необходимости выполнять два разных БПФ. Мы можем вычис­
лить БП Ф невзвешенных данных, а затем выполнить взвешивание в частотной
области, чтобы уменьшить утечку на всех или на некоторых бинах БПФ.
4 .2 .4 . Интерпретация результатов БПФ
Первый шаг при интерпретации результатов БПФ состоит в вычислении абсо­
лютных частот центров бинов. Как и в случае ДПФ, расстояние по частоте между
бинами БПФ равно частоте дискретизации / 5 , деленной на количество точек
БПФ, или f s/N . Обозначим результат БПФ как Х(т), где т = 0 ,1 ,2 ,3 ,...,
1, при
этом абсолютная частота центра т-го бина равна т /5 /ЛГ. Если отсчеты входной
последовательности БПФ действительны, только отсчеты Х (т ) с индексами от
т = 0 до т = N /2 независимы. Следовательно, в этом случае нам необходимо
определить только частоты бинов для т в диапазоне 0 < т < N/2. Если же входные
отсчеты комплексные, все N отсчетов БПФ независимы, и нам потребуется вы­
числить частоты бинов для т во всем диапазоне 0 < т < И - 1.
Если необходимо, мы можем определить истинные амплитуды сигналов по их
спектрам. Для этого мы должны помнить, что выходные отсчеты БПФ по основа­
нию 2 - комплексные величины вида
Х ( т ) = Х геа1(т) + ]Х 1тан(т).
(4-4)
А все модули отсчетов БПФ
Х таё ( т ) =
I Х (т ) I
=
^ Х геа 1 ( т ) 2 + ^ т а ё ( т ) 2
(4-5)
144
Гпава 4. Быстрое преобразование Фурье
в результате преобразования, когда входные отсчеты действительны, оказываются
умноженными на N/2, как сообщалось в разделе 3.4. Если же входные отсчеты ком­
плексные, масштабирующий коэффициент равен N. Следовательно, чтобы опре­
делить правильные амплитуды синусоидальных составляющих, нам необходимо
разделить модули отсчетов БПФ на соответствующий коэффициент: N /2 для дей­
ствительных последовательностей и N для комплексных последовательностей.
Если исходные данные были взвешены окном, некоторые входные отсчеты
оказываются ослабленными. Это уменьшает уровень выходных отсчетов БПФ.
Чтобы вычислить правильные амплитуды синусоидальных составляющих в этом
случае, мы должны разделить модули отсчетов БП Ф еще и на некоторый коэф­
фициент потерь, соответствующий используемому окну. Коэффициенты потерь
для наиболее популярных окон приведены в [3].
В случае, когда мы хотим определить спектр мощности Хр5(тп), нам необходи­
мо вычислить квадрат модуля БПФ, используя соотношение
Хр5(т) = | Х(т) | 2 = Х геа1(т )2 + Х іта§(т )2.
(4-6)
Это позволит нам вычислить спектр мощности в логарифмическом масштабе
Хсів(т ) = 10 • 1оёю( I х (т) 12 ) дБ
(4-7)
Нормированный спектр мощности в логарифмическом масштабе можно вы­
числить с помощью выражения
Нормированный Х ів (лг) = 10 • log10( | Х(т ) | 2 / ( | Х(т) | тах )2 )
(4_8)
Нормированный Х ^ т ) = 20 • 1оя10( | Х(т) | / ( | Х(т) \ тах))
( 4. 9 )
или
В (4-8) и (4-9) член \Х(т)\тах представляет собой максимальный модуль от­
счета. На практике график Х^в (т) очень информативен благодаря улучшенному
разрешению составляющих низкого уровня при использовании логарифмиче­
ского масштаба, как показано в приложении Е. Если используется (4-8) или (4-9),
описанная выше компенсация масштаба БПФ и потерь, связанных с окном, не
нужна. Нормирование путем деления на (\Х(т) \ тах) или |Х (т)| тах устраняет
влияние всех масштабных коэффициентов.
х ф (т ) = їа п - \ х
іт а§ ( т ) / х
г е а і(т )) >
(4-10)
мы должны особое внимание обратить на те отсчеты, для которых Х геа^т ) равны
нулю. В этом случае вычисление фазы по (4-10) невозможно из-за деления на
ноль. На практике необходимо, чтобы программа расчета обнаруживала отсчеты,
для которыхХ геа^т ) = 0, и устанавливалаХ ,(т ) = 90°еслиХготя^(ш) > О,X , ( т ) =
0° если Х {таё(т) = 0, и Х ,(т ) = -90° если Х 1таХт ) < 0. Рассматривая фазовые
углы отсчетов БПФ, имейте ввйду, что шумовые компоненты высокого уровня
могут вызвать значительные флуктуации вычисленных Х ,(т ). Это значит, что
отсчеты Х А т ) имеют смысл только тогда, когда соответствующий \Х(т)\ намно­
го превышает средний уровень шума.
4.3. Программы БПФ
145
4.3. Программы БПФ
Для тех читателей, которые хотят получить программы БПФ без необходимо­
сти платить за дорогостоящие пакеты обработки сигналов, имеется ряд бесплат­
ных программ, реализующих БП Ф по основанию 2. В [4-7] приведен листинг
программы на Фортране, реализующей стандартный алгоритм БПФ. В [8 ] пред­
ставлена эффективная программа, написанная на Фортране, для действительных
последовательностей. В [9] предлагается стандартная программа БПФ, написан­
ная на HP BASIC™, а в [10] представлена процедура БПФ, написанная на Apple­
soft BASIC™. Читатели, интересующиеся языком Ada, могут найти процедуры,
связанные с БПФ, в работе [11].
4.4. Разработка алгоритма БПФ
по основанию 2
Этот и следующие разделы содержат подробное описание внутренних структур
данных и операций БПФ по основанию 2 для тех читателей, которые интересуются
разработкой программ БПФ или проектированием аппаратурных процессоров БПФ.
Чтобы увидеть, как БПФ вырастает из ДПФ, напомним формулу точечного Д ПФ:
N-1
X(m ) = 'Z x (n )e -J 2n"’n/N.
(4-11)
п=0
Простой и понятный способ получения алгоритма БПФ состоит в том, что ис­
ходная последовательность данных х(п ) делится на две части. Выделив отсчеты
x(ri) с четными и нечетными индексами в две отдельные последовательности, мы
можем разбить (4-11) на две части вида
(.N/2)-1
(N/2)-1
Х(т ) = ^х(2 п )е~ > 2п(-2^ т/" + '2l x{2n + 1 ) e ~ ^ 2n*1)m/N.
n=0
n=0
(4-12)
Вынося за знак второй суммы экспоненту с постоянным показателем степени,
получаем
(N/2)-1
.
( N /2 ) - 1
Х (т ) - 2 x (2 n )e ~ W 2")m/N + e~>2nm/N 2 x(2n + f
П=0
П=0
(4-13)
Для упрощения этих длинных и сложных выражений мы используем стандар­
тные обозначения. Пусть WN = e~^2n^Nобозначает комплексный поворачивающий
множитель, который постоянен для заданного N. Тогда (4-13) приобретает вид
(.N/2)-1
(N/2)-1
Х(т) - J x(2n)(W N)2nTn+ (W N)m2 x ( 2 n + 1)(.WN)2nm.
n=0
n=0
(4-14)
Поскольку ( WN)2 = e~j2jl2/ ^ = e~j2n/(N/ 2\ мы можем в формулу (4-14) подста­
вить WN/2 вместо (W N)2
146
Гпава 4. Быстрое преобразование Фурье
(N/2) - 1
(N/2)4
Х(т ) = 2 х(2п)(\Ум/2У т+
п=0
2 х(2п + 1)
(
.
(4^15)
п=0
Итак, мы имеем две суммы N /2 слагаемых, результаты которых можно объеди­
нить в ^-точечное ДПФ. В (4-15) мы сократили количество операций над данны­
ми по сравнению с (4-11), потому что множители \¥ в обеих суммах уравнения
(4-15) идентичны. Дополнительный выигрыш от разбиения Л^-точечного ДПФ на
две части мы получаем благодаря тому, что вторая половина отсчетов ДПФ вы­
числяется очень просто. Рассмотрим отсчет Х(т+Ы/2). Если мы подставим
т+К/2 вместо т в (4-15), то
(N/2)4
Х{т+И/2) = ^ х ( 2 п ) ( Щ /2)п{т^ /2'>+
п=0
(N/2)4
+ ( Щ )( т+ы/2)'2 х ( 2 п + 1)(У/ы/2)п‘-т*ы/2К
п-0
(4-16)
Кажется, мы усложнили нашу задачу? Ничего, потерпите немного. Мы можем
упростить поворачивающие множители под знаками сумм, потому что
(Щ /2 )п^ ы/2) - ( ^ » “ (И'лг/г)”" 72 - ( Щ /2)пт(е-’2лпт/™) -№
/ 2Г ( 0 - ( ^ 2Г
( 4 ' 17)
для любого целого п. Внимательно проанализировав поворачивающий множитель
перед второй суммой в (4-16), мы можем упростить его как
( №’Дг)<” +ЛГ/2>
- ( Щ ) т( е ~ ^ /2Ы) - ( Щ ) т( - 1 ) - - ( Щ ) т
(4-18)
Далее, используя (4-17) и (4-18), мы представляем X(m +N/2) из (4-16) как
( Щ2) - 1
(N/2)4
Х(т+Ы/2) = 2 х (2 п )(Щ /2)пт- (И'л, ) " 2 *(2п + Ш Щ /2Г п=0
(4-19)
п=0
Теперь повторим (4-15) и (4-19), чтобы увидеть, насколько они схожи:
(N/2)4
(N/2)4
Х(т ) - 2 *<2я)( Щ ,2)"т + ( Щ )” 2 х(2п + 1)( Ч/т У т.
п=0
(4-20)
п=0
( К / 2 ) -I
Х ( т + ^ 2 ) - 2 х(2 п )(Щ /2 )пт- ( И ^ ) " 2 х (2п + 1 Х Щ /2 )птп=0
п=0
(4-20')
147
4.4. Разработка алгоритма БПФ по основанию 2
Ну вот, мы и получили то, что хотели. Для вычисления Х(т+И/2) нам не нуж­
но выполнять никаких умножений на синусы и косинусы. Мы просто изменяем
знак поворачивающего множителя (\У^)т и используем две суммы, полученные
для Х(т), для вычисления Х(т+К/2). Конечно, в (4-20) т принимает значения от
0 до (N /2) -1, а это значит, что для ^-точечного ДПФ мы выполняем два N /2-то­
чечных ДПФ, получая первые N /2 отсчетов, а затем используем уже полученные
результаты для вычисления последних N /2 отсчетов. При N = 8 (4-20) и (4-20')
реализуются так, как показано на рисунке 4.2.
Рис. 4 .2 .
Реализация БПФ для 8-точечного ДПФ с использованием двух 4-точеч­
ных ДПФ
Если мы запишем (4-20) и (4-20') в более простой форме
Х(т) - А ( т ) + (Шм)тВ(т),
(4-21)
148
Глава 4. Быстрое преобразование Фурье
X(m + N/2) = A(m) - ( WN)mB(rn),
(4-21’)
мы можем пойти дальше и разбить два 4-точечных ДПФ на четыре 2-точечных
ДПФ. Посмотрим, как можно разделить верхнее 4-точечное ДПФ на рисунке 4.2,
четыре выхода которого равны А(т) в (4-21) и (4-21'). Мы можем разделить чет­
ные и нечетные входные отсчеты верхнего 4-точечного ДПФ:
( N /2 ) - 1
А(т) = 2 x(2n)(W N/2)nm=
п=0
(.N / 4 ) - 1
(.N /4) -1
- 2 x(4nX W N/2)2"m+ 2 *(4n + 2)(W N/2f n*r>m .
n=0
n=0
Поскольку (W N/ 2)
чечных ДПФ как
(.N / 4 ) - 1
(4-22)
( WN/ 4 )nm, мы можем выразить A{m) через два N /4 -то(N / 4 ) - 1
A ( m ) - ^ x i 4 n ) ( W N/4)™+(Wm T ^ x ( 4 n + 2)(W N/4f m.
n=0
n=0
(4-23)
Обратите внимание на сходство выражений (4-23) и (4-20). Эта возможность
деления JV/2-точечного ДПФ на два Л74-точечных ДПФ и сообщает алгоритму
БП Ф способность существенно уменьшать количество необходимых умножений
при реализации ДПФ. (Мы это вскоре продемонстрируем на примере.) Выпол­
няя те же шаги, которые мы выполняли для получения А(т), можно показать, что
В(т) в (4-21) имеет вид
(.N / 4 ) - 1
(N / 4 ) - 1
В(т) = 2 x(4n+1)(W N/4)"m+(WN/2)m2 x(4n+3)(W N/4)nm.
П=0
(4-24)
П=0
При N = 8 (4-23) и (4-24) реализуются так, как показано на рисунке 4.3. Здесь
отчетливо видна структура сигнального графа, содержащая хорошо известные
бабочки, и мы видим дальнейшую перетасовку входных данных. Поворачиваю­
щий множитель (W N/,2 )m в (4-23) и (4-24) в нашем примере с N = 8 изменяется от
(W 4)° до (W4)3, потому что индекс т для А (т ) и В(т) изменяется от 0 до 3. Для
любого JV-точечного ДПФ мы можем разбить каждое из Лу2-точечных ДПФ на
два iV/4-точечных ДПФ с целью дальнейшего уменьшения количества умноже­
ний на синусы и косинусы. В конце концов мы дойдем до ряда 2-точечных ДПФ,
после чего дальнейшее сокращение количества операций уже невозможно. Имен­
но по этой причине количество точек БПФ может быть равно только целой степе­
ни двойки, а этот алгоритм БП Ф называется БП Ф по основанию 2.
Двигаясь в том же направлении, сделаем еще один шаг вперед и закончим с
рассматриваемым N = 5-точечным ДПФ. Двухточечные ДПФ на рисунке 4.3 не­
льзя разделить на более мелкие части —мы дошли до конца в процессе уменьше­
ния длины последовательности и пришли к бабочке одного 2-точечного ДПФ,
показанной на рисунке 4.4. Из определения WNследует, что ( WN)°= e~^2n0^N= 1, и
4.4. Разработка алгоритма БПФ по основанию 2
149
( и ^ ) ЛГ/2= е^ 2л^ / 2^= е~)п = 1 Следовательно, блоки 2-точечного ДПФ на рисун­
ке 4.3 можно заменить бабочкой, показанной на рисунке 4.4, получив, таким обра­
зом, полную реализацию 8 -точечного БПФ, показанную на рисунке 4.5.
Х(0)
2-точечное
ДПФ
-► Х (1 )
Х(2)
2-точечное
ДПФ
►
Х(3)
х(1)
2-точечное
ДПФ
х(5)
х(3)
2-точечное
ДПФ
х(7)
Рис. 4 .3 .
Быстрая реализация 8 -точечного ДПФ в виде двух 4-точечных ДПФ и че­
тырех 2-точечных ДПФ
Итак, мы прошли через изрядное количество алгебраических манипуляций.
Чтобы проверить правильность нашего вывода алгоритма БПФ, мы можем взять
8 -точечную последовательности из примера 1 в главе 3 и обработать ее в соответст­
вии с алгоритмом 8 -точечного БПФ, представленным на рисунке 4.5. Последовате­
льность данных, представляющая сигнал х(п) = §т(2л1000гй$) + 0.5^т{2л2000Ш$ +
+ З л/4 ), имеет вид:
х(0) = 0.3535,
х(2) = 0.6464,
х(4) = 0.3535,
х(6 ) = -1.3535,
х(1) = 0.3535,
х(3) = 1.0607,
. х(5) = -1.0607,
(4-25)
х(7) = -0.3535.
150
Гпава 4. Быстрое преобразование Фурье
Г
х(к)
и/,N
х{к+Ы12)
Рис. 4 .4 .
Бабочка для одного 2-точечноі и
х(0)
Х(0)
х(4)
Х(1)
х(2)
Х(2)
х(6)
х(1)
х(5)
Рис. 4 .5 .
Полная реализация алгоритма БПФ с прореживанием во времени для
8 -точечного ДПФ
Начнем перемалывать эти данные, наложив входные значения из (4-25) на ри­
сунок 4.5, в результате чего получим значения, показанные в левой части рисун­
ка 4.6. Выходные значения второго каскада БПФ равны
151
4.4. Разработка алгоритма БПФ по основанию 2
А(0)
А{1)
А(2)
А (3)
В(0)
В(1)
В(2)
В(3)
= 0.707 + (\Г4 )°(-0.707) = 0.707 + (1 +]0)(-0.707) = 0 + ]0,
= 0.0 + (ЦГ4 ) 1(1.999) = 0.0 + (0 -]1)(1.999) = 0 -]1.999,
= 0.707 + (\¥4 ) 2(-0.707) = 0.707 + ( - 1 +]0)(-0.707) = 1.414 + ]0,
= 0.0 + (\¥4 ) \ 1.999) = 0.0 + (0 +]1)( 1.999) = 0 + р . 999,
= 0.707 + (У/4 )°(0.707) = -0.707 + (1 +]0)(0.707) = 0 + ]0,
= 1.414 + (\№4 ) 1(1.414) = 1.414 + (0 -]1)(1.414) = 1.414 -]1.414,
= -0.707 + (\\^4 ) 2(0.707) = -0.707 + ( - 1 +]0)(0.707) = -1.414 + ]0,
= 1.414 + (Х\74 ) 3(1.414) = 1.414 + (0 + ]1)(1Л14) = 1.414 + р .4 1 4 .
1-й каскад
Рис. 4 .6 .
2-й каскад
3-й каскад
8 -точечное БПФ последовательности прим’ера 1 из раздела 3.1
152
Гпава 4. Быстрое преобразование Фурье
Вычисляя результат третьего каскада БПФ, получаем окончательный ответ
Х (0) = А(0) + (W 8 ) ° В(0) = 0 +j0 + (1 +j0 )( 0 +j0) = 0 + jO + 0 + j0 = 0Z. О
Х (1 ) = Л(7) + ( W8 ) 1B(1) = 0 - j 1.999 + (0.707 ->0.707)( 7.474 - j1.414) =
=0
+ 0 - ; 'Ю Т = 0 ->4 = 4 Z -90°
X (2 ) = Л(2) + (W o )2B(2) = 7.474 +/0 + (0 - / 7 ) ( - 7.474 +j0) =
= 14/4 +>0 + 0 + j1.4242 = 1.414 +j1.414 = 2 Z 45°,
X (3 )= A (3 ) + ( W8 ) 3B (3 ) = 0 + j f . ^ + (-0.707 -j0.707)(1.414 + >7.474) =
= 0 + >7.W + 0
= 0 Z 0°,
X(4) = Л(0) + (W 8 )4B(0) = 0 +j0 + ( - 1 +>0)(0 +j0) =
= 0 +>0 + 0 +>0 = 0 Z 0°,
X(5) = Л(7) + ( W8 )5B (1 ) = 0 ->7._99$ + (-0.707 + j0.707)(1.414 -j1.414) =
= 0 - j 1.999 + 0 +
= 0 Z 0°,
X(6) = Л(2) + ( W8 )6B(2 ) = 14 74 +>0 + (0 +>7)(-7.474 + jO) =
= 7.474 +70 + 0 - j 1.414 = 1474 ->1474 = 2 Z -45°
X(7) = Л(3) + ( ^ ) 7 B(^) = 0 + j 1.999 + (0.707 + j0.707)(1.414 + >14 74) =
= 0 + >7.W + 0 + j 1.999 = 0 +>4 = 4 Z 90°.
Итак, к счастью, БПФ дает правильный результат, и это позволяет нам снова
напомнить читателю, что БП Ф не является аппроксимацией ДПФ, а представля­
ет собой ДПФ с уменьшенным количеством арифметический операций. В приве­
денном выше примере вы могли видеть, что вычисление 8 -точечного БПФ
требует меньших затрат, чем 8 -точечное ДПФ из первого примера в разделе 3.1.
Некоторые авторы предпочитают объяснять это уменьшение количества арифме­
тических операций избыточностью поворачивающих множителей . Они показы­
вают это с помощью звездной диаграммы, приведенной на рисунке 4.7, которая
демонстрирует эквивалентность некоторых поворачивающих множителей в 8 -точечном ДПФ.
4.5. БИТ-реверсивная перестановка
входных и выходных данных БПФ
Рассмотрим некоторые особые свойства БПФ, которые имеют большое значение
для разработчиков программ и аппаратурных процессоров БПФ. Заметим, что рису­
нок 4.5 назван «Полная реализация БПФ с прореживанием по времени для 8 -точечного ДПФ». Слова с прореживанием по времени относятся к способу разбиения
входной последовательности отсчетов на четные и нечетные, который мы использо­
вали при выводе соотношений (4-20), (4-23) и (4-24). Такое прореживание приводит
к перемешиванию входных отсчетов на рисунке 4.5. Принцип перемешивания мож­
но понять с помощью таблицы 4.1. Это перемешивание называют бит-реверсивным,
потому что порядок следования отсчетов в перемешанной последовательности
можно получить путем изменения порядка следования битов в двоичном представ­
лении индексов отсчетов в неперемешанной последовательности на обратный.
4.5. БИТ-реверсивная перестановка входных и выходных данных БПФ________ 153
Это звучит несколько запутанно, но на самом деле все просто —таблица 4.1 иллю­
стрирует реверс битов для рассматриваемого примера 8 -точечного БПФ. Обрати­
те внимание на то, что индексы в левом столбце таблицы 4.1 расположены в
нормальном порядке, а в правом столбце индексы приведены в перемешанном по­
рядке, который совпадает с окончательным порядком следования прореженных
входных отсчетов на рисунке 4.5. Мы перевернули биты двоичного представле­
ния нормальных индексов, поменяв их порядок следования на обратный. Стар­
ший бит стал младшим, а младший стал старшим, следующий за старшим бит стал
следующим за младшим, и т. д .1
3
=
w
4
Ws
6
w5
J
ч
_
2
_
_
СО
5
00
Рис. 4 .7 .
Ч ^ -v
Г
^8
0
8
/
\
^
Г
0
4
1
%
1
= И/4
Избыточность поворачивающих множителей для 8-точечного БПФ
Т аб л и ц а 4 . 1 . Бит-реверсивная перестановка входных отсчетов
8-точечного БПФ
Нормальный
порядок
индексов л
Двоичное
представление
индекса л
Перестановка
битов
индекса л
Бит-реверсивный
порядок
индекса п
0
ООО
000
0
1
001
100
4
2
010
010
2
3
0 11
110
6
4
100
001
1
5
101
101
5
6
110
0 11
3
7
111
111
7
Многие же будут первые последними, и последние первыми. [Марк 10:31]
154
Гпава 4. Быстрое преобразование Фурье
4.6. Структуры бабочек БПФ
по основанию 2
Исследуем подробнее сигнальный граф бабочки БПФ с прореживанием по
времени. Чтобы упростить сигнальный граф, заменим на рисунке 4.5 поворачива­
ющие множители их эквивалентными значениями, обозначенными как (^дг)те,
где N = 8. Мы можем показывать только показатели степени т множителей
(\Ум)т, чтобы получить структуру БПФ, показанную на рисунке 4.8. Например,
на рисунке 4.5 равен
и на рисунке 4.8 показан как 2, (
на рисун­
ке 4.5 равен ( №8)4 и на рисунке 4.8 показан как 4 и т. д. Значения 1 и -1 в первом
каскаде рисунка 4.5 на рисунке 4.8 заменены на 0 и 4 соответственно. За исключе­
нием обозначения поворачивающих множителей, рисунок 4.8 идентичен рисун­
ку 4.5. Мы можем перетасовать на рисунке 4.5 сигнальные узлы и получить
8 -точечное БПФ с прореживанием по времени, показанное на рисунке 4.9. Заме­
тьте, что входные данные на рисунке 4.9 расположены в нормальном порядке, а
биты индексов выходных отсчетов переставлены в обратном порядке. В этом слу­
чае необходимо выполнять операцию реверсии порядка битов над выходными от­
счетами БПФ, чтобы представить частотные отсчеты в нормальном порядке.
На рисунке 4.10 показана структура сигнального графа БПФ, которая не тре­
бует перестановки вообще, но элегантное переплетение линий обычной бабочки
превратилось в запутанную, хоть и эффективную, конфигурацию.
Не так давно большая часть времени при аппаратурной реализации БПФ тра­
тилась на выполнение умножений, а процесс бит-реверсивной перестановки, не­
обходимый для доступа к данным в памяти, не составлял значительной части в
общем объеме вычислений. Теперь, когда аппаратурные умножители-аккумуля­
торы в интегральном исполнении могут умножать два числа за один такт синхро­
сигнала, мультиплексирование и адресация данных БПФ приобретают больше
значение. Это стимулировало разработку ряда эффективных алгоритмов бит-ре­
версивной перестановки [12-15].
Существует другой способ получения алгоритма БПФ, который приводит к
похожим структурам бабочек, но с другими поворачивающими множителями.
Эта разновидность алгоритмов БП Ф известна как БП Ф с прореживанием по ча­
стоте. Если алгоритм БП Ф с прореживанием по времени основан на разделении
входных данных на четные и нечетные отсчеты, алгоритм БП Ф с прореживани­
ем по частоте основан на раздельном вычислении четных и нечетных отсчетов в
частотной области. Вывод алгоритма с прореживанием по частоте достаточно
прост и включен во многие статьи и учебники, поэтому здесь мы не будем зани­
маться этим [4, 5, 15,16]. Но мы приводим структуры бабочек с прореживанием
по частоте на рисунках 4.11 - 4.13 (аналогичные структурам, показанным на ри­
сунках 4.8 - 4.10).
Для каждой структуры БПФ с прореживанием по времени существует эквива­
лентная структура с прореживанием по частоте. Важно отметить, что количество ум­
ножений при реализации алгоритма БЙФ с прореживанием по частоте совпадает с
количеством умножений при реализации БП Ф с прореживанием по времени.
4.6. Структуры бабочек БПФ по основанию 2
155
Существует гак много разных структур бабочек БПФ, описанных в литературе,
что легко можно спутать бабочки с прореживанием по частоте и с прореживанием
по времени. В зависимости от того, как подается материал, начинающий читатель
может легко прийти к выводу, что БПФ с прореживанием по времени всегда тре­
бует бит-реверсивной перестановки входных отсчетов, а БП Ф с прореживанием
по частоте всегда выдает результат в бит-реверсивном порядке. Как показывают
приведенные структуры, это не так. Прореживание по времени или частоте опре­
деляется тем, какая последовательность — входная или выходная, подвергается
разделению при выводе той или иной структуры бабочек БП Ф из формулы ДПФ.
Рис. 4 .8 .
8 -точечное БПФ с прореживанием по времени, входные отсчеты которо­
го подвергнуты бит-реверсивной перестановке
Х(0)
Х(4)
Х(2)
Х(6)
Х(1)
Х(5)
Х(3)
Х(7)
Рис. 4 .9 .
8 -точечное БПФ с прореживанием по времени с бит-реверсивным по­
рядком выходных отсчетов
156
Гпава 4. Быстрое преобразование Фурье
Рис. 4 .1 0 . 8 -точечное БПФ с прореживанием по времени, входная и выходная по­
следовательность которого расположены в нормальном порядке
Рис. 4 .1 1 . 8-точечтное БПФ с прореживанием по частоте и бит-реверсивным по­
рядком входных отсчетов
Рассмотрим еще раз отдельную бабочку. Структуры БП Ф на рисунках 4.8, 4.9,
4.11 и 4.12 являются прямым результатом вывода алгоритмов с прореживанием
по времени и по частоте. Хотя сначала это не очевидно, но показатели степени по­
ворачивающих множителей, приведенные на этих рисунках, распределены по
определенной системе. Обратите внимание на то, что они всегда принимают обоб­
щенные формы, показанные на рисунке 4.14 (а)1. Для реализации бабочки с про­
реживанием по времени, показанной на рисунке 4.14 (а), нам потребуется
Помните, что для простоты в структурах бабочек, показанных на рисунках 4.8 —4.13,
приведены только показатели степени поворачивающих множителей, к и к+Ы/2, а не
полные комплексные поворачивающие множители.
4.6. Структуры бабочек БПФ по основанию 2
157
выполнить два комплексных умножения и два комплексных сложения. Конечно
же, есть лучший способ реализации. Рассмотрим бабочку с прореживанием по
времени на рисунке 4.14 (а). Если обозначить верхний вход как х, а нижний —как
у, верхний выход бабочки будет равен
х ' = х + (У1к )ку,
(4-26)
а нижний выход бабочки будет равен
у ' - х + (Шы)к+"'2 у.
(4-27)
Рис. 4 .1 2 . 8 -точечное БПФ с прореживанием по частоте и бит-реверсивным поряд­
ком выходной последовательности
Рис. 4 .1 3 . 8-точечное БПФ с прореживанием по частоте и нормальным порядком
входных и выходных отсчетов
158
Гпава 4. Быстрое преобразование Фурье
Прореживание по времени
х'
Прореживание по частоте
X"
О
х"
(Ь)
У
О
О
Рис. 4 .1 4 . Структуры бабочек с прореживанием по времени и частоте: (а) исходная
форма; (Ь) упрощенная форма; (с) оптимизированная форма
(а)
(Ь)
Рис. 4 .1 5 . Другой способ изображения бабочки: (а) с прореживанием по времени;
(Ь) с прореживанием по частоте
К счастью, операции в (4-26) и (4-27) можно упростить, потому что два пово­
рачивающих множителя связаны соотношением
№ ) *+*/2 _ №
)*(Ц^ / 2 - ^ ) к( е ~ ^ /2к) =
= - ( 1У д/.
(4-28)
Следовательно, мы можем заменить поворачивающие множители (\\/,^ к+^ 2
на рисунке 4.14 (а) множителями - (
что дает нам упрощенную форму бабо­
чек, показанную на рисунке 4.14 (Ь). Поняв, что поворачивающие множители на
4.6. Структуры бабочек БПФ по основанию 2 ______________________________159
рисунке 4.14 (Ь) отличаются только знаками, мы приходим к оптимизированной
форме бабочек, показанной на рисунке 4.14 (с). Заметьте, что такие оптимизиро­
ванные бабочки требую два комплексных сложения, но всего одно комплексное
умножение, что уменьшает общее количество операций1.
В литературе вы будете часто встречать оптимизированные структуры бабо­
чек, приведенные на рисунке 4.14 (с), вместо структур, показанных на рисунке
4.14 (а). Эти оптимизированные бабочки позволяют нам легко распознавать алго­
ритмы с прореживанием по времени и по частоте. Если мы видим оптимизиро­
ванные бабочки, подобные приведенным на рисунке 4.14 (с), мы знаем, что это
алгоритм с прореживанием по времени, если поворачивающий множитель стоит
перед - 1 , в противном случае, если поворачивающий множитель стоит после - 1 ,
это алгоритм с прореживанием по частоте.
Иногда мы будем встречать в литературе структуры БПФ, в которых исполь­
зуются обозначения, показанные на рисунке 4.15 [5, 17]. Эти бескрылые бабочки
эквивалентны показанным на рисунке 4.14 (с). В этих сигнальных графах исполь­
зуется соглашение о том, что выход узла, обозначенного кружочком, помеченный
плюсом, представляет собой сумму отсчетов, входящих в узел слева, а выход, по­
меченным минусом, представляет собой разность этих отсчетов. Таким образом,
выходные отсчеты бабочек с прореживанием по времени, доказанных на рисун­
ках 4.14 (с) и 4.15 (а) вычисляются как
+
(4-29)
Выходы бабочек с прореживанием по частоте, показанных на рисунках 4.14 (с)
и 4.15 (Ь) равны
х - - х + у н у - - ( 9 Г к ) к ( х - у ) = (\Ук ) кх -(Ч Г 11) ку .
(4-30)
Так какая же структура лучше? Это зависит от приложения, аппаратурной ре­
ализации и соображений удобства. Если для выполнения БПФ мы используем
программу на компьютере общего назначения, выбор у нас обычно невелик. Боль­
шинство специалистов просто используют существующие подпрограммы БПФ,
включенные в коммерческие пакеты программ. Их код может быть оптимизиро­
ван по скорости выполнения, но вы этого никогда не узнаете. Чтобы разобраться в
том, как они реализуют БПФ, может потребоваться изучение этого кода. Если для
нас важна скорость работы, первым делом нужно проверить, вычисляются ли
синусы и косинусы каждый раз, когда требуется поворачивающий множитель.
Обычно вычисление тригонометрических функций занимает множество ма­
шинных тактов. Скорость вычисления БПФ можно повысить, вычислив пово­
рачивающие множители заранее и сохранив их таблицу в памяти. В этом случае
вычисление поворачивающего множителя заменяется выборкой из таблицы.
Если мы пишем собственную процедуру выполнения БПФ, мы можем реализо­
вать алгоритм в целочисленной арифметике, которая на большинстве машин ра­
ботает быстрее, но при этом мы должны принять меры против возможных
переполнений на выходах бабочек и внимательно отнестись к масштабированию
Мы говорим, что количество комплексных умножений при реализации БПФ равно
(N/2)\og2N (см. (4-2)) именно потому, что А^-точечное БПФ содержит (N/2)\og2Nба­
бочек.
160
Гпава 4. Быстрое преобразование Фурье
результатов'. При использовании целочисленной арифметики следует быть вни­
мательным: некоторые ШЭС процессоры в действительности выполняют целочис­
ленные операции медленнее, т. к. они оптимизированы для выполнения операций
над числами с плавающей запятой.
Если мы используем для вычислений векторный процессор, программы для
этих процессоров всегда оптимизированы, т. к. их главная цель — высокая ско­
рость вычислений. Изготовители векторных процессоров обычно рекламируют
свои изделия, указывая скорость выполнения на них 1024-точечного БПФ.
Посмотрим теперь, какие возможности есть у нас при выборе структуры БПФ
для реализации в виде специализированной аппаратуры.
Обсуждавшиеся ранее структуры бабочек БП Ф обычно попадают в одну из
двух категорий: алгоритмы БПФ с замещением и алгоритмы БПФ с удвоенной
памятью. Алгоритм с замещением показан на рисунке 4.5. Выход бабочки запоми­
нается в той же ячейке памяти, в которой хранились входные отсчеты. Память для
хранения промежуточных результатов не нужна. В этом случае для А^-точечного
БПФ требуется только Ж ячеек памяти (коэффициент 2 учитывает то, что операция
бабочки выполняется над комплексными числами, имеющими действительную и
мнимую части). Камнем преткновения при реализации алгоритмов с замещением
является довольно сложная адресация памяти. Структура БПФ с двойной памя­
тью изображена на рисунке 4.10. В этом случае необходима промежуточная па­
мять, т. к. в структуре уже нет стандартной бабочки, и требуется дополнительно
4Ы ячеек памяти. Но доступ к данным и адресация памяти в этих структурах на­
много проще, чем в случае алгоритма с замещением. Высокоскоростные интегра­
льные схемы с плавающей запятой, реализующие конвейерные структуры БПФ,
более полно используют преимущества конвейерной архитектуры при использо­
вании алгоритмов с двойной памятью [18].
Существует еще один класс структур БПФ, известный как алгоритмы с посто­
янной геометрией, которые делают адресацию памяти не только простой, но и
одинаковой для всех каскадов БПФ. Эти структуры особенно интересны тем, кто
проектирует специализированные аппаратурные процессоры БПФ [4,19]. С точ­
ки зрения аппаратуры в общем случае алгоритмы с прореживанием по времени
являются оптимальными для действительных входных последовательностей, а
алгоритмы с прореживанием по частоте больше подходят для обработки комп­
лексных входных последовательностей [8 ]. Когда входная последовательность
БПФ симметрична во времени, для устранения ненужных операций используют­
ся специальные структуры БПФ. Эти специальные структуры, основанные на
симметрии данных, описаны в литературе [20 ].
В случае двумерного БПФ, например, при обработке изображений, алгоритмы
с прореживанием по частоте считаются оптимальными [21]. Ваше приложение
может оказаться таким, что бит-реверсивная перестановка входной и выходной
последовательности не важна. Некоторые приложения позволяют манипулиро­
вать выходной последовательностью БПФ в бит-реверсивном порядке без вос­
становления нормального порядка отсчетов. Затем обратное преобразование,
1 Переполнением называется то, что происходит, когда результат арифметической опера­
ции содержит слишком много бит или разрядов и не может быть представлен в предназ­
наченных для его хранения регистрах Переполнение данных БПФ рассматривается в
разделе 12 3.
Библиография
161
которое использует входную последовательность в бит-реверсивном порядке,
даст результат во временной области в нормальном порядке. В этой ситуации
бит-реверсивная перестановка не нужна вообще. Примером подобного использо­
вания БПФ является перемножение двух преобразований Фурье в частотной об­
ласти для получения свертки или корреляции во временной области1. Как можно
видеть, выбор оптимального алгоритма и аппаратурной архитектуры БПФ пред­
ставляет собой достаточно сложную проблему, но, к счастью, литература может
дать нам указания по ее решению [4, 22, 23].
Библиография
1.
Cooley, J. and Tukey, J. «An Algorithm for the Machine Calculation of Complex
Fourier Series», Math. Comput., Vol. 19, No. 90, Apr. 1965, pp. 297-301.
2.
Cooley, J., Lewis, P., and Welch, P. «Historical Notes on the Fast Fourier Trans­
form», IEEE Trans, on Audio and Electroacoustics, Vol. AU-15, No. 2, June 1967.
3.
Harris, F. J. «On the Use of Windows for Harmonic Analysis with the Discrete Fo­
urier Transform», Proceedings o f the IEEE, Vol. 66, No. 1, p. 54, January 1978.
4.
Oppenheim, A. V., and Schafer, R. W. Discrete-Time Signal Processing, Prentice-Hall, Engle-wood Cliffs, New Jersey, 1989, p. 608 (имеется русский перевод
одного из предыдущих изданий: Оппенгейм А. В., Шафер Р. В. «Цифровая об­
работка сигналов», пер. с англ. / под ред. С. Я. Шаца, М.: Связь, 1979, доступен
по адресу dsp-book.narod.ru/OpShDSP.djvu).
5.
Rabiner, L. R. and Gold, В. Theory and Application o f Digital Signal Processing, Prentice-Hall, Englewood Cliffs, New Jersey, 1975, p. 367 (есть русский перевод: Paбинер Л., Голд Б. «Теория и применение цифровой обработки сигналов», М.:
Мир, 1978, доступен по адресу http://geogin.narod.ru/arhiv/dsp/dsp3.htm).
6. Stearns, S. Digital Signal Analysis, Hayden Book Co., Rochelle Park, New Jersey,
1975, p. 265.
7. Programs fo r Digital Signal Processing, Chapter 1, IEEE Press, New York, 1979.
8.
Sorenson, H. V., Jones, D. L., Heideman, М. Т., and Burrus, C. S. «Real-Valued
Fast Fourier Transform Algorithms» IEEE Trans, on Acoust. Speech, and Signal
Proc, Vol. ASSP-35, No. 6, June 1987.
9.
Bracewell, R. The Fourier Transform and Its Applications, 2nd Edition, Revised,
McGraw-Hill, New York, 1986, p. 405.
10. Cobb, F. «Use Fast Fourier Transform Programs to Simplify, Enhance Filter Ana­
lysis», EDN, 8 March 1984.
11. Carlin, F. «Ada and Generic FFT Generate Routines Tailored to Your Needs»,
EDN, 23 April 1992.
Пример использования БПФ для выполнения свертки приведен в разделе 13.10.
162
Гпава 4. Быстрое преобразование Фурье
12. Evans, D. «An Improved Digit-Reversal Permutation Algorithm for the Fast Fou­
rier and Hartley Transforms», IEEE Trans, on Acoust. Speech, and Signal Proc, Vol.
ASSP-35, No. 8 , August 1987.
13. Burrus, C. S. «Unscrambling for Fast DFT Algorithms», IEEE Trans, on Acoust.
Speech, and Signal Proc, Vol. 36, No. 7, July 1988.
14. Rodriguez, J. J. «An Improved FFT Digit-Reversal Algorithm», IEEE Trans, on
Acoust. Speech, and Signal Proc, Vol. ASSP-37, No. 8, August 1989.
15. Land, A. «Bit Reverser Scrambles Data for FFT», EDN, March 2,1995.
16. JG-AE Subcommittee on Measurement Concepts, «What Is the Fast Fourier Trans­
form?», IEEE Trans, on Audio and Electroacoustics, Vol. AU-15, No. 2, June 1967.
17. Cohen, R., and Perlman, R. «500 kHz Single-Board FFT System Incorporates
DSP-Optimized Chips», EDN, 31 October 1984.
18. Eldon, J., and Winter, G. E. «Floating-point Chips Carve Out FFT Systems», Elec­
tronic Design, 4 August 1983.
19. Lamb, K. «CMOS Building Blocks Shrink and Speed Up FFT Systems», Electronic
Design, 6 August 1987.
20. Markel, J. D. «FFT Pruning», IEEE Trans, on Audio and Electroacoustics, Vol.
AU-19, No. 4, December 1971.
21. Wu, H. R., and Paoloni, F. J. «The Structure of Vector Radix Fast Fourier Trans­
forms», IEEE Trans, on Acoust. Speech, and Signal Proc., Vol. ASSP-37, No. 8 ,
August 1989.
22. Ali, Z. M. «High Speed FFT Processor», IEEE Trans, on Communications, Vol.
COM-26, No. 5, May 1978.
23. Bergland, G. «Fast Fourier Transform Hardware Implementations—An Overvi­
ew» IEEE Trans, on Audio and Electroacoustics, Vol. AU-17, June 1969.
Гпава 5
Фильтры
с импульсной
характеристикой
конечной длины
Фильтрация цифровых данных, если и не фундаментальная, то, по крайней
мере, старейшая область цифровой обработки сигналов. Истоки цифровой филь­
трации уходят в прошлое на 50 лет. Растущая популярность цифровых компью­
теров в начале 50-х годов стимулировала усилия исследователей в области
сглаживания дискретных данных и анализа дискретных систем управления. Од­
нако по-настоящему анализ и проектирование цифровых эквивалентов аналого­
вых фильтров вошли в нашу жизнь в начале-середине 60-х годов, примерно в то
время, когда Биттлз приехали в Америку. Именно в это время специалисты по
цифровой обработке сигналов осознали, что компьютеры способны перейти от
простого анализа оцифрованных сигналов к изменению их характеристик по­
средством фильтрации. Сегодня цифровая фильтрация распространена так ши­
роко, что объем посвященной ей литературы превосходит объем литературы по
любой другой области цифровой обработки сигналов. В этой главе вы познакоми­
тесь с основными атрибутами цифровых фильтров, узнаете, как численно оценить
их эффективность и изучите принципы проектирования цифровых фильтров с им­
пульсной характеристикой конечной длины.
Итак, начнем с иллюстрации понятия фильтрации во временной области на
рисунке 5.1.
Вообще, фильтрация представляет собой обработку сигнала во временной об­
ласти, в результате которой изменяется спектральный состав исходного сигнала.
Изменения обычно заключаются в ослаблении или подавлении некоторых неже­
лательных спектральных компонентов входного сигнала. Фильтры пропускают
определенные компоненты сигнала, ослабляя в то же время другие компоненты.
На рисунке 5.1 показаны как аналоговая, так и цифровая версии процесса филь­
трации. Если аналоговый фильтр обрабатывает непрерывные сигналы, то цифро­
вой фильтр обрабатывает последовательности дискретных отсчетов. Цифровой
фильтр на рисунке 5.1 (Ь), конечно же, может представлять собой компьютерную
164
Гпава 5. Фильтры с импульсной характеристикой конечной длины
программу, программируемый аппаратурный процессор или специализирован­
ную интегральную схему. Традиционно линейные цифровые фильтры делятся на
два больших класса: фильтры с импульсной характеристикой конечной длины
(КИХ-фиЛьтры) и фильтры с импульсной характеристикой бесконечной длины
(БИХ-фильтры). Поскольку КИХ-фильтры проще поддаются анализу, мы изу­
чим в этой главе именно их, а БИХ-фильтрам посвятим главу 6 .
++
+
(Ь)
*
♦+
+
Время
Входная последовательность
Рис. 5 .1 .
+ +
++ +
Цифровой
фильтр
+
+
++
Время
Выходная последовательность
....... ^
Фильтры: (а) аналоговый фильтр, на входе которого мы видим зашум­
ленный тоновый сигнал, а на выходе — тон, очищенный от шума; (Ь) циф­
ровой эквивалент аналогового фильтра
5.1. Введение в КИХ-фильтры
Прежде всего, для вычисления текущего отсчета выходного сигнала КИХ-филь­
тры используют только текущий и предыдущие отсчеты входного сигнала и со­
всем не используют выходные отсчеты. (По этой причине КИХ-фильтры иногда
называют также нерекурсивными фильтрами’.) Это приводит к тому, что, если
входная последовательность содержит конечное количество ненулевых отсчетов, то
выходная последовательность такого фильтра также будет содержать последовате­
льность ненулевых отсчетов конечной длительности, благодаря чему КИХ-фильтры
и получили свое имя. Итак, если входная последовательность, начиная с некоторого
момента, превращается в последовательность нулевых отсчетов, то через некото­
рое время выходная последовательность также будет содержать только нулевые
отсчеты. Хотя эта особенность фильтра не представляется необычной, она очень
важна, и мы выясним, почему, когда узнаем больше о цифровых фильтрах.
Для вычисления выходных отсчетов КИХ-фильтры используют сложение при­
мерно так же, как мы используем сложение в процессе усреднения. И действительно,
усреднение представляет собой КИХ-фильтр, что мы можем продемонстрировать
1 Для полноты картины следует заметить, что КИХ-фильтры могут быть реализованы
и с использованием рекурсивной схемы, что продемонстрировано в главе 10 —(прим.
перев.).
5.1. Введение в КИХ-фильтры
165
на примере. Допустим, мы считаем количество машин, проходящих по мосту за
минуту, и нам необходимо узнать среднее количество машин в минуту за интер­
вал в пять минут; т. е. каждую минуту мы вычисляем количество машин в минуту
за последние пять минут. Если результаты подсчета машин за первые десять ми­
нут приведены в среднем столбце таблицы 5.1, то среднее количество машин в ми­
нуту за предыдущие пять одноминутных интервалов приведено в правом столбце
таблицы. Чтобы получить первое среднее значение, мы сложили данные для пер­
вых пяти одноминутных интервалов и разделили сумму на пять, ( 10 + 22 + 24 +
42 + 37)/5 = 27. Затем мы вычислили среднее значение количества машин в мину­
ту для одноминутных интервалов со второго по шестой и получили второе сред­
нее значение за пять минут, равное 40.4. Продолжая в том же духе, мы усреднили
количество машин в минуту для интервалов с третьего по седьмой и получили
третье среднее 53.8 и так далее. На рисунке 5.2 мы изобразили график количества
машин за одноминутные интервалы серой линией, график среднего количества
машин в минуту за пятиминутный интервал выделили черной линией. (На рисун­
ке 5.2 показаны входные значения количества м^шин в минуту за пределами деся­
тиминутного интервала, данные для которого приведены в таблице 5.1, чтобы
продемонстрировать некоторые важные идеи, которые следует коротко обсудить.)
Таблица 5 .1 . Численные значения для примера усреднения
Индекс
минуты
Количество машин
за последнюю минуту
Среднее за последние пять минут
количество машин в минуту
1
10
—
2
22
—
3
24
—
4
42
—
5
37
27
6
77
40.4
7
89
53.8
8
22
53.4
9
63
57.6
10
9
52
Из этого примера можно сделать много полезных выводов. На рисунке 5.2 за­
метно, что резкие изменения входной последовательности в процессе усреднения
сглаживаются. Выходная последовательность оказывается намного более глад­
кой, чем входная. Зная, что быстрые изменения последовательности обусловлены
высокочастотными компонентами, мы можем сказать, что наше устройство
усреднения ведет себя как фильтр нижних частот, сглаживая быстрые изменения
166
Гпава 5. Фильтры с импульсной характеристикой конечной длины
входной последовательности. Является ли наше устройство усреднения КИХфильтром? Конечно, да —для вычисления текущего выходного значения не испо­
льзуются предыдущие выходные отсчеты; только входные отсчеты используются
для вычисления выходных значений. Кроме того, мы видим, что, если мост закры­
вается в конце 19-й минуты, то серая линия быстро опускается до 0 машин в мину­
ту в конце 20-й минуты, а выходные отсчеты устройства усреднения на рисунке 5.2
постепенно уменьшаются до нуля к концу 24-й минуты.
Количество машин
90
80
70
60
50
40
30
20
10
о —і—і—і—1- і —і—і—і—і—і—і—і—і—і—і—і—і—і—□—а—а—
1 2 3 4 5 6 7
Рис. 5 .2.
■— ►
8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 Минуты
Усреднение количества машин в минуту. Серая линия показывает коли­
чество машин за каждую минуту, а черная линия показывает количество
машин в минуту, усредненное за последние пять минут
Рисунок 5.2 показывает, что первый выходной отсчет появляется в конце 5-й
минуты, потому что именно в этот момент мы получаем первые пять отсчетов, ко­
торые позволяют нам вычислить правильное среднее. 5-й выходной отсчет можно
обозначить как у аие(5), где
Уаие(5) = М 1) + х (2) + х О ) + Х{4) + х (5 )] /5 .
(5-1)
В общем случае, если к-й входной отсчет есть х(к), то п-й выходной отсчет вы­
числяется как
п
Уаие(п) = [х ( п - 4 ) + х ( п - 3 ) + х ( п - 2 ) + х ( п - 1 ) + х (п )\/5 = ^ 1 х (к )/5 .
к=п-4
(5-2)
Теперь посмотрите на выражение (5-2) внимательно. Оно утверждает, что п-й
выходной отсчет представляет собой сумму п-то и четырех предыдущих входных
отсчетов.
Мы можем проявить фильтрующую сущность нашего устройства усреднения,
начертив его блок-схему, показанную на рисунке 5.3. Она показывает, как устрой­
ство усреднения вычисляет выходные отсчеты.
Эта блок-схема, которую называют структурой фильтра, представляет собой
изображение того, как мы могли бы вычислять выходные отсчеты усредняющего
фильтра, используя сдвиг входной последовательности по порядку слева направо
вдоль верхней части фильтра при вычислении каждого нового выходного отсчета.
5.1. Введение в КИХ-фильтры
167
Эта структура, которая реализует уравнения (5-1) и (5-2), показывает использу­
емые значения отсчетов в момент, когда мы получили первые пять входных от­
счетов. Элементы задержки на рисунке 5.3, которые называют единичными
задержками, образуют регистр сдвига, в котором входные отсчеты запоминаются
на время вычисления выходного отсчета.
Рис. 5 .3 .
Блок-схема усредняющего фильтра в момент, когда на вход поступает
пятый отсчет, 37
При усреднении мы складываем пять отсчетов и делим сумму на пять. В реали­
зации КИХ-фильтра мы можем с таким же успехом умножить каждый входной
отсчет на коэффициент 1/5, а затем вычислить сумму, как показано на рисун­
ке 5.4 (а). Конечно же, фильтры на рисунках 5.3 и 5.4 (а) эквивалентны, потому
что уравнение (5-2), описывающее структуру, показанную на рисунке 5.3, эквива­
лентно уравнению
п
Уаъе(п) = х ( п - 4 ) /5 + х (п -3 )/5 + х(п -2 )/5 + х (п -1 )/5 + х(п)/5 = 2 х ( к ) /5 ,
к=п-4
(5-3)
которое описывает структуру на рисунке 5.4 (а)1.
Давайте убедимся в том, что мы правильно понимаем то, что происходит на ри­
сунке 5.4 (а). Каждый из пяти входных отсчетов умножается на 1/5, и пять произ­
ведений суммируются, давая значение 5-го выходного отсчета. Сдвиг отсчетов
слева направо иллюстрируется на рисунках 5.4(Ь) и 5.4(с). Чтобы вычислить 6-й
выходной отсчет фильтра, входная последовательность сдвигается вправо, при
этом 1 -й отсчет, имеющий значение 10 , выпадает из регистра сдвига и теряется
безвозвратно, а 6-й отсчет со значением 77 поступает на вход слева. Аналогично,
при вычислении 7-го выходного отсчета входная последовательность сдвигается
вправо, в результате чего 2-й отсчет, равный 22, теряется, а 7-й входной отсчет,
имеющий значение 89, поступает на вход слева. Таким образом, когда на вход
приходит новый отсчет, фильтр отбрасывает самый старый отсчет, умножает от­
счеты на 1/5 и суммирует произведения, давая в результате один новый выходной
отсчет. Структура фильтра, использующая этот процесс сдвига типа пожарной
цепочки часто называют трансверсальным фильтром из-за поперечного переме­
щения входных отсчетов2. Поскольку для вычисления выходного значения мы
«ответвляем» отдельные входные отсчеты, структуру на рисунке 5.4 на жаргоне
цифровой обработки называют КИХ-фильтром с 5 ответвлениями.
При переносе множителя 1/5 в (5-2) под знак суммы в (5-3) мы используем дистрибутивный закон умножения и сложения скаляров a(b+c+d)= ab+ac+ad.
Английское слово transversal (трансверсалъный) переводится буквально как попереч­
ный, секущий — (прим. перев.).
168
Рис. 5 .4 .
Гпава 5. Фильтры с импульсной характеристикой конечной длины
Альтернативная структура усредняющего фильтра: (а) входные отсчеты,
используемые для вычисления значения 5-го выходного отсчета;
(Ь) входные значения, используемые для вычисления 6 -го выходного от­
счета; (с) входные отсчеты, используемые для вычисления 7-го выходно­
го отсчета
Один важный и, вероятно, наиболее интересный аспект в понимании сущно­
сти КИХ-фильтров связан с предсказанием их поведения при подаче на вход си­
нусоидальных последовательностей разных частот, т. е. с оценкой их частотной
характеристики. На частотную характеристику КИХ-фильтров влияют два фак­
тора: количество ответвлений и значения коэффициентов, используемые при ум­
ножении. Мы исследует эти два фактора на нашем примере усредняющего
фильтра, а затем увидим, как можно использовать их при проектировании
КИХ-фильтров. Это приводит нас к необходимости ввести новое понятие: сверт­
ка. (На самом деле мы уже представили читателю уравнение свертки, не говоря об
этом. Это было уравнение (5-3), и сейчас мы изучим его подробнее.)
5.2. Свертка в КИХ-фильтрах
169
5.2. Свертка в КИХ-фильтрах
Сейчас мы всерьез возьмемся за математику, описывающую КИХ-фильтры.
Мы можем графически представить вычисления по формуле (5-3), показанные
на рисунке 5.4, так, как на рисунке 5.5. Кроме того, будем придерживаться обще­
принятых в теории цифровых фильтров обозначений для индексов входных от­
счетов и коэффициентов фильтра, когда первый индекс последовательности
принимается равным 0 ; т. е. мы будем обозначать первый входной отсчет какх( 0 ).
Следующий входной отсчет обозначается х( 1), следующий —х(2 ) и т. д. Анало­
гично, значения пяти рассматриваемых коэффициентов будут индексироваться
от нуля до четырех, т. е. от hiß) до h(4). (Эта схема индексирования позволяет сде­
лать описывающие наш пример уравнения совместимыми с общепринятыми в
литературе по цифровым фильтрам.)
В (5-3) в качестве коэффициентов фильтра, на которые умножаются отсчеты
входной последовательности, мы использовали множитель 1/5. В левой части ри­
сунка 5.5 показана схема соответствия этих коэффициентов (черные квадратики)
отсчетам входного сигнала фильтра, представленным пустыми квадратиками.
Обратите внимание на то, что на рисунках 5.5(a) — 5.5(e) мы сдвигаем входные
отсчеты вправо и на каждом шаге вычисляем значение выходного отсчета с помо­
щью (5-3). Выходные отсчеты в правой части рисунка 5.5 совпадают с первыми
пятью отсчетами, показанными черными квадратиками на рисунке 5.2.
Входные отсчеты на рисунке 5.5 —это те же значения, которые на рисунке 5.2
представлены белыми квадратиками. Заметьте, что порядок следования входных
отсчетов во времени на рисунке 5.5 изменен на обратный по отношению к поряд­
ку отсчетов на рисунке 5.2! То есть входная последовательность на рисунке 5.5 пе­
ревернута во времени. Эта инверсия порядка следования отсчетов во времени
обусловлена структурой фильтра, показанной на рисунке 5.4.
Повторяя первую часть (5-3) и опуская подстрочный индекс выходного сигна­
ла, можно записать выходной отсчет исходного КИХ-фильтра у(п) в виде
у(п) = [х(п-4) + х (п -3 ) + х (п -2 ) + х (п -1 ) + х ( п ) ] /5 .
(5-4)
Поскольку мы будем исследовать фильтры, коэффициенты которых принима­
ют разные значения, нам необходимо представить их некоторой переменной, на­
пример, h(k). Таким образом, мы можем переписать уравнение для выходного
отсчета усредняющего фильтра (5-4) в более общем виде
у(п) = h (4 )x(n -4 ) + h (3 )x(n -3 ) + h (2 )x(n -2 ) + h (1 )x(n -1 ) + h(0)x(n) =
4
= 2 h (k )x (n -k ),
k-o
/ 5.5ч
где все коэффициенты h(0) —h(4) равны 1/5. Выражение (5-5) представляет со­
бой компактный способ описания структуры фильтра, показанной на рисунке 5.4
и процесса вычисления, иллюстрируемого рисунком 5.5.
170
Гпава 5. Фильтры с импульсной характеристикой конечной длины
О
D
(а)
□
—
Первый входной отсчет, х(0)
/
D D П
j ^
^
| ^ Р
_
С умм а первы х пяти
произведений
*
Вычислить у(4)
——*— *—*—■
/
1 1--
С тационарны е
*
*
*
*
коэф ф ициенты
--------- 1---------------------—
4•
п
Выходной С И Г Н Э Д у(п)
*
□
□
С умм а вторы х пяти
произведении
g
■
=£>
м фж ж ж
. *
л ' I ------- —
о
°
4 5
п
Выходной сигнад у(п)
ж
°
□ о □
*
(с)
□
Вычислить у(6)
о
ж ж жж ж
0
2
п
□
'4
4
5
6
п
Выходной сигнад у(п)
□
*
□ о
*
ж
^
□
Вычислить у(7)
Ж
ш
ш
*
*
ж
4
5
п
6 7
Выходной сигнад у{п)
Пятый входной отсчет, х(4)
Q
°°
*
0
Рис. 5 .5 .
*
п
° □К,□ О_ О
*
2
*
*М мII
/
_ _
□ Вычислить у(8)
О
■
w
4
4 5 6
7
8
п
Выходной сигнад у(п)
Свертка в усредняющем фильтре: (а) первые пять входных отсчетов, вы­
ровненные относительно неподвижных коэффициентов фильтра, индекс
п = 4; (Ь) сдвиг входных отсчетов вправо, индекс п = 5; (с) индекс п = 6 ; (d)
индекс п = 7; (е) индекс п = 8
Сделаем еще одни шаг вперед и запишем я-й отсчет КИХ-фильтра с М ответв­
лениями:
М-1
у(п ) = 2 А ( % ( й 4 ) ,
k=o
( 5 -6 )
v ’
Итак, мы получили то, что хотели. Выражение (5-6) и есть печально извест­
ное уравнение свертки в приложении к цифровым КИХ-фильтрам. Начинаю­
щие в области цифровой обработки сигналов часто испытываю трудности в
усвоении понятия свертки. Эти трудности совсем не обязательны. Уравнение
171
5.2. Свертка в КИХ-фильтрах
(5-6) представляет собой просто некоторое количество умножений с последую­
щим суммированием произведений. В действительности процесс достаточно
прост. Мы просто инвертируем порядок следования отсчетов входной последова­
тельности и сдвигаем инвертированную последовательность относительно коэф­
фициентов фильтра, как показано на рисунке 5.5. Для каждого нового входного
отсчета мы суммируем произведения и получаем выходной отсчет.
Задержимся на минуту и введем новое понятие, которое важно хорошо усво­
ить — импульсную характеристику. Импульсная характеристика фильтра — это
именно то, что значит ее название, это выходная последовательность фильтра во
временной области при подаче на вход фильтра единственного отсчета, равного
единице (единичного импульса), которому предшествуют и за которым следуют
нулевые отсчеты. Рисунок 5.6 иллюстрирует это понятие точно таким же образом,
как рисунок 5.5 иллюстрирует получение выходной последовательности фильтра.
Левая часть рисунка 5.6 показывает соответствие коэффициентов фильтра, чер­
ных квадратиков, отсчетам входного импульса, отмеченным белыми (пустыми)
квадратиками. На рисунках 5.6 (а) —5.6 (е) мы сдвигаем входные отсчеты вправо
и на каждом шаге вычисляем выходной отсчет фильтра с помощью выражения
(5-4). Выходные отсчеты в правой части рисунка 5.6 представляют собой импуль­
сную характеристику фильтра. Обратите внимание на важную особенность: им­
пульсная характеристика КИХ-фильтра идентична послёдовательности пяти
коэффициентов. По этой причине термины коэффициенты КИХ-фильтра и им­
пульсная характеристика являются синонимами. Следовательно, когда кто-то
говорит об импульсной характеристике некоторого КИХ-фильтра, он также гово­
рит и о его коэффициентах.
Возвращаясь к усредняющему фильтру, вспомним, что все коэффициенты,
или отсчеты импульсной характеристики, h(0) — h(4) равны 1/5. Оказывается,
качество нашего фильтра можно улучшить, если использовать неравные значе­
ния коэффициентов. Под качеством фильтра мы понимаем то, насколько хорошо
фильтр пропускает требуемые сигналы и насколько хорошо он подавляет неже­
лательные сигналы. Мы оцениваем качество фильтра по форме его частотной ха­
рактеристики, которую мы получаем посредством использования свойства
свертки линейных систем. Для описания этого понятия повторим (5-6), исполь­
зуя сокращенную запись
у(п) = h(k) * х(п) ,
(5-7)
где символ * обозначает свертку. (Формула 5-7 читается так: «у от п равно свертке
к от Ии х от п».) Свойство свертки в приложении к КИХ-фильтрам формулирует­
ся следующим образом: ДПФ свертки импульсной характеристики фильтра и
входной последовательности равно произведению спектра входной последовате­
льности и ДПФ импульсной характеристики. Идея, которую мы стараемся доне­
сти до вас, состоит в том, что, если две последовательности во временной области
к(к) и х(п) имеют ДПФ Щ т) и Х(т) соответственно, то ДПФ последовательно­
с т и ^ « ) = 1г(к) * х(п) будет равно Н(т) • Х(т). Формулируя более компактно, мы
представляем это утверждение в форме выражения
у(п) = h(k) * х(п) <
ДПФ
ОДПФ
* Щ т) • Х(т )
(5-8)
172
Гпава 5. Фильтры с импульсной характеристикой конечной длины
Импульсный
входной сигнал
1□
(а)
я
ж
я
Вычислить у(4)
О
я
Сумма первых пяти
произведений
Стационарные
коэффициенты
4
п
Импульсная характеристика, у(п)
Сумма вторых пяти
произведений
1□
(Ь)
>
Вычислить у(5)
---D—□—D-Dж
■ ж
я
1□
О
Вычислить у(6)
() —
О—Q-Q—□ -—О—
“
Вычислить у(7)
D —О—О—Q-
1
( Є)
—О — О —
*
я
ж
4 5 6
п
Импульсная характеристика, у(п)
^
(d)- О —!□ —□ —□
4 5
п
Импульсная характеристика, у{п)
*
Ж
4 5 6 7
л
Импульсная характеристика, у(п)
п
Вычислить у(8)
□ ------------D - 0 - D — О -
*
*
*
«О
4 5 6
7
8
п
Импульсная характеристика, у{п)
Рис. 5 .6 .
Свертка коэффициентов фильтра и входного импульса для получения
импульсной характеристики фильтра: (а) единичный отсчет импульса
выровнен с первым коэффициентом фильтра, индекс /7 = 4; (Ь) импульс
сдвинут вправо и индекс п = 5; (с) индекс п = 6; (d) индекс п = 7; (е) индекс
п=8
Здесь ОД ПФ обозначает обратное Д ПФ, и (5-8) показывает, что две последовате­
льности, образованные в результате выполнения операций h(k)*x(n) и Щтп) •X(jri),
связаны парой преобразований Фурье. Таким образом, вычисляя ДПФ от сверт­
ки h(k)*x(n), мы получаем произведение Н(т) •Х(т), т. е. спектр выходного сиг­
нала нашего фильтра Y(m). Аналогично, мы можем получить свертку h(k)*x(n),
вычисляя обратное ДПФ произведения Н(т) •Х(т). Из (5-8) можно сделать важ­
ное заключение о том, что свертка во временной области эквивалентна умноже­
нию в частотной области. Чтобы помочь вам понять этот принцип, на рисунке 5.7
наглядно представлено соотношение между сверткой во временной области и
произведением в частотной области. Операция свертки для линейных систем об­
суждается подробнее в разделе 5.9. Мы настоятельно рекомендуем начинающему
читателю просмотреть этот материал, чтобы получить общее представление о
том, как и когда операция сверки может быть использована для анализа цифро­
вых фильтров.
Выражение (5-8) и соотношения на рисунке 5.7 подсказывают нам, что необходи­
мо сделать, чтобы получить частотную характеристику некоторого КИХ-фильтра.
Произведение Х (т )9Н(т) — это ДПФ выходного сигнала фильтра. Поскольку
5.2. Свертка в КИХ-фильтрах
173
Х (т ) является ДПФ входной последовательности, отсюда следует, что частотная
характеристика фильтра есть Щт), ДПФ импульсной характеристики фильтра
h(k)\ Возвращаясь опять к нашей задаче, мы можем определить частотную харак­
теристику усредняющего фильтра, вычислив ДПФ последовательности коэффи­
циентов фильтра (импульсной характеристики) в (5-4). Если мы возьмем пять
коэффициентов h(k), равных 1/5, и дополним их 59 нулями, мы получим последо­
вательность, изображенную на рисунке 5.8 (а). Выполнив 64-точеное ДПФ этой
последовательности и пронормировав модули ДПФ, мы получаем амплитуд­
но-частотную характеристику .фильтра \Н(т)\, показанную на рисунке 5.8 (Ь), и
фазо-частотную характеристику, показанную на рисунке 5.8 (с)2. Мы видим, что
Н(т) —наша старая знакомая, функция sin (x )/r из раздела 3.13.
Рис. 5 .7 .
Соотношения свертки в приложении к цифровым КИХ-фильтрам
Теперь установим связь отсчетов дискретной частотной характеристики, по­
казанной на рисунках 5.8 (Ь) и 5.8 (с), с физической размерностью частоты диск­
ретизации f s. Из раздела 3.5 и нашего опыта манипуляций с ДПФ мы знаем, что
отсчет т = N/2 =32 в этом случае соответствует частоте заворота, равной половине
частоты дискретизации, f s /2. Учитывая это, мы можем преобразовать частотную
Здесь мы говорим «импульсная характеристика» вместо «коэффиценты», потому что
эта концепция применима также и к БИХ-фильтрам. Частотная характеристика БИХфильтра также равна ДПФ импульсной характеристики.
2 Использовать здесь именно 64-точечное ДПФ совсем не обязательно. Мы могли допол­
нить импульсную характеристику нулям до 16 или 32 отсчетов. Мы выбрали 64 отсчета,
чтобы обеспечить разрешение по частоте, которое позволяет нам получить достаточно
гладкую форму характеристики на рисунке 5.8 (Ь). Вспомните: чем больше отсчетов ис­
пользуется для БПФ, тем выше разрешение по частоте —не так ли?
174
Гпава 5. Фильтры с импульсной характеристикой конечной длины
ось рисунка 5.8 в частотную ось рисунка 5.9. Заметим, что на рисунке 5.9 (а) АЧХ
фильтра, конечно же, периодична в частотной области, и период повторения ра­
вен частоте дискретизации/5. Поскольку нас в первую очередь интересует частот­
ная характеристика фильтра в диапазоне частот от 0 до половины частоты
дискретизации, рисунок 5.9 (с) показывает этот диапазон в увеличенном масшта­
бе, чем подтверждает, что операция усреднения ведет себя как фильтр нижних ча­
стот. Это довольно плохой Ф Н Ч по сравнению с идеальным, характеристика
которого показана на рисунке 5.9 (с) штриховой линией, но наш усредняющий
фильтр будет ослаблять высокочастотные составляющие входного сигнала по
сравнению с низкочастотными составляющими.
0.2
0.1
(а)
0
■■
0 1
11
13
15
17
59
61
63
к
4 \Н(т)\
1
0.8 ■■
0.6
(Ь)
-•
0.4 ■■
0.2
0
■■
**
*
1
■■
7м* ■■
|| |П | И | Н | « 1 | М
И » ♦ !*
I I 1 1 1111?111111111 111
3 6
9 12 15 18 21 24 27 ЗО 33 36 39 42 45 48 51 54 57 60 63 т
«0("О
180
135
90
45
(С)
0
-45
1 1 | н 1 1 ff*-1-!*» ч
б
9 12 15
п м і н 111 {»■; н т -|н | Hf+5%i і і ц іі|і ц ії |
24 27 30
39 42 45
V
*
54 57 60 63
т
-90
-135
-180
Рис. 5 .8 .
Усредняющий КИХ-фильтр: (а) последовательность коэффициентов фи­
льтра h(k), дополненная нулями; (Ь) нормированная дискретная АЧХ
| Н(т) |; (с) ФЧХ в градусах
Это можно продемонстрировать на примере. Предположим, что мы подаем на
вход усредняющего фильтра низкочастотную синусоиду, показанную белыми квад­
ратиками на рисунке 5.10 (а), при этом частота синусоиды равна f s/32, а амплитуда
равна 1. Выходной сигнал в этом случае представляет собой синусоиду частотой
f s /32, амплитуда которой уменьшена до 0.96, при этом выходная синусоида оказы­
вается задержанной по фазе на 22.5°. Далее, если мы подадим на вход фильтра сину­
соиду с более высокой частотой, равной 3fs /32, как показано на рисунке 5.10 (Ь),
выходной сигнал фильтра будет синусоидой частотой 3fs /32, амплитуда которой
5.2. Свертка в КИХ-фильтрах
175
уменьшена еще больше, до 0.69. Кроме того, выходной сигнал на рисунке 5.10 (Ь)
имеет еще больший фазовый сдвиг, равный 67.5°. Хотя значения амплитуд и фаз
выходных сигналов на рисунке 5.10 были измерены при реализации КИХ-фильтра
с 5 ответвлениями, обрабатывающего входные синусоидальные сигналы, мы могли
бы получить их прямо по рисункам 5.8 (а) и 5.8 (Ь). Здесь мы хотим подчеркнуть,
что для того, чтобы узнать, какова частотная характеристика фильтра, нам нет не­
обходимости реализовать его и подавать на его вход синусоиды разных частот. Что­
бы получить частотную характеристику КИХ-фильтра, нам достаточно вычислить
ДПФ последовательности его коэффициентов (его импульсной характеристики),
как мы делали для получения характеристик, приведенных на рисунке 5.8.
Рис. 5 .9 .
Частотная характеристика усредняющего КИХ-фильтра в виде непре­
рывных кривых: (а) нормированная АЧХ \Н(т)\ш
, (Ь) фЧХ в градусах;
(с) АЧХ в диапазоне частот от 0 Гц до половины частоты дискретизации,
fs /2 r u
‘
На рисунке 5.11 показан другой способ оценки качества фильтра. Здесь свет­
ло-серой линией показана АЧХ фильтра, \Н(т) |, а темно-серой линией показан
|Х (т)|, амплитудный спектр входного сигнала (обозначенного белыми квадрати­
ками на рисунке 5.2). Черная линия изображает амплитудный спектр выходного
сигнала, который на рисунке 5.2 показан черными квадратиками. Таким образом,
на рисунке 5.11 спектр выходного сигнала получается как произведение графи­
ка характеристики фильтра, показанной светло-серой линией, на темно-серый
176
Гпава 5. Фильтры с импульсной характеристикой конечной длины
график спектра входного сигнала, или \Х(т) • Н(т) |. Мы снова можем убедиться в
том, что усредняющий фильтр действительно ослабляет высокочастотные со­
ставляющие входного сигнала.
Рис. 5 .1 0 . Входные и выходные последовательности усредняющего КИХ-фильтра:
(а) при подаче на вход синусоиды частотой 13/32\ (Ь) при подаче на вход
синусоиды частотой 3ів/32
Остановимся на минуту, чтобы приведенные сведения улеглись в памяти. Мы
рассмотрели пример с усредняющим фильтром и в результате установили, что:
□
КИХ-фильтры выполняют операцию свертки, суммируя произведения
отсчетов сдвинутой входной последовательности на коэффициенты
фильтра;
□
выходная последовательность КИХ-фильтра равна свертке входной
последовательности с импульсной характеристикой (последователь­
ностью коэффициентов) фильтра;
□
частотная характеристика КИХ-фильтра представляет собой ДПФ им­
пульсной характеристики фильтра;
□
спектр выходного сигнала КИХ-фильтра представляет собой произве­
дение спектра входного сигнала и частотной характеристики фильтра;
□
свертка во временной области и произведение в частотной области свя­
заны парой преобразований Фурье.
А теперь начинается самое интересное. Изменим значения пяти коэффициен­
тов фильтра, чтобы модифицировать частотную характеристику нашего Ф НЧ с
пятью ответвлениями. На рисунке 5.12 (а) показаны исходные пять коэффициен­
тов и еще два произвольных набора из пяти коэффициентов каждый. На рисун­
ке 5.12 (Ь) сравниваются амплитудно-частотные характеристики для этих трех
5.2. Свертка в КИХ-фильтрах
177
наборов. Частотные характеристики вычисляются как ДПФ трех наборов коэф­
фициентов, затем строятся графики модуля ДПФ, как мы делали это для получе­
ния графиков на рисунке 5.9 (с). На рисунке 5.12 мы можем заметить три важные
особенности. Во-первых, как мы и ожидали,-разные наборы коэффициентов дают
разные частотные характеристики. Во-вторых, резкие изменения значений сосед­
них коэффициентов, такие как переход от 0.2 к 0 в первом наборе коэффициентов,
вызывают появление пульсаций, или боковых лепестков, частотной характери­
стики. В-третьих, если мы уменьшим эти скачки значений коэффициентов, как в
третьем наборе на рисунке 5.12 (а), мы уменьшим эти пульсации. Однако умень­
шение уровня боковых лепестков приводит к увеличению ширины главного лепе­
стка нашего ФНЧ. (Как мы увидим, это тот же самый эффект, с которым мы
сталкивались при обсуждении окон, используемых с ДПФ, в разделе 3.9.)
Рис. 5 .1 1 . Модуль спектра входной последовательности усредняющего КИХ-фильтра, АЧХ фильтра и модуль спектра выходной последовательности
Чтобы напомнить, как используются коэффициенты фильтра, на рисунке 5.13
показана структура КИХ-фильтра с пятью ответвлениями, использующая третий
набор коэффициентов с рисунка 5.12. Реализация трансверсального КИХ-филь­
тра с постоянными коэффициентами ничуть не сложнее, чем структуры, показан­
ной на рисунке 5.13. Это так просто. Мы можем иметь фильтр с количеством
ответвлений, превышающим 5, но сдвиг входных отсчетов, умножение на постоян­
ные коэффициенты и суммирование остаются неизменными. (Под постоянными
коэффициентами мы понимаем не коэффициенты, имеющие одинаковые значе­
ния, а коэффициенты, значения которых не меняются, или инвариантны, во време­
ни. Существует класс цифровых фильтров, так называемые адаптивные фильтры,
коэффициенты которых периодически изменяются, чтобы подстроиться под изме­
няющиеся параметры входного сигнала. Мы не собираемся обсуждать адаптивные
фильтры в этом вводном курсе, но их описание имеется в литературе [1-5].)
178
Гпава 5. Фильтры с импульсной характеристикой конечной длины
0.2
0.2
(а)
0.1
0.1
-
0.1
■
-■ —■—И-
0
2
4
0
2
4
0
2
4
Рис. 5 .1 2 . Три набора коэффициентов фильтра с пятью ответвлениями: (а) наборы
коэффициентов: 0.2, 0.2, 0.2, 0.2, 0.2; 0.1, 0.2, 0.2, 0.2, 0.1 и 0.04, 0.12,
0.2, 0.12, 0.04;, (Ь) частотные характеристики трех КИХ ФНЧ, использую­
щих эти наборы коэффициентов
Рис. 5 .1 3 . Реализация КИХ ФНЧ с пятью ответвлениями с набором коэффициентов
0.04, 0.12,0.2, 0.12 и 0.04
До сих пор наше описание построения КИХ-фильтров представлялось с точки
зрения аппаратурной реализации. Согласно рисунку 5.13, для вычисления одного
выходного отсчета фильтра необходимо выполнить пять умножений и пять сло­
жений до прихода следующего входного отсчета. В программной реализации
КИХ-фильтра с пятью ответвлениями все входные отсчеты должны быть предва­
рительно записаны в память. Работа процедуры, реализующей программный
фильтр, состоит в том, чтобы выбирать различные сегменты из пяти отсчетов из
массива входных данных х(п), выполнять вычисления, показанные на рисун­
ке 5.13, и запоминать результирующую выходную последовательность у(п) в мас­
сив, расположенный в памяти .
Просматривая литературу, посвященную КИХ-фильтрам, читатель часто будет встре­
чать символ г~ ^ вместо блока задержки на рисунке 5.13. Эквивалентность этих обозна­
чений объясняется в следующей главе при Изучении БИХ-фильтров.
5.3. Проектирование КИХ-фильтра нижних частот
179
Теперь, когда мы в основном понимаем, что представляют из себя КИХ-фильтры, посмотрим, чего можно добиться использованием свыше пяти ответвлений
фильтра, научившись проектировать КИХ-фильтры.
5.3. Проектирование КИХ-фильтра нижних
частот
А теперь, вместо того, чтобы использовать заданный заранее набор коэффици­
ентов КИХ-фильтра и анализировать его частотные характеристики, попробуем
выполнить обратную процедуру и спроектировать свой собственный КИХ-фильтр
нижних частот. Процедура проектирования начинается с задания требуемой час­
тотной характеристики с последующим вычислением коэффициентов фильтра,
которые дают эту характеристику. Существует два наиболее распространенных
метода проектирования КИХ-фильтров: метод окон и так называемый оптимиза­
ционный метод. Рассмотрим их в упомянутом порядке.
5.3 .1 . Метод проектирования с помощью окон
Проектирование КИХ-фильтров методом окон (который также называют ме­
тодом разложения в ряд Фурье) начинается с принятия решения о том, какой
должна быть частотная характеристика проектируемого фильтра нижних частот.
Мы можем начать с рассмотрения непрерывного фильтра нижних частот с последу­
ющим моделированием этого фильтра цифровым фильтром. В качестве исходной
возьмем идеальную непрерывную частотную характеристику Я (Д т. е. характери­
стику, которая равна единице на низких частотах и равна 0 (имеет бесконечное
подавление) на частотах, превышающих некоторую частоту среза, как показано
на рисунке 5.14 (а). Представление этой характеристики # ( /) дискретной частот­
ной характеристикой достаточно очевидно, поскольку идея дискретной частотной
характеристики по существу та же, что и непрерывной частотной характеристи­
ки — при одном важном отличии. Как говорилось в разделах 2.2 и 3.13, дискрет­
ные представления в частотной области всегда периодичны с периодом, равным
частоте дискретизации / 5. Дискретным представлением нашего идеального не­
прерывного фильтра нижних частот Н (/) является периодическая характеристи­
ка Н(т), изображенная на рисунке 5.14(Ь) отсчетами в частотной области.
Есть два способа определения коэффициентов фильтра нижних частот. Пер­
вый способ —аналитический:
1.
Записать выражение для дискретной частотной характеристики Н(т).
2.
Подставить это выражение в формулу обратного ДПФ, чтобы полу­
чить коэффициенты к(к).
3.
Вывести выражение для /г(£), как функции индекса времени &.
180
Гпава 5. Фильтры с импульсной характеристикой конечной длины
Частотная
характеристика
фильтра
(а)
--------- 1
і
-Л.
<
■------ 1------ 1—
t , Н (0
і частота
у / среза
«------ >
fsl 2
V2
— --------1---------- ►
Частота
(f)
I Н (т )
—I----
(Ь) - — I—
т =-N
т = - N12
т =О
т = N12
Hs)
(-У2)
(0 )
(fs/2)
т = N Частота
(т)
(fs)
Интервал от - f /2 до Л /2
Интервал от 0 до Л
Рис. 5 .1 4 . Частотные характеристики фильтра нижних частот: (а) непрерывная час­
тотная характеристика H{f)\ (b) периодическая дискретная частотная ха­
рактеристика Н(т)
Второй способ состоит в том, чтобы задать отсчеты Щ т ) в частотной области,
а затем с помощью программы, реализующей обратное ДПФ, получить коэффи­
циенты КИХ-фильтра. В любом случае нам необходимо задать периодическую
Щ т ) на одном периоде f s Гц. С точки зрения последующих преобразований при
аналитическом вычислении коэффициентов нам удобнее определить Н(т) на ри­
сунке 5.14 (Ь) в диапазоне частот от - f s /2 до / 5 / 2, а при численном вычислении
ОДПФ удобнее задавать Щт) для частот от 0 до f s. Попробуем использовать оба
метода для вычисления коэффициентов фильтра.
При аналитическом вычислении мы можем определить произвольную дискрет­
ную частотную характеристику Н(т), используя N отсчетов на интервале частот от
- f s /2 до f s/2 и задав К единичных отсчетов, соответствующих полосе пропускания
проектируемого фильтра, как показано на рисунке 5.15. Чтобы определить h(k)
аналитически, необходимо взять ОДПФ функции Щт) в следующей форме
Щт)
к
-N12+1
^
m =( К - 1 )/2
m = - (К -1)/2
т
N12
Рис. 5 .1 5 . Частотная характеристика произвольного дискретного КИХ ФНЧ, опре­
деленная в N точках частотной оси в диапазоне частот ^ Гц
N/2
h(k) - { 1 / N ) 'Z H ( m ) e i2nmk/N,
m =-(N/2)+1
(5-9)
где &- временной индекс. Результат преобразования (5-9), полученный в разде­
ле 3.13 как (3-59), мы повторяем здесь в виде
h(k) = (1 /N)[sm(nkK/N)]/[Nsm(7tk/N) ] .
(5-10)
5.3. Проектирование КИХ-фильтра нижних частот
181
Если мы вычислим (5-10) как функцию к, мы получим последовательность, по­
казанную на рисунке 5.16, которая имеет форму классической функции 8т ( х ) /х
Просмотрев материал раздела 3.13, легко заметить, что переход от (5-9) к (5-10)
требует достаточно большого количества аналитических выкладок. На деле такой
большой объем аналитических преобразований, создающих много возможностей
для внесения ошибок, приводит к тому, что разработчики цифровых фильтров
стараются избегать аналитических преобразований выражения (5-9). Они пред­
почитают использовать для вычисления к(к) программы, выполняющие ОДПФ
(в форме обратного БПФ ), так же будем поступать и мы.
Ш
*
И ||
■■■
«***
* *ш*I Ж 0
* * *
/7(/с)
, К
"
* * *м *
*
а . а
*
***ж
* * *' «* *
щ ** * а* * к
ь
Рис. 5 .1 6 . Коэффициенты Ь(к), полученные в результате вычислений по (5-10)
Продемонстрируем проектирование КИХ-фильтра с помощью программного
ОДПФ на примере. Допустим, мы хотим спроектировать КИХ-фильтр, моделиру­
ющий непрерывную частотную характеристику, показанную на рисунке 5.17 (а).
Дискретный вариант частотной характеристики фильтра Н(тп) показан на рисун­
ке 5.17 (Ь), где мы использовали Ы = 32 точки на частотной оси. На рисун­
ке 5.17 (с) приведены отсчеты частотной характеристики в диапазоне от 0 до / 5.
Этот рисунок эквивалентен рисунку 5.27*(Ь), изображающему отсчеты характе­
ристики в диапазоне ~ /3/2 до + /5 /2, но содержит только отсчеты, соответствую­
щие положительным частотам. Итак, мы почти у цели. Использовав 32-точечное
О БП Ф для вычисления 32-точечного обратного Д ПФ последовательности Н(т),
показанной на рисунке 5.17 (с), мы получаем 32 отсчета /г(&), показанных точками
на рисунке 5.18 (а) для диапазона индексов от ^ = -1 5 до к = 16 \ Нам нужно сделать
еще один шаг. Поскольку мы хотим сделать последовательность коэффициентов фи­
льтра симметричной относительно отсчета с наибольшим значением, мы опустим
коэффициент с индексом к= 16 и сдвинем индекс ^ влево, в результате чего получим
требуемую форму к(к) вида 8т(х )/х , как показано на рисунке 5.18 (Ь). Этот сдвиг
индекса ^ не изменяет амплитудно-частотную характеристику КИХ-фильтра.
(Вспомните, что согласно теореме о сдвиге ДП Ф в разделе 3.6 сдвиг во вре­
менной области проявляется в частотной области как линейный фазовый сдвиг
без изменения модуля спектра.) Последовательность на рисунке 5.18 (Ь) и есть
последовательность коэффициентов, которые мы используем в операции сверт­
ки для реализации КИХ ФНЧ.
Здесь важно показать, что, чем больше отсчетов к(к) мы используем в качестве
коэффициентов фильтра, тем ближе наша частотная характеристика к идеальной.
Используем девять центральных отсчетов к(к) и посмотрим, как будет выглядеть при
этом частотная характеристика. АЧХ и в этом случае вычисляется как ДПФ этих де­
вяти отсчетов, как показано в правой части рисунка 5.19 (а). Частотная характери­
стика идеального фильтра для сравнения показана здесь же серой линией. (Чтобы
подробнее показать ее форму, мы начертили \Н(т) \ на рисунке 5.19 (а) сплошной
Если вы хотите использовать этот метод проектирования КИХ-фильтров, но у вас есть
только программа прямого БПФ, в разделе 13.6 вы найдете способ использования ал­
горитма прямого БПФ для вычисления обратного БПФ.
182
Гпава 5. Фильтры с импульсной характеристикой конечной длины
линией, но мы должны помнить, что на самом деле \Н(т)\ есть последовательность
дискретных отсчетов.) Заметьте, что при использовании девяти отсчетов мы
определенно получаем фильтр нижних частот, но он явно далек от идеала. Исполь­
зование большего количества коэффициентов позволяет улучшить ситуацию: на
рисунке 5.19 (Ь) показаны 19 коэффициентов и соответствующая АЧХ, которая
выглядит более похожей на требуемую прямоугольную характеристику. Обратите
внимание на то, что в полосе пропускания хорошо видны флуктуации, или пульса­
ции, частотной характеристики фильтра Н(т). Использование всех 31 отсчетов
последовательности /г(&) дает частотную характеристику, показанную на ри­
сунке 5.19 (с). Частотная характеристика нашего фильтра стала еще лучше
(приблизилась к идеалу), но подозрительные пульсации в полосе пропускания
по-прежнему присутствуют.
Частотная
характеристика
фильтра
(а)
AH(f)
Частота среза
—1--------------1—
- V
•
- f s/8
-fs l4
2
1 п
(Ь)
»
I
і
-15
-12
-8
-4 і
К /4 )
( - У 8)
Н(т) к и
(с)
0
T"" " ""
f s /8
о
ж ж
т
.. І ...... ..
т --------------1— ■■
fs /4
У 2 "
Н(т)
і
і
і
4
8
16
( У 8)
( У 4)
°
(^s /2)
ї
н
4
(fs/8)
8
(fs l4)
12
16
(fsl2)
20
24
(3fs/4)
т
28
і
31
m
(f,)
Рис. 5 .1 7 . Идеальный фильтр нижних частот: (а) непрерывная частотная характе­
ристика H(f); (b) дискретная характеристика Н(т) в диапазоне частот от
- f s /2 до fs 12 Гц; (с) дискретная характеристика Н(т) в диапазоне частот
от 0 до fs Гц
0.219
(а)
«**
Обратное ДПФ Н(т)
,*** -8
-12
* к
шшш ^(к) = сдвинутое обратное ДПФ
м последовательности Н(т)
Рис. 5 .1 8 . Обратное ДПФ дискретной характеристики, показанной на рисунке 5.17(с):
(а) нормальная индексация отсчетов обратного ДПФ; (Ь) симметричная
последовательность коэффициентов, используемая для реализации
КИХ-фильтра с 31 ответвлением
5.3. Проектирование КИХ-фильтра нижних частот
183
Нам важно понять, откуда берутся эти пульсации в полосе пропускания КИХфильтра нижних частот на рисунке 5.19. Вспомним сказанное выше о свертке ко­
эффициентов, или импульсной характеристики, усредняющего фильтра с пятью
ответвлениями с последовательностью входных данных для получения выход­
ного сигнала. Мы установили, что свертка во временной области соответствует
умножению в частотной области, что мы представили символически в (5-8) и
повторяем здесь в виде
ДПФ
к(к) *х(п) <
* Н(т) • Х(т)
(5-11)
ОДПФ
Эта связь между сверткой во временной области и умножением в частотной
области, изображенная на рисунке 5.7, показывает, что, если две последователь­
ности во временной области Н(к) и х(п) имеют ДПФ Н(т) и Х(т ) соответственно,
то ДПФ свертки /г(&) * х(п) будет равно Н(т) • Х(т ). Не существует никаких
ограничений относительно того, что в действительности представляют последо­
вательности к(к) и х(п) в (5-11). В разделе 5.9 мы выясним, что свертка в одной
области эквивалентна умножению в другой области. Это позволяет нам утверж­
дать, что умножение во временной области эквивалентно свертке в частотной об­
ласти или
ДПФ
к{к) • х(п) (
* Щт) *Х(т)
ОДПФ
(5-12 )
\Н(т)\ для ф ильтра с 9 ответвлениями
\Н(т)\ для ф ильтра с 31 ответвлением
Рис. 5 .1 9 . Коэффициенты и частотные характеристики трех фильтров нижних частот:
(а) КИХ-фильтра с 9 ответвлениями; (Ь) КИХ-фильтра с 19 ответвлениями;
(с) частотная характеристика полного фильтра с 31 ответвлением
184
Гпава 5. Фильтры с импульсной характеристикой конечной длины
Теперь мы готовы понять, откуда берутся пульсации АЧХ, заметные на рисун­
ке 5.19.
Переписывая (5-12) и заменяя h ( k ) n x ( n ) последовательностями /г°°(&) и w(k)
соответственно, получаем
ДПФ
hcc(k) • w(k) <__ Г * Я °°(т) * W(m)
(5-13)
ОДПФ
Будем считать, что h°°(k) представляет бесконечно длинную последователь­
ность коэффициентов идеального КИХ-фильтра нижних частот вида sin(.r)/.r, а
w(k) представляет окно, которое мы используем для усечения последовательности
sin(x)/x, как показано на рисунке 5.20. Таким образом, w(k) представляет собой по­
следовательность конечной длины единичных отсчетов, и ее ДПФ есть W(m). Дли­
на w(k) равна количеству коэффициентов, или ответвлений, которые мы намерены
использовать при реализации нашего КИХ ФНЧ. При принятом определении
hx (k) произведение h°°(k)*w(k) представляет собой усеченную последователь­
ность коэффициентов h(k) на рисунках 5.19 (а) и 5.19 (Ь). Следовательно, согласно
(5-13), реальная частотная характеристика КИХ-фильтра Щт) есть свертка
Щт) = Я°°(ш) * W(m)
Ж
■
------ ...............................................
■ ■
Л-------------------щ *
■
-
■,
‘
(5-14)
* Ж hx (k)
■
■
......................................................
■
■
-
,
*■ м...............
' .Д
- . , " .....
Ж
- -
■-
w (k)
п
ш * Н
/7(/с)
*
■
X
М
___________■__________ ■____________
к
Рис. 5 .2 0 . Бесконечная последовательность /7°°(/с), взвешенная окном \м(к) для по­
лучения коэффициентов фильтра А?(/с)
Мы изображаем эту свертку на рисунке 5.21, где для того, чтобы не загромож­
дать картинку, мы показываем Н°°(т) (ДПФ коэффициентов И™(к)) как серый
прямоугольник. Помните, что это в действительности последовательность отсче­
тов с одинаковыми значениями.
Посмотрев на рисунок 5.21 (а) очень внимательно, можно увидеть, почему
все три |Я(ш)| на рисунке 5.19 имеют пульсации в полосе пропускания. Мы мо­
жем рассматривать конкретный отсчет свертки Щт) = Н°°(т)*]У(т) как сумму
произведений Н°°(т) на \\Г(т) для соответствующего сдвига \У(т) по частоте.
Я °°(т) и несдвинутая последовательность \¥(т) показаны на рисунке 5.21 (а.).
185
5.3. Проектирование КИХ-фильтра нижних частот
Если предполагается, что все отсчеты Я°°(ш) равны единице, то значение конкрет­
ного отсчета Щт) является просто суммой отсчетов W(m), которые накладывают­
ся на прямоугольник Н™(т). Следовательно, при сдвиге W(m) на 0 Гц сумма
отсчетов W(m), которые накладываются на прямоугольник Я°°(т) на рисунке 5.21
(а), дает значение Щ т) на частоте 0 Гц. По мере сдвига W(m) вправо, что дает нам
дополнительные значения Щ т) для положительных частот, мы можем видеть, что
сумма положительных и отрицательных отсчетов W(m) под прямоугольником ко­
леблется. Рисунок 5.21 (Ь) показывает, как в процессе сдвига при вычислении свер­
тки появляются пульсации в полосе пропускания Щ т) —сумма положительных и
отрицательных отсчетов W(m), попадающих под прямоугольник Н°°(т), изменяет­
ся при каждом сдвиге функции W(m). Сдвиг W(m) по частоте, показанный на ри­
сунке 5.21 (с), когда вершина главного лепестка W(m) выходит за пределы
прямоугольника Н™(т), соответствует частоте, на которой полоса пропускания на­
чинает переходить в полосу задерживания. Рисунок 5.21 (d) показывает, что при
продолжении сдвига W(m) мы получим пульсации Щ т) за пределами положите­
льной частоты среза1. Кратко итог можно выразить так: пульсации Щт) вызваны
боковыми лепестками W(m).
hf°(m) = ДПФ haj(k)
', Х — "
_1
Щ т ) = ДПФ
прямоугольного w(n)
(а)
*
О
Частота
(Ь)
Частота
(с)
Частота
•
(d)
■
! ■
0 щ*т 1
и**
------ —и».--- .і—. ---------«--- ■----■.--Г-Н
Ä
**
■*'
Частота
Рис. 5 .2 1 . Свертка W(m) * Н°°(т): (a) W(m) и Н“ ( т ) в отсутствие сдвига; (Ь) сдвиг
Щт), порождающий пульсации в полосе пропускания Н(т) на положи­
тельных частотах; (с) сдвиг W(m), приводящий к началу переходной по­
лосы вблизи положительной частоты среза Н(т)\ (d) сдвиг W(m),
вызывающих пульсации за пределами частоты среза Н(т)
1 Если бы мы начали сдвигать W(m) на рисунке 5.21 (Ь) влево, чтобы получить ту часть
Н(пг), которая соответствует отрицательным частотам, мы получили бы зеркальное
отображение части Щт), соответствующей положительным частотам.
186
Гпава 5. Фильтры с импульсной характеристикой конечной длины
Рис. 5 .2 2 . Пульсации в полосе пропускания и переходные полосы: (а) для ФНЧ с 31
ответвлением: (Ь) для ФНЧ с 63 ответвлениями
Рисунок 5.22 помогает ответить на следующий вопрос. Сколько коэффициен­
тов вида sin(x)/x следует использовать (или какой должна быть длительность
w(k)) для получения красивой крутой переходной полосы и устранения пульса­
ций в полосе пропускания Н(т)? Ответ состоит в том, что мы не можем получить
и то, и другое одновременно. Не имеет значения, сколько коэффициентов sin(.r)/.r
(ответвлений фильтра) мы используем, пульсации в полосе пропускания будут
присутствовать всегда. Пока w (k) содержит конечное количество единичных
отсчетов (т. е. прямоугольное окно имеет конечную длительность), W(m) будет
содержать боковые лепестки, а они будут вызывать пульсации в полосе пропус­
кания в результирующей частотной характеристике Н(т). Чтобы показать, что
увеличение количества коэффициентов sin (x )/r не уменьшает размах пульсаций,
мы повторяем график частотной характеристики Ф Н Ч с 31 ответвлением на ри­
сунке 5.22 (а). На рисунке 5.22 (Ь) показана частотная характеристика фильтра в
63 коэффициентами, и пульсации в ней остались. Используя дополнительные ко­
эффициенты фильтра h(k), мы можем сделать переходную полосу более узкой, но
мы не можем устранить пульсации в полосе пропускания. Эти пульсации, извест­
ные как явление Гиббса, проявляются всегда, когда некоторая функция (в данном
случае w(k)), содержащая разрыв, представляется рядом Фурье [6 -8 ]. Никакой
конечный набор синусоид не может изменяться достаточно быстро, чтобы обра­
зовать разрыв. Иначе можно сказать, что явление Гиббса состоит в том, что неза­
висимо от длительности окна w(k), его ДПФ W(m) всегда будет иметь боковые
лепестки. Как показано на рисунке 5.22 (Ь), мы можем использовать больше ко­
эффициентов, увеличив ширину прямоугольного окна w(k), чтобы сделать пере­
ходную полосу уже, но более широкое окно w(k) не только не избавляет нас от
пульсаций, но даже не уменьшает их размах, если w(k),содержит разрывы.
5.3. Проектирование КИХ-фильтра нижних частот
187
5 .3 .2 . Окна в проектировании КИХ-фильтров
Но есть и хорошая новость: мы можем минимизировать пульсации в полосе
пропускания с помощью окон, точно так же, как мы минимизировали утечку
спектра в разделе 3.9. Вот как это делается. На рисунке 5.20 видно, что в результа­
те усечения бесконечной последовательности /г°°(&) путем умножения ее на пря­
моугольное окно т(Ь) получаются коэффициенты /г(к), которым соответствует
частотная характеристика с пульсациями в полосе пропускания. Рисунок 5.21 по­
казывает, что пульсации в полосе пропускания вызваны боковыми лепестками
\У(т), которые, в свою очередь, являются следствием разрывов от нуля до едини­
цы и от единицы до нуля на концах т(к). Если мы будем считать, что т(к) на ри­
сунке 5.20 — прямоугольное окно, то именно разрывы на концах этого окна
являются источником пульсаций в полосе пропускания. Метод проектирования
КИХ-фильтров с помощью окон представляет собой метод уменьшения разры­
вов окна т(к) путем использования окон, отличных от прямоугольного.
Рассмотрим рисунок 5.23, чтобы понять, как можно использовать непрямоуго­
льные окна для проектирования цифровых фильтров с низким уровнем пульса­
ций. Представим себе, что мы заменили прямоугольное окно м(к) на рисунке 5.20
окном Блэкмана, дискретные отсчеты которого определяются формулой 1
т{к) = 0.42 - 0.5со8(2лк/Ы) + 0.08соБ(4лк/Ы) при к=0, 1,2,..., N - 1
(5-15)
Эта ситуация показана для N = 31 на рисунке 5.23 (а), где хю(к) (5-15) выглядит
очень похоже на окно Хэмминга на рисунке 3.17 (а). Окно Блэкмана дает нам 31
коэффициент, значения которых постепенно уменьшаются к концам окна в нижней
части рисунка 5.23 (а). Обратите внимание на два момента, касающихся результиру­
ющей последовательности Щт) на рисунке 5.23 (Ь). Во-первых, хорошая новость.
Пульсации в полосе пропускания существенно уменьшились по сравнению с хо­
рошо заметными пульсациями на рисунке 5.22 (а) —так что окно Блэкмана свою
функцию выполнило. Во-вторых, за уменьшение пульсаций в полосе пропуска­
ния мы заплатили расширением переходной полосы Щт). Мы можем повысить
крутизну характеристики в переходной полосе, увеличив количество ответвлений
КИХ-фильтра. Рисунок 5.23 (с) демонстрирует улучшенную частотную характе­
ристику при использовании 63 коэффициентов. Следовательно, использование не­
прямоугольных окон уменьшает уровень пульсаций в полосе пропускания за счет
более плавного перехода от полосы пропускания к полосе подавления.
1 Как мы упоминали в разделе 3.9, точные выражения для оконных функций зависят от
диапазона изменения индекса к. Если мы примем диапазон изменения индекса, напри­
мер, равным -N /2 < к< N/2, то выражение для окна Блэкмана изменится и будет вы­
глядеть как т(к) = 0.42 + 05со$(2як/Щ + 0.08со$(4жк/К).
188
Гпава 5. Фильтры с импульсной характеристикой конечной длины
а ш /7°°(/()
Окно Блэкмана
-|
(а)
❖
№
Переходная полоса
(Ь)
Переходная полоса
\Н(т)\
(С)
(
----------------------- и
Л /8
-> |
|< -
\
^V
8
.
Частота
Рис. 5.2 3 . Коэффициенты и частотная характеристика КИХ-фильтра с 31 ответвле­
нием при использовании окна Блэкмана: (а) вычисление взвешенных ко­
эффициентов фильтра Л(/с); (Ь) частотная характеристика с пониженным
уровнем пульсаций; (с) частотная характеристика фильтра с 63 ответв­
лениями и пониженным уровнем пульсаций
Графическое сравнение частотных характеристик для прямоугольного окна и
окна Блэкмана выполняется на рисунке 5.24. (Кривые на рисунке 5.24 были полу­
чены для окон, содержащих 32 отсчета, к которым были добавлены 480 нулей с
последующим вычислением 512-точечного ДПФ.) Амплитуды боковых лепест­
ков спектра окна Блэкмана | \¥(т) | слишком малы, чтобы их можно было увидеть
в линейном масштабе. Мы можем рассмотреть эти боковые лепестки в деталях,
построив оба графика частотных характеристик в логарифмическом масштабе и
189
5.3. Проектирование КИХ-фильтра нижних частот
пронормировав графики относительно максимальных значений главных лепест­
ков спектров, так что эти значения в логарифмическом масштабе равны 0 дБ. Для
заданного окна мы можем получить логарифмический спектр WdB(m) с помощью
выражения
WdB(m) = 2° • log10( | W(m) \ / | W (ö)|).
(5-16)
(Значение |W(ß) | в (5-16) представляет собой модуль вершины главного лепест­
ка W(m), когда m = 0.) Рисунок 5.24 (Ь) демонстрирует существенно уменьшенный
уровень боковых лепестков окна Блэкмана, а также то, что ширина главного лепе­
стка почти в три раза больше, чем ширина главного лепестка прямоугольного окна.
о
-10
Блэкман (штриховая)
. .
\ /
-,\
/ Прямоугольное (пунктирная)
-20
-30
.....................................
;\
■: \
\
(Ь)
\
-40
\
■„■
■\1 tн ........ :........
и
1:
!
■
-50
-60
\\ I
jLL
-70
f/8
\: /
V,
f/4
\: /
sil__ і
f 12 Частота
Рис. 5 .2 4 . Сравнение спектров прямоугольного окна и окна Блэкмана: (а) | И/(т)| в
линейном масштабе; (Ь) графики в нормированном логарифмическом
масштабе ]/\/С
]В(т)
Мы, конечно же, могли бы использовать для расчета нашего КИХ Ф НЧ любое
другое окно из рассмотренных в разделе 3.9. Поэтому данный метод проектирова­
ния фильтров называется методом окон. Мы выбираем окно и умножаем на него
функцию /г°°(&) вида 8т ( х ) / х , показанную на рисунке 5.23 (а), в результате чего
получаем окончательный набор коэффициентов фильтра /г(&). Это так просто.
190
Гпава 5. Фильтры с импульсной характеристикой конечной длины
Прежде чем закончить описание метода окон, рассмотрим две новые оконные
функции.
Хотя окно Блэкмана и другие окна, описанные в разделе 3.9, полезны для
проектирования КИХ-фильтров, при их использовании доступно мало возмож­
ностей для регулирования частотных характеристик, т. е. мы можем только вы­
бирать тип окна и довольствоваться той частотной характеристикой, которая
при этом получается. Наверное, было бы очень неплохо иметь возможность гиб­
кого выбора вариантов компромисса между шириной главного лепестка и уров­
нем боковых лепестков. К счастью, существуют два популярных окна, которые
предоставляют такую возможность. Они называются окном Чебышева и окном
Кайзера и определяются следующими внушительными выражениями:
Окно Чебышева -*
(его также называют
окном Дольфа-
т(к) — ІУ-точечное ОДПФ последовательности
,
с о з ^ с о з - ^ * с о 5(ят/ЛГ)]}/
Чебышева)
/с о 8Ь[А^»со8Ь_^ (а )],
где
(5-17)
а =со8Ь[(1/І\Г)со$\і~1(10у)]
и
772 = О, 1,2,..., М - 1
Окно Кайзера -»
(его называют
также окном
Кайзера-Бесселя)
*(4) - 10ф V I М ( * - Р ) /Р ] 2) > / Ш ,
(5-18)
7
ПРИ к = 0, 1,2,..., N - 1 и р = (А!-1 )/2
Два типовых окна Чебышева и Кайзера и их амплитудные спектры показаны
на рисунке 5.25. Для сравнения там же приведены прямоугольное окно и окно
Блэкмана. (Графики на рисунке 5.25 (Ь) были получены для окон, рассчитанных в
32 точках с добавлением 480 нулей и последующим 512-точечным ДПФ.)
Первоначально выражение (5-17) было выведено в теории антенных решеток
с использованием полиномов Чебышева [9-11]. Выражение (5-18) происходит из
выполненной Кайзером аппроксимации вытянутых сфероидальных функций с
помощью функций Бесселя нулевого порядки [12-13]. Пусть вас не смущает
сложность выражений (5-17) и (5-18) —в данный момент нас не интересуют мате­
матические подробности их вывода. Нам только нужно убедиться в том, что
управляющие параметры у и уЗ в (5-17) и (5-18) дают возможность регулировать
ширину главного лепестка окна и уровень его боковых лепестков.
5.3. Проектирование КИХ-фильтра нижних частот
191
Рис. 5 .2 5 . Типовые оконные функции, используемые для проектирования ЦФ: (а)
отсчеты окон во временной области; (Ь) модули спектров окон в дБ
Посмотрим, как выглядит эта зависимость в случае окна Чебышева, задав че­
тыре разных значения / и построив их спектры на рисунке 5.26. Разработчики ЦФ
для расчета значений отсчетов окна Чебышева обычно используют специальные
программы. Коммерческие пакеты программ ЦОС позволяют пользователю за­
дать три параметра: вид оконной функции (в данном случае Чебышева), требуе­
мое количество коэффициентов (количество ответвлений КИХ-фильтра) и
значение у. Задание разных значений у дает нам возможность установить требуе­
мый уровень боковых лепестков и посмотреть, как это влияет на ширину главного
лепестка, в то время как при использовании окна Блэкмана и других окон, рас­
смотренных в разделе 3.9, мы лишены такой возможности. Уровень боковых ле­
пестков окна Чебышева в децибелах составляет
АиепаеЬ = ~2°У
(5-19)
Следовательно, если мы хотим, например, чтобы уровень боковых лепестков не
превышал -60 дБ по отношению к главному лепестку, мы в соответствии с (5-19)
задаем у =3.0 и запускаем программу, генерирующую отсчеты окна Чебышева1.
Кстати, некоторые пакеты программ ЦОС требуют задания Аиепс^еЬ вместо у. В этом
случае (5-19) нам не нужно вообще.
192
Гпава 5. Фильтры с импульсной характеристикой конечной длины
Рис. 5 .2 6 . Окно Чебышева при разных значениях у: (а) отсчеты окна во временной
области; (Ь) модуль спектра в дБ
То же относится и к окну Кайзера, показанному на рисунке 5.27. Коммерче­
ские пакеты программ позволяют нам задавать значение/3 в (5-18) и выдают соот­
ветствующие отсчеты окна. Графики на рисунке 5.27 (Ь), полученные для окна
Кайзера, содержащего 32 отсчета, показывают, что мы можем устанавливать тре­
буемый уровень боковых лепестков и проследить его влияние на ширину главно­
го лепестка.
Какое окно лучше использовать —Чебышева или Кайзера? Это зависит от ре­
шаемой задачи. Возвращаясь к рисунку 5.25 (Ь), заметим, что в отличие от боко­
вых лепестков окна Чебышева, имеющих постоянный уровень, боковые лепестки
окна Кайзера уменьшаются с ростом частоты. Однако вблизи главного лепестка
боковые лепестки окна Кайзера выше боковых лепестков окна Чебышева. Наша
главная задача —уменьшить уровень боковых лепестков, насколько это возможно
без слишком сильного расширения главного лепестка. Разработчики Ц Ф обычно
экспериментируют с разными значениями у и для окон Чебышева и Кайзера,
стараясь получить оптимальную форму М^5 ( т ) для конкретного приложения.
(С этой точки зрения низкий уровень боковых лепестков окна Блэкмана во многих
5.4. Проектирование полосовых КИХ-фильтров
193
приложениях перевешивает ширину его главного лепестка.) Отдельные разновид­
ности окон имеют свои собственные преимущества и недостатки с точки зрения
проектирования КИХ-фильтров. Независимо от того, какое непрямоугольное окно
используется, оно всегда уменьшает пульсации АЧХ КИХ-фильтра в полосе про­
пускания по сравнению с прямоугольным окном. Заинтересованный читатель мо­
жет найти очень подробное описание окон в работе [14].
Рис. 5 .2 7 . Окна Кайзера для разных значений р: (а) отсчеты окна во временной об­
ласти; (Ь) логарифмический амплитудный спектр в дБ
5.4. Проектирование полосовых
КИХ-фильтров
В качестве первого шага проектирования полосовых КИХ-фильтров можно
использовать проектирование Ф Н Ч методом окон. Допустим, нам необходимо
рассчитать КИХ-фильтр с 31 ответвлением и с АЧХ, показанной на рисун­
ке 5.22 (а), центр которой вместо 0 Гц приходится на/ 5/4 Гц. Если мы обозначим
194
Гпава 5. Фильтры с импульсной характеристикой конечной длины
коэффициенты КИХ Ф Н Ч как hi0(k), наша задача сводится к вычислению коэф­
фициентов полосового фильтра пЬр(к). Как показано на рисунке 5.28, мы можем
сдвинуть частотную характеристику Я ^ (т ), умножив коэффициенты hip(k) на
синусоиду частотой f s/ 4 Гц. Эта синусоида представлена на рисунке 5.28 (а) по­
следовательностью sshiß(k), отсчеты которой получены путем дискретизации
синусоиды с частотой четыре отсчета на период. В результате получаем коэффи­
циенты hbp(k) полосового фильтра
hbP(k) = hiP(k) • sshift(k) ,
( 5 . 20 )
частотная характеристика которого \Hbp(m)\ показана на рисунке 5.28 (Ь) сплош­
ной черной линией. Уровень АЧХ \Hbp(m)\ вдвое ниже уровня исходной АЧХ
\Н1р(т) |, потому что, когда sshij t(k) соответствует частоте f s / 4 половина значений
коэффициентов hbp(k) оказываются равными нулю. Данный эффект имеет важ­
ное практическое следствие. Это значит, что, когда мы реализуем полосовой
КИХ-фильтр с iV-ответвлениями, центральная частота АЧХ которого равна f s /4 Гц,
нам необходимо выполнить только N /2 умножений на каждый выходной отсчет.
(Нет необходимости умножать входной о'гсчет x(n-k) на 0 перед суммированием
произведений в (5-6) и на рисунке 5.13, не правда ли? Мы просто не выполняем
такие умножения вообще.) Конечно, когда центральная частота полосового КИХфильтра отлична от f s /4, мы вынуждены выполнять все N умножений на каждый
выходной отсчет КИХ-фильтра.
Обратите здесь внимание на то, что коэффициенты Ф Н Ч h[p(k) на рисун­
ке 5.28 (а) не были взвешены каким-нибудь окном. На практике следовало бы в
(5-20) использовать взвешенные коэффициенты h[p(k), чтобы уменьшить пульса­
ции в полосе пропускания. Если бы мы хотели получить центральную частоту
АЧХ полосового фильтра, равную другой частоте вместо f s /4, нам просто нужно
было бы модифицировать sshiß (k ) так, чтобы она представляла дискретные отсче­
ты синусоиды, частота которой равна требуемой центральной частоте. Эту новую
последовательность sshij t(k) следует использовать затем в (5-20) для получения
новых коэффициентов hbp(k).
5.5. Проектирование КИХ-фильтров
верхних частот
Двигаясь дальше, мы можем использовать метод проектирования полосовых
КИХ-фильтров для проектирования КИХ-фильтров верхних частот (ФВЧ). Что­
бы получить коэффициенты ФВЧ, нам необходимо только изменить сдвигающую
последовательность sshij t(k) так, чтобы она представляла собой дискретизованную
синусоиду частотой f s /2. Этот процесс показан на рисунке 5-29. Коэффициенты
результирующего КИХ ФВЧ hhp(k) равны
hhp(k) = hlp(k) • sshlft(k) = h[p(k) • (1 ,-1 , 1,-1, 1 ,- 1 um. d .),
(5-21)
5.5. Проектирование КИХ-фильтров верхних частот
195
а АЧХ фильтра \Н^р(т)\ показана на рисунке 5.29 (Ь) черной линией. Поскольку
$5^ ( к ) на рисунке 5.29 (а) содержит единицы чередующегося знака, мы видим,
что к^р(к) получается из 1г[р(к) простым изменением знака каждого второго коэф­
фициента на противоположный.
Л , (к)
(к)
(а)
О
Исходная характеристика
ФНЧ |Н|р(т)|
льр (к)
\ Н Ьр (™ )1
(Ь)
V2
У2
Частота
Рис. 5 .2 8 . Полосовой фильтр, центральная частота АЧХ которого равна ^ /4: (а) ге­
нерация коэффициентов ЬЬр(к) для 31 ответвления: (Ь) АЧХ | Н (т) |
Ьр
В отличие от \НЬр(т)\ на рисунке 5.28 (Ь), характеристика \Нкр{т)\ на рисунке
5.29 (Ь) имеет тот же уровень, что и исходная \Н1р(т)\.
Здесь тоже обратите внимание на то, что коэффициенты Ф Н Ч Ь ^ к ) на ри­
сунке 5.29 (а) не были модифицированы посредством окна. На практике, мы бы
использовали взвешенные коэффициенты Иір(к) для уменьшения неравномер­
ности АЧХ в полосе пропускания перед использованием (5-21).
196
Гпава 5. Фильтры с импульсной характеристикой конечной длины
(а)
/»*(*)
Рис. 5 .2 9 . Фильтр верхних частот, АЧХ которого центрирована относительно частоты
^/2: (а) генерация 31 коэффициента фильтра ЬЬр{к)\ (Ь) АЧХ \НЬр(т)\
<■ Полоса ->■
пропускания
К ------------------- Полоса ------------------задерживания
Рис. 5 .3 0 . Задание требуемой АЧХ КИХ ФНЧ при проектировании методом замен
Ремеза
5.6. Проектирование КИХ-фильтров методом замен Ремеза
197
5.6. Проектирование КИХ-фильтров
методом замен Ремеза
Познакомимся с еще одним методом проектирования КИХ-фильтров, который
широко используется на практике. Метод замен Ремеза (который также называют
методом Паркса-Маклеллана или оптимальным методом) —это популярный ме­
тод, используемый для проектирования высококачественных КИХ-фильтров.
Чтобы использовать этот метод, мы должны изобразить требуемую АЧХ Н^тп),
подобную той, которая показана на рисунке 5.30.
Мы должны задать требуемую границу полосы пропускания (частоту среза)
fpassи частоту, на которой начинается полоса задерживания, f stop. Кроме того, мы
должны задать значения переменных бр и <3S, которые задают требуемые неравно­
мерность АЧХ в полосе пропускания и подавление в полосе задерживания. Не­
равномерности АЧХ в полосах пропускания и задерживания в децибелах связаны
с бр и (35 выражениями [15]
Пульсации в полосе пропускания = 20* log10( 1 + б р),
( 5 -2 2 )
Пульсации в полосе задерживания = -2 0 • log10(^s)-
(5-22')
(Некоторые ранние журнальные статьи, описывающие метод Ремеза, для
определения пульсаций в полосе пропускания в децибелах использовали другое
допустимое выражение -20*\og^(dp). Но сегодня наиболее часто используется
(5-22).) Затем мы вводим эти параметры в компьютерную программу, которая
выдает N коэффициентов фильтра h(k), при этом N задает минимальное количе­
ство ответвлений, необходимое для получения заданной АЧХ.
С другой стороны, некоторые программы, реализующие метод Ремеза, предпо­
лагают, что мы стремимся сделать бр и как можно меньше и требуют задания то­
лько требуемой АЧХ H^ni), пример которой показан на рисунке 5.31 черными
точками. Программа сама определяет незаданные значения (серые точки на гра­
фике) HJ^m) так, чтобы минимизировать отклонение АЧХ фильтра от требуемой
характеристики при минимальных значениях б и 6S. Разработчик фильтра имеет
возможность определить некоторые значения Н^тп) в переходной полосе, и про­
грамма сама рассчитывает незаданные значения Н ^ т ) в переходной полосе. В
этой версии алгоритма Ремеза наибольшее значение приобретает способ, кото­
рым мы определяем переходную полосу. Мы хотим минимизировать ее ширину и
в то же время минимизировать пульсации АЧХ в полосах пропускания и задер­
живания. Таким образом, точный способ проектирования КИХ-фильтра с помо­
щью метода замен Ремеза зависит от используемой программы проектирования
фильтров. Поскольку математика, используемая методом замен Ремеза, доста­
точно сложна, мы не будем касаться ее здесь [16-20]. Просто запомните, что метод
замен Ремеза дает фильтры, похожие на фильтры Чебышева, АЧХ которых настоль­
ко приближена к требуемой характеристике HJjri), насколько это возможно при
заданном количестве ответвлений.
Гпава 5. Фильтры с импульсной характеристикой конечной длины
198
.4
HJm )
О
О
pass
-*_И-М-М-М-М-М-*-М-М-Мfstop
^/2 Частота
,
_
Переходная
Г*- Полоса > ч “ полоса - > * пропускания
Полоса
задерживания
Рис. 5 .3 1 . Другой метод задания требуемой АЧХ для КИХ ФНЧ при использовании
метода замены Ремеза
АЧХ фильтра
Ремеза (сплошная)
-10
Чебышева (штрих-пунктирная)
-20
Кайзера (штриховая)
-30
-40
-50
-60
—»— ►
-70
0
0.05Л.
0.15L,
0.25f„
0.35fs Частота
Рис. 5 .3 2 . Сравнение частотных характеристик КИХ-фильтров с 31 ответвлением:
Ремеза, с окном Чебышева и с окном Кайзера
Преимущества метода Ремеза хорошо видны на рисунке 5.32 при сравнении
характеристик фильтров, полученных разными методами. На этом рисунке пока­
заны характеристики КИХ-фильтров с 31 ответвлением, имеющих одинаковую
полосу пропускания, полученных методом Ремеза, а также методом окон с испо­
льзованием окон Чебышева и Кайзера. Обратите внимание на то, что все фильтры
имеют примерно одинаковые боковые лепестки вблизи главного лепестка, но
фильтр Ремеза имеет самую крутую переходную полосу.
5.7. Полуполосные КИХ-фильтры
199
5.7. Полуполосные КИХ-фильтры
Существует особый вид КИХ-фильтров, который оказался полезным в схемах
прореживания [21-25]. Называется такой фильтр полуполосным КИХ-филыпром,
его частотная характеристика симметрична относительно частоты / 5/4, как пока­
зано на рисунке 5.33 (а). При этом сумма/'
и р а в н а / 5/2. Фильтр с такой ча­
стотной характеристикой обладает одним прекрасным свойством: каждый второй
отсчет его импульсной характеристики, кроме центрального, равен нулю. Это по­
зволяет сократить количество умножений при реализации такого фильтра при­
мерно в два раза. В качестве примера на рисунке 5.33 (Ь) показаны коэффициенты
полу полосного фильтра с 31 ответвлением, для которого А / была задана равной
примерно / 5 /3 2 и использовался метод замен Ремеза. (Для сохранения симмет­
рии параметры др и <35 были заданы равными друг другу.)
Рис. 5 .3 3 . Полуполосный КИХ-фильтр: (а) АЧХ (центр переходной полосы находит­
ся на частоте /4): (Ь) коэффициенты фильтра с 31 ответвлением; (с)
структура полуполосного фильтра с семью ответвлениями
Обратите внимание на то, что каждый второй коэффициент /г(£) равен нулю, так
что мы выполняем только 17 умножений на выходной отсчет вместо ожидаемых 31
умножения. Для полуполосного фильтра с 5 ответвлениями нам потребуется
200
Гпава 5. Фильтры с импульсной характеристикой конечной длины
выполнить только (S + 1)/2 + 1 умножений на выходной отсчет'. Однако, будьте
внимательны, количество коэффициентов не может быть произвольным. Чтобы
построить полуполосный КИХ-фильтр с линейной ФЧХ, сумма S + 1 должна де­
литься на 4 без остатка. На рисунке 5.33 (с) показана структура простого полуполосного КИХ-фильтра с семью ответвлениями, в этой структуре умножители для
h( 1) и h(5) отсутствуют.
5.8. Фазо-частотная характеристика
КИХ-фильтров
Хотя мы привели несколько примеров сдвига фазы выходного сигнала для
усредняющего КИХ-фильтра на рисунке 5.10, фазо-частотная характеристика
(Ф ЧХ ) КИХ-фильтра заслуживает дополнительного рассмотрения. Одной из за­
мечательных особенностей КИХ-фильтров является линейность их ФЧХ. Про­
демонстрируем ее на примере. Имея 25 коэффициентов КИХ-фильтра h(k),
показанных на рисунке 5.34 (а), мы можем выполнить ДПФ и найти частотную
характеристику фильтра Н(т). Нормированные действительная и мнимая части,
а также модуль Н(т) показаны на рисунках 5.34 (Ь) и 5.34 (с) соответственно2.
Поскольку каждый отсчет Щт) является комплексным числом, отсчеты можно
представить действительной и мнимой частями или, что эквивалентно, модулем
\Н(т)\ и аргументом НАт), показанным на рисунке 5.35 (а).
Аргумент комплексного числа вычисляется как арктангенс отношения мни­
мой части к действительной части, или ф = tan ~1(imag/real). Отсчеты ФЧХ Я^(т)
определяются по отсчетам, приведенным на рисунке 5.34 (Ь).
ФЧХ на рисунке 5.35 (а) выглядит линейной на отдельных участках частотной
оси, но что делать с многочисленными скачками, или разрывами, характеристи­
ки? Если мы построим в комплексной плоскости векторы одинаковой длины,
углы которых относительно действительной оси совпадают с аргументами Нф(т),
начиная с т = 0, то мы получим диаграмму, показанную на рисунке 5.35 (Ь). По­
скольку действительная часть Н(0) отлична от нуля, а мнимая часть Н(0) равна О,
Нф(0)=0, и соответствующий радиус-вектор лежит на действительной оси, как
показано в правой части рисунка 5.35 (Ь). Углы всех последующих фазоров изме­
няются с шагом -33.75°, так что фазоры образуют последовательность, разворачи­
вающуюся в направлении движения часовой стрелки. Причину первого разрыва на
рисунке 5.35 (а) мы обнаруживаем при построении вектора с углом Я^( 6). Исходя
из действительной и мнимой частей Н(6), мы должны построить соответствую­
щий фазор под углом -202.5° к действительной оси.
В разделе 13.7 приводится метод дальнейшего снижения количества умножений для
КИХ-фильтров с линейной ФЧХ на основе линии задержки с ответвлениями, включая
и полуполосные фильтры.
2
Для получения Н(т) достаточно взять любой размер ДПФ, превышающий длину им­
пульсной характеристики h(k), равную 25. Мы дополнили последовательность h(k) ну­
лями, чтобы взять 128-точечное ДПФ и получить значения отсчетов Н(т), показанные
на рисунке 5.34.
'
5.8. Фазо-частотная характеристика КИХ-фильтров
201
1
0.5
(a)
і > і і і і I АН—ь * »■м » »
***
0
10
-0.5
12
14
16
18
20
22
24
1.0
0.75
* Действительная часть Н(т)
0.5
□ Мнимая часть Н(т)
0.25
(b)
о
22 24 26 28 30
-0.25
т
т = 17
-0.5
-0.75
-
1.0
А |Н(т)|
.....................
о І і і і і і і і і і і і і і і і
О
2
4
______
6
8
10 12 14 16 18 20 22 24 26 28 30
™
Полоса ______
пропускания
Рис. 5 .3 4 . Частотная характеристика КИХ-фильтра Н(т): (а) коэффициенты филь­
тра h(k)] (b) действительная и мнимая части Н(т)\ (с) модуль Н(т)
Но на рисунке 5.35 (а) Я ^( 6) = 157.5°. Проблема заключается в программе, вы­
числяющей значения арктангенса, показанные на рисунке 5.35 (а). Программа до­
бавляет 360° ко всем отрицательным углам, лежащим в пределах -180° > ф >
-360°, т. е. к углам, лежащим в верхней полуплоскости. Это делает ф положитель­
ным углом в диапазоне 0° < ф < 180°, и этот результат изображен на графике.
(Этот явный разрыв между Я^(5) и H J 6 ) называется заворотом фазы.) Следова­
тельно, истинное значение Нф(6) = -202.5° преобразуется в +157.5°, как показано
в скобках на рисунке 5.35 (Ь).
Если мы продолжим нашу диаграмму для последующих отсчетов Нф(т), мы
увидим, что углы наклона векторов будут продолжать уменьшаться с шагом
-33.75°. Если мы компенсируем добавку, вносимую программой, и построим на
графике углы, которые меньше -1 8 0°,развернув таким образом фазу, мы получим
истинные значения Нф(т), показанные на рисунке 5.35 (с)1. Заметим, что Нф(т)
Если при построении графика ФЧХ фильтра мы встречаем угол ф, который выглядит
как подозрительный разрыв, следует добавить к нему 360°, если ф меньше нуля или
-360°, когда ф положителен, чтобы проверить, удается ли таким образом компенсиро­
вать особенности программы.
202
Гпава 5. Фильтры с импульсной характеристикой конечной длины
действительно линейна в полосе пропускания Н(т). На отсчете Нф(17) наша час­
тотная характеристика Н(т) претерпевает инверсию знака действительной час­
ти, в то время как мнимая часть остается отрицательной — это приводит к
появлению истинного разрыва в ФЧХ, который является неотъемлемой характе­
ристикой отсчета Н(т) при т = 17. (Каждый раз, когда действительная часть
Н(т) меняет знак, возникают дополнительные разрывы ФЧХ, как показано на
рисунке 5.35 (с).) Читатель может задуматься над тем, почему мы так озабочены
линейностью ФЧХ Н(т). Ответ на этот вопрос очень важен и требует введения
понятия групповой задержки.
Рис. 5.3 5 . ФЧХ КИХ-фильтра Нф{т) в градусах: (а) вычисленная ФЧХ Нф(т)ш
, (Ь) пер­
вые десять фаз Нф(т) в полярных координатах в градусах; (с) реальная
Нф(т)
Групповая задержка определяется как производная ФЧХ по частоте, взятая с
обратным знаком, или С = ~Аф/А/. Следовательно, для КИХ-фильтров группо­
вая задержка представляет собой наклон ФЧХ Нж(т). Когда групповая задержка
постоянна, как в полосе пропускания всех КИХ-фильтров, имеющих симметрич­
ные коэффициенты, все частотные компоненты входного сигнала фильтра задер­
203
5.8. Фазо-частотная характеристика КИХ-фильтров
живаются на его выходе на одно и то же время С. Это значит, что выходной сигнал
фильтра не подвергается фазовым искажениям, а это критически важно для комму­
никационных сигналов. Для сигналов с амплитудной модуляцией (АМ) постоянная
групповая задержка позволяет сохранить форму огибающей, несущей информацию
о модулирующем сигнале. Нелинейная ФЧХ приводит к искажению звукового
сигнала, восстановленного из амплитудно-модулированного несущего сигнала,
используемого в радиовещании, приводит к смазыванию границ телевизионных
изображений, размывает крутые фронты радиолокационных импульсов и повы­
шает вероятность ошибок в цифровых системах связи. (Групповую задержку
иногда называют задержкой огибающей, потому что первоначально групповая
задержка исследовалась с точки зрения ее влияния на огибающую, или модули­
рующий сигнал, в системах с амплитудной модуляцией.) Конечно, групповая
задержка за пределами полосы пропускания нас мало волнует, поскольку всю
энергию сигналов, выходящую за пределы полосы пропускания, мы стараемся
подавить посредством фильтрации.
Было показано, что групповая задержка в полосе пропускания цифрового
КИХ-фильтра с Б ответвлениями определяется выражением
С =(Б -1 )^ /2 ,
(5-23)
где £5 — период дискретизации ( 1/ / $)'. Эта групповая задержка измеряется в се­
кундах. Если убрать из (5-23) множитель то групповая задержка будет измеря­
ться в отсчетах. Задержка С, измеренная в отсчетах, всегда принимает целые
значения для фильтров с нечетным количеством ответвлений и нецелые значе­
ния для фильтров четной длины.
Хотя для получения частотных характеристик на рисунках 5.34 и 5.35 мы ис­
пользовали 128-точечное ДПФ, мы с таким же успехом могли бы использовать
N = 32 или N = 64 точки. Эти ДПФ с меньшим количеством точек дают фазовые
характеристики, показанные на рисунках 5.36 (а) и 5.36 (Ь). Обратите внимание на
отличие ФЧХ при N = 32 на рисунке 5.36 (а) от ФЧХ сЫ= 128на рисунке 5.36 (с).
На рисунке 5.36 (с) приращение фазы намного меньше. Приращение фазы в
полосе пропускания Аф определяется выражением
Аф = ( - С • 360°)/К
(5-24)
где N —количество точек ДПФ. Таким образом, для нашего фильтра сБ = 25 ответ­
влениями на рисунке 5.34 (а), С = 12 и Аф на рисунке 5.36 (а) равно -12»360°/32 =
-135° а на рисунке 5.36 (с) Аф равно -33.75°. Если мы посмотрим внимательно на
значения отсчетов, показанные на рисунке 5.36 (а), то увидим, что они встречают­
ся среди отсчетов на рисунках 5.36 (Ь) и 5.36 (с).
Закончим это обсуждение ФЧХ КИХ-фильтров напоминанием сути фазо-частотной характеристики. Фаза, или фазовая задержка, на выходе КИХ-фильтра
представляет собой фазу первого выходного отсчета относительно фазы первого
входного отсчета фильтра. В полосе пропускания фазовый сдвиг является линей­
ной функцией частоты. Это справедливо только для фильтров с симметричными
коэффициентами. Хорошая иллюстрация фазовой задержки КИХ-фильтра при­
ведена на рисунке 5.10.
1 Это выражение получено в разделе 3.4 работы [16] и на странице 597 работы [19]
204
Гпава 5. Фильтры с импульсной характеристикой конечной длины
Для КИХ-фильтров выходной сдвиг фазы, измеренный в градусах, для сигна­
ла с частотой, лежащей в полосе пропускания / = тп/5/АТ, выражается как
Фазовая задержка = Я ^ (т / 5/Л^) - т • Аф = (-пг • С • 360о) /Ы .
(5-25)
200 ^ - н Ат) в градусах
(Ь)
2оо+ ни(т ) в градусах
150
(с)
Рис. 5 .3 6 . ФЧХ КИХ-фияьтра Нф(т) в градусах: (а) вычисленная с помощью 32-то­
чечного ДПФ; (Ь) с использованием 64-точечного ДПФ; (с) с использова­
нием 128-точечного ДПФ
Мы можем проиллюстрировать (5-25) и показать соотношение между фазовы­
ми характеристиками на рисунке 5.36, рассмотрев фазовую задержку, связанную
с частотой / 5 /32, в таблице 5.2. Групповая задержка описывается подробнее в
приложении Р, где продемонстрировано искажение огибающей, вызванное нели­
нейностью ФЧХ фильтра.
205
5.9. Обобщенное описание дискретной свертки
Таблица 5.2. Значения, использованные в (5-25) для частоты 15 / 3 2
Размер ДПФ, N
Индекс т
НфШ5/Н)
32
1
-1 35 е
64
2
-135°
128
4
-1 3 5 “
5.9. Обобщенное описание дискретной
свертки
Хотя первоначально свертка использовалась как инструмент анализа непре­
рывных систем, мы теперь знаем, что свертка проявляется во всех аспектах цифро­
вой обработки сигналов. Свертка влияет на полученные нами результаты всегда,
когда мы анализируем или фильтруем какое-либо конечное множество отсчетов
данных, полученных от линейной инвариантной системы. Свертка не только сво­
дит ДПФ к простой аппроксимации непрерывного преобразования Фурье; она
представляет собой причину, по которой дискретные спектры периодичны в час­
тотной области. Интересно отметить, что, хотя мы используем свертку для реали­
зации цифровых КИХ-фильтров, именно ее влияние несет ответственность за
появление пульсаций частотной характеристики, препятствующих построению
идеального цифрового фильтра. Ее влияние столь обширно, что отказ от свертки
перевернул бы всю цифровую обработку с ног на голову.
Понятие свертки всегда было сложным для понимания начинающими. Это не
удивительно по нескольким причинам. Влияние свертки на дискретную обработ­
ку сигналов не так очевидно для людей, не имеющих опыта работы с дискретны­
ми сигналами, а математика свертки на первых порах кажется головоломной.
Более того, многие авторы с их поспешностью, иногда оправданной, представля­
ют уравнение свертки и сразу переходят к его использованию в качестве инстру­
мента анализа, не объяснив его происхождения и смысла. Например, автор этой
книги однажды обнаружил в профессиональном журнале статью, объявленную
как введение в БПФ, в которой свертка определялась просто как нечто подобное
рисунку 5.37 без каких либо дальнейших объяснений!
К сожалению, немногие новички могут самостоятельно извлечь какое-либо
понимание смысла свертки из рисунка 5.37. Здесь мы разрешим эту проблему, дав
определение свертки и разобрав несколько простых примеров. Мы завершим эту
главу обсуждением мощной теоремы о свертке и демонстрацией того, почему она
так полезна для качественного анализа дискретных систем.
Л /-1
У] ~ /* Р к
к= О
или
206
Гпава 5. Фильтры с импульсной характеристикой конечной длины
^0
Ос
О,
^2
Ол/-1
О Л /-2
••
°0
°Л /-1
••■
■
■
°о
=
ро
°1
о 2
Р2
°3
О
N-2 Ол/-3
••
о
*Л/-1
о
•
•
■
РЛ/-1
Теорема: если
ДПФ -> А п ,
4 <-ДЯФ -*В„ и
¥ ^ Д П Ф + СП,
то
Сг г К ' Лп 'В п
Рис. 5 .3 7 . Один очень эффективный, но обескураживающий способ определения
свертки
5.9 .1 . Дискретная свертка во временной области
Дискретная свертка представляет собой процесс, на вход которого поступают
две последовательности и результатом которого является новая последователь­
ность. На вход свертки могут поступать две последовательности во временной об­
ласти, при этом результат будет тоже последовательностью во временной области
или две последовательности в частотной области, преобразуемые в последовате­
льность в частотной области. (Хотя для того, чтобы свертка имела какой-то прак­
тический смысл, обе последовательности должны принадлежать одной области,
их длины не обязательно должны быть равными.) Допустим, мы имеем две после­
довательности /г(&) длины Р и х(к) длины () во временной области. Выходная по­
следовательность свертки у(п) двух входных последовательностей определяется
формулой
Р+<2-2
,у(п) = ^ И ( к ) х ( п - к ) ,
(5-26)
к=0
Рассмотрим (5-26) на примере, используя последовательности й(&) и х(к), по­
казанные на рисунке 5.38. В этом примере мы можем записать слагаемые для каж­
дого у(п) в (5-26) как
у(0)
у(1)
у(2)
у(3)
у(4)
=И(0)х(0-0) + И(1)х(0-1) + к(2)х(0-2)+к(3)х(0-3) +к(4)х(0-4) +к(5)х(0-5),
=И(0)х(1-0) +к(1)х(1-1)+к(2)х(1-2) +И(3)х(1-3) +к(4)х(1-4) +И(5)х{1-5),
= И(0)х{2 ~0) + /г( 1)х(2-1) + к(2)х(2-2) + к(3)х(2-3) +И(4)х(2-4) +ВД*<2-5),
= КО)х(З-О) + /г( 1)х(3-1) + К 2)х(3-2) + к(3)х(3-3) + Н4)х(3-4) + К5)х(3-5),
=И(0)х(4-0) +И(1)х(4-1) + 1г(2)х(4-2) +Ь(3)х(4-3) +1г(4)х(4-4) + /г(5)*(4-5),
у(5) = 11(0)х(5-0) + /г( 1)х(5-1) + И(2)х(5-2) + к(3)х(5-3) + Н(4)х(5-4) + /г(5Ж5-5).
(5-27)
5.9. Обобщенное описание дискретной свертки
Аод
А од
2 -1 ■■
* мш■
I
I
ш
3--
21 ■■
0--
207
I
I
I
I
I
I
I
I ►
-3-2-1 0 1 2 3 4 5 6
к
я
и
0I I I I I I I I I I I►
-3-2-1 0 1 2 3 4 5 6 к
(а)
(Ь)
Рис. 5.38. Входные последовательности для примера свертки: (а) первая последо­
вательность Л(/с) длины Р = 4; (Ь) вторая последовательностьх(/с) длины О
=3
При Р = 4 и £) = 3 мы должны вычислить только 4 + 3 - 1 = 6 отдельных слагае­
мых у(п). Поскольку к{4) и /г(5) равны нулю, мы можем отбросить некоторые сла­
гаемые в (5-27) и вычислить оставшиеся, представив у(п) в виде:
у(0)
y(1)
y(2)
y(3)
y(4)
= h(0)x(0)
= h(0)x(1)
- h(0)x(2)
= h(0)x(3)
= h(0)x(4)
+ h (1 )x(-1) + h (2)x(-2 ) + h(3)x(-3),
+ h(1)x(0) + h(2)x( -1 ) + h(3)x(-2),
+ h( 1)x( 1). + h(2)x(0) + h(3)x(-1),
+ h(1)x(2) + h(2)x(1) + h(3)x(0),
+ h(1)x(3) + h(2)x(2) + h(3)x(1),
и
у(5) = h(0)x(5) + h( 1)х(4) + h(2)x(3) + h(3)x(2).
(5-28)
Рассматривая индексы переменных h(k) и x(k) в (5-28), мы видим два важных
момента. Во-первых, свертка представляет собой просто сумму поэлементных
произведений, так что это не очень сложный процесс. Во-вторых, заметьте, что
для заданного y(ri), индекс h(k) возрастает при уменьшении индекса x(k). Это
дает основание некоторым авторам ввести новую последовательность д:(-&) и ис­
пользовать ее для графического изображения процесса свертки. Последователь­
ность х( -к ) представляет собой просто нашу исходную последовательность x(k),
зеркально отображенную относительно индекса 0, как показано на рисунке 5.39.
Такое определениеx ( - k ) дает нам возможность изобразить процесс перемножения
и суммирования в (5-28) так, как показано на рисунке 5.40; т. е. мы теперь можем
для вычисления у(п) расположить отсчеты х( - k ) напротив соответствующих от­
счетов h(k) при текущем значении индекса п. Как показано на рисунке 5.40 (а),
выравнивание отсчетов h(k) и jc(n-k) при п = 0 дает г/(0) = 1. Это совпадает с резу­
льтатом вычисления в первой строке (5-28), которую мы повторили в правой час­
ти рисунка 5.40 (а). Вычисление у( 1), при п = 1, изображено на рисунке 5.40 (Ь),
где последовательность x ( n - k ) сдвинута на один элемент вправо, в результате
чего получаем у(1) = 3. Мы продолжает этот сдвиг последовательности x ( n - k ) и
увеличение индекса п до тех пор, пока не получим последний ненулевой отсчет
свертки г/(5), показанный на рисунке 5.40 (f). Итак, выполнение свертки h(k) и
x(k) состоит из следующих шагов:
Шаг 1: построение графиков последовательностей h(k) и x(k).
Шаг 2: зеркальное отображение последовательности x(k) относительно
значения k = 0 для получения x (-k ).
208
Гпава 5. Фильтры с импульсной характеристикой конечной длины
Шаг 3: суммирование произведений 1г(к) и х (0 -к ) для всех к для получе­
ния у(0).
Шаг 4: сдвигх ( - к ) на один отсчет вправо.
Шаг 5: суммирование произведений 1г(к) и х (1 -к ) для всех к для получе­
ния у(1).
Шаг 6: сдвиг последовательности и суммирование произведений до тех
пор, пока последовательность И(к) перекрывается сдвинутой по­
следовательностью х(п-к), после чего все дальнейшие отсчеты
у (п ) остаются равными нулю, и вычисления заканчиваются.
Полная свертка последовательностей И(к) их(к) представляет собой последова­
тельность у(п), показанную в правой части рисунка 5.40 (0- Мы прошли последова­
тельностью ^-^) вдоль последовательности /г(&) и просуммировали произведения
перекрывающихся отсчетов. Кстати, обратите внимание на то, что последователь­
ность у(п) на рисунке 5.40 (0 содержит шесть ненулевых отсчетов, тогда как /г(&)
имела четыре таких отсчета, а последовательность х(к) — три. В общем случае,
если /г(&) имеет длину Р, а х(к) имеет длину 0 ,, у(п) будет иметь длину I , где
Ь=(Р+(1-1)
(5-29)
^ х(- к)
^х( к)
3-2 -1 --
3+
*
2 -1 --
І І I 1 І І І І І I►
-3 -2 -1 0 1 2 3 4 5 6 к
Ь-4 * + І І І І І I ►
-3 -2 -1 0 1 2 3 4 5 6 к
(а)
(Ь)
Рис. 5.3 9 . Входная последовательность для примера вычисления свертки: (а) вто­
рая последовательность х(к) длины 3; (Ь) зеркальное отображение вто­
рой последовательности относительно индекса к = О
Здесь начинающий читатель вполне может задать вопрос: «Хорошо, ну и что
из этого? Какое отношение этот странный процесс вычисления свертки имеет к
цифровой обработке сигналов?» Ответ на этот вопрос опирается на понимание
значения теоремы о свертке.
5.9 .2 . Теорема о свертке
Теорема о свертке представляет собой краеугольный камень цифровой обра­
ботки сигналов. Она проявляет себя всегда, когда мы фильтруем дискретные дан­
ные или выполняем Д ПФ. Чтобы увидеть, почему это так, упростим запись (5-26)
и будем использовать сокращенную форму
у(п) =1г(к) *х(к) ,
где символ * обозначает операцию свертки.
(5-30)
209
5.9. Обобщенное описание дискретной свертки
I
од
уф) = /7(0)Х(0) + И(1 )х(-1) + /?(2)х(-2) + /?(3)х(-3)
М М М М
I— (-5 -4 -3 -2 -1 0 1 2 3
(а)
=о
4 5 6
■х(0-к) я
Ч
0
Н---- 1-- 1--- 1-1-
I I—> 1 1 1 —I—1 1 1 1 » -4 -3 -2 -1 0
1 _ Л(/с)
1
-5 -4 -3 -2 -1
4
3 4 5 6 к
2
0 1 2 3
5
6
7 8
п
у(1) = ^(0)х(1) + /1(1 МО) + /7(2 )х(-1 ) + /?(3)х(-2)
м* * м
О, 11 I I I—I I 1-1—1 1 1 1 » »
(Ь)
=1+0 +0+0=1
свертка
сп=О
4 5 6
*
х( 1-*)
свертка
сп=1
о
0 , ,
=2+1+0+0=3
4 -.
2 -„м
ОН— I— |— |—|—|—|—|— |— ►
-4 -3 -2 -1 0
1
2
мя
I
'я
свертка
сп = 2
О
-5 -4 -3 -2 -1 0
(С )
3
2 ..
0
х(2-к)
0 1
3 4 5 6 ^
4 5 6
1 2 3
6
7
8
п
6 --
я
0 1
3 4 5 6 *
2
т* *
О-I—I—I—I—1 1 1 1 —1 1 1 1 » -4 -3 -2 -1 0 1
3 у х(3-к)
2 3 4
5 6
свертка
сп=3
к
о
я
ОII I— 1 1 1 1 4
-4 -3 -2 -1 0 1
(е)
5
0-1—I— I— I— I— I— I—I—I— ►
1
/7(к )
I
4
А у(2) = Л(0)х(2) + Л( 1)х( 1) + Л(2)х(0) + Л(3)х(-1)
*
=3+2 + 1+0 =6
2 --
'Т
-5
3
4. .
М
-4 -3 -2 -1 0
(С1)
2
56
5
6
7
8
П
у( 3) = Л(0)х(3) + /1(1 )х(2) + /7(2 )х( 1 ) + /?(3)х(0)
= 0 +3 +2+1=6
6 ■■
М
М
4. .
■
2 --
0
*
1
2
3
4
5
6
7
п
8
у(4) = /?(0)х(4) + /?(1 )х(3) + /?(2)х(2) + /?(3)х(1)
-5 -4 -3 -2 -1 0
I I
1 2 3
4 5 6
к
свертка
сп=4
О
х(4-к)
ц
оН-
М
0
1
2
2 --
4 5 6
^
■
??
о4—1—1—I I I I—I—I ♦
-4 -3 -2 -1 0
1
2
2
3
4
5
6
7
8
П
у(5) = /?(0)х(5) + /?(1)х(4) + /?(2)х(3) + /?(3)х(2)
О I I I <—1 1 1 1 —I I ! ! ►
^ т х(Ь-К)
=0+0+3+2=5
А
0 1
3 4 5 6
1 2 3
Ж
4
*. я М М
-5 -4 -3 -2 -1 0
■
6 ”
он—|—|— |— I— I— |— |— (-
—
I-
1 у Ь(к)
4
с
ОД
-4 -3 -2 -1
3
ОН— I— I— I—I— I— I— I— I----►
1111»2 3 4
2
3 4 5 6 к
свертка
сп =5
о
_
6 --
=0+0+0+3=3
4. .
2 --
ОН— I— I— I— I—I—I—I— I--- ►
0 1
2
3
4
5
6
7
8
п
Рис. 5 .4 0 . Графическое изображение процесса вычисления свертки последова­
тельностей /?(/() и х(к), приведенных на рисунке 5.38
210
Гпава 5. Фильтры с импульсной характеристикой конечной длины
Теорему о свертке можно сформулировать следующим образом: если две по­
следовательности во временной области /г(&) и х(к) имеют ДПФ Н(т) и Х (т ) со­
ответственно, то ДПФ свертки Ь(к) *х(к) представляет собой произведение Н(т)
• Х(т). Аналогично, обратное ДПФ произведения Н(т) *Х (т) дает свертку 1г(к)
* х(к). Мы можем представить это соотношение как
ДПФ
Н(т) • Х(т)
к(к) * х(п)
(5-31)
ОДПФ
Соотношение (5-31) говорит о том, что две последовательности к(к)*х(к) и
Н(т) •Х(т) образуют пару преобразований Фурье. Таким образом, ДПФ свертки
к(к)*х(к) всегда дает произведение Н(т) • Х(т). Мы можем также вычислить
свертку 1г(к)*х(к), выполнив обратное ДПФ последовательности Н(т)»Х(т).
Мы должны усвоить важный вывод из (5-31), который состоит в том, что выполне­
ние свертки во временной области эквивалентно умножению в частотной области.
(Мы не будем здесь доказывать теорему о свертке, потому что ее доказательство
имеется в ряде доступных книг [26-29].) Чтобы помочь нам в этом, на рисун­
ке 5.41 в наглядной форме показано соотношение между сверткой во временной
области и умножением в частотной области.
Последовательность х(к)
Последовательность /7{к)
С
Свертка во временной
области = Л(/с) * х(к)
Временная
область
( дпф)
Пара
преобразований
Фурье
Н(т)
Х(т)
Частотная
область
Умножение в частотной
области = Н(т) • Х(т)
Рис. 5 .4 1 . Соотношения теоремы о свертке
Мы можем легко продемонстрировать теорему о свертке, вычислив 8-точечные
ДПФ последовательностей к(к) и х(к) для получения Н(т) и Х(т) соответственно
и записав полученные значения в таблицу 5.3. (Конечно, мы должны дополнить по­
следовательности к(к) и х(к) нулями так, чтобы обе они имели длину 8.) Вычисле­
ние и занесение в таблицу обратного ДПФ произведения Н(т) •Х(т) позволяет
5.9. Обобщенное описание дискретной свертки
211
нам проверить (5-31) по данным, приведенным в двух последних колонках табли­
цы 5.3, где аббревиатура ОДПФ обозначает обратное ДПФ. Значения, приведенные
в таблице 5.3, показаны на рисунке 5.42. (Для простоты на рисунке приведены то­
лько модули Н(т), Х(т) и Н(т) • Х(т).) Нам необходимо освоить свертку во вре­
менной области, потому что, как мы уже знаем, она используется в КИХ- фильтрах.
Как подробно описано в разделе 5.2, мы выполняем дискретную фильтрацию с
помощью КИХ-фильтра, вычисляя свертку входной последовательности х(п) с
импульсной характеристикой фильтра к(к), а в случае КИХ-фильтра отсчеты его
импульсной характеристики оказываются равными коэффициентам фильтра1.
Результат этой свертки представляет собой отфильтрованную последователь­
ность во временной области, спектр которой модифицирован умножением на час­
тотную характеристику фильтра Н(т). В разделе 13.10 описывается остроумная
схема эффективной реализации КИХ-фильтра с использованием БПФ для вы­
полнения свертки.
Рис. 5 .4 2 . Соотношения между h(k), x(k), Н(т) и Х(т), показанными на рисун­
ке 5,38, в процессе вычисления свертки
1 Как мы увидим в главе 6, коэффициенты фильтра с бесконечной импульсной характе­
ристикой (БИХ) не равны отсчетам импульсной характеристики.
Таблица 5 .3 . Значения переменных при вычислении свертки /?(/с) и х{к), показанных на рисунке 5.38
Индекс
/с и л и т
х(к)
ДПФ
11(к) = Н{т)
ДПФ
х(к)=Х(т)
Н(т)'Х(т)
ОДПФ
Н(т)-Х{т)
Л(/с)
Ь{к)*х(к)
0
1
1
4.0 + УО.О
6.0+70.0
24.0 + у‘0.0
1.0 + у 0.0
1
1
1
2
1.00-у2.41
2.41-74.41
-8 .2 4 - 7Ю.24
З.О+уО.О
3
2
1
3
0
-2 .0 -7 2 .0
0
6.0+70.0
6
3
1
0
1.00-70.41
-0.41+71.58
0.24+71.75
6.0 +у 0.0
6
4
0
0
0
0
5.0+70.0
5
5
0
0
1.00+70.41
0.24-71.75
3.0+70.0
3
6
0
0
0
0
0 .0 + 70.0
О
7
0
0
1.00+72.41
-8.24+710.24
0 .0 + /0 .0
О
2.0+70.0
-0.41-71.58
- 2 .0 0 + 72.00
2.41 +У4.41
5.9. Обобщенное описание дискретной свертки
213
Вследствие дуальности теоремы о свертке мы можем в наших рассуждениях о
свертке и произведении как паре преобразований Фурье поменять местами вре­
менную и частотную области. Это значит, что подобно (5-31) мы можем написать
ДПФ
Ь(к) • х(к) <_
Щт) *Х(т)
ОДПФ
(5-32)
Следовательно, теорему о свертке можно сформулировать в более общем виде
так: Свертка в одной области эквивалентна произведению в другой области. На ри­
сунке 5.43 показано соотношение между умножением во временной области и
сверткой в частотной области. Соотношение (5-32) представляет собой фунда­
ментальное соотношение, используемое в процессе взвешивания данных с помо­
щью окон для уменьшения утечки спектра, описанного в разделе 3.9.
Рис. 5 .4 3 . Соотношения теоремы о свертке для умножения во временной области
5 .9 .3 . Применение теоремы о свертке
Теорема о свертке полезна как инструмент качественного предсказания резуль­
татов различных операций в дискретных линейных инвариантных во времени сис­
темах. Например, многие авторы используют теорему о свертке, чтобы показать,
почему периодическая дискретизация непрерывных сигналов дает дискретные
сигналы с периодическими по частоте спектрами. Рассмотрим действительный не­
прерывный сигнал, показанный на рисунке 5.44 (а), односторонний спектр которо­
го имеет ширину В.
214
Гпава 5. Фильтры с импульсной характеристикой конечной длины
(а)
-В
►
(Ь)
Время
(ремя
Г
_| пфЪ
*
0
'б
Ч астота
і
і
і
А
-2 /(ї
"1 /^
0
1 /^
к
2 /^
Ч астота
ААд
(С)
О \ ‘♦с
►С1дп>
эемя
вР
емя
I
Рис. 5.44. Использование теоремы о свертке для предсказания размножения спек­
тра при периодической дискретизации
Поскольку это действительный сигнал, его спектр, конечно же, симметричен
относительно 0 Гц. (На рисунке 5.44 широкие стрелки, показывающие вправо,
обозначают операции преобразования Фурье.) Дискретизация этого сигнала эк­
вивалентна умножению его на периодическую последовательность импульсов,
показанную на рисунке 5.44 (Ь), отсчеты которой равны единице. Если частота ди­
скретизации равна / 5 отсчетов в секунду, то период дискретизации £5 = 1//5 секунд.
Результатом этого перемножения является последовательность дискретных
импульсов, показанная на рисунке 5-44 (с). Для предсказания того, какие эффек­
ты в частотной области будут вызваны этим перемножением во временной облас­
ти, мы можем использовать теорему о свертке. Согласно этой теореме, как мы
теперь знаем, спектр произведения во временной области должен быть сверткой
спектров сомножителей. Хорошо, мы знаем, каков спектр непрерывного сигнала.
А что можно сказать о спектре последовательности импульсов? Было показано,
что спектр периодической последовательности импульсов, период которой равен
секунд, представляет собой периодическую последовательность импульсов в
частотной области, расстояние между которыми равно / 5 Гц, как показано на ри­
сунке 5-44 (Ь) [30].
Теперь нам остается только вычислить свертку двух спектров. В нашем случае
это выполняется просто, поскольку оба спектра симметричны относительно час­
тоты 0 Гц, и зеркальное отображение одного из них относительно 0 Гц будет из­
лишним. Таким образом, мы просто смещаем один спектр относительно другого и
5.9. Обобщенное описание дискретной свертки
215
рисуем график их произведения. Свертка спектра исходного сигнала и импульсов
в частотной области приводит к тому, что спектр сигнала повторяется через каж­
дые / 5 Гц, как показано на рисунке 5.44 (с). Это напоминает нам о том, что ДПФ
всегда периодично с периодом / 5 Гц.
А вот еще один пример того, как теорема о свертке может прийти на помощь,
когда мы пытаемся разобраться в операциях цифровой обработки сигналов. Ав­
тор однажды использовал эту теорему, чтобы разобраться в том, почему первый
ноль спектра треугольного окна приходится на частоту, которая в два раза пре­
вышает частоту первого нуля прямоугольного окна. Вопрос формулировался
следующим образом: «Если прямоугольное окно длительностью Т имеет первый
ноль спектра на частоте 1/ТТц, почему треугольное окно такой же длительности Т
имеет первый ноль спектра на частоте 2 /Т Гц?» Мы можем ответить на этот во­
прос, рассмотрев свертку во временной области.
Посмотрите на две прямоугольные функции времени, показанные на рисунках
5.45 (а) и 5.45 (Ь). Если длительность каждой из них равна Т секунд, их спектры
имеют первые нули на частоте 1/Т Гц, как показано на графиках, приведенных на
рисунках 5.45 (а) и 5.45 (Ь). Мы знаем, что модуль спектра представляет собой аб­
солютную величину классической функции бш ^)/.*1.
Если мы выполним свертку этих двух прямоугольных функций длительностью
Т, мы получим треугольную функцию, показанную на рисунке 5.45 (с). Здесь тоже
зеркальное отображение одной из прямоугольных функций относительно нулево­
го времени не обязательно. Нам нужно просто сдвигать одну функцию относитель­
но другой и вычислять площадь их перекрытия. Наибольшая площадь перекрытия
будет при нулевом сдвиге. Следовательно, свертка будет иметь максимум при ну­
левом сдвиге по времени, поскольку при этом имеется стопроцентное перекрытие.
Если мы будем сдвигать одну из прямоугольных функций в любом направлении,
свертка будет линейно уменьшаться до нуля. При сдвиге Т/2 секунд, прямоуголь­
ники перекрываются на 50 %. Свертка станет равной нулю при сдвиге на Г секунд,
когда перекрытие прямоугольников прекратится.
Заметьте, что длительность треугольника, полученного в результате свертки,
равна 2Т, и это ключ к ответу на наш вопрос. Поскольку свертка во временной об­
ласти эквивалентна умножению в частотной области, модуль преобразования
Фурье нашей треугольной функции длительностью 2 Т равен произведению фун­
кции |8т(л:)/х|, показанной на рисунке 5.45 (а), на функцию |81п(х)/х|, показан­
ную на рисунке 5.45 (Ь), или ( 8т(л:)/.г )2 , как показано на рисунке 5.45 (с). Если
треугольная функция длительностью 2 Т имеет первый ноль на частоте 1/Т Гц, то
та же функция длительностью Т должна иметь частоту первого нуля, равную
2 /Т Гц, как показано на рисунке 5.45 (с1), и это как раз то, что требовалось пока­
зать. Сравнение рисунков 5.45 (с) и 5.45 (с!) демонстрирует фундаментальное
свойство преобразования Фурье, которое состоит в том, что сжатие функции во
времени приводит к растягиванию ее спектра в частотной области.
Мы познакомились с функцией $т(д:)/л: во время обсуждения функций окон в разде­
ле 3.9 и более подробно описали ее в разделе 3.13.
216
Гпава 5. Фильтры с импульсной характеристикой конечной длины
(а)
(Ь)
►
- 772
о
772
С =П Ф >
Время
Зремя
►
Зремя
I
(
■
41 ~ і/ /
noS
£
(с)
♦і Время Н п > >
іремя
Рис. 5.45. Использование свертки для того, чтобы показать, что преобразование
Фурье треугольной функции имеет первый ноль спектра на частоте, рав­
ной удвоенной частоте первого нуля преобразования Фурье прямоуго­
льной функции
Библиография
1.
Shynk, J. J. «Adaptive IIR Filtering», IEEEASSPMagazine, April 1989.
2.
Laundrie, A. «Adaptive Filters Enable Systems to Track Variations», Microwaves
& RF, September 1989.
3.
Bullock, S. R «High Frequency Adaptive Filter», Microwave Journal, September
1990.
Библиография
217
4.
Haykin, S. S. Adaptive Filter Theory, Prentice-Hall, Englewood Cliffs, New Jersey,
1986.
5.
Goodwin, G. C, and Sin, K. S. Adaptive Filtering Prediction and Control, Prentice-Hall, Englewood Cliffs, New Jersey, 1984.
6.
Gibbs, J. W. Nature, Vol. 59,1899, p. 606.
7.
Stockham, T. G. «High-Speed Convolution and Correlation with Applications to
Digital Filtering», Chapter 7 in Digital Processing o f Signals. Ed. by B. Gold et a l ,
McGraw-Hill, New York, 1969, pp. 203-232.
8 . Wait, J. V «Digital Filters», in Active Filters: Lumped, Distributed, Integrated, Digi­
tal, and Parametric. Ed. by L. P. Huelsman. McGraw-Hill, New York, 1970, pp.
200-277.
9.
Dolph, C. L. «А Current Distribution for Broadside Arrays Which Optimizes the
Relationship Between Beam W idth and Side-Lobe Level», Proceedings o f the IRE,
Vol. 35, June 1946.
10. Barbiere, D. «А Method for Calculating the Current Distribution of Chebyshev
Arrays», Proceedings o f the IRE, Vol. 40, January 1952.
11. Cook, С. E., and Bernfeld, M. Radar Signals, Academic Press, New York, 1967, pp.
178-180.
12. Kaiser, J. F. «Digital Filters», in System Analysis by Digital Computer. Ed. by F. F.
Kuo and J. F. Kaiser, John Wiley and Sons, New York, 1966, pp. 218-277.
13. Williams, C. S. Designing Digital Filters, Prentice-Hall, Englewood Cliffs, New Jer­
sey, 1986, p. 117.
14. Harris, F. J. «On the Use of Windows for Harmonic Analysis with the Discrete Fo­
urier Transform», Proceedings o f the IEEE, Vol. 66, No. 1, January 1978.
15. McClellan, J. H., Parks, T. W, and Rabiner, L. R. «А Computer Program for Desig­
ning Optimum FIR Linear Phase Digital Filters», IEEE Trans, on Audio and Elect­
roacoustics, Vol. AU-21, No. 6 , December 1973, p. 515.
16. Rabiner, L. R. and Gold, B. Theory and Application o f Digital Signal Processing,
Prentice-Hall, Englewood Cliffs, New Jersey, 1975, p. 136.
17. Parks, T. W., and McClellan, J. H. «Chebyshev Approximation for Nonrecursive
Digital Filters with Linear Phase», IEEE Trans, on Circuit Theory, Vol. CT-19,
March 1972.
18. McClellan, J. H., and Parks, T. W. «А Unified Approach to the Design of Optimum
FIR Linear Phase Digital Filters», IEEE Trans, on Circuit Theory, Vol. CT-20, No­
vember 1973.
19. Rabiner, L. R., McClellan, J. H., and Parks, T. W. «FIR Digital Filter Design Tech­
niques Using Weighted Chebyshev Approximation», Proc. IEEE, Vol. 63, No. 4,
April 1975.
20. Oppenheim, A. V, and Schafer, R. W. Discrete-Time Signal Processing, Prenti­
ce-Hall, Englewood Cliffs, New Jersey, 1989, p. 478 (имеется русский перевод
218
Гпава 5. Фильтры с импульсной характеристикой конечной длины
одного из предыдущих изданий: Оппенгейм А. В., Шафер Р. В. «Цифровая об­
работка сигналов», пер. с англ. / под ред. С. Я. Шаца, М.: Связь, 1979, доступен
по адресу dsp-book.narod.ru/OpShDSP.djvu).
21. Funderburk, D. М., and Park, S. «Implementation of a C-QUAM AM-Stereo Re­
ceiver Using a General Purpose DSP Device», RFDesign, June 1993.
22. Harris Semiconductor Inc. «А Digital, 16-Bit, 52 Msps Halfband Filter», Micro­
wave Journal, September 1993.
23. Ballanger, M. G. «Computation Rate and Storage Estimation in Multirate Digital
Filtering with Half-Band Filters», IEEE Trans, on Acoust. Speech, and Signal Proc,
Vol. ASSP-25, No. 4, August 1977.
24. Crochiere, R. E., and Rabiner, L. R. «Decimation and Interpolation of Digital Sig­
nals — A Tutorial Review», Proceedings o f the IEEE, Vol. 69, No. 3, March 1981,
p. 318.
25. Ballanger, M. G., Daguet, J. L., and Lepagnol, G. P. «Interpolation, Extrapolation,
and Reduction of Computational Speed in Digital Filters», IEEE Trans, on Acoust.
Speech, and Signal Proc, Vol. ASSP-22, No. 4, August 1974.
26. Oppenheim, A. V., Willsky, A. S., and Young, I. T. Signals and Systems, Prentice-Hall, Englewood Cliffs, New Jersey, 1983, p. 212.
27. Stearns, S. Digital Signal Analysis, Hayden Book Co., Rochelle Park, New Jersey,
1975, p. 93.
28. Oppenheim, A. V., and Schafer, R. W. Discrete-Time Signal Processing, Prenti­
ce-Hall, Engle-wood Cliffs, New Jersey, 1989, p. 58 (имеется русский перевод од­
ного из предыдущих изданий: Оппенгейм А. В., Шафер Р. В. «Цифробая
обработка сигналов», пер. с англ. / под ред. С. Я. Шаца, М.: Связь, 1979, досту­
пен по адресу dsp-book.narod.ru/OpShDSP.djvu).
29. Rabiner, L. R., and Gold, В. Theory and Application o f Digital Signal Processing,
Prentice-Hall, Englewood Cliffs, New Jersey, 1975, p. 59 (есть русский перевод:
Рабинер Л., Голд Б. «Теория и применение цифровой обработки сигналов», М.:
Мир, 1978, доступен по адресу http://geogin.narod.ru/arhiv/dsp/dsp3.htm).
30. Oppenheim, А. V., Willsky, A. S., and Young, I. T. Signals and Systems, Prenti­
ce-Hall, Englewood Cliffs, New Jersey, 1983, p. 201.
Гпава 6
Фильтры
с импульсной
характеристикой
бесконечной
длины
Ф ильтры с бесконечной импульсной характеристикой (БИ Х -фильтры) ко­
ренным образом отличаются от КИХ-фильтров из-за наличия обратной связи.
Если выходные отсчеты КИХ-фильтров зависят только от предыдущих и текущего
входных отсчетов, то каждый выходной отсчет БИХ-фильтра зависит от предыду­
щих и текущего входных отсчетов, а также от предыдущих выходных отсчетов.
Способность БИХ-фильтров запоминать и использовать предыдущие выходные
отсчеты является и проклятием и благословением в одно и то же время. Как и для
всех систем с обратной связью, возмущения входного сигнала в некоторых случа­
ях могут сделать БИХ-фильтр неустойчивым и превратить его в генератор. Эта
способность выдавать на выход последовательности ненулевых отсчетов беско­
нечной длины, даже когда все входные отсчеты равны нулю, и послужила причи­
ной, по которой в названии этих фильтров присутствуют слова «с бесконечной
импульсной характеристикой». Здесь мы можем отметить, что по сравнению с
КИХ-фильтрами БИХ-фильтры имеют более сложную структуру (блок-схему),
их труднее проектировать и анализировать, их фазо-частотная характеристика
принципиально нелинейна. Почему же тогда ими пользуются? Потому, что они
очень эффективны. БИХ-фильтры требуют намного меньше умножений на один
выходной отсчет, чтобы реализовать требуемую частотную характеристику. С
точки зрения аппаратуры это значит, что БИХ-фильтры могут быть очень быст­
рыми, они позволяют нам строить фильтры реального времени, которые работа­
ют на значительно более высоких частотах дискретизации, чем КИХ-фильтры1.
Мы коротко сравним преимущества и недостатки БИХ и КИХ-фильтров в конце этой
главы.
220________ Гпава 6. Фильтры с импульсной характеристикой бесконечной длины
Чтобы продемонстрировать эффект от использования БИХ-фильтров, на ри­
сунке 6.1 приводится сравнение амплитудно-частотных характеристик БИХфильтра четвертого порядка и КИХ-фильтра с 19 ответвлениями с рисунка 5.19 (Ь)
из пятой главы. Если КИХ-фильтр с 19 ответвлениями требует 19 умножений
на один выходной отсчет фильтра, то БИХ-фильтр четвертого порядка требует
только 9 умножений на каждый выходной отсчет. БИХ-фильтр не только имеет
меньшую неравномерность АЧХ в полосе пропускания и более крутую переход­
ную полосу, он обеспечивает эти достоинства при вдвое меньшем количестве ум­
ножений по сравнению с КИХ-фильтром.
\Н(т)\ для КИХ-фильтра с 19 ответвлениями
Рис. 6 .1 .
Сравнение АЧХ КИХ-фильтра с 19 ответвлениями и БИХ-фильтра 4-го
порядка
Вспомним раздел 5.3, где для получения очень крутой переходной полосы нам
пришлось проектировать КИХ-фильтр с очень длинной импульсной характеристи­
кой. Чем длиннее импульсная характеристика, тем ближе АЧХ фильтра к идеаль­
ной. С точки зрения аппаратуры максимальное количество ответвлений КИХфильтра (длина его импульсной характеристики) зависит от того, как быстро наша
аппаратура выполняет требуемые для вычисления выходного отсчета умножения
и сложения и способна ли она выполнить все эти операции до прихода на вход филь­
тра следующего отсчета входного сигнала. БИХ-фильтры могут иметь импульсную
характеристику, длина которой намного превышает количество ответвлений ли­
нии задержки! Таким образом, БИХ-фильтры способны обеспечить гораздо луч­
шую фильтрацию при том же количестве умножений на выходной отсчет, чем
КИХ-фильтры. Имея это ввиду, вдохнем поглубже, разомнем наши математиче­
ские мускулы и постараемся узнать кое-что о БИХ-фильтрах.
6.1. Введение в фильтры с бесконечными
импульсными характеристиками
Свое название БИХ-фильтры получили благодаря тому, что они используют
некоторые предыдущие выходные отсчеты для вычисления текущего выходного
отсчета. В результате, при подаче на вход фильтра конечной последовательности
ненулевых отсчетов реакция БИХ-фильтра может оказаться бесконечной последо­
вательностью ненулевых выходных отсчетов. Таким образом, если входной сигнал
БИХ-фильтра в какой-то момент времени превращается в последовательность
6.1. Введение в фильтры с бесконечными имп пьсными характеристиками
221
нулевых отсчетов, выходной сигнал, в прині ше, может оставаться ненулевым
бесконечно долго. Эта необычная особенност БИХ-фильтров объясняется спо­
собом их реализации, а именно, наличием обр, тных связей. Понимание структу­
ры БИХ-фильтров не вызовет затруднения, ес и мы начнем с того, что вспомним
строительные блоки КИХ-фильтров. На рис> іке 6.2 (а) показана уже знакомая
нам структура цифрового КИХ-фильтра с четі рьмя ответвлениями, которая реа­
лизует следующее уравнение КИХ-фильтра в >временной области
у(п) = к(0)х(п) + к(1)х(п-1) + к(2)х(п-2) + г(3)х(п-3) + 1г(4)х(п-4) .
(6-1)
(а)
Рис. 6 .2 .
Структуры КИХ-фильтра: (а) традиционное представление структуры
КИХ-фильтра; (Ь) измененная, но эквивалентная структура КИХ-фильтра
Это уравнение известно как разностное уравнение, хотя в главе 5 мы его так не
называли. Чтобы понять, как прошлые выходные отсчеты используются в струк­
туре БИХ-фильтра, начнем с того, что переупорядочим структуру КИХ-фильтра,
показанную на рисунке 6.2 (а) и получим структуру на рисунке 6.2 (Ь). Заметьте,
что структуры на рисунке 6.2 идентичны с точки зрения вычислений и обе явля­
ются реализациями уравнения ( 6 - 1 ).
Теперь мы можем показать, как прошлые выходные отсчеты фильтра комбини­
руются с прошлыми входными отсчетами в структуре БИХ-фильтра, показанной
222
Гпава 6. Фильтры с импульсной характеристикой бесконечной длины
на рисунке 6.3. Поскольку БИХ-фильтры имеют два набора коэффициентов, мы
будем использовать стандартные обозначения Ь(к) для коэффициентов прямой
связи и а(к) для коэффициентов обратной связи. Итак, разностное уравнение,
описывающее БИХ-фильтр, изображенный на рисунке 6.3, имеет вид:
у(п)=Ь(0)х(п) + Ь(1)х(п - 1 ) + Ь(2)х(п - 2) + Ь(3)х(п - 3) +
+ а(1)у(п - 1 ) + а(2)у(п - 2 ) + а(3)у(п - 3)
Вычисления в цепи
прямой связи
Рис. 6 .3 .
(6-2 )
Вычисления в цепи
обратной связи
Структура БИХ-фильтра, показывающая вычисления в цепях прямой и
обратной связи
Посмотрите внимательно на рисунок 6.3 и уравнение (6-2). Нам важно убеди­
ться в том, что рисунок 6.3 действительно является правильной реализацией
уравнения ( 6- 2 ), и наоборот, разностное уравнение ( 6-2 ) исчерпывающим обра­
зом описывает структуру, показанную на рисунке 6.3. Помните, что последова­
тельность у(п) на рисунке 6.3 —это не то же самое, что последовательность у(п),
показанная на рисунке 6.2. Последовательность d(n) на рисунке 6.3 равна после­
довательности у(п) на рисунке 6.2 .
Сейчас вы, вероятно, задаетесь вопросом «Как же рассчитать коэффициенты
БИХ-фильтра a(k) и b(k), если мы хотим спроектировать БИХ-фильтр?» Застег­
ните привязные ремни, потому что именно здесь начинается серьезное изучение
БИХ-фильтров. Вспомните метод проектирования КИХ-фильтров нижних частот
с помощью окон, рассмотренный в предыдущей главе, где мы определяли требуе­
мую АЧХ КИХ-фильтра, вычисляли ее обратное преобразование Фурье, а затем
сдвигали результат преобразования во времени, чтобы получить нужную нам им­
пульсную характеристику фильтра. К счастью, благодаря природе КИХ-фильтров,
коэффициенты фильтра h(k) оказались в точности равными отсчетам импульсной
характеристики. Используя такую же процедуру для БИХ-фильтров, мы могли
6.2. Преобразование Лапласа
223
бы задать требуемую АЧХ, взять обратное преобразование Фурье этой характе­
ристики и получить импульсную характеристику. Увы, не существует простого
метода вычисления коэффициентов БИХ-фильтра а(к) и Ь(к) по импульсной ха­
рактеристике! К несчастью, методы проектирования КИХ-фильтров, которые мы
изучали до сих пор, оказываются непригодными для проектирования БИХ-фильтров. К счастью для нас, мы можем преодолеть этот недостаток, используя один
из нескольких методов проектирования БИХ-фильтров.
Стандартные методы проектирования БИХ-фильтров делятся на три базовых
класса: метод инвариантного преобразования импульсной характеристики, метод
билинейного преобразования и оптимизационные методы. Эти методы использу­
ют математический метод преобразования дискретных последовательностей, изве­
стный как ^-преобразование, истоки которого восходят к преобразованию Лапласа,
используемому для анализа непрерывных систем. Имея все это ввиду, начнем об­
суждение анализа и проектирования БИХ-фильтров с краткого напоминания
основ преобразования Лапласа.
6.2. Преобразование Лапласа
Преобразование Лапласа представляет собой математический метод решения
линейных дифференциальных уравнений, который оказался очень полезным в
технике и физике. Этот метод преобразования, в том виде, в каком его используют
сегодня, берет начало в работах блестящего английского физика Оливера Хэвисайда'. Применение преобразования Лапласа можно представить в виде следую­
щей последовательности шагов:
Шаг 1. Записывается дифференциальное уравнение во временной области, опи­
сывающее соотношение вход/выход физической системы (*нам необходи­
мо найти выходную функцию, которая соответствует этому уравнению и
заданной входной функции).
Шаг 2. Дифференциальное уравнение подвергается преобразованию Лапласа, ко­
торое превращает его в алгебраическое уравнение.
Шаг 3. Для определения преобразования Лапласа от выходной функции исполь­
зуются стандартные алгебраические методы.
Шаг 4. Полученное преобразование Лапласа от выходной функции подвергается
обратному преобразованию Лапласа, в результате чего получается урав­
нение выходной функции во временной области.
1 Хэвисайд (1850-1925), который интересовался электрическими явлениями, разрабо­
тал эффективный аналитический метод решения дифференциальных уравнений. Ему
пришлось вынести множество нападок со стороны современников, которые считали,
что предложенный подход недостаточно обоснован с математической точки зрения.
Однако открытие тесной связи методов Хэвисайда со строго математическим изложе­
нием операционного исчисления французского математика маркиза Пьера Симона де
Лапласа (1749-1827) подтвердило обоснованность методов Хэвисайда.
224
Гпава 6. Фильтры с импульсной характеристикой бесконечной длины
Это процедура на первый взгляд кажется несколько обременительной, поскольку
заставляет нас идти в обход вместо того, чтобы решать дифференциальное урав­
нение прямо. Оправданием использованию преобразования Лапласа служит то,
что, хотя решение дифференциальных уравнений классическими методами пред­
ставляет собой очень мощный метод анализа любых систем, кроме самых про­
стых, оно может быть очень трудоемким и порождать ошибки. Уменьшение
сложности выкладок при использовании алгебраических методов оправдывает
дополнительные усилия, затраченные на прямое и обратное преобразование Лап­
ласа. Это в особенности справедливо сегодня, когда существуют Таблицы прямых
и обратных преобразований Лапласа для всех обычно встречающихся на практи­
ке функций. Хорошо изученные свойства преобразования Лапласа также позво­
ляют раскладывать сложные функции на комбинации более простых функций и
затем использовать таблицы. (Таблицы преобразований Лапласа позволяют нам
быстро переходить от функций времени к их преобразованиям Лапласа и обрат­
но — аналогично тому, как мы пользуемся англо-русским и русско-английским
словарем при изучении английского языка1’2.) Рассмотрим коротко наиболее
важные свойства преобразования Лапласа, которые будут полезны при нашем
переходе к дискретному ^-преобразованию, используемому для анализа и про­
ектирования цифровых БИХ-фильтров. Преобразование Лапласа непрерывной
функции времени/(£)> которая определена только для положительного времени
(I > 0), математически выражается как
Л>) =
-*<к.
(6_з)
Функцию Д$) называют «преобразованием Лапласа от /(£)»> а переменная 5
представляет собой комплексное число вида
5= о
.
( 6-4 )
Более общее выражение для преобразования Лапласа, которое называют двух­
сторонним преобразованием, в качестве нижнего предела интегрирования испо­
льзует отрицательную бесконечность (-<»). Но в системах, которые мы будем
рассматривать, анализ при отрицательном времени (£ < 0) не нужен, и использу­
ется одностороннее преобразование (6-3). Такие системы, которые часто называ­
ют каузальными, могут иметь начальные условия при £ = 0, которые необходимо
учитывать (скорость тела, заряд конденсатора, температура тела и т. д.), но нам
нет необходимости знать, что система делала до момента времени £ = 0.
В уравнении (6-4) о —действительное число, а ш —частота в радианах в секун­
ду. Поскольку е не имеет размерности, сомножитель 5 должен иметь размер­
ность 1/время, или размерность частоты. Поэтому переменную Лапласа 5 часто
называют комплексной частотой.
' Хотя таблица часто используемых функций можно найти почти в каждом учебнике по
системному анализу, очень подробные таблицы приведены в работах [1-3].
Отечественному читателю можно посоветовать многократно издававшийся в СССР и
России «Справочник по математике (для научных работников и инженеров)», Г. Корн,
Т. Корн, который доступен и в Интернете в различных электронных форматах —(прим.
ред перев.)
225
6.2. Преобразование Лапласа
Выразив формулу (6-3) словами, можно сказать, что она требует умножать
точку за точкой функцию/(£) на комплексную функцию е ~ 5*при различных зна­
чениях 5. (Скоро мы увидим, что использование функции е~5{ здесь не случайно;
используется потому, что она представляет собой общую форму решения линей­
ных дифференциальных уравнений.) После поточечного умножения мы находим
площадь под графиком функции/(£)е~5Гпутем суммирования всех произведений.
Это площадь, которая является комплексным числом, дает значение преобразова­
ния Лапласа для текущего значения 5 = о +]й>, использованного при первоначаль­
ном умножении. Если мы проделаем эту процедуру для всех значений 5, мы будем
иметь полное описание Д$) для всех 5.
Мне нравится рассматривать преобразование Лапласа как непрерывную фун­
кцию, комплексное значение которой при некотором 5 представляет собой корре­
ляцию функции/(£) и затухающей комплексной синусоиды
частота которой
равна со, а коэффициент затухания равен о. Как выглядят комплексные синусои­
ды? Они представляют собой вращающиеся фазоры', описываемые выражением
=е
+]ШУ = е-°Те ^ шТ = е~^ш/ е ° 1.
(6-5)
Из того, что мы знаем о комплексных числах, следует, что е~1ш( представляет
собой фазор единичной длины, вращающийся в направлении по часовой стрелке
вокруг начала координат комплексной плоскости с частотой со радиан в секунду.
Знаменатель (6-5) представляет собой действительное число, равное единице
при t = 0. С ростом £знаменатель е 01 увеличивается (при положительном о), и мо­
дуль комплексного фазора е~а уменьшается одновременно с его вращением на
комплексной плоскости. Конец этого фазора описывает спираль по направлению
к началу координат комплексной плоскости. Один из способов наглядного пред­
ставления комплексной синусоиды состоит в рассмотрении ее действительной и
мнимой частей по отдельности. Мы делаем это, выражая комплексную синусоиду
е ^ в (6-5) в алгебраической форме как
е~^ = е~)шг/ е ог = со§(соЬ)/еа1: - ]ът(ш?)/еа1:.
(6-5’)
На рисунке 6.4 показаны действительные части нескольких комплексных синусо­
ид с разными частотами и разными коэффициентами затухания. На рисунке 6.4 (а)
выбраны произвольные частота со' и коэффициент затухания о' комплексной си­
нусоиды. Следовательно, действительная часть функции Д$) при 5 = о 4- ]со' рав­
на корреляции /(£) и колебания, изображенного на рисунке 6.4 (а). Для разных
значений 5 мы будем находить корреляцию/(£) с разными комплексными синусо­
идами, как показано на рисунке 6.4. (Как мы увидим, эта корреляция очень похо­
жа на корреляцию /(£) и различных синусоидальных и косинусоидальных
колебаний при вычислении дискретного преобразования Фурье.) Здесь опять
действительная часть Р(б) при заданном значении 5 представляет собой корреля­
цию /(£) и косинусоиды с частотой со и коэффициентом затухания о, а мнимая
часть Д я) представляет собой корреляцию/(£) и синусоиды с частотой со и коэф­
фициентом затухания о.
Теперь, если мы поставим в соответствие каждому значению переменной 5
точку на комплексной плоскости, которую по праву называют 5-плоскостью, мы
Радиус-векторы в комплексной плоскости —(прим перев )
226
Гпава 6. Фильтры с импульсной характеристикой бесконечной длины
сможем построить графики действительной и мнимой части F(s) как поверхности
над или под этой 5-плоскостью. Мы не можем построить на бумаге график полной
комплексной функции F(s), поскольку для этого потребовалось бы четыре изме­
рения. Это объясняется тем, что, поскольку переменная s комплексная, для ее
изображение необходимы два измерения, а для изображения самой комплексной
функции F(s) требуется еще два измерения. Но мы можем построить график мо­
дуля |F(s) | в функции s, поскольку этот график требует только трех измерений.
Давайте так и будем делать всякий раз, когда нам потребуется наглядно изобра­
зить результат преобразования Лапласа.
Рис. 6 .4 .
Действительная (косинусная) часть различных функций е
участвующих в вычислении корреляции с )
где я = а+ую,
Допустим, имеется линейная система, показанная на рисунке 6.5. Предполо­
жим также, что мы можем связать вход х(() и выход г/(£) линейной инвариантной
во времени системы, показанной на рисунке 6.5, посредством следующего одно­
родного дифференциального уравнения с постоянными коэффициентами
227
6.2. Преобразование Лапласа
х(П
Рис. 6 .5 .
Система, описываемая уравнением (6 - 6 ). Входной и выходной сигналы
системы x(t) и y(t) являются непрерывными функциями времени
a2[d2y(t)]/dt2 + a-j[dy(t)]/dt + a,Qy(t) = Ъj[dx(t)]/dt + b0x (t) .
( 6- 6)
Мы используем преобразование Лапласа для достижения поставленной цели —
понять, как будет вести себя система при подаче на ее вход различных сигналов,
т. е. каким будет выходной сигнал y(t) для любого заданного сигнала x(t).
Давайте немного притормозим и посмотрим, о чем нам говорят рисунок 6.5 и
уравнение ( 6- 6). Во-первых, поскольку система инвариантна во времени, коэф­
фициенты уравнения ( 6-6 ) an и Ьп постоянны. Они могут быть положительными
или отрицательными, равными нулю, действительными или комплексными, но
они не меняются со временем. Если это электрическая система, то коэффициенты
могут быть связаны с емкостью, индуктивностью и сопротивлением. Если систе­
ма механическая, состоящая из масс и пружин, коэффициенты могут быть связа­
ны с массой, коэффициентом демпфирования и коэффициентом упругости. Если
же система термическая, состоящая из масс и теплоизоляторов, коэффициенты
могут быть связаны с теплоемкостью и теплопроводностью. Чтобы не ограничи­
вать общность наших рассуждений, мы не будем здесь уточнять, какие физиче­
ские величины представляют наши коэффициенты.
Уравнение ( 6-6 ) показывает также, что, если не обращать внимания на коэф­
фициенты, то сумма выходного сигнала y(t) и его производных равна сумме вход­
ного сигнала x(t) й его производных. Наша задача состоит в том, чтобы точно
определить, какие функции удовлетворяют соотношению ( 6-6). (Упрямцы могут
использовать здесь классические методы решения дифференциальных уравне­
ний, но для нас преобразование Лапласа сделает задачу намного проще.) Благода­
ря Лапласу, мы будем использовать комплексную экспоненту е?1. Она обладает
одним замечательным свойством: ее можно дифференцировать неограниченное
количество раз, и при этом ее форма остается неизменной:
d(e st)/d t = se st, d2(e st)/dt2 = s2e st, d3(e st)/dt3 = s3e st, ...,
dn( e st)/dtn = sne st,
Благодаря этому свойству в результате преобразования Лапласа уравнение
( 6-6) преобразуется в
a2 s2y ( e st) + a-fSy(est) + a0y ( e st) = b-/sx(est) + b0x ( e st) ,
или
(a2 s2 + a-jS + a0) y ( e st) = (b1s + b0 ) x ( e st) .
( 6-8 )
Хотя это уравнение проще, чем ( 6-6 ), мы можем еще больше упростить уравне­
ние в последней строке ( 6-8 ), рассматривая отношение у(е st) и х(е st) как лапласовскую передаточную функцию системы, показанной на рисунке 6.5. Если мы
назовем это отношение полиномов передаточной функцией H(s), то
228
Гпава 6. Фильтры с импульсной характеристикой бесконечной длины
H(s) = y ( e st) /x ( e st) = (b-js + b0 )/(a 2 s2 +
+ a0) .
(6-9)
Мы можем использовать стандартные обозначения и представить передаточ­
ную функцию в виде
H(s) = Y(s)/X(s) = (b1s + b0)/(a 2s2 + a 1s + a0) ,
(6-10)
где выходная функция F(s) определяется выражением
Y(s) = X (s)(b1s + b0)/(a 2 s2 + a 1s + a0)= X (s )H (s).
(6-11)
Уравнение ( 6- 1 1 ) приводит нас к необходимости перерисовать исходную блоксхему системы в форме, которая подчеркивает определение передаточной функ­
ции H(s), как показано на рисунке 6 .6.
Осторожный читатель может спросить нас: «Насколько правомерно использо­
вание анализа с помощью преобразования Лапласа, который основан на пред­
ставлении реального входного сигнала системы x (t) в виде некоторой функции от
е st, или х(е st)?>> Ответ на этот вопрос состоит в следующем. Метод анализа с по­
мощью преобразования Лапласа, основанный на комплексных экспонентах, обо­
снован, поскольку все входные функции x(t), встречающиеся на практике, могут
быть представлены комплексными экспонентами. Например,
□
константа с = ceot;
□
синусоида sin(ot) = (е1шг - e~imt)/2j или cos(cut) = (eiwt + e~iwt)/2\
□
монотонная экспонента е
□
экспоненциально затухающая синусоида e~atcos(cot).
X(s)
Рис. 6 .6.
1
Y(s)
Линейная система, описываемая уравнениями (6-10) и (6-11). На вход
системы поступает преобразование Лапласа входного сигнала, X(s), на
выходе получаем преобразование Лапласа выходного сигнала Y(s), пе­
редаточная функция системы H(s)
Из сказанного следует, что, если мы знаем передаточную функцию системы
H(s), то мы можем взять преобразование Лапласа от входного сигнала x(t) и опре­
делить X(s), умножить X(s) на H(s) и получить Y(s), а затем взять обратное преоб­
разование Лапласа от Y(s), получив в результате выражение для выходного
сигнала y(t). В практических ситуациях, однако, мы обычно не выполняем все эти
шаги, потому что наибольший интерес для нас представляет сама передаточная
функция H(s). Если мы можем выразить H(s) аналитически или построить гра­
фик поверхности \H(s) | как функции переменной s, то это позволяет нам опреде­
лить два наиважнейших свойства анализируемой системы и ответить на вопрос:
устойчива ли система и, если да, то какова ее частотная характеристика?
«Но постойте,» —говорите вы. —«Уравнения (6-10) и (6-11) показывают, что
для получения H(s) нужно знать F(s)!» На самом деле это не так. Нам необходи­
мо знать только дифференциальное уравнение, подобное ( 6 - 6 ). Затем мы берем
6.2. Преобразование Лапласа
229
преобразование Лапласа этого дифференциального уравнения и комбинируем
его члены так, чтобы получить H(s) в форме (6-10). Имеющие практический опыт
разработчики Систем могут просто посмотреть на блок-схему (механическую,
электрическую и любую другую) системы и сразу написать выражение для H(s).
Используем же теперь понятие передаточной функции H(s), чтобы определить
устойчивость и частотную характеристику простой непрерывной системы.
6 .2 .1 . Полюсы и нули на s-плоскости и условие
устойчивости
Одной из важнейших характеристик системы является ее устойчивость. Мы
можем считать систему устойчивой, если при ограниченном сигнале на входе она
всегда выдает ограниченных выходной сигнал. Кажется, что легко достичь вы­
полнения этого условия, потому что большинство окружающих нас в повседнев­
ной жизни систем являются устойчивыми. Тем не менее, мы все имеем опыт
наблюдения неустойчивости системы, содержащей обратные связи. Вспомните
вой, который раздается, когда микрофон громкоговорящей системы подносится
слишком близко к громкоговорителю. Сенсационный пример нестабильной сис­
темы наблюдался в западном Вашингтоне, когда первый мост Такома Нэрроуз
(Tacoma Narrows Bridge) начал колебаться в полдень 7 ноября 1940 г. Эти колеба­
ния были вызваны ветром со скоростью 42 мили в час, их амплитуда нарастала до
тех пор, пока мост не разрушился. Для БИХ-фильтров с их внутренней обратной
связью неустойчивость может привести к тому, что состояние выхода фильтра пере­
станет отражать состояние его входа; т. е. выходные отсчеты при этом не являются
фильтрованными версиями входных отсчетов; они представляю собой какие-то
непонятные колебания или псевдослучайные значения. Таких ситуаций следует
по возможности избегать, не так ли? Посмотрим, как этого добиться.
Мы можем разобрать понятие устойчивости непрерывной системы, изучив не­
сколько разных примеров передаточных функций H(s), описывающих линейные
инвариантные во времени системы. Предположим, что у нас есть система, переда­
точная функция которой имеет форму ( 6- 10 ), при этом коэффициенты ее дейст­
вительны, а коэффициенты Ь1 и а2 равны нулю. Обозначим эту передаточную
функцию как H^s):
H ^ s ) =b0 / ( a 1s + a0) = (b0 / а ^ / i s + a0/ я , ) .
( 6- 1 2 )
Заметьте, что при s = - а0 /а^ знаменатель в (6-12) обращается в ноль, а мо­
дуль ЯДя) устремляется в бесконечность. Эту точку s = - а 0 /а 1называют полю­
сом, и на рисунке 6.7 (а) он отмечен значком "х". Обратите внимание на то, что
полюс расположен в левой полуплоскости, соответствующей отрицательной части
действительной оси. Если бы система, описываемая функцией Нр находилась в
состоянии покоя и в момент времени t=0 мы подали на ее вход импульс x(t), ее не­
прерывный выходной сигнал y(t) представлял бы собой затухающую экспоненту,
показанную на рисунке 6.7 (Ь). Мы можем видеть, что H^(s) устойчива, потому
что выходной сигнал y(t) с течением времени стремится к 0. Кстати, расстояние
полюса от оси о = 0 , а0 / а -j для нашей передаточной функции H ^s), определяет
скорость затухания импульсной характеристики y(t). Чтобы показать, почему эту
точку называют полюсом, на рисунке 6.8 (Ь) изображена трехмерная поверхность
230
Глава 6. Фильтры с импульсной характеристикой бесконечной длины
|Я ^я) |. Посмотрите на этот рисунок внимательно и обратите внимание на то, что
мы изменили ориентацию осей я-плоскости. При такой ориентации осей мы можем
увидеть, как по этой трехмерной поверхности можно получить АЧХ системы. Если
мы рассмотрим поверхность |Я^я) | при о = 0, то получим характеристику, показан­
ную на рисунке 6.8 (Ь) толстой линией. Эта толстая линия, представляющая со­
бой сечение поверхности |Яу(5)| вертикальной плоскостью <7 = 0, и есть АЧХ
нашей системы |Яу(а>) | —таким образом, мы достигли одной из наших целей. В более
привычном виде АЧХ |Яу(со) | приведена на рисунке 6.8 (с). Рисунки 6.8 (Ь) и 6.8 (с)
выявляют одно важное обстоятельство: преобразование Лапласа представляет
собой обобщение преобразования Фурье, потому что при о = 0 значение 5 = ](о.
Поверхность |ЯД 5)| при о = 0 превращается в функцию частоты |ЯДа>)|, показан­
ную на рисунке 6.8 (с).
Другая известная передаточная функция приводит к колебательной импуль­
сной характеристике. Рассмотри другой частный случай передаточной функции
( 6- 10 ), когда Ъ0 =0, а корни полинома знаменателя принимают комплексные зна­
чения. Мы обозначим этот частный случай передаточной функции как Н2(з):
Я2($) = Ь1Б/(а2э2 +
+ а0) = [(Ь1/ а ^ ] / ^ 2 +
+ а0/ а 2].
(6-13)
7со
s-плоскость
(а)
Рис. 6.7.
(Ь)
Представления функции Н,(э): (а) полюс, расположенный в точке э = ст+/со =
- а 0/ а 1+ у0 на э-плоскости; (Ь) импульсная характеристика системы у(?)
(Кстати, когда переменная 8 входит как в числитель, так и в знаменатель пере­
даточной функции, порядок функции определяется наибольшей степенью 5 в зна­
менателе. Следовательно, наша Я 2 (х) имеет второй порядок.) Чтобы несколько
упростить последующие уравнения, разложим знаменатель передаточной функ­
ции на множители и перепишем (6-13) в виде:
H2(s) = As/[(s +p)(s +/?*)]
(6-14)
где Л = b 1/ а 2, р = р геа[ +jp imag И р * = p rea[ - jp imag (комплексно-сопряженный р).
Заметим, что если s принимает значение - р или - р *, один из сомножителей в зна­
менателе (6-14) обращается в ноль, а модуль H2(s) становится бесконечным. Два
комплексных полюса, показанные на рисунке 6.9 (а), лежат в стороне от отрица­
тельной части действительной оси. Если бы система Н2 находилась в состоянии
покоя и в момент времени t=0 мы подали на ее вход импульс x(t), то выходной
сигнал системы y(t) представлял бы собой затухающую синусоиду, показанную
на рисунке 6.9 (Ь). Мы видим, что H2(s) устойчива, потому что ее осциллирующий
выходной сигнал с течением времени затухает подобно задетой гитарной струне.
Здесь тоже расстояние полюсов от оси о = 0 ( - р геа[) определяет скорость затуха­
ния синусоидальной импульсной характеристики y(t). Аналогично, расстояние
231
6.2. Преобразование Лапласа
полюсов от оси](о = 0 ( ±р2ОТа^) определяет частоту колебания синусоидальной им­
пульсной характеристики у(і). Обратите внимание на одну новую деталь на ри­
сунке 6.9 (а). Когда 5 = 0, числитель (6-14) равен нулю, в результате чего Я 2 (5)= 0.
Любое значение 5, при котором Я 2 (5)= 0, часто представляет определенный инте­
рес и обычно отмечается на 5-плоскости небольшим кружочком, называемым
«нулем», показанным на рисунке 6.9 (а). Здесь нас не очень интересует то, как вы­
разить/? ир* через коэффициенты знаменателя (6-13). Но настойчивый читатель
может выразить значения р и р* через а0, а-і и а2 с помощью известной формулы
корней квадратного уравнения: заданный полином второго порядка / ( б) =аз2 + Ьб
+ с можно представить в виде произведения сомножителей
./со
А
(а)
'Эс/а1
*
(Ь)
Рис. 6 .8 .
Подробное представление Н^б)'. (а) полюс в точке а = - а 0/ а 1 наз-плоскости; (Ь) поверхность |Н,(5)|; (с) кривая сечения поверхности |Н г(з)| вер­
тикальной плоскостью о = 0. Это обычное изображение АЧХ системы
\Н1(со)\
232
Гпава 6. Фильтры с импульсной характеристикой бесконечной длины
5 = -РгВ
Я| +ІРіт а д
геаі
ум
\
Ноль в точке в = О
(а)
Рис. 6 .9 .
Представления Н2 {з)\ (а) полюсы в точках э = ргеа/±ур/тад5-плоскости; (Ь)
импульсная характеристика системы у(?)
км
(а)
(с)
Рис. 6 .1 0 . Подробное изображение Н2 (б): (а) расположение полюсов и нулей на
э-плоскости; (Ь) поверхность |Н2 (э) | ; (с) график АЧХ |Н2 («>) \
233
6.2. Преобразование Лапласа
/ ( 5) = ав2 + Ьб + с =
(6-15)
=
[5
+ Ь/2а + У/(Ь2 - 4ас)/4а2][з + Ь/2а - ' І (Ь2 - 4ас)/4а2] .
На рисунке 6.10 (Ь) показана поверхность |Я2(5)| над 5-плоскостью. Толстая
линия на этом рисунке показана на рисунке 6.10 (с) в более привычном виде, она
представляет собой АЧХ системы, описываемой уравнением (6-13). Хотя трех­
мерные поверхности на рисунках 6.8 (Ь) и 6.10 (Ь) весьма информативны, они в то
же время громоздки и не всегда необходимы. Мы можем оценить устойчивость
системы, просто рассмотрев расположение полюсов на двухмерной 5-плоскости.
На рисунке 6.11 показаны карты расположения полюсов для нескольких раз­
личных передаточных функций и соответствующие им импульсные характери­
стики. Мы видим, что рисунки 6.11 (а) и 6.11 (Ь), которые мы уже обсуждали,
демонстрируют нам характеристики устойчивых систем. Будучи выведены из со­
стояния покоя входным сигналом, они реагируют на него, а затем постепенно воз­
вращается в состояние покоя. Единственный полюс 5 = 0 на рисунке 6.11 (с)
соответствует передаточной функции 1/5. В электрических системах передаточ­
ная функция 1/б может описывать конденсатор, заряженный импульсом тока при
отсутствии цепи разряда. Для механической системы 6.11 (с) может описывать
некоторую пружину, которая сжата импульсом силы и по какой-то причине оста­
ется в этом состоянии. Обратите внимание на то, что, когда Я(5) имеет сопряжен­
ные полюсы, лежащие точно на оси]ш (о = 0), как на рисунке 6.11 (сі), система
превращается в генератор, если она выведена из состояния покоя. Эта ситуация,
которую называют условной устойчивостью, описывает передаточные функции
электронных генераторов. Неустойчивые системы показаны на рисунках 6.11 (е)
и 6.11 (Г)- Здесь полюсы лежат справа от о с и К о г д а импульсный входной сиг­
нал выводит такую систему из состояния покоя, ее выходной сигнал неограни­
ченно возрастает1. Вы видите, что <т, действительная часть полюса, здесь играет
ключевую роль. Когда о < 0, система ведет себя хорошо и устойчива; когда о = О,
система условно устойчива; и когда о > 0, система неустойчива. Итак, мы можем
сказать, что, когда полюсы расположены в правой полуплоскости комплексной
плоскости, система неустойчива. Для линейных непрерывных систем это проде­
монстрировано на рисунке 6.12. Помните, что реальные системы часто имеют бо­
лее двух полюсов, и устойчивость системы определяется полюсом с наименьшей
устойчивостью. Чтобы система была устойчивой, все ее полюсы должны лежать в
левой полуплоскости 5-ПЛОСКОСТИ.
Итак, подытожим коротко то, что мы узнали: Я(5) определяется путем записи
дифференциального уравнения линейной системы с последующим взятием пре­
образования Лапласа от этого уравнения, в результате чего получаем выражения,
содержащие преобразования Лапласа Х(5), Г(5), 5 и коэффициенты системы. За­
' Исследование импульсной характеристики в лаборатории может быть важной частью
процесса проектирования. Трудность здесь состоит в генерации действительно им­
пульсного сигнала. Если мы исследуем электрическую систему, в качестве входного
импульса х(ґ) можно использовать очень короткий импульс напряжения или тока,
хотя его не всегда просто получить. Если же система механическая, в качестве входного
импульса х(ґ) можно использовать удар молотком. Для цифровых систем импульсный
входной сигнал генерируется легко, он представляет собой один единичный отсчет, ко­
торому предшествуют и за которым следуют нулевые отсчеты.
234
Гпава 6. Фильтры с импульсной характеристикой бесконечной длины
тем мы группируем члены преобразования Лапласа так, чтобы получить отноше­
ние Н(б) в виде (6-10). (Действительно удивительно здесь то, что для анализа
линейной системы нам не нужно знать, что на самом деле представляет собой
входной сигнал х(Ь)\) Мы можем получить выражение для непрерывной частот­
ной характеристики системы, просто п о д с т а в и в в м е с т о 5 в уравнение для Н(з).
Чтобы оценить устойчивость системы, необходимо разложить полином знамена­
теля //($) на множители, содержащие его корни. Затем следует найти расположе­
ние полюсов системы на 5-плоскости. Любой полюс, расположенный справа от
оси/у, служит признаком неустойчивости системы.
.
Lу(0
i7w
о
t
, У(П
і/со
X
а
X
, у(0
а
t
, У(0
,;<о
>
>
а
,/со
і t yg)_______
----- X---►
ст
Рис. 6 .1 1 . Различные варианты расположения полюсов H{s) и соответствующие импу­
льсные характеристики: (а) единственный полюс в точке a < 0; (b) сопряжен­
ные полюсы при о < 0; (с) единственный полюс о = 0; (d) сопряженные полюсы
с о = 0; (е) единственный полюс при о > 0; (f) сопряженные полюсы при о > 0
235
6.3. Z-преобразование
Область
I
Область
устойчивости I неустойчивости
О'
Условная
устойчивость
Рис. 6 .1 2 . э-плоскость, области устойчивости и неустойчивости расположения по­
люсов линейной непрерывной системы
Теперь вернемся к нашей главной цели —г-преобразованию. Процесс анализа
БИХ-фильтров требует, чтобы мы заменили преобразование Лапласа г-преоб­
разованием, а 5-плоскость —г-плоскостью. Давайте познакомимся с г-преобразова­
нием, узнаем, что представляет собой новая для нас г-плоскость, обсудим устойчи­
вость БИХ-фильтров и выполним проектирование и анализ нескольких простых
БИХ-фильтров.
6.3. Z -преобразование
г-преобразование —близкий родственник преобразования Лапласа1. В то время
как преобразование Лапласа используется для упрощения анализа непрерывных
дифференциальных уравнений, г-преобразование облегчает анализ дискретных
разностных уравнений. Давайте дадим определение г-преобразования и исследуем
его важные свойства, чтобы понять, как оно используется при анализе цифровых
БИХ-фильтров.
г-преобразование дискретной последовательности h(n), обозначенное как Я(г),
определяется следующим образом:
00
Я(г) = J h(n)z-n ,
(6-16)
п = - 00
где переменная г —комплексная. Если (6-3) давало нам преобразование Лапласа
непрерывного сигнала, то г-преобразование выполняется над дискретной после­
довательностью h(n), преобразуя ее в непрерывную функцию Я(г) непрерывной
1 В начале 1960-х Джеймс Кайзер (James Kaiser), в честь которого названо окно Кайзера,
разработал теорию цифровых фильтров, используя математическое описание, извест­
ное как г-преобразование [4, 5]. До этого времени использование г-преобразования
ограничивалось областью дискретных систем управления [6-9].
236
Гпава 6. Фильтры с импульсной характеристикой бесконечной длины
комплексной переменной 2 . Подобно тому, как функция е~~5?является общей фор­
мой решения линейных дифференциальных уравнений,
представляет собой
общую форму решения линейных разностных уравнений. Более того, как преоб­
разование Лапласа Д я) представляет непрерывную поверхность над 5-плоско­
стью, так и 2 -преобразование Н(г) представляет непрерывную поверхность над
2 -плоскостью. Чтобы подогреть ваш интерес, скажем, что, если Н(г) представляет
собой передаточную функцию БИХ-фильтра, то расчет поверхности Н(г) даст
нам АЧХ фильтра, а расположение полюсов и нулей Н(г) позволит оценить
устойчивость фильтра.
Мы можем вычислить частотную характеристику БИХ-фильтра, выразив 2 в
полярных координатах как 2 = ге№, где г — модуль, а со — аргумент комплексной
переменной. В этой форме 2 -преобразование приобретает вид
00
00
Н(г) =Н(ге1(°) = ^ к (п )(ге ^ ш)~п =^1г(п)г~пе~1п0) >
п = ~ 00
(6-17)
72= - 0 0
Рис. 6 .1 3 . Единичная окружность в комплексной 2 - П Л О С К О С Т И
Уравнение (6-17) можно рассматривать как преобразование Фурье произведе­
ния исходной последовательности к(п) на экспоненциальную последовательность
г~п. Если г = 1, (6-17) превращается в преобразование Фурье. Следовательно, на
2 -плоскости контур поверхности Н(г) при \г\ = 1 есть преобразование Фурье по­
следовательности А(и). Если Ь(п) представляет собой импульсную характеристи­
ку фильтра, вычисление Н(г) при \г\ = 1 дает частотную характеристику фильтра.
Где же на комплексной 2-плоскости располагается контур [г| = 1? Это окружность
с радиусом, равным единице, цецтр которой совпадает с началом координат 2 = 0.
Эта окружность, которая так важна, что ей дали собственное имя единичная окруж­
ность, показана на рисунке 6.13. Вспомним, что частотная осьуа» на 5-плоскости
преобразования Лапласа прямолинейна и проходит от
до +оо радиан/сек. Час­
тотная же ось оо на комплексной 2-плоскости охватывает только диапазон от - я до
+л радиан. Это соотношение между о с ь ю н а 5-плоскости преобразования Лапла­
са и единичной окружностью на 2-плоскости позволяет нам увидеть, что частотная
ось 2-плоскости эквивалентна наматыванию оси
в 5-плоскостц на единичную
окружность в 2 -плоскости, как показано на рисунке 6.14.
237
6 .3 .І-преобразование
в-плоскость
г-плоскость
Область
неустойчивости
ш*
=со$
^геаі
=2
Рис. 6 .1 4 . Отображение в-плоскости преобразования Лапласа на г-плоскость. Все
частоты даны в радианах/сек
Далее, частота ш на г-плоскости не является расстоянием по прямой, а пред­
ставляет собой угол. Если со на рисунке 6.13 представляет собой обобщенный нор­
мированный угол в радианах, изменяющийся в пределах от - я до +я, мы можем
связать его с частотой дискретизации/5, определив новую частотную переменную
со5 = 2 л /3 в радианах в секунду. На рисунке 6.14 показана периодичность пред­
ставления дискретной частоты с периодом (о3 = 2 л /8 радиан/сек или / 8 Гц. При
продвижении по оси частот
в 5-плоскости в любом направлении мы можем
уйти в бесконечность, при движении же по оси частот со в г-плоскости мы будем
наматывать круги но единичной окружности. Рисунок 6.14 показывает, что мож­
но рассматривать только диапазон частот о от - л / $ до + я/5 радиан/с, и это еще
одна иллюстрация универсальной периодичности частотной области дискретных
сигналов. (Диапазон от - л / 5 до +л/5 радиан/сек соответствует, конечно же, диа­
пазону частот от ~/х/2 до +/5/ 2 Гц.) Имея выражение для единичной окружности
2 = е^ш, позже мы покажем, что для получения частотной характеристики фильтра
нужно подставить в передаточную функцию Н(г) фильтра е!ш вместо 2 .
6 .3 .1 . Полюсы и нули на г-плоскости и условие
устойчивости
Одной из важных особенностей 2-плоскости является то, что область устойчи­
вости фильтров совпадает с внутренней частью единичного круга на 2-плоскости.
Имея передаточную функцию цифрового фильтра Н(г), мы можем изучить распо­
ложение ее полюсов и нулей и сделать вывод об устойчивости фильтра. Если все
полюсы находятся внутри единичного круга, фильтр устойчив. Но если хотя бы
один какой-нибудь полюс оказывается за пределами единичного круга, фильтр не­
устойчив. На рисунке 6.15 показаны примеры размещения полюсов в 2-плоскости и
соответствующие им дискретные импульсные характеристики. Было бы хорошо,
если бы вы сравнили карты 2-плоскости и дискретные импульсные характеристики
на рисунке 6.15 с картами 5-плоскости и непрерывными характеристиками на ри­
сунке 6.11. Выходной сигнал у(п) на рисунках 6,15 (с!) и (е) показывает нам пример
неограниченного нарастания выходного сигнала неустойчивого фильтра всякий
раз, когда входной сигнал х (п ) становится отличным от нуля. Чтобы избежать
238________ Гпава 6. Фильтры с импульсной характеристикой бесконечной длины
такой ситуации, любой БИХ-фильтр должен проектироваться так, чтобы все по­
люсы его передаточной функции Н(г) лежали внутри единичного круга. Как и
цепь, прочность которой определяется самым слабым звеном, БИХ-фильтр лишь
настолько устойчив, насколько устойчив самый неустойчивый из его полюсов.
У(п)
(а)
п
А у (л )
МГ0
= 2п/а>0
Т
ш
*
(Ь)
V
ш*■
<ЖМ "
% !**
**■*
ь-
п
ж
АI У(п)
Ж
Ж
)*
■
(с)
п
Ж
Ж .....
1
й
А у (п )
(с))
п
^У(")
ж
ж *
ж
ж
жжж
* 4
^
м" —
"—Ж—-----ж-------ж------ж------- ж-------ж------ ж------►
(е)
—т 0
X
гва1
*
* жж
_
Рис. 6 .1 5 . Различные карты расположения полюсов Н(г) и соответствующие им им­
пульсные характеристики: (а) единственный полюс внутри единичного
круга; (Ь) сопряженные полюсы внутри единичного круга; (с) сопряжен­
ные полюсы на единичной окружности; (с1) единственный полюс за пре­
делами единичного круга; (е) сопряженные полюсы за пределами
единичного круга
Частота осцилляции 0)о импульсных характеристик на рисунках 6.15 (с) и (е),
конечно же, пропорциональна углу полюса относительно действительной оси 2геа/,
или а>0 радиан/сек соответствуют / 0 = со0 / 2 л Гц. Поскольку точка пересечения
оси - г геа1 с единичной окружностью г = - 1 соответствует л радиан (или л / 5ради­
ан/сек =/ 3/ 2 Гц), угол (о0 = л / 4 на рисунке 6.15 показывает, ч т о /0 = /5/8, и наша
импульсная характеристика у(п) имеет восемь отсчетов на период частоты/0.
239
6.3. Z-преобразование
6.3 .2. Использование z -преобразования для анализа
БИХ-фильтров
Прежде, чем мы сможем добавить z-преобразование к набору инструментов
цифровой обработки сигналов, следует рассмотреть еще один вопрос. Нам необ­
ходимо определить, что представляет собой операция задержки на рисунке 6.3 по
отношению к z-преобразованию. Для этого предположим, что у нас есть последо­
вательность х(п), z-преобразование которой есть X(z), и последовательность у(п)
= х (п -1), z-преобразование которой есть 7(z), как показано на рисунке 6.16. z-npeобразование у(п) по определению имеет вид
00
00
Y(z) = 2 > ( n ) z - = ^ x(n -1 )z~ n .
П = — сс
(6-18)
Y l~ — oo
Теперь, если мы положим k = п -1 , то Y(z) принимает форму
00
00
F(z) = ^ x(k)z~(k+1) = ^ x ( k ) z ~ k z~1,
&=-00
£=-00
(6-19)
которую мы можем переписать как
00
Y(z) = z~1 ^ x ( k ) z ~ k = z~1[X(z)],
£=-00
( 6 - 20 )
y(n)_=x(n -1)
Х ( П )
З а д е р ж ка
Х( z)
Y(Z)
Рис. 6 .1 6 . Выходная последовательность y(n) представляет собой задержанную
на один период дискретизации входную последовательность х(п)
Следовательно, одна единица задержки во временной области приводит к ум­
ножению z-преобразования на z~1.
Рассматривая единичную задержку по времени как эквивалент оператора z~1,
мы приходим к соотношениям, показанным на рисунке 6.17, о которых можно ска­
зать, что X(z)z 0 = X(z) — это z-преобразование x(n), X(z)z~1— z-преобразование по­
следовательности х(п), задержанной на один отсчет, X(z)z~2 — z-преобразование
последовательности х(п), задержанной на два отсчета, a X(z)z~^ — z-преобразование последовательности х(п), задержанной на k отсчетов. Таким образом, переда­
точная функция вида z~k эквивалентна задержке на kts секунд, где ts — период
времени между последовательными отсчетами, или единица, деленная на частоту
дискретизации, ts = 1/ f s. Поскольку задержка на один отсчет эквивалентна мно­
жителю z~1, символ единичной задержки, использованный на рисунках 6.2 и 6.3,
обычно помечают оператором z~1.
Задержимся на минуту и посмотрим, где мы находимся в данный момент.
Наше знакомство с преобразованием Лапласа и его 5-плоскостью, понятие устой­
чивости, основанное на расположении полюсов H(s), введение z-преобразования
с его полюсами в z-плоскости, и концепция оператора z~1, обозначающего еди­
ничную задержку по времени, привели нас к поставленной цели: мы можем те­
перь изучить разностное уравнение или структуру БИХ-фильтра и сразу
240
Гпава 6. Фильтры с импульсной характеристикой бесконечной длины
записать передаточную функцию фильтра Н(г). Вычислив соответствующим об­
разом передаточную функцию БИХ-фильтра Н(г), мы можем получить частот­
ную характеристику фильтра и проверить его устойчивость. Помня об этой
амбициозной цели, займемся выводом уравнений в 2 -области, необходимых для
анализа БИХ- фильтров.
Используя соотношения, приведенные на рисунке 6.17, начертим схему, при­
веденную на рисунке 6.3, как обобщенный БИХ-фильтр М -го порядка, используя
оператор
как показано на рисунке 6.18. (В аппаратуре операции задержки г~1
реализуются как регистры сдвига, хранящие последовательные входные и выход­
ные отсчеты. При программной реализации БИХ-фильтра операция 2 “1 просто
указывает на последовательные ячейки памяти, в которых хранятся входная и
выходная последовательности.) Структуру БИХ-фильтра на рисунке 6.18 часто
называют Прямой формой I.
Разностное уравнение во временной области, описывающее обобщенный БИХфильтр М-то порядка, имеющий N секций прямой связи и М секций обратной свя­
зи, показанный на рисунке 6.18, имеет вид
Выражение
для БИХ-фильтра М-то
порядка во временной
области
у(п) = Ь(0)х(п) + Ь(1)х(п-1) +
+ Ь (2)х(п-2) + ... + Ь(№)х(п-М) +
(6-21)
+ а (1 )у(п -1 ) + а (2 )у (п -2 ) + ... +
+ а(М )у(п -М ) .
|Х(Л-2)
х(п)
Временная
область
З адерж ка
Х(г)
Задерж ка
г '1
г - область
27-1
З адерж ка
Х(2)2 -к
г-3
Х(2)2 -2
Х(2)2'1
х(п-к)
гХ(П-З)
Задерж ка
z7-1
£
Рис. 6 .1 7 . Соответствие операции задержки по времени и операции г к в г-области
В 2 -области выходной сигнал такого БИХ-фильтра можно записать как
7 (2 )
= Ь(0)Х(г) + Ь (1)Х (г)г-1 + Ь(2)Х(г)г~2 + ... + Ь(Щ Х ^ г ^ +
( 6 - 22 )
+ А (/)7(2)2-у + й (2 )Г(2 )2 “2 + ... + й (М )У(2)2-М ,
где У(г) иХ ( 2 ) представляют собой 2 -преобразования последовательностей у(п) и
х(п) соответственно. Рассмотрите уравнения (6-21) и (6-22) внимательно и обра­
тите внимание на то, что единичные задержки по времени преобразуются в отри­
цательные степени 2 в 2 -области. Более компактная форма выражения для У(г)
выглядит так
Выражение для
БИХ-фильтра М-то
порядка в г-области
N
Г(2 ) =
М
ь(к)г~к + 7 (2 )2 а(к)г~к .
к=0
к=1
(6-23)
241
6.3. Е-преобразование
Рис. 6 .1 8 . Обобщенная структура (Прямая форма I)-БИХ-фильтра М -го порядка,
имеющего N секций прямой связи и М секций обратной связи, оператор
-1 символизирует задержку по времени на один отсчет
Итак, мы достигли места, где можно описать передаточную функцию обоб­
щенного БИХ-фильтра. Приведя подобные члены в (6-23), получаем:
М
N
Г(2) [ у~ 2 а(Ь)г~к\ = х ( 2 ) ^ Ь{к)г~к .
к=1
к=0
(6-24)
И, наконец, мы получаем передаточную функцию фильтра в 2 -области Я(г)
У(г)/Х(г), где Я(г) имеет вид
Передаточная функция
БИХ-фильтра
М-го порядка
в г-области
Я(г) = У(г)/Х(г) =
N
=
М
Ь(к)2~к ] / [ 1
к=0
- 2
(6-25)
а ( к ) 2 ~ к ].
к=1
(Как и в случае передаточных функций Лапласа, порядок нашей передаточной
функции в г-области определяется наибольшим показателем степени при г в зна­
менателе, в рассматриваемом случае —это М.) Уравнение (6-25) говорит нам все,
что необходимо знать о БИХ-фильтре. Мы можем вычислить корни знаменателя,
чтобы определить расположение полюсов фильтра на 2-плоскости, которое необ­
ходимо для проверки устойчивости.
Подобно тому, как передаточная функция Лапласа Я ( 5) в (6-9) описывала
комплекснозначную поверхность над или под 5-плоскостью, так и Я(г) описывает
комплекснозначную поверхность над или под г-плоскостыо. Пересечение поверхно­
сти Я(г) с боковой поверхностью цилиндра, построенного на единичной окружнос­
ти г = е№ дает нам комплексную частотную характеристику фильтра. Это значит,
242
Гпава 6. Фильтры с импульсной характеристикой бесконечной длины
что подстановка е^швместо г в передаточной функции (6-25) даст нам выражение
для частотной характеристики БИХ-фильтра Нп к (со) вида
Частотная
характеристика
БИХ-фильтра
М-го порядка в
экспоненциальной
,
форме
Нцр(ш) = Н (г) |
л,
_ у
" ' '
к=0
(6.26)
м
,,
' *-
у
"
к~1
-щ
'
-I'
Изменим форму (6-26) и получим более полезные выражения для модуля и
аргумента Нп к (со) (АЧХ и ФЧХ фильтра). Поскольку Нп к(оо) является отноше­
нием комплексных величин, мы можем представить Н11К(оо) в алгебраической
форме:
N
М
Нцк(ш) = 2 Ь(к)[со§(ксо) - ]$т(к(о)]/{1
к-0
или
Частотная
характеристика
БИХ-фильтра
М-го порядка
в алгебраической
форме
а(к)[соБ(ксо) -у ш 1(&ю)]},(6-27)
к=1
^
н 1т (ш) = [ 2 Кк)соБ(ка))
£=0
м
_
^
О Д э т ^ )]/
к=0
_м
(6-28)
а(к)соБ(ксо) + ] £ , а(£)5т(£со)]
к=1
1г=1
Обычно проще и полезнее рассматривать комплексную частотную характери­
стику в виде модуля и аргумента. Давайте получим соответствующие выражения,
представив числитель и знаменатель (6-28) в виде двух комплексных функций
круговой частоты со. Обозначив числитель (6-28) как N 4171( 00), запишем
N 11171(00) = Ш тгеа^оо) + ]Ш т1таё(о)) ,
(6-29)
где
N
т т Геа№ ) = ^ Ь ( к ) •соБ(коо) ,
к=0
N
Ш т ІТпаХ(о) = - ^ 6(&)в8Іп(&а>) ,
к=0
(6-30)
Аналогично знаменатель (6-28) можно представить в виде
Оеп((о) = Оепгеа1(а)) +]Е>епіта^а>),
где
м
ВеИ-гео^Ы) = 1 - ^а(&)*С08(&й>) ,
к=1
(6-31)
243
6 .3 .1-преобразование
(6-32)
Такое представление АГит(со) и Оеп(со) позволяет нам записать Н11к(оо) в более
простой форме
Н цК(со) = Шт(со)/Оеп(со) =
IМитгеа1(а>) +;Митшаё((о)] /[Оепгеа{о)) +]Оепхт(Щ(ш)\ =
(6-33)
= [ | Кит(а)) | АфШт(а))] /[ | Оеп(со) \ £фВеп(а))]
(6-33')
Используя (6-33) и правила деления комплексных чисел (А-2) и (А -19’), при­
веденные в приложении А, мы получаем АЧХ БИХ-фильтра в виде
\Нця(со)\ = \Шт(со) \/\Оеп(со) | =
(6-34)
{^[К ит геа!((о)]2 + [ т т 1ТП(Щ(а>)\ 2}/{ V [Оепгеа1(со)}2 + [Оеп1тщ(ш)]2)
Далее, фазо-частотная характеристика фильтра фц%(и>) равна разности аргу­
ментов числителя и знаменателя, или
Ф ц я ^ Ф ш т ^ ) ~ Фоеп(ш) =
= ^ п - 1[ т т 1таё(а ))/т т геа1(ш)] - Ъ п - 1[Веп1та8((о)/Вепгеа1((о) ] .
(6-35)
Напомним, что мы проделали все эти алгебраические упражнения с целью вы­
вода выражений для расчета АЧХ \Нп к (со)\ и ФЧХ фцц(со) БИХ-фильтров через
коэффициенты фильтра в (6-30) и (6-32). Скоро мы воспользуемся этими выра­
жениями для анализа реального БИХ-фильтра.
Следует отметить, что мы можем использовать (6-34) и (6-35) для вычисления
АЧХ и ФЧХ БИХ-фильтров как функции частоты со. Так что же такое со? Это
нормированная круговая частота, представленная углом на комплексной плоско­
сти, как на рисунке 6.13, принимающая значения в диапазоне - л < со < +л. В еди­
ницах круговой частоты дискретизации со3 (см. рисунок 6.14) со перекрывает
диапазон - со8 /2 < со < + со$/2. В единицах нашей старой знакомой / 5 выражения
(6-34) и (6-35) справедливы для диапазона от - / 5 /2 до + /5 /2 Гц. Так, например,
если цифровые данные поступают на вход фильтра с частотой / 5 = 1000 отсчетов в
секунду, мы можем использовать (6-34), чтобы построить график АЧХ фильтра в
диапазоне частот от -500 Гц до +500 Гц.
Хотя выражения, описывающие комплексную частотную характеристику
Н ц^со), амплитудно-частотную характеристику \Н11К(со)\ и фазо-частотную ха­
рактеристику фп к (со), на первый взгляд выглядят сложновато, мы продемонстри­
руем их простоту и полезность на примере анализа простого БИХ Ф НЧ второго
порядка, показанного на рисунке 6.19, частота среза которого равна со5 /10. Рас­
смотрев структуру фильтра, мы можем записать его разностное уравнение в виде
у(п) = 0.0605х(п) + 0.121х(п-1) + 0.0605х(п-2) +
+ 1.194у(п-1) - 0 .4 3 6 у(п -2 ),
(6-36)
244________ Гпава 6. Фильтры с импульсной характеристикой бесконечной длины
Рис. 6 .1 9 . Пример БИХФНЧ второго порядка
или в 2 -области:
7 (2 )
= 0.0605Х(г) + 0.121Х(г)г-1 + 0.0605Х{г)г~-2 +
(6-37)
+ 1.194У(г)2-1 - 0Л36У(1)2- 2 ,
Используя (6-25), записываем передаточную функцию фильтра Я(г):
Я ( 2 ) = У(2 )/Х ( 2 ) = [0.0605г° + 0.121г~1 + 0.0605г~2] /
/[1 - 1.194г~1 + 0.436г~2] .
(6-38)
Подставив 2 = еіш, мы видим, что частотная характеристика нашего БИХ-фильтра описывается выражением
Нш (ш) = [0.0605е -)°ш + 0.121е
+ 0.0605е ~)2ш]/
(6-39)
/[1 - 1.194е~і1ш + 0Л36е~і2ш].
Мы почти у цели. Вспомнив тождества Эйлера, а также то, что соб(0) =
з т (0 ) = 0, мы можем записать Нп к (со) в алгебраической форме:
Нця(ы) =
=
{0 .0 6 0 5
/{1
-
+
0 .1 2 1 с о ^ (1 ш )
+
1
и
(6-40),
0 М 0 5 с о ь (2 (о )-]\0 .1 2 1 ь т {1 < о )+ 0 .0 6 0 5 $ т (2 о ))}}/
1 .1 9 4 соб(1(о ) + 0 .4 3 6 с о $ ( 2 ш ) + ] [ 1 .1 9 4 ъ т ( 1 с о )
-
0 .4 3 6 ъ т (2 ш )\).
Выражение (6-40) и есть то, к чему мы стремились, и если мы вычислим его мо­
дуль для-частот в диапазоне - я < (о < я, мы получим АЧХ \Нп к (со)\, показанную
черной линией на рисунке 6.20 (а). Для сравнения на этом же рисунке показана
АЧХ КИХ-фильтра с 5 ответвлениями. Хотя оба фильтра требуют одинакового ко­
личества операций (пять умножений на один выходной отсчет), АЧХ БИХ-фильтра
выглядит лучше. Обратите внимание на более -крутую переходную полосу и более
низкий уровень боковых лепестков характеристики БИХ-фильтра по сравнению с
характеристикой КИХ-фильтра'.
Чтобы это сравнение БИХ и КИХ-фильтров имело смысл, коэффициенты обоих филь­
тров выбирались так, чтобы каждый из них аппроксимировал идеальную частотную
характеристику, показанную на рисунке 5.17 (а).
245
6.3. Z-пpeoбpaзoвaниe
|Нмк(со)| для БИХ-фильтра
|Нр,к ((1))| для КИХ-фильтра
/
с 5 ответвлениями
(а)
(О= - п
(-У2)
со —- тс/2
О
(-У*)
0||К(ш) для БИХ-фильтра
о) =л/4
со =п12
(У 8)
(^/4)
(У2 )
Градусы
•■180
(Ь)
со
-180
/
0р1Р>((о) Для КИХ-фильтра
с 5 ответвлениями
Рис. 6 .2 0 . Частотные характеристики БИХ-фильтра (черная линия), показанного на
рисунке 6.19, и КИХ-фильтра с 5 ответвлениями (серая линия): (а) Ампли­
тудно-частотные характеристики; (Ь) фазо-частотные характеристики
А теперь небольшое предупреждение. Знаки коэффициентов знаменателя (6-40)
легко изменить на обратные, поэтому будьте внимательны, когда будете выпол­
нять эти вычисления самостоятельно. Некоторые авторы обходят эту трудность,
показывая коэффициенты а(к) на рисунке 6.18 со знаком минус, так что члены
знаменателя (6-25) всегда суммируются. Кроме того, многие коммерческие про­
граммы проектирования БИХ-фильтров выдают значения коэффициентов а(&),
знаки которых при подстановке в структуру на рисунке 6.18 необходимо изменить
на противоположные. (Если, используя программы расчета и анализа БИХ-филь­
тров, вы получили странный и неожиданный результат, попробуйте поменять зна­
ки коэффициентов а(к) и посмотреть, решает ли эта операция вашу проблему.)
Черная кривая на рисунке 6.20 (Ь) —это фазо-частотная характеристика наше­
го БИХ-фильтра ф1[К(ш). Обратите внимание на ее нелинейность по сравнению с
ФЧХ КИХ-фильтра. (Помните, что нас интересует фазо-частотная характери­
стика только в полосе пропускания. Так что разрывы фазы КИХ-фильтра не име­
ют значения.) Нелинейность ФЧХ БИХ-фильтров является неотъемлемым их
свойством и, помня о негативных последствиях этой нелинейности, описанных
при обсуждении групповой задержки в разделе 5.8, следует внимательно рассмат­
ривать возможные ее проявления, когда мы решаем использовать БИХ-фильтры
вместо КИХ-фильтров в каждом конкретном случае. Каждый разработчик дол­
жен задать себе следующий вопрос: «Какая величина искажения фазы допустима
при выигрыше в количестве операций и скорости обработки данных от примене­
ния БИХ-фильтров?» И найти ответ на него.
Чтобы проверить устойчивость БИХ-фильтра, мы должны вычислить корни
полинома знаменателя второго порядка в (6-38). Эти корни являются полюсами
246
Гпава 6. Фильтры с импульсной характеристикой бесконечной длины
H(z), и если их модули меньше единицы, фильтр будет устойчивым. Чтобы вычис­
лить эти два полюса zp1 и zp2, сначала умножим H(z) на z2/z2, чтобы получить поли­
номы по положительным степеням 2. После этого знаменатель H(z) приобретает вид
Знаменатель H(z): z2 - 1.194z + 0.436.
(6-41)
Находя корни (6-41) с использованием квадратного уравнения из (6-15), мы
получаем сомножители
Знаменатель H(z): (z + zni)(z + z„о) =
p
p
= (2 - 0.597 +j0.282)(z - 0.597 -jO.282)
(6-42)
Итак, когда 2 = -zp1 = 0.597 - jO.282 или z = -z p2 = 0.597 +jO.282, знаменатель
передаточной функции фильтра H(z) обращается в ноль, a H(z) становится беско­
нечной. На рисунке 6.21 (а) мы показываем расположение полюсов 0.597 + jO.282
и 0.597 -jO.282 вместе с поверхностью \H(z)\. Поскольку эти полюсы расположе­
ны внутри единичного круга (их модули меньше единицы), БИХ-фильтр из на­
шего примера устойчив. На рисунке 6.21 (Ь) толстой черной линией показана
линия пересечения поверхности |Я(2 ) | с боковой поверхностью цилиндра, основа­
нием которого служит единичная окружность. Поскольку на единичной окружно­
сти 2 = еУ°, уравнение этой кривой имеет вид \H(z)\u=i = \Н(ш)\, т- е- эта кривая
представляет собой АЧХ фильтра на 2-плоскости. Кривая \Н(а))\ соответствует
\НцК(а)) \ на рисунке 6.20 (а).
6 .3 .3 . Другие структуры БИХ-фильтров
Прямая форма I БИХ-фильтра на рисунке 6.18 может^быть преобразована в
ряд других структур. Нам будет легче развить эту мысль, предположив, что коли­
чество прямых и обратных связей одинаково, а именно М = N = 2, как на рисунке
6.22 (а), и рассматривая части фильтра, содержащие прямые и обратные связи,
как два отдельных фильтра. Поскольку обе половины фильтра линейны, мы мо­
жем поменять их местами, как показано на рисунке 6.22 (Ь), при этом выходной
сигнал у(п) не изменится.
Цель такой перестановки состоит в том, что мы получаем две одинаковые це­
почки задержек на рисунке 6.22 (Ь). Поскольку на рисунке 6.22 (Ь) одна и та же
последовательность g(п) сдвигается по обеим цепям задержки, мы можем убрать
одну из них и получить упрощенную Прямую форму II, показанную на рисунке
6.22 (с), которая требует только половину элементов задержки по сравнению с
Прямой формой I.
Другой популярной структурой БИХ-фильтров является Транспонированная
прямая форма И. Мы получаем эту структуру, исходя из Прямой формы II, преоб­
разовав ее узлы в сумматоры, а сумматоры в узлы, изменив направление стрелок и
поменяв местами х(п) и у(п). (Операцию транспонирования можно также приме­
нять к структурам КИХ-фильтров.) Выполнение этих операций дает Транспони­
рованную прямую форму II, показанную на рисунке 6.22(d)'.
1 В других работах, а также в отечественной литературе Прямую форму II и ее транспониро­
ванный вариант называют также Каноническими структурами I и II. —(прим. перев.).
6 .3 .1-преобразование
247
Фильтры на рисунке 6.22 обладают абсолютно одинаковыми характеристика­
ми до тех пор, пока рассматривается их реализация в арифметике с неограничен­
ной точностью представления чисел. Однако при использовании квантованных
коэффициентов, округления или усечения, используемых для устранения оши­
бок двоичного переполнения, разные структуры фильтров дают разные шумовые
характеристики и разную устойчивость. В действительности Транспонированная
прямая форма II была разработана, потому что ведет себя лучше, чем Прямая фор­
ма II, при реализации в целочисленной арифметике. Разработчики БИХ-фильтров
пришли к общему мнению, что Прямая форма I наименее чувствительна к кван­
тованию коэффициентов и наиболее устойчива. Мы вернемся к арифметике ко­
нечной точности в разделе 6.7.
Рис. 6 .2 1 . Характеристики БИХ-фильтра в г-области: (а) расположение полюсов;
(Ь) АЧХ
248
Гпава 6. Фильтры с импульсной характеристикой бесконечной длины
Ь(2)
Ь(2)
з(2)
а(2)
(а)
(Ь )
х(п)
Транспонированная
прямая форма I!
у^
-И^—К+>
Ь(0)
I
►(+><—<ЯН-
—
ь(1) Г^Г! а(1)
-и^ъ-К +Н —
ь(2)
(с)
а(2)
(СІ)
Рис. 6 .2 2 . Измененные структуры БИХ-фильтров 2-го порядка: (а) Прямая форма I;
(Ь) Модифицированная прямая форма I; (с) Прямая форма II; (сі) Транс­
понированная прямая форма II
Кстати, из-за наличия обратных связей БИХ-фильтры часто называют рекур­
сивными фильтрами. Соответственно, КИХ-фильтры называют нерекурсивными.
Общее заблуждение здесь состоит в том, что все рекурсивные фильтры приравни­
ваются к БИХ-фильтрам. А это не так, поскольку КИХ-фильтры могут быть реа­
лизованы и в рекурсивных структурах (см. раздел 7.1). Следовательно, термины
рекурсивный и нерекурсивный следует применять по отношению к структуре филь­
тра, а термины БИХ или КИХ следует использовать для описания длительности
импульсной характеристики фильтра [ 10 , 1 1 ].
Теперь, когда мы представляем себе, какими характеристиками обладают и в ка­
ких структурах реализуются БИХ-фильтры, познакомимся коротко с тремя метода­
ми их проектирования. Эти методы проектирования БИХ-фильтров известны под
впечатляющими названиями: метод инвариантного преобразования импульсной ха­
рактеристики, метод билинейного преобразования и оптимизационный метод. Пер­
вые два метода используют аналитические (выведенные с помощью пера и бумаги)
процедуры аппроксимации аналоговых фильтров1. Поскольку методы расчета ана­
логовых фильтров очень хорошо разработаны, разработчики могут воспользоваться
В оставшейся части этой главы мы будем использовать термин аналоговый фильтр,
благодаря его популярности, для обозначения фильтров, реализуемых аппаратно с по­
мощью резисторов, конденсаторов и (возможно) операционных усилителей.
6.4. Метод инвариантного преобразования импульсной характеристики
249
преимуществами многочисленных методов проектирования аналоговых фильтров
для проектирования, скажем, фильтров Баттерворта с их очень гладкой АЧХ
или фильтров Чебышева с их пульсирующей в полосе пропускания АЧХ и более
крутой переходной полосой. Оптимизационные методы (безусловно, самые по­
пулярные методы проектирования БИХ-фильтров) используют инструмента­
рий линейной алгебры, предоставляемый коммерческими пакетами программ
проектирования фильтров.
Методы инвариантного преобразования импульсной характеристики и били­
нейного преобразования требуют определенной базовой подготовки, так что на­
чинающий в области ЦОС читатель при первом чтении этой книги может их
пропустить. Однако эти методы могут быть очень полезными в будущем, когда
ваши знания, опыт и сложность решаемых задач в области ЦОС вырастут.
6.4. Метод инвариантного
преобразования импульсной
характеристики
Метод проектирования БИХ-фильтров с помощью инвариантного преобра­
зования импульсной характеристики основан на предположении, что мы можем
спроектировать дискретный фильтр, импульсная характеристика которого яв­
ляется дискретизированной версией импульсной характеристики некоторого
аналогового фильтра. Если этот аналоговый фильтр (который часто называют
фильтром-прототипом) имеет требуемую частотную характеристику, то наш
проектируемый БИХ-фильтр должен обеспечивать аппроксимацию этой требуе­
мой характеристики. Эквивалентность импульсных характеристик при таком ме­
тоде проектирования изображена на рисунке 6.23, где для обозначения импульса
мы использовали обычное обозначение 6, а Ьс(і) — импульсная характеристика
аналогового фильтра. На рисунке 6.23 (а) мы используем нижний индекс "с"', что­
бы подчеркнуть непрерывный характер аналогового фильтра. Рисунок 6.23 (Ь) ил­
люстрирует определение импульсной характеристики дискретного фильтра как
выходной последовательности фильтра при подаче на его вход одного отсчета
единичной величины, которому предшествуют и за которым следуют нулевые от­
счеты. Нашей задачей является проектирование цифрового фильтра, импульсная
характеристика которого является дискретизированной версией непрерывной
импульсной характеристики аналогового фильтра. Соответствие непрерывной и
дискретной импульсных характеристик предполагает, что мы можем отобразить
каждый полюс передаточной функции аналогового фильтра И с( б) в 5-плоскости
на полюс передаточной функции дискретного фильтра Н(г) в 2 -плоскости. Разра­
ботчики обнаружили, что метод инвариантного преобразования импульсной ха­
рактеристики действительно дает полезные БИХ-фильтры, если только частота
дискретизации намного превосходит ширину спектра фильтруемых сигналов.
Другими словами, БИХ-фильтры, рассчитанные этим методом, подвержены
влиянию наложений спектра, поскольку частотные характеристики реальных
От английского continuous, что значит непрерывный —(прим, перев )
250
Гпава 6. Фильтры с импульсной характеристикой бесконечной длины
аналоговых фильтров не являются строго ограниченными в частотной области.
Наложение может проявиться в АЧХ фильтра, как показано на рисунке 6.24.
—— *-----V —- у .....................»•
(а)
Непрерывное
время
Аналоговый
фильтр
*(0 =5(0
Hc(s)
Импульсная
характеристика = Лс(?)
к
щ *
(Ь)
Цифровой
БИХ-фильтр
х(п) = 5(п)
H[z)
щ
Дискретное
время
Импульсная
Рис. 6.23. Инвариантность импульсной характеристики: (а) непрерывная импуль­
сная характеристика аналогового фильтра; (Ь) дискретная импульсная
характеристика цифрового фильтра
(-2fs)
(-2fs)
i-fs)
(-fs)
(fs)
(fs)
Ws)
(2fs)
Рис. 6.2 4 . Наложения в частотной области при инвариантном преобразовании им­
пульсной характеристики: (а) АЧХ аналогового фильтра-прототипа; (Ь)
копии АЧХ, где Нар (со) — дискретное преобразование Фурье последова­
тельности А?(л7) = />с (лГ5 ); (с) возможная результирующая АЧХ с наличием
наложения
6.4. Метод инвариантного преобразования импульсной характеристики______ 251
Из того, что мы узнали в главе 2 о размножении спектра при дискретизации, сле­
дует, что, если функция на рисунке 6.24 (а) представляет собой спектр непрерывной
импульсной характеристики Ас( 0>т0 спектр дискретной импульсной характеристи­
ки /гс(и£5) представляет собой размноженный спектр на рисунке 6.24 (Ь).
На рисунке 6.24 (с) мы показываем возможный результат наложения, здесь се­
рая линия изображает требуемую частотную характеристику Я 11К(со). При исполь­
зовании метода инвариантного преобразования импульсной характеристики
реальная АЧХ может оказаться такой, какая показана на рисунке 6.24 (с) черной
линией. По этой причине мы стараемся сделать частоту дискретизации / 5 как
можно больше, чтобы минимизировать перекрытие первичной частотной харак­
теристики и ее спектральных изображений, разнесенных на расстояние, кратное
± / 5 Гц. Чтобы понять, как наложение может влиять на БИХ-фильтры, проектиру­
емые этим методом, рассмотрим последовательность необходимых шагов проце­
дуры проектирования, а затем рассмотрим пример проектирования фильтра.
Существует два разных метода проектирования БИХ-фильтров с использова­
нием инвариантного преобразования импульсной характеристики. Первый метод,
который мы назовем Метод 1, требует использования как обратного преобразова­
ния Лапласа, так и 2-преобразования [12, 13]. Второй метод, Метод 2, использует
прямую подстановку, чтобы избежать использования обратного преобразования
Лапласа и 2 -преобразования за счет разложения на простейшие дроби [14-17]. Оба
метода кажутся сложными при словесном описании, но на практике они не так
сложны. Сравним эти методы, перечислив шаги, необходимые при реализации
каждого из них. Метод 1 состоит в следующем:
Метод 1, шаг 1: Спроектировать (или найти готовый) аналоговый фильтр-про­
тотип с требуемой частотной характеристикой1. Результатом вы­
полнения этого шага будет передаточная функция Яс($) в виде
отношения полиномов, такая как
Яс(5) = [6(ЛУУ + 6 ( Л Г - 0 ^ - г +••• + Ь(1)б Щ О )]/
/[а(М )$м + а (М -1 )зм ~1 + ... + а(1)з + а(0)] =
N
М
= [ 2 ^ (^ )^ ]/[
к=0
(6-43)
к=0
которая является общей формой (6-10) при Л^< М и постоянных
коэффициентах а(к) и Ь(Ь).
Метод 1, шаг 2: По передаточной функции Я с($) определить непрерывную им­
пульсную характеристику /гс(£)- Надеюсь, что это можно сделать
с помощью таблиц преобразования Лапласа, не выполняя обрат­
ное преобразование.
При проектировании ФНЧ, например, на этом шаге необходимо определить тип филь­
тра (Чебышева, Баттерворта, эллиптический и т. п.), его порядок (количество полю­
сов) и частоту среза.
252
Глава 6. Фильтры с импульсной характеристикой бесконечной длины
Метод 1, шаг 3: Определить частоту дискретизации / 5 и вычислить период диск­
ретизации ^ = 1/ / 5. Частота дискретизации выбирается в зави­
симости от абсолютной частоты аналогового фильтра-прототипа
в Гц. Из-за проблем наложения, свойственных этому методу, / 5
должна быть как можно выше, как мы покажем позже.
Метод 1, шаг 4: Найти 2-преобразование непрерывной /гс(£) и получить переда­
точную функцию БИХ-фильтра Н(г) в форме отношения поли­
номов от 2 .
Метод 1, шаг 5: Подставить значение (не переменную!) вместо непрерывной пе­
ременной £ в передаточную функцию Я(г), полученную на шаге 4.
Выполняя этот шаг, мы обеспечиваем равенство отсчетов диск­
ретной импульсной характеристики БИХ-фильтра А(ю) значени­
ям непрерывной импульсной характеристики в моменты времени
t :=nts, как на рисунке 6.23, так что Н(п) = /гс(и£9), для 0 < п < оо.
Метод 1, шаг 6: Я(г), полученная на шаге 5, будет иметь общую форму
Я(г) = [Ь(Щг~Н +
+... + Ь(1)г~1 Щ О )]/
/[а(М )г~м + а(М-1)г~(М-1) + ... + а(1)г~1 + а(0)] =
N
М
“ [ ^ Н к ) г ~ к] / [ 1 -^ а (к )2 ~ к]
к=0
к=1
(6-44)
Поскольку при дискретизации непрерывной импульсной харак­
теристики частотная характеристика цифрового фильтра оказы­
вается умноженной на коэффициент 1Д., многие разработчики
фильтров считают необходимым включить множитель в (6-44).
Итак, мы можем переписать (6-44) как
N
М
Н(г) - У(г)/Х( 2 ) - [г52 > (* ) г ~ * ] /[ 7 -2 > (* ) г - 4]
к=0
к=1
(6-45)
Подстановка значения £5 в (6-45) делает масштаб характеристи­
ки БИХ-фильтра независимым от частоты дискретизации, и ко­
эффициент передачи цифрового фильтра будет таким же, как и у
аналогового фильтра-прототипа'.
Метод 1, шаг 7: Поскольку (6-44) представлено в форме (6-25), мы можем по ана­
логии записать разностное уравнение в общей форме ( 6-2 1 ) как
у(п) = Ь(0)х(п) + Ь(1)х(п-1) +Ь(2)х(п-2) + ... +Ь(М)х(п-Ы) +
+ а (1 )у(п -1 ) + а(2)у(тг-2) + ... +а(М )у(п-М )
(6-46)
Некоторые авторы предпочитают вводить множитель ts в дискретную импульсную
характеристику h(n) на шаге 4, т е сделать h(n) = ts hc (nts ) [14, 18] Окончательный
результат в этом случае получится такой же.
253
6.4. Метод инвариантного преобразования импульсной характеристики
Включение множителя в (6-45), чтобы сделать коэффициент
передачи цифрового фильтра равным коэффициенту передачи
прототипа, дает следующую форму разностного уравнения
у(п) = ґ5[Ь(0)х(п) + Ь(1)х(п-1) +Ь(2)х(п-2) + ... +Ь(М)х(п-1\Г)] +
+ а (1 )у (п -1 ) + а(2)у(п-2) + ... + а(М )у(п-М )
(6-47)
Обратите внимание на изменение знака коэффициентов а(к)
при переходе от (6-44) и (6-45) к (6-46) и (6-47). Эти изменения
являются источником проблем для начинающих, так что будьте
внимательны. Помните также, что (6-46) и (6-47) применимы
только к структуре фильтра на рисунке 6.18. Коэффициенты
а(к) и Ь(к), или £х6(&), однако, можно использовать в улучшен­
ной структуре на рисунке 6.22
Прежде, чем перейти к практическому примеру, рассмотрим второй метод
проектирования с использованием инвариантного преобразования импульсной
характеристики. Метод 2, который также называют стандартным 2 -преобразованием, использует другой подход. Он разбивает математически аналоговый
фильтр-прототип на несколько фильтров с одним полюсом, а затем аппроксими­
рует каждый из этих фильтров однополюсным цифровым фильтром. Набор из М
однополюсных фильтров затем аналитически объединяется в БИХ-фильтр М-го
порядка, имеющий М полюсов. Этот процесс показан на рисунке 6.25. При расче­
те фильтра этим методом необходимо выполнить следующие шаги:
Аналоговый фильтр-прототип
с М полюсами
М однополюсных
дискретных фильтров
Разложение на простейшие дроби
Выполнить
подстановку
=о
М однополюсных
дискретных фильтров
п
Сложить аналитически
М-полюсный дискретный
БИХ-фильтр
Рис. 6 .2 5 . Математические операции Метода 2
254
Гпава 6. Фильтры с импульсной характеристикой бесконечной длины
Метод 2, шаг 1: Получить передаточную функцию Яс(5) аналогового фильтра-про­
тотипа в форме (6-43). (То же, что Метод 1, шаг 1.)
Метод 2, шаг 2: Выбрать подходящую частоту дискретизации / 5 и вычислить пе­
риод дискретизации
=У//5. (То же, что Метод 1, шаг 3.)
Метод 2, шаг 3: Выразить передаточную функцию Яс(5) в виде суммы однополюс­
ных передаточных функций. Это требует использования разложе­
ния отношения полиномов в (6-43) на простейшие дроби вида
Я с(5) = [6 (Л 0 ^ + 6(ЛМ )<^-* +... + Ь(1)б Щ О )]/
/[я(М ) 5м + а(М -1)зм ~1 + ... + а(1) 5 + а(0)] =
М
=5 Х / ( 5+^ ) =
к=1
= А 1/(в+ р1) + Л 2 /(5+р2 ) + ... + Лм /(5+рм ) ,
(6-48)
где коэффициенты А ^ представляют собой константы, а &-й по­
люс находится в точке - р^ на 5-плоскости. Мы обозначим к-ю од­
нополюсную передаточную функцию как Я^(5), или
Нк( з ) - А к/($+рк ) .
(6-49)
Метод 2, шаг 4: В (6-48) подставить 1 - е~Р& 1 вместо 5 + рк. Это отображение
каждого полюса Я^(х), расположенного в точке 5 = -р к на
5-плоскости, в точку 2 = е~р& на 2 -плоскости представляет со­
бой аппроксимацию импульсной характеристики каждого од­
нополюсного аналогового фильтра однополюсным цифровым
фильтром. (Читатель может найти вывод этой подстановки 1 е~ Р ^ 2 ~1, показанной на рисунке 6.25, в работах [14 - 16].) Итак,
каждый однополюсный аналоговый фильтр Я^(5) аппроксими­
руется однополюсным цифровым фильтром, передаточная фун­
кция которого имеет вид
Я*(2 ) = А к/ ( 1 - е-Рк^ 2 ~1) .
(6-50)
Результирующая общая передаточная функция дискретного филь­
тра Я( 2 ) является суммой передаточных функция однополюс­
ных дискретных фильтров, или
Ш
м
м
- 2 Х ( г> - 2 Ак/ ( 1 - е-Р Л г - 1 ) .
к=1
кЧ
(6-51)
Помните, что эта функция Я(г) не является функцией времени.
Множитель в (6-51) представляет собой константу, равную пе­
риоду дискретизации.
Метод 2, шаг 5: Вычислить сумму М однополюсных передаточных функций в
виде отношения двух полиномов от 2 . Поскольку Н(г) в (6-51)
6.4. Метод инвариантного преобразования импульсной характеристики______ 255
будет суммой простейших дробей, нам будет необходимо приве­
сти их к общему знаменателю, чтобы получить результат в виде
Я ( 2 ) = У{2)/Х{2) =
N
М
к=о
(6-52)
к=1
Метод 2, шаг 6 : Так же, как в Методе 1 на шаге 6, мы можем по аналогии записать
разностное уравнение в обобщенной форме
у(п) = Ь(0)х(п) + Ь (1)х(п-1 ) + Ь (2)х(п-2) + ... + Ь(Ы)х(п-Мг) +
+ а (1 )у(п -1 ) + а (2 )у(п -2 ) + ... + а (М )у (п -М ).
(6-53)
Здесь тоже обратите внимание на изменение знака коэффициен­
тов а(к) при переходе от (6-52) к (6-53). Как было описано в шагах
6 и 7 Метода 1, если мы хотим сделать коэффициент передачи
цифрового фильтра равным коэффициенту передачи аналогово­
го прототипа путем умножения коэффициентов Ь(к) на период
дискретизации то разностное уравнение БИХ-фильтра будет
выглядеть так:
у(п ) =
• [Ь(0)х(п) + Ь(1)х(п-1) + Ь(2)х(п-2) + ... + Ь(М)х(п-Ы)] +
+ а (1 )у(п -1 ) + а (2 )у(п -2 ) + ... + а(М )у(п-М ) ,
(6-54)
а окончательная передаточная функция будет иметь вид
Я ( 2 ) = Г(2 ) / В Д =
N
М
(6-54')
к=0
к=1
Наконец, мы можем реализовать фильтр в виде улучшенной структуры на рисун­
ке 6.22, используя коэффициенты а(к) и Ь(к) из (6-53) или а(к) и • Ь(к) из (6-54).
Для более наглядного сравнения двух описанных методов разберем примеры
проектирования БИХ-фильтров с их использованием.
6 .4 .1 . Пример проектирования Методом 1
Предположим, что нам необходимо рассчитать БИХ-фильтр, который аппрок­
симирует аналоговый прототип Чебышева, для которого неравномерность АЧХ в
полосе пропускания составляет 1 дБ. Частота дискретизации / 5 равна 100 Гц (£5 =
0.01), а частота среза фильтра по уровню 1 дБ равна 20 Гц. Наш аналоговый
фильтр-прототип будет иметь АЧХ, подобную показанной на рисунке 6.26.
Допустим, что в результате расчета аналогового фильтра-прототипа в соответствии
с перечисленными требованиями мы получили передаточную функцию Яс(5) вида
Я с(5) = 17410.145Д*2 + 1 3 7 .9 4 5 3 + 17410.145).
(6-55)
256
Гпава 6. Фильтры с импульсной характеристикой бесконечной длины
Именно эту передаточную функцию мы собираемся аппроксимировать диск­
ретным БИХ-фильтром. Чтобы найти импульсную характеристику аналогового
фильтра, следует представить # г($) в такой форме, которая позволила бы нам
воспользоваться таблицами преобразования Лапласа для нахождения /гс(£)-
(У2)
Рис. 6 .2 6 . АЧХ аналогового фильтра-прототипа для примера
Порывшись в справочниках по операционному исчислению, мы находим сле­
дующую пару преобразований Лапласа:
Х(б), преобразование Лапласа ;*:(£):
х(():
А со/ К б + а )2 + а)2]
Ае~а1: • 8ш(со£) .
(6-56)
Итак, мы хотим модифицировать (6-55) так, чтобы привести его к форме, по­
казанной в левой части (6-56). Заметим, что выражение для преобразования Лап­
ласа (6-56) можно переписать как
Ла>/[(5 + а )2 + со2] = Аа>/( 52 +
+ а 2 + ш2)
(6-57)
Если мы теперь приравняем (6-55) и правую часть (6-57), то мы сможем ре­
шить систему уравнений относительно А, а и со:
Я с.(5) = 17410.145/ ( б2 + 137.945365 + 17410.145) =
о
= Аа)/($2 + 2 а 5 + а 2 + со2).
(6-58)
Решая (6-58) относительно А, а и со, мы сначала находим
а = 137.94536/2 = 68.972680;
(6-59)
а 2 + со2 = 17410.145,
(6-60)
со = V (17410.145- а 2) = 112.485173;
(6' 61)
А = 17410.145/со = 154.77724 .
(6'62)
так что
и
Отлично, теперь мы можем выразить # с($) в требуемой форме левой части (6-57):
н ((5) = ( 154.77724)( 112.485173)/[ ( б + 68.972680)2 Ц112.485173)2]. (6-63)
6.4. Метод инвариантного преобразования импульсной характеристики
257
Используя пару преобразований Лапласа в (6-56), находим импульсную ха­
рактеристику аналогового фильтра-прототипа в виде
hc(t) = A e-a t*sm((ot) = 154.77724e-68972680t»sin(112.485173t) .
(6-64)
Итак, мы готовы выполнить Шаг 4 Метода 1, чтобы найти передаточную функ­
цию дискретного БИХ-фильтра H(z) с помощью 2-преобразования hc(t). И опять
порывшись в учебниках по ЦОС или в хорошем справочнике по математике, мы
находим следующую пару 2 -преобразований, в которой выражение во временной
области имеет ту же форму, что и импульсная характеристика hc(t) в (6-64):
x (t):
X(z), 2 -преобразование x (t)
Ce~at • sin(a)t)
Ce~at • sin(oot) z~1/{1 -2[e~at • cos(cot)] z~1 + e~2atz~2}
(6-65)
Помните, что a и со — просто общие обозначения и не имеют никакого отноше­
ния к значениям а и со в (6-59) и (6-61). Подставляя константы из (6-64) в правую
часть (6-65), мы получаем передаточную функцию БИХ-фильтра
Я ( 2 ) = [154.77724е~68 972680t •sm(112.485173t)z~1]/
/ { 1 - 2[е~68972680t • cos( 112.485173t)] Z~1+е~2 ' 68 9726801 z~2)
( 6-66 )
Выполняя Шаг 5 Метода 1, мы подставляем ts = 0.01 вместо непрерывной пере­
менной t в ( 6-66 ), что дает окончательное выражение для передаточной функции
H(z):
Я ( 2 ) = [154.77724е~68972680-001 . sin(112.485173 *0.01) z~1]/
/{ 1 - 2 [ е - 68 972680 *■
0 01 • cos( 112.485173 • 0.01)] z~'1+е~2 "68 972680 %001 z~2} =
= [154.77724е~° 68972680 •sm(1.12485173)z~1]/
/{ 1 - 2[е~°68972680 «соs(1.12485173)]z-1+e-2 ' 0 68972680z - 2) =
= Y (z)/X (z) = 70.059517z~1/(1 -0 .4 3 2 78805z~1+ 0.25171605z~2) .
(6-67)
Отлично, сделаем еще усилие, мы почти закончили. Вот завершающие шаги
Метода 1. Избавившись от знаменателей в (6-67), получаем
7 (2 ) • ( / - 0.43278805Z-1 + 0.25171605z~2) = X (z) • ( 70.059517z~ 1)
7 (2 ) = 70.059517X(z) z~1 + 0.43278805 Y(z) z~1 - 0.25171605 Y(z) z~2
( 6 -68 )
Рассмотрев ( 6-68 ), мы можем записать разностное уравнение БИХ-фильтра.
Выполняя Ш аги6и 7 Метода 1, мы умножаем коэффициент при х (п -1) на период
дискретизации ts = 0.01 для соответствующего масштабирования:
у(п) = 0.01 • 70.059517 *x(n - 1) + 0.43278805 • у(п - 1) - 0.25171605 *у(п - 2)
= 0.70059517*х(п - 1) + 0.43278805'у(п - 1) - 0.25171605*у{п - 2 ),
(6-69)
258
Гпава 6. Фильтры с импульсной характеристикой бесконечной длины
Наконец, мы получили то, что нужно. Для аппроксимации исходного аналого­
вого Ф Н Ч Чебышева мы используем коэффициенты из (6-69) при реализации
улучшенной структуры БИХ-фильтра на рисункее 6.22.
Посмотрим, получим ли мы такой же результат, используя Метод 2.
6 .4 .2 . Пример использования Метода 2
проектирования с помощью инвариантного
преобразования импульсной характеристики
Пусть передаточная функция прототипа задана в виде
Я с(5) = 17410.145/(52 + 137.945368 + 17410.145) ,
(6-70)
а период дискретизации £5 = 0.01. Теперь мы готовы выполнить Шаг 3 Метода 2.
Чтобы представить Яс(я) в виде суммы однополюсных функций, нам потребуется
разложить знаменатель (6-70) на множители и использовать методы разложения
на простейшие дроби. Для удобства начнем с того, что заменим константы в
(6-70) переменными, так чтобы
Я с(5) = с /( 52 + Ьб + с ) ,
(6-71)
где 6 = 137.94536, с = 17410.145. Далее, используя (6-15) при а = У, мы можем фак­
торизовать квадратичный знаменатель (6-71) как
Я с( 5) = с/{( 5- + Ь/2 +у/[(Ь2 - 4с)/4]) • (5 + Ь/2 - \/[(Ь2 -4с)/4])}
(6-72)
Если мы подставим значения Ь и с в (6-72), мы обнаружим, что под корнем по­
лучилось отрицательное значения. Это значит, что сомножители знаменателя в
(6-72) комплексные. Поскольку нам придется выполнять много аналитических
преобразований, заменим радикалы в (6-72) мнимой величиной/К, где^' =у/ ( - 1 ) и
= \(Ь2-4с)/4\, так что
а д
= с/ [ ( 5 + Ь/2 +;Т?)(5 + Ь/2 - ; # ) ] ,
(6-73)
Методы разложения на простейшие дроби позволяют нам разбить (6-73) на
две отдельные дроби в виде
Я с( 5) = с/[(5 + Ь/2 +;7 ?)(5 + Ь/2 -]К )\ =
= К-,/(5 + Ь/2 + рI) + К2/( з + Ь/2 -]К ) ,
где, как можно убедиться, константа К-) =]с/2Л, а константа К2 комплексно сопря­
жена
или К2 = - )с/211. (Чтобы узнать больше о разложении на простейшие
дроби, заинтересованный читатель может просмотреть учебники по институтско­
му курсу математики или справочники по математике для инженеров.) Следова­
тельно, Яс(5) может быть выражена в форме (6-48), или
Я с(5) = и с /2 К )/(* + Ь/2 +]К) + ( - )с/2 К )/( з + Ь/2 -]К )
(6-75)
259
6.4. Метод инвариантного преобразования импульсной характеристики
Из (6-75) мы можем видеть, что наш фильтр-прототип второго порядка имеет
два полюса, один из которых расположен в точке р 1 = -Ь /2 -/К , а другой —в точке
р2 = -Ь /2 +у7?. Теперь мы готовы отобразить эти два полюса из 5-плоскости в 2-плос­
кость, как того требует Шаг 4 Метода 2. Выполняя подстановку 1-е~Р&2~1 вместо
5 +р^ в (6-75), мы получаем следующее выражение для однополюсных цифровых
фильтров:
Я ( 2 ) = и с /2 К ) /( 1 - е - ( ь/ 2
+ (-] с/2 К )/(1 - е ~ ^ /2 Ч т 2~1) .
(6-76)
Цель шага 5 состоит в том, чтобы преобразовать (6-76) в форму (6-52), чтобы
мы могли определить коэффициенты прямых и обратных связей БИХ-фильтра.
Складывая дроби в (6-76), получаем
Я( 2 ) = (О С/2К)[1- е~(Ь/2 Ч т 2- 1) - 0 с/2К )[1- е~(Ь/2 т М в г-Ц у
/ { [ 1 - е-(Ь/2 +да* 2 -*][У- е~(Ь/2 4 ^ 5 2 - 1 ]}.
(6-77)
Приводя подобные члены в числителе и перемножая сомножители в знамена­
теле, приходим к
Я ( 2 ) = О'с/2К)[1- е-(Ь/2 -)КУз2- 1 - 1+ е-(Ь/2 +]К»52-1]/
д у_ е-(Ь/2
2- 1_ е-(Ь/2
2- 1 + е-Ы52-2]
(6-78)
Раскладывая экспоненты на множители и приводя подобные члены с одинако­
выми степенями 2, получаем:
Я ( 2 ) = (]с/2К)[е-<Ь/2
/{ 1 - [е~(ь/ 2
- е-<*/2
] 2-1/
+ е~(Ь/22 ~1 + е~Ыв2 ~2} .
(6-79)
Продолжая упрощать выражение Н(г), вынося действительные составляющие
экспонент, получим
Я ( 2 ) = и с /2 К )е -ьУ \ е -№ 5 - е № в ) 2 - V
/[ 1 —е~ЪЧ/2(е№в +
2~1 + е ~ ^ 2 ~ 2] .(6-80)
Теперь в Я ( 2 ) одинаковые степени 2 приведены, и (6-80) выглядит похожим на
требуемую форму (6-52). Зная, что окончательные коэффициенты БИХ-фильтра
должны быть действительными числами, мы задаем себе вопрос: «Что нам делать
с членами, содержащими^', в (6-80)?» И опять на помощь приходит Эйлер1. Испо­
льзуя тождества Эйлера для синусоид, мы можем убрать комплексные экспонен­
ты, при этом (6-80) превращается в
Я(г) = и с /2 К )е -ьУ 2[-2р\п(Ш 3)] 2~1/{ 1 - е - ьУ 2[2со$(т8) ] г - 1 + е~ь^2~2} =
= (с/К)е~Ь1в/2[^и\(Ш5)] 2 _ 1/{1 -е~ Ь1в/2[2соБ(Ш5)] г~ 1 + е~ь^ 2 ~2} .
(6-81)
Если теперь мы подставим значения с = 17410.145, Ь = 137.94536, Я. = 112.48517 и
= 0.01 в (6-81), то мы получим следующую передаточную функцию БИХ-фильтра:
Согласно тождествам Эйлера $\п(ф)=(е& - е ^)/2] и со$(ф)=(еМ>+ е &)/2
260
Гпава 6. Фильтры с импульсной характеристикой бесконечной длины
H (z) = (154.77724)(0.50171312)(0.902203655) z~ 1/
/[1 - (0.50171312)(0.86262058) z~1 + 0.25171605z~2] =
= 70.059517z~ 1/[ 1-0.43278805z~1+0.25171605z~2] .
(6-82)
Поскольку H(z) = Y(z)/X(z), избавляясь от знаменателей по обе стороны знака
равенства, мы можем переписать (6-82) в виде
Y(z)*(1 - 0.43278805г~1 + 0.25171605z~2) = X(z) (70.059517z~1)
или
Y(z) = 70.059517 *X(z) z~1 + 0.43278805 • Y(z) z~1 - 0.25171605 • Y(z) z~2 (6-83)
А теперь по аналогии берем обратное 2 -преобразование от (6-83) и получаем
разностное уравнение БИХ-фильтра
у(п) = 70.059517 *х(п -1 ) + 0.43278805 *у(п -1 ) - 0.25171605 *у(п - 2) (6-84)
Остается завершающий шаг. Чтобы коэффициент передачи БИХ-фильтра был
равен коэффициенту передачи прототипа, мы умножаем коэффициент при х(п -1 )
на период дискретизации ts, как предлагалось на Шаге 6 Метода 2. В этом случае
имеется только один коэффициент при х(п), в результате чего имеем
у(п) = 0.01 • 70.059517 *х(п -1 ) + 0.43278805*у(п -1 ) - 0.25171605 *у(п - 2) =
= 0.70059517* х (п -1 ) + 0.43278805 * у (п -1 ) - 0.25171605 *у(п - 2)
(6-85)
Это совпадает в результатом, полученным Методом 1 в (6-69). (Не правда ли,
приятно решить задачу двумя разными способами и получить один и тот же ре­
зультат?)
На рисунке 6.27 в графической форме показаны результаты проектирования
фильтра. Расположение полюсов прототипа в 5-плоскости и полюсов БИХ-фильтра в 2 -плоскости показано на рисунке 6.27 (а). Поскольку полюсы прототипа на­
ходятся в левой полуплоскости, а полюсы БИХ-фильтра находятся внутри
единичного круга, оба фильтра устойчивы. Мы находим полюсы прототипа из
(6-75). При 5 = - b /2 - j R знаменатель первого слагаемого в (6-75) становится рав­
ным нулю, a Hc(s) становится бесконечно большой. Это значение 5 = -b /2 - jR
представляет собой полюс в нижней полуплоскости на рисунке 6.27 (а). Когда 5 =
- b /2 +jR, знаменатель второго слагаемого обращается в 0, a s = - b /2 +jR дает по­
зицию второго полюса на 5-плоскости.
Позиции полюсов БИХ-фильтра на 2 -плоскости находятся из (6-76). Если мы
умножим числители и знаменатели в (6-76) на 2, то получим
Я ( 2 ).«2/2 = z (jc /2 R )/[ z (1 -e -(b/ 2 +J W sz -1)] + z(-jc /2 R )/[z (1 -e -(b/ 2 -jR)tsZ-1)] =
= (jc/2 R ) z/[z - e~(b/2 +1КЩ + ( -jc/2 R ) z/[z - e~(b/ 2
.
( 6-86)
Если в ( 6-86 ) 2 = e(~b/ 2
знаменатель первого слагаемого обращается в
ноль, a H(z) становится бесконечно большой. Значение 2, равное
2 = е(~ь/ 2
= e(~bts/ 2) e~jRts = e(-bts/2) /_ -R ts радиан
(6-87)
6.4. Метод инвариантного преобразования импульсной характеристики
s-плоскость
z-плоскость
lmag(z)
і lmag(s)
Область
устойчивости
X
(а)
261
Область
неустойчивости
Область
неустойчивости
-* jR
1
~Ы2
X
Real(s)
Real(z)
- -JR
(Ь)
Рис. 6.2 7 . Характеристики фильтров, использованных в примере расчета с помощью
инвариантного преобразования импульсной характеристики: (а) располо­
жение полюсов аналогового фильтра-прототипа на s-плоскости и полюсов
дискретного БИХ-фильтра наг-плоскости; (Ь) АЧХ дискретного БИХ-фильтра
определяет положение полюса, лежащего в нижней полуплоскости 2-плоскости на ри­
сунке 6.27 (а). В частности, этот полюс расположен на расстоянии e(~bts/2) = 0.5017 от
начала координат, а угол его радиус-вектора с действительной осью составляет 0 =
-R ts радиан, или -64.45°. Поскольку полюсы комплексно-сопряженные, полюс в
верхней полуплоскости 2-плоскости расположен на том же расстоянии от начала ко­
ординат, а угол его радиус-вектора равен 0 = Rts радиан, или +64.45°. На рисунке
6.27 (Ь) показана АЧХ БИХ-фильтра как функция частоты в Гц.
На рисунке 6.28 показаны две разные реализации БИХ-фильтра. Рисунок 6.28 (а)
предлагает реализацию нашего БИХ-фильтра второго порядка, основанную на
обобщенной структуре БИХ-фильтра, показанной на рисунке 6.22, а на рисунке
6.28 (Ь) показана реализация БИХ-фильтра второго порядка на основе альтерна­
тивной структуры, показанной на рисунке 6.22 (Ь). Зная, что коэффициент Ь(0) в
левой части рисунка 6.28 (Ь) равен нулю, мы приходим к упрощенной структуре,
приведенной в правой части рисунка 6.28 (Ь). Посмотрев внимательно на рисунок
6.28 (а) и правую часть рисунка 6.28 (Ь), мы можем увидеть, что они эквивалентны.
Хотя в литературе рассматриваются оба метода проектирования с использова­
нием инвариантного преобразования импульсной характеристики, мы можем
спросить: «Какой из них предпочтительней?» Определенного ответа на этот во­
прос не существует, потому что он зависит от Hc(s) фильтра-прототипа. Хотя рас­
смотренный выше пример использования Метода 2 Требует большего количества
аналитических выкладок, чем Метод 1, если бы полюсы прототипа в 5-области ле­
жали только на действительной оси, Метод 2 был бы намного проще, поскольку
не пришлось бы манипулировать комплексными числами. Вообще, Метод 2 более
популярен по двум причинам: (1) обратное преобразование Лапласа и обратное
z-преобразование, хотя и весьма просты в нашем примере использования Мето­
да 1, могут оказаться довольно сложными для фильтров высокого порядка, и (2) в
отличие от Метода 1, Метод 2 может быть реализован программно.
262
Гпава 6. Фильтры с импульсной характеристикой бесконечной длины
(а)
У(п)
(Ь)
Рис. 6 .2 8 . Реализации фильтра, полученного методом инвариантного преобразо­
вания импульсной характеристики
Изучая АЧХ фильтра, приведенную на рисунке 6.27 (Ь), мы можем заметить,
что крутизна переходной полосы этого БИХ-фильтра второго порядка не слишком
велика. Это простой фильтр второго порядка, но наклон его АЧХ в полосе подав­
ления такой незначительный, что этот фильтр вряд ли может принести какую-то
пользу на практике1. Мы можем также заметить, что уровень пульсаций в полосе
пропускания больше требуемого значения в 1 дБ на рисунке 6.26. Мы можем об­
наружить, что такие плохие характеристики фильтра объясняются не столько его
низким порядком, сколько используемой частотой дискретизации. Характери­
стики фильтра второго порядка повторно показаны на рисунке 6.29 серой линией.
Если мы повысим частоту дискретизации до 200 Гц, мы получим частотную ха­
рактеристику, показанную на рисунке 6.29 штриховой линией. Повышение час­
тоты дискретизации до 400 Гц дает существенно улучшенную частотную
характеристику, показанную черной сплошной линией на том же рисунке. Изме­
нения частоты дискретизации не влияют на порядок фильтра или структуру его
реализации. Помните, что если мы изменяем частоту дискретизации, в наших
уравнениях меняется только значение периода дискретизации £5, в результате
чего мы получаем другие наборы коэффициентов для каждой частоты дискрети­
зации. Итак, мы можем заметить, что чем меньше выбранный нами ts (больш е/5),
тем лучше результирующий фильтр независимо от применяемого метода расчета,
использующего инвариантное преобразование импульсной характеристики, потому
Небольшой совет- всякий раз, когда вы встречаете какое-либо частотное представление
(будь то АЧХ фильтра или спектр какого-либо сигнала), значение которого на частоте
+/5/2 отлично от 0, будьте осторожны и внимательны —вы имеет дело с наложением.
6.5. Метод проектирования БИХ-фильтров.
263
что перекрытие копий частотной характеристики, показанных на рисунке 6.24 (Ь),
уменьшается благодаря увеличению частоты дискретизации / 5. Вывод из всего
сказанного следует такой: методы проектирования БИХ-фильтров на основе
инвариантного преобразования импульсной характеристики больше всего под­
ходят для проектирования узкополосных фильтров, т. е. фильтров нижних час­
тот1, частоты среза которых намного меньше частоты дискретизации.
400 Гц
^=100Гц
Рис. 6 .2 9 . АЧХ БИХ-фильтра в линейном масштабе при трех значениях частоты ди­
скретизации. Заметьте, что абсолютная частота среза фильтра 20 Гц
сдвигается относительно разных частот дискретизации ^
Второй аналитический метод аппроксимации аналоговых фильтров, метод би­
линейного преобразования, снимает проблемы наложения, присущие методам
инвариантного преобразования импульсной характеристики, за счет деформации
частотной оси. Точнее, при использовании билинейного преобразования соотно­
шение между частотной осью аналогового прототипа и частотной осью аппрокси­
мирующего БИХ-фильтра является нелинейным. Давайте посмотрим, почему.
6.5. Метод проектирования
БИХ-фильтров с помощью
билинейного преобразования
Существует популярный аналитический метод проектирования БИХ-филь­
тров, известный как метод билинейного преобразования. Как и метод инвариант­
ного преобразования импульсной характеристики, этот метод проектирования
аппроксимирует аналоговый фильтр-прототип, задаваемый передаточной функ­
цией Я с($), дискретным фильтром с передаточной функцией #(г). Но метод би­
линейного преобразования применяется очень широко потому, что:
А также полосовых ЦФ —(прим. перев.).
264
Гпава 6. Фильтры с импульсной характеристикой бесконечной длины
□
он позволяет для получения Я(г) просто подставлять некоторую функ­
цию от 2 вместо 5 в Нс( 5), благодаря чему устраняется необходимость в
преобразовании Лапласа и в г-преобразовании, а также необходимость
разложения передаточных функций на простейшие дроби;
□
он отображает всю 5-плоскость на 2-плоскость, полностью устраняя нало­
жения в частотной области, которые создают проблемы при использова­
нии метода инвариантного преобразования импульсной характеристики;
□
он вносит нелинейные искажения частотной оси Н(г) относительно ча­
стотной оси аналогового фильтра, что делает переходную полосу циф­
ровых Ф НЧ более крутой.
Не беспокойтесь, если что-то сейчас не понятно, мы объясним все перечислен­
ные моменты и покажем, что они значат для нас с точки зрения проектирования
БИХ-фильтров.
Если передаточная функция аналогового прототипа есть # с(5), то мы можем
получить передаточную функцию дискретного БИХ-фильтра Н(г), подставив
вместо 5 в Нс(5) следующее выражение
5 - (2 /У К * -
+ г - ') ] ,
(6-88)
где ^ —период дискретизации дискретного фильтра ( 1 //$ ). Так же, как и при ис­
пользовании метода инвариантного преобразования импульсной характеристи­
ки, при использовании метода билинейного преобразования нас интересует, в
какую область 2 -плоскости отобразятся полюсы прототипа в результате преобра­
зования. Именно это отображение ПОЛЮСОВ ИЗ 5-ПЛОСКОСТИ в 2-ПЛ0СК0СТЬ и делает
билинейное преобразование таким привлекательным1.
Давайте исследуем основные характеристики отображения 5-плоскости на
2 -плоскость в результате билинейного преобразования. Сначала покажем, что
любой полюс в левой полуплоскости 5-плоскости будет отображаться во внутрен­
нюю часть единичного круга на 2-плоскости. Это легко показать, решая (6-88) от­
носительно г. Умножив (6-88) на (£5/2 )( 1+
и собрав члены, содержащие 2 , мы
можем получить
г = [1 + ( ^ /2 ) з ] /[ 1 - ( ^ / 2 ) 8 ] .
(6-89)
Если мы запишем 5 как
5=а+>а,
(6-90)
где нижний индекс круговой частоты соа значит аналоговая, (6-89) превращается в
2 = [ 1 + о ^ /2 +уоа /2 ]/[ 1 - 0 ^ / 2 -]ы а ^ /2] =
= Ю +о18/2 ) + р)а ^ / 2 ] / [ ( 1 - о ^ / 2 )
.
(6-91)
Билинейное преобразование представляет собой метод, используемый в теории функ­
ций комплексной переменной для отображения функции на комплексной плоскости
одной переменной на комплексную плоскость другой переменной. Он отображает
окружности и прямые линии на прямые линии и окружности соответственно.
6.5. Метод проектирования БИХ-фильтров..
265
Из (6-91) следует, что 2 является комплексной величиной, равной отношению
двух комплексных выражений. Следовательно, если мы выразим 2 в форме моду­
ля и аргумента 2 = \г\/.62, то модуль 2 будет иметь вид
V « / + о у 2 ? + (0>а у 2 Ш ( 1
+ (“> Л /2 ) 2] ■
(6-92)
Итак, если действительная часть о отрицательна (о <0), числитель отношения
в правой части (6-92) будет меньше знаменателя, и [г| будет меньше 1. С другой
стороны, если о положительна (о > 0), числитель будет больше знаменателя, и \г\
будет больше 1. Это значит, что при использовании билинейного преобразования
(6-88), любой полюс, расположенный в левой части 5-плоскости (о < 0) будет ото­
бражаться на внутреннюю часть единичного круга 2 -плоскости. Эта особенность
обеспечивает преобразование любого устойчивого полюса прототипа в 5-плоскости в
устойчивый полюс дискретного БИХ-фильтра в 2-плоскости. Аналогично, любой
полюс аналогового фильтра, расположенный в правой полуплоскости 5-плоскости
(о > 0), при использовании билинейного преобразования будет отображаться на точ­
ку 2-плоскости, лежащую вне единичного круга. Это подтверждает еще раз, что для
устранения неустойчивости при проектировании БИХ-фильтров мы должны не до­
пускать появления в 2-плоскости полюсов, лежащих за пределами единичного круга.
А теперь покажем, что ось частоты 5-плоскости ](оа отображается на единичную
окружность 2-плоскости. Мы можем сделать это, положив в (6-91) о = 0 и получив
(6-93)
Здесь снова мы видим, что переменная 2 представляет собой отношение комп­
лексных чисел, следовательно, ее модуль равен
(6-94)
Модуль 2 в (6-94) всегда равен 1. Таким образом, как мы утверждали, при испо­
льзовании билинейного преобразования, ось
в 5-плоскости отображается на
единичную окружность в 2 -плоскости. Но это отображение частот нелинейно. Важ­
но знать, почему эта нелинейность, или деформация, возникает и к чему она приво­
дит. Мы узнаем это, выведя соотношение между частотой 5-плоскости и частотой
2-плоскости, которую мы обозначим как
Если мы представим 2 на единичной окружности в полярных координатах как
2 = г е ~ ^ , как мы делали это для рисунка 6.13, где г = 1,а(о^ — угол, мы можем под­
ставить 2 = е)Ш
(1в (6-88) и получить
5 = (2/15) [(1 - е - м )/(1 + е-*»*)] .
(6-95)
Если мы представим 5 в алгебраической форме и вынесем за скобки экспонен­
ту половинного угла, мы получим
5 = О +]ша = ( 2 /г 5) [ е ~ ^ / 2 ( е ^ с 1 / 2 - е - ) “><1/2 )]/[е ~ )“>с1/2(е]шс1/2 + 6 ^ / 2 )]
(6-96)
266
Гпава 6. Фильтры с импульсной характеристикой бесконечной длины
Используя тождества Эйлера 8 т (0 ) = ( е $ - е~$)/2) и соБ(ф) = (е№ + е~$)/2,
мы можем преобразовать правую часть (6-96) в
5 = о + > а = (2Д5 ){«-></ /2[2щп(ш(1/2)]}/{е~ ш /2{2со$(о)(1/2)]} =
= (2/£5 ) ( 2 е ^ ш(1/ 2 / 2 е ^ ш(1/2) • [)?,т(о)(1/2 )/с о $ (о )(1/ 2 ) } =
= О'2/Ъ Пап{(!)<!/2) .
(6-97)
Если мы теперь приравняем действительные и мнимые части (6-97), мы уви­
дим, что о = 0 и
ша = (2Д5 П ап(й^/2) .
(6-98)
Из (6-98) мы получаем полезное соотношение, выражающее частоту 2 -области
со^ через частоту 5-области соа
(о^ = 21ап_^(а>а £5 /2 ) .
(6-99)
Важное соотношение (6-99), которое несет ответственность за деформацию
частот при билинейном преобразовании, показано графически на рисунке 6.30.
Рис. 6 .3 0 . Нелинейное соотношение между частотой г-области
ласти а>а
и частотой э-об-
Заметим, что, поскольку при больших ша значение
/2 ) приближается к
я /2 , ш({ должна приближаться к вдвое большему значению, или л. Это значит, что,
какой бы большой ни была частота соа, частота 2-плоскости со^ никогда не превысит л.
Помните, как мы рассматривали рисунок 6.14 и утверждали, что достаточно рас­
сматривать только диапазон частот от - л / 5 до +л/8 радиан/сек на 2-плоскости?
Наше новое отображение, связанное с билинейным преобразованием, отображает
всю 5-плоскость на 2-плоскость, а не только полосу, показанную на рисунке 6.14.
Теперь, если продвижение по оси]и>а на 5-плоскости в любом направлении приво­
дит нас в бесконечность, то перемещение по половине единичной окружности в
направлении против движения часовой стрелки соответствует нашему перемеще­
нию от соа = 0 до соа = +оо радиан/сек. Итак, билинейное преобразование отобра­
жает всю ось частот ]о)а в 5-плоскости на единичную окружность в 2-плоскости.
Мы иллюстрируем эти свойства отображения билинейного преобразования на
рисунке 6.31.
267
6.5. Метод проектирования БИХ-фильтров.
Чтобы показать практические последствия деформации частот, свяжем часто­
ты 5-плоскости и 2-плоскости с более практичной мерой частоты дискретизации
Л- Мы делаем это, вспомнив, что
/ = ( о /2 л .
(6-100)
Используя (6-100) в (6-99) получаем
2 л { (1 = 21ап - \ 2 л / а £Л
. /2 ).
(6-101)
Подставляя 1 //5вместо ts, мы решаем (6-101) относительно/^и получаем
Л/ = ( 2 / 2 л ) ^ п - 1[(2л/а / / , )/2] = [ ^ п - \ л / а / / , )]/л .
(6-102)
г-плоскость
Область
неустойчивости
(*!< *= 71
соответствует
0>э = +ас
(ОсУ=О
<и^=-7Г
соответствует
Рис. 6 .3 1 . Отображениеэ-плоскости наг-плоскость при билинейном преобразова­
нии
Соотношение (6-102), связывающее частоты / а и /^, показано графически на
рисунке 6.32 (а) в долях частоты дискретизации / 5.
Искажение частоты / а при преобразовании в показано на рисунке 6.32 (Ь),
где полосовая АЧХ аналогового фильтра |На( /а ) | подвергается сжатию по частоте
при преобразовании в |Я ^ ^ ) |. Обратите внимание на то, что низкочастотная
часть |#Х /^)| БИХ-фильтра примерно линейна, а высокочастотная часть сильно
сжата. Это и есть проявление деформации оси частот. Этот рисунок показывает,
почему при билинейном преобразовании наложения возникнуть не могут. Незави­
симо от формы и ширины АЧХ |На( /а ) | аналогового прототипа никакая ее часть не
может выйти за пределы половины частоты дискретизации/5 /2 в \НС
0 ^ ) |, и это де­
лает билинейное преобразование таким популярным.
Проектирование БИХ-фильтров с помощью билинейного преобразования вы­
полняется в следующей последовательности:
Шаг 1. Получить передаточную функцию аналогового фильтра-прототипа Яс($)
в форме (6-43).
Шаг 2. Определить частоту дискретизации цифрового фильтра / 5 и вычислить
период дискретизации
= 1 //8.
Ш аг 3. Подставить в передаточную функцию Яс($) вместо б выражение
268
Гпава 6. Фильтры с импульсной характеристикой бесконечной длины
(2 Л ,)[(Г -* -')/< # + * -')]
(6-ЮЗ)
и получить передаточную функцию БИХ-фильтра Н(г).
Шаг 4. Умножить числитель и знаменатель Н(г) на ( 1 + г 1) в соответствующей
степени и выполнить преобразования, чтобы получить передаточную функ­
цию в виде
ЛГ
М
Щ г) - [ 2 О Д г - * ] / [ # - £ « (* )* -* ] •
к=0
(6-104)
к=1
Шаг 5. Как и в случае метода инвариантного преобразования импульсной харак­
теристики, мы можем прямо по передаточной функции записать разно­
стное уравнение БИХ-фильтра
Рис. 6 .3 2 . Нелинейность соотношения частот fd и ґа: (а) кривая искажения частот,
промасштабированная относительно частоты дискретизации БИХ-фи­
льтра
(Ь) преобразование частотной характеристики аналогового
прототипа На(/д) в частотную характеристику дискретного БИХ-фильтра
НМ
6.5. Метод проектирования БИХ-фильтров..
269
у(п) = Ь(0)х(п) + Ь( 1)х(п - 1) + Ь(2)х(п - 2) + ... + Ь(Щх(п - Ы) +
+ а(1)у(п - 1) + а(2)у(п - 2) +... + а(М )у(п - М)
(6-105)
Хотя уравнение (6-105) справедливо только для структуры фильтра на
рисунке 6.18, для завершения проектирования мы можем использовать
коэффициенты а(к) и Ь(к) в улучшенной структуре БИХ-фильтра, пока­
занной на рисунке 6.22.
Чтобы показать, насколько прост метод билинейного преобразования, приме­
ним его для проектирования фильтра, заданного в примерах использования мето­
да инвариантного преобразования импульсной характеристики.
6 .5 .1 . Пример проектирования с помощью билинейного
преобразования
И снова наша цель —спроектировать БИХ-фильтр, который аппроксимирует
аналоговый прототип Чебышева второго порядка, показанный на рисунке 6.26,
неравномерность АЧХ которого в полосе пропускания равна 1 дБ. Частота диск­
ретизации / 5 равна 100 Гц (£5 = 0.01), а частота среза по уровню 1 дБ равна 20 Гц.
Как и раньше, имеем передаточную функцию прототипа вида
Н с(б) = 17410.145/( б2 + 137.945368 + 17410.145) .
(6-106)
и £5 = 0.01, что позволяет нам перейти к Шагу 3. Для удобства заменим числовые
константы в (6-106) переменными:
Яс(5) = с/(52 +65 + с) ,
(6-107)
где Ь=137.94536, с=17410.145. Подставив (6-103) в (6-107), получаем
Н ( г ) - с/{[(2/(5)(Г - * -')/(* + г -')] 2 Щ 2 / Щ 1 - г ~ ')/<*+ г"') + с }.
(6-108)
Чтобы упростить немного наши выкладки, обозначим буквой а отношение
2/£5, в результате чего получаем:
Щ г) = с/{а2[(1 - г~1)/(1+ г~1)]2 + аЬ [(1-г~1)/(1+ г~ 1)] + с}.
(6-109)
Выполняя Шаг 4, умножаем числитель и знаменатель (6-109) на (1 + г~1) 2 и
получаем
Н(г) =с(У + г~1) 2 / [ а 2( 1 - г~1) 2 +аЬ(1+ г~1) ( 1 - г~1) + с(1 + г~1) 2] .
(6-110)
Перемножая сомножители в знаменателе и объединяя члены с одинаковыми
степенями 2 , приходим к
Н(г) - с(1 + 2г-1 + 2 -2 )/
(6_Ш )
/[(а 2 + аЬ + с) + (2с - 2а2)г~1 + (а2 + с - аЬ)г~2] .
Мы почти у цели. Чтобы представить (6-111) в форме (6-104), где свободный
член знаменателя равен 1, разделим числитель и знаменатель (6-111) на (а2 + аЬ +
с), что даст нам выражение
270
Гпава 6. Фильтры с импульсной характеристикой бесконечной длины
Щ г) = [c/(a2 + ab + с)](1 + 2z~1 + z~2) /
(6-112)
/{1 + [(2с -2 а 2)/(а 2 + ab + с)] z~1 + [(а2 + с - ab)/(a2 + ab + с)] z~2} .
Теперь (6-112) выглядит похоже на требуемую форму (6-104). Если мы под­
ставим значения переменных а = 2 /ts = 200, b = 137.94536 и с = 17410.145 в
(6-112), мы получим передаточную функцию БИХ-фильтра:
H(z) = 0.20482712(1 + 2z~1 + z~2)/(1 - 0.53153089z~1 + 0.35083938z-2) =
= (0.20482712 + 0.40965424z~1 + 0.2048271 2 z 2) /
(6-113)
/( 1 - 0.53153089z~1 + 0.35083938z~2)
Рассмотрев (6-113), мы можем записать разностное уравнение БИХ-фильтра:
у(п) = 0.20482712»х(п) + 0.40965424 *х(п - 1) + 0.20482712 •х(п - 2 ) +
+ 0.53153089 *у(п - 1) - 0.35083938*у(п - 2 ) .
(6-114)
АЧХ спроектированного методом билинейного преобразования фильтра по­
казана черной линией на рисунке 6.33 (а), где для сравнения мы показали серой
линией результат использования метода инвариантного преобразования импуль­
сной характеристики. Обратите внимание на то, что АЧХ фильтра, полученного с
помощью билинейного преобразования, стремится к нулю по мере приближения
частоты к частоте заворота f s /2 = 50 Гц. Так и должно быть — в этом и состоит
главная задача метода билинейного преобразования. Рисунок 6.33 (Ь) демонстри­
рует нелинейную Ф ЧХ БИХ-фильтра.
Нам так и хочется сказать, что билинейное преобразование не только проще
реализуется, чем инвариантное преобразование импульсной характеристики, но
оно еще и дает фильтры нижних частот со значительно более крутой переходной
полосой. Да, деформация частотной оси сжимает, делает более крутой, переход­
ную полосу фильтра, как мы видели на рисунке 6.32, но дополнительной причи­
ной улучшения АЧХ является увеличение сложности реализации БИХ-фильтра.
Мы видим это, изучая структуру фильтра, показанную на рисунке 6.34. Заметьте,
что наш новый фильтр требует пять умножений на выходной отсчет, тогда как
фильтр, полученный методом инвариантного преобразования импульсной харак­
теристики, на рисунке 6.28 (а) требует всего трех умножений на выходной отсчет.
Дополнительные умножения необходимы для дополнительных цепей прямой связи.
Дополнительные коэффициенты b(k) в H(z) соответствуют нулям на z-плоскости,
созданным билинейным преобразованием, которые отсутствуют при инвариантном
преобразовании импульсной характеристики.
Поскольку аналоговый прототип, использованный в примерах, имел частоту
среза, равную / 5 /5, на рисунке 6.33 мы не заметили влияния искажения частот.
(Действительно, Кайзер показал, что, когда/5достаточно велика, методы инвари­
антного преобразования импульсной характеристики и билинейного преобразо­
вания дают почти идентичные передаточные функции H(z) [19].) Если бы частота
среза нашего фильтра была побольше, искажение частот было бы заметнее, и час­
тота среза результирующей АЧХ |Hd( fd ) | была бы ниже требуемой. Чтобы обойти
эту трудность, профессионалы прибегают к предыскажению частоты среза прото­
типа перед вычислением его передаточной функции Hc(s) на Шаге 1.
271
6.5. Метод проектирования БИХ-фильтров.
Проектирование методом
инвариантного преобразования
импульсной характеристики
(а)
50 Гц
(Г,12)
20 Гц
20 Гц
50
гц
Частота
№/2)
Рис. 6 .3 3 . Сравнение билинейного преобразования и инвариантного преобразо­
вания импульсной характеристики при проектировании БИХ-фильтров:
(а) АЧХ; (Ь) ФЧХ БИХ-фильтра, полученного методом билинейного пре­
образования
Рис. 6 .3 4 . Реализация фильтра, полученного в примере методом билинейного
преобразования
Таким способом они компенсируют искажение оси частот до того, как оно воз­
никнет. Чтобы определить предыскаженную частоту среза прототипа, которая
преобразуется в требуемую частоту среза БИХ-фильтра, мы можем использовать
(6-98). Мы подставим требуемую частоту среза БИХ-фильтра
в (6-98) и вы­
числим частоту среза аналогового прототипа о)а, используемую для расчета его
передаточной функции # с($).
Хотя мы объяснили, что билинейное преобразование позволяет избавиться от
проблем наложения частотных характеристик при проектировании БИХ-филь­
тров, важно не забывать, что мы по-прежнему должны избегать наложения во
272
Гпава 6. Фильтры с импульсной характеристикой бесконечной длины
входном сигнале фильтра. Независимо от того, какой фильтр используется или
какой метод расчета применялся, входные данные всегда должны получаться с ис­
пользованием такой схемы дискретизации, которая исключает наложения, описан­
ные в главе 2. Если входной сигнал содержит искажения, обусловленные наличием
наложений спектров, никакой фильтр исправить эти искажения не сможет.
Наше изложение методов проектирования с помощью инвариантного преоб­
разования импульсной характеристики и с помощью билинейного преобразова­
ния по необходимости затронуло только самые существенные моменты этих двух
методов. Строго математическое изложение этих методов неуместно во вводном
курсе сродни данному, но заинтересованный читатель может найти более детальное
описание в работах [13-16]. Работы [13] и [15], между прочим, содержат прекрасный
материал по различным типам аналоговых прототипов. Хотя наши примеры
проектирования БИХ-фильтров аппроксимировали фильтры-прототипы ниж­
них частот, важно понимать, что эти методы также применимы для проектиро­
вания полосовых фильтров и фильтров верхних частот. Для проектирования
БИХ-фильтров верхних частот, например, достаточно просто взять передаточ­
ную функцию аналогового фильтра верхних частот. Затем описанный метод
проектирования цифровых БИХ-фильтров даст нам аппроксимацию этого
фильтра верхних частот'.
Как мы видели, оба рассмотренных метода проектирования БИХ-фильтров
являются мощными и достаточно сложными в применении. Их математика слож­
на, а вычисления по формулам довольно громоздки даже для достаточно простых
фильтров. В связи с этим мы хотим представить вам третий класс методов проек­
тирования БИХ-фильтров, основанный на программах численной оптимизации.
В этом случае разработчик задает требуемую частотную характеристику фильтра, а
алгоритм генерирует последовательные приближения коэффициентов до тех пор,
пока они не сойдутся (будем надеяться) к некоторому оптимальному решению.
6.6. Оптимизационный метод
проектирования БИХ-фильтров
Последний класс методов проектирования БИХ-фильтров, с которым мы вас
познакомим, в самом широком смысле называют классом оптимизационных ме­
тодов. Эти методы разработаны для ситуаций, когда требуемая АЧХ БИХ-фильтра отличается от стандартных характеристик фильтров нижних, верхних частот,
полосовых и режекторных. Когда требуемая частотная характеристика имеет
произвольную форму, замкнутые выражения для передаточной функции не суще­
ствуют, и у нас нет уравнений, позволяющих вычислить коэффициенты фильтра.
Для решения такой обобщенной проблемы проектирования были разработаны
алгоритмы решения систем линейных или нелинейных уравнений с помощью
компьютера. Эти программы требуют, чтобы разработчик описал некоторым
образом требуемую частотную характеристику БИХ-фильтра. Затем эти алгорит1 Это справедливо для метода билинейного преобразования, но при использовании ме­
тода инвариантного преобразования импульсной характеристики наложения не по­
зволят получить БИХ-фильтр верхних частот —(прим. перев).
6.6. Оптимизационный метод проектирования БИХ-фильтров
273
мы, предполагая, что передаточная функция Н(г) представляет собой отношение
полиномов, вычисляют частотную характеристику фильтра. Основываясь на неко­
тором критерии ошибки, алгоритм итерационно модифицирует коэффициенты
фильтра таким образом, что ошибка между требуемой и текущей характеристика­
ми сводится к минимуму. Процесс заканчивается, когда дальнейшее уменьшение
ошибки невозможно или когда выполнено заданное количество итераций, и коэф­
фициенты фильтра выдаются разработчику. Хотя эти алгоритмы оптимизации мате­
матически слишком сложны, чтобы рассматривать их здесь, описание наиболее
популярных методов оптимизации легко доступно в литературе [14, 16, 20-25].
Читатель может спросить: «Если мы не собираемся рассматривать алгоритмы
оптимизации, то зачем вообще говорить здесь об оптимизационных методах?»
Ответ на этот вопрос следующий: Если мы тратим много времени на проектиро­
вание БИХ-фильтров, то рано или поздно мы придем к тому, что будем в боль­
шинстве случаев использовать оптимизационные методы в форме компьютерных
программ. Огромное количество коммерческих пакетов программ цифровой обра­
ботки сигналов включают одну или более программ проектирования БИХ-фильтров, которые основаны на методах оптимизации. Когда доступен компьютерный
метод проектирования, разработчики фильтров склонны использовать его для рас­
чета, в том числе и простых ФНЧ, ФВЧ и полосовых фильтров, даже если сущест­
вуют аналитические методы. При всем должном уважении к Лапласу, Хэвисайду и
Кайзеру, зачем продираться сквозь все эти уравнения, 2 -преобразования и прочие
сложности, когда требуемую частотную характеристику можно ввести в программу
и получить приемлемый результат в течение нескольких секунд?
Рис. 6 .3 5 . Пример задания параметров при проектировании БИХ ФНЧ оптимиза­
ционными методами
Как оказывается, использование коммерческих программ оптимизационного
проектирования БИХ-фильтров совсем несложно. Большинство оптимизацион­
ных программ требуют задания всего нескольких параметров по амплитуде и час­
тоте, требуемого порядка БИХ-фильтра (количества ответвлений обратной связи),
после чего они рассчитывают коэффициенты цепей прямой и обратной связи. При
задании, например, БИХ Ф Н Ч программа проектирования может запросить у
нас значения бр, ду /у и / ^ , показанные на рисунке 6.35. Некоторые программы
оптимизационного проектирования требуют, чтобы пользователь задал порядок
БИХ-фильтра. Эти программы рассчитывают коэффициенты фильтра, которые
наилучшим образом аппроксимируют заданную характеристику. Некоторые
274
Гпава 6. Фильтры с импульсной характеристикой бесконечной длины
программы, с другой стороны, не требую задания порядка фильтра. Они вычисля­
ют минимальный порядок фильтра, который может обеспечить соответствие час­
тотной характеристики фильтра заданной характеристике.
6.7. Подводные камни реализации
БИХ-фильтров
Инженерам хорошо известна истина: «Одно дело — спроектировать систему
на бумаге, и совсем другое дело — построить ее в железе и заставить работать»
(Вспомните, что произошло с мостом Такома Нэрроуз!) Изготовление работаю­
щей системы на основе теоретического проекта на практике может оказаться ве­
сьма сложным. Давайте разберемся, почему это во многих случаях справедливо
по отношению к БИХ-фильтрам.
Структуры БИХ-фильтров, показанные на рисунках 6.18 и 6.22, называются реа­
лизациями в прямой форме, потому что они непосредственно реализуют разностное
уравнение БИХ-фильтра М-го порядка, приведенное в (6-21). Как оказывается, при
реализации в прямой форме фильтров высокого порядка могут возникнуть пробле­
мы с устойчивостью, а также искажения частотной характеристики. Эти проблемы
вызваны тем, что мы вынуждены представлять коэффициенты фильтра и промежу­
точные результаты вычислений двоичными числами, состоящими из конечного ко­
личества битов. Различают три основных категории ошибок конечной длины слова,
которые затрудняют реализацию БИХ-фильтров: ошибки квантования коэффици­
ентов, ошибки переполнения и ошибки округления.
Квантование коэффициентов (представление коэффициентов с ограниченной
точностью) приводит к смещению нулей и полюсов на 2 -плоскости, в результате
чего частотная характеристика может не удовлетворять заданным при проекти­
ровании требованиям. Искажения частотной характеристики оказываются более
значительными для БИХ-фильтров высокого порядка.
Переполнение, второй эффект конечной разрядности, который доставляет непри­
ятности при реализации БИХ-фильтров, —это то, что происходит, когда результат
арифметической операции оказывается слишком большим и не может быть пред­
ставлен в аппаратурных регистрах ограниченной разрядности, предназначенных для
его хранения. Поскольку при реализации БИХ-фильтров мы выполняем много опе­
раций сложения, переполнение всегда возможно. Без специальных мер предосто­
рожности, учитывающих возможность переполнений, в выходных отсчетах могут
возникнуть ошибки значительной величины, часто в форме колебаний переполнения.
Наиболее распространенный способ борьбы с ошибками переполнения — это
округление данных, когда значение отсчета данных представляется 6-битовым
двоичным числом, которое ближе всего к неокругленному значению. Обычно
рассматривают ошибки округления как случайный процесс, но в БИХ-фильтрах
возникают такие условия, при которых ошибки округления могут вызвать бес­
конечные колебания выходного сигнала, даже если входной сигнал равен нулю.
Такие ситуации, вызванные шумом округления, который тесно коррелирован с
сигналом (это явление часто называют предельными циклами или эффектами
мертвой зоны) подробно проанализированы в литературе [26, 27].
6.7. Подводные камни реализации БИХ- фильтров
275
Мы можем продемонстрировать предельные циклы, рассматривая на рисун­
ке 6.36 (а) БИХ-фильтр второго порядка, который описывается разностным
уравнением вида
у(п ) = х(п) + 1.3у(п-1) - 0.76у(п-2) .
(6-115)
Допустим, этот фильтр округляет сумму до ближайшего целого числа. Если в
какой-то момент времени возникнет ситуация, когдау ( - 2 ) = 0 ,у (-1 ) = 8 и х (0 ), а
также все последующие входные отсчеты х(п) равны нулю, выходной сигнал филь­
тра превращается в колебание бесконечной длительности, как показано на рисун­
ке 6.36 (Ь). Если бы этот фильтр использовался для воспроизведения звука, при
уменьшении входного сигнала до нуля слушатель обнаружил бы, что вместо ти­
шины он слышит какой-то тон. Штриховая линия на рисунке 6.36 (Ь) показывает
реакцию фильтра в данной ситуации, если округление не выполняется. При нали­
чии округления этот БИХ-фильтр полностью оправдывает свое название.
-О 76
4 У(п)
Рис. 6 .3 6 . Колебания предельного цикла, вызванные округлением результатов
операций: (а) БИХ-фильтр второго порядка; (Ь) один из возможных от­
кликов БИХ-фильтра во временной области
Существует несколько способов уменьшения вредного влияния ошибок кванто­
вания коэффициентов и предельных циклов. Мы можем увеличить длину регистров,
содержащих результаты промежуточных операций. Поскольку предельные цик­
лы влияют на младшие биты результатов арифметических операций, увеличение
длины слова приведет к уменьшению их влияния, если они возникнут. Чтобы не
подавать на вход фильтра последовательность, все отсчеты которой равны нулю,
некоторые разработчики добавляют к входной последовательности возмущающую
276
Гпава 6. Фильтры с импульсной характеристикой бесконечной длины
псевдослучайную последовательность низкого уровня, которая препятствует воз­
никновению колебаний предельного цикла и позволяет выходному сигналу фи­
льтра уменьшиться до нуля, если входной сигнал стал нулевым. Возмущающая
последовательность, однако, ухудшает отношение сигнал/шум на выходе фильтра
[11]. Наконец, чтобы избежать проблем с предельными циклами, мы можем просто
использовать КИХ-фильтр. Поскольку КИХ-фильтры по определению имеют им­
пульсную характеристику конечной длительности и не содержат цепей обратной
связи, они не могут поддерживать никакие колебания выходного сигнала.
Мы можем устранить ошибки переполнения, если увеличим длину слова реги­
стров настолько, что они никогда не будут переполняться. Входной сигнал фильтра
можно промасштабировать (понизить его амплитуду, умножив на коэффициент,
значение которого меньше единицы), чтобы устранить возможность переполне­
ния, но при этом ухудшается отношение сигнал/шум. Колебания переполнения
можно устранить, используя арифметику с насыщением, когда при возникновении
условий переполнения значение сигнала ограничивается на некотором фиксиро­
ванном уровне [28,29]. Читателю будет полезно запомнить, что, когда данные пред­
ставлены в двоичном дополнительном коде, переполнения промежуточных
результатов в последовательных сложениях не оказывают влияния на окончатель­
ный результат, если мы можем гарантировать, что этот результат не выходит за
пределы диапазона, который может принять регистр результата. Конечно, вычис­
ления с плавающей точкой или с поблочно плавающей точкой могут существенно
уменьшить ошибки, связанные с колебаниями переполнения и предельными цик­
лами [30]. (Форматы чисел с плавающей точкой мы рассматриваем в разделе 12.4.)
Ошибки квантования коэффициентов и переполнения, обусловленные конечной
длиной слова, оказываются разными в разных структурах реализации БИХ-фильтров. Практика показала, что Прямая форма II (см. рисунок 6.22) наиболее склон­
на к возникновению ошибок.
Наиболее популярный метод минимизации ошибок, связанных с конечной
длиной слова, состоит в проектировании БИХ-фильтров, состоящих из ряда по­
следовательно или параллельно соединенных фильтров более низкого порядка. В
следующем разделе мы узнаем, почему.
6.8. Улучшение БИХ-фильтров с помощью
каскадных структур
Разработчики БИХ-фильтров минимизируют проблемы устойчивости и
шумов квантования, разрабатывая высококачественные фильтры в виде ком­
бинаций фильтров более низкого качества. Перед тем, как рассмотреть эту
идею, освежим в памяти важные моменты, касающиеся поведения комбинаций
нескольких фильтров.
277
6.8. Улучшение БИХ-фильтров с помощью каскадных структур
6 .8 .1 . Свойства каскадных и параллельных структур
фильтров
В этом разделе приведен обзор совместного поведения линейных фильтров
(будь то БИХ- или КИХ-фильтры), соединенных последовательно (каскадно)
или параллельно. Как показано на рисунке 6.37 (а), результирующая передаточ­
ная функция двух фильтров, соединенных последовательно, является произведе­
нием передаточных функций этих фильтров, или
Н (Л г) = Я у(2)Я2(2)
(6-116)
при общей частотной характеристике
Нсаз(со)= Н 1(<о)Н2(<о).
(6-117)
Рис. 6 .3 7 . Комбинации двух фильтров: (а) каскадная; (Ь) параллельная
Важно также знать, что импульсная характеристика каскадного соединения
фильтров равна свертке импульсных характеристик отдельных фильтров.
Как показано на рисунке 6.37 (Ь), общая передаточная функция двух филь­
тров, соединенных параллельно, представляет собой сумму передаточных функ­
ций отдельных фильтров, или
н раг(2 ) = н і ( 2> + Н 2Іг )
>
(6-118)
а общая частотная характеристика определяется как
Яраг(<о)=Я,(о>)+Я2(<о).
(6-119)
Результирующая импульсная характеристика параллельно соединенных
фильтров равна сумме индивидуальных импульсных характеристик фильтров.
Давайте разработаем правило приближенной оценки неравномерности АЧХ в
полосе пропускания двух каскадно-соединенных фильтров, показанных на ри­
сунке 6.37 (а). Величина неравномерности АЧХ каскадного соединения филь­
тров есть функция неравномерности отдельных фильтров. Изобразив пульсации
АЧХ какого-либо фильтра в линейном масштабе, как это сделано на рисунке 6.38,
мы можем приступить к оценке неравномерности АЧХ каскадного соединения
фильтров.
278
Гпава 6. Фильтры с импульсной характеристикой бесконечной длины
Согласно (6-117), верхняя граница АЧХ каскадного соединения, 1 + 11са8, яв­
ляется произведением двух пиковых значения характеристик Н ^ш ) и Н2(со), или
У+і?СЙ5= (/+і?у)(/+/?2) = ^+-^/+ ^ 2+ -^/^2 •
(6-120)
Рис. 6.3 8 . Определение неравномерности Я АЧХ в полосе пропускания
Для малых значений И-/ и И2 слагаемое Я ^ 2 пренебрежимо мало, и мы можем
сформулировать наше оценочное правило следующим образом:
( б '121)
Таким образом, в проектах, в которых используется последовательное соеди­
нение фильтров, необходимо задавать неравномерность АЧХ каждого фильтра не
больше половины требуемого значения Кса$для комбинированного фильтра, или
Л* - Я* ~
•
(6-122)
6 .8 .2 . Каскадное соединение БИХ-фильтров
Опытные разработчики фильтров обычно разбивают БИХ-фйльтры высокого
порядка на ряд последовательно соединенных БИХ-фильтров второго порядка,
потому что эти фильтры низкого порядка проще проектировать, они менее чувст­
вительны к ошибкам квантования коэффициентов, более устойчивы, а их реали­
зация позволяет проще масштабировать данные для устранения переполнений.
Оптимизация разбиения фильтра высокого порядка на множество секций второ­
го порядка представляет собой довольно сложную задачу. Пусть, например, мы
имеем фильтр шестого порядка Прямой формы I, показанный на рисунке 6.39 (а),
который мы хотим разделить на три секции второго порядка. Разбивая передаточ­
ную функцию фильтра шестого порядка Н(г) на множители, мы можем получить
до трех наборов коэффициентов прямой связи в числителе факторизованной
Я(г): Ь '(к), Ь "(к) и Ь '"(к). Аналогично, мы можем иметь до трех наборов коэффи­
циентов обратной связи в факторизованном знаменателе: а '(к), а "(к) и а '"(к). По­
скольку имеется три секции второго порядка, мы имеем 3!, или шесть, способов
объединения наборов коэффициентов. На рисунке 6.39 (Ь) первая секция исполь­
зует коэффициенты а '(к) и Ь '(к), вторая секция использует коэффициенты а "(к)
и Ь "(к). Мы могли бы также перетасовать коэффициенты так, чтобы в первой сек­
ции использовались коэффициенты а'(к) и Ь"(к), а во второй — коэффициенты
а"(к) и Ь"(к). Итак, имеется шесть математически равноправных способов объе­
279
6.8. Улучшение БИХ-фильтров с помощью каскадных структур
динения наборов коэффициентов. Добавьте к этому то, что для каждой комбина­
ции наборов коэффициентов имеется 3!, или шесть, разных последовательностей
включения этих секций второго порядка.
Ь(6)
а(6)
С екция 2
С е кц и я 3
(Ь)
Рис. 6 .3 9 . Разбиение БИХ-фильтра на секции: (а) исходный БИХ-фильтр шестого
порядка: (Ь) три секции второго порядка
Это значит, что, если мы хотим разбить фильтр порядка 2М на М секций второ­
го порядка, то мы должны проанализировать (М!)2 способов такого разбиения.
Таким образом, при переходе от рисунка 6.39 (а) к рисунку 6.39 (Ь) мы можем по­
лучить (3 /) 2 = 36 разных фильтров. Еще больше усложняет проблему разбиения
фильтра то, что ошибки, вызванные квантованием коэффициентов, будут в об­
щем случае для всех этих фильтров разные. Хотя полное описание данного пред­
мета выходит за рамки этого вводного курса, любознательный читатель может
найти материал по оптимизации секций каскадных фильтров в работах [ 19, 27] и
в части 3 работы [31].
Один простой (и, вероятно, не оптимальный) выбора порядка следования сек­
ций фильтра предложен в [ 14]. Первым делом разложим передаточную функцию
БИХ-фильтра высокого порядка Н(г) на множители вида
Я(2) = (2 + 2^)(2 + 2у)(2 + 22)(2 + 23)(2 + 2^)(2 + 25).../
(6-123)
/О + Ро)(г + Рі)(2 + /?2)0 + Рз)(2 + Р4)(2 + Р5>-
280
Глава 6. Фильтры с импульсной характеристикой бесконечной длины
гдег^ —нули, а р ^ — полюсы. (К счастью, у вас, наверное, есть пакет программ об­
работки сигналов, позволяющий выполнить такую факторизацию.) Затем сфор­
мируем секции второго порядка, выполнив следующие шаги:
1.
Найдем полюс или пару полюсов, лежащих ближе всех к единичной
окружности.
2.
Найдем ноль или пару нулей, лежащих ближе всего к полюсу или паре
полюсов, найденных на первом шаге.
3.
Объединим эти нули и полюсы в одной секции второго порядка. Это
значит, что первая секция фильтра может выглядеть как:
Я(2) = (г + г4)(г + г5)/(г + р 0)(г + р ^ .
(6-124)
4.
Будем повторять шаги 1 —3 до тех пор, пока все нули и полюсы не ока­
жутся объединенными в секции второго порядка.
5.
Окончательный порядок следования секций основан на том, как дале­
ко от единичной окружности находятся полюсы. Расположите секции
в порядке возрастания или убывания расстояния полюсов от единич­
ной окружности.
6.
Реализуйте фильтр как последовательно соединенные секции второго
порядка, включенные в порядке, заданном на шаге 5.
На сленге цифровой обработки сигналов БИХ-фильтр второго порядка называ­
ется «биквадратным», и тому есть две причины. Во-первых, передаточная функция
фильтра состоит из двух полиномов второй степени. Во-вторых, слово биквад­
ратный звучит стильно.
Между прочим, мы начали обсуждение разбиения фильтра на секции второго
порядка с Прямой формы I высокого порядка, показанной на рисунке 6.39 (а). Мы
выбрали эту форму реализации фильтра, поскольку она представляет собой струк­
туру, наименее чувствительную к ошибкам округления и переполнения. Как видно
на рисунке 6.39 (а), у нас имеются избыточные элементы задержки. Их можно объ­
единить, как показано на рисунке 6.40, уменьшив таким образом требуемый объем
памяти, как мы сделали в Прямой форме II, показанной на рисунке 6.22.
Рис. 6 .4 0 . Каскадные фильтры в Прямой форме I с уменьшенным объемом памяти
6.9. Краткое сравнение КИХ- и БИХ-фильтров
281
В литературе доступно множество материалов, посвященных эффектам ко­
нечной разрядности в БИХ-фильтрах. (В работах [14,16] и [19] обсуждаются по­
дробности влияния шумов квантования, а также приводится обширный список
литературы по этой теме.) Указания по масштабированию БИХ-фильтров для
устранения переполнений можно найти в [32,33].
6.9. Краткое сравнение КИХи БИХ-фильтров
Вполне естественно, что часто возникает вопрос о том, какой фильтр, БИХ или
КИХ наилучшим образом подходит для того или иного применения. На этот во­
прос в общем случае ответить нелегко, но мы можем указать несколько факторов,
которые следует иметь ввиду. Во-первых, мы можем предположить, что различ­
ная трудоемкость расчета этих типов фильтров не имеет значения. Как правило,
имеются более важные аспекты, которые необходимо рассмотреть, принимая ре­
шение в пользу БИХ- или КИХ-фильтра. Одно из соображений, которое может
оказаться существенным, состоит в том, что БИХ-фильтры могут аппроксимиро­
вать заданные аналоговые фильтры. КИХ-фильтры такой возможности не предо­
ставляют.
С точки зрения аппаратуры, при таких существенных фундаментальных раз­
личиях между БИХ- и КИХ-фильтрами, наш выбор должен базироваться на тех
характеристиках фильтров, которые имеют для нас наибольшее значение. Напри­
мер, если нам необходим фильтр со строго линейной ФЧХ, то единственным вы­
бором может быть только КИХ-фильтр. ЕслИ, с другой стороны, нам требуется
фильтр, обрабатывающий очень быстрый поток данных, а небольшая нелиней­
ность фазы допустима, мы можем склониться к реализации БИХ-фильтра с его
меньшим количеством умножений на выходной отсчет.
Одно предупреждение: то, что КИХ-фильтр требует, скажем, в три раза боль­
ше умножений на выходной отсчет, чем БИХ-фильтр, не значит, что БИХ-фильтры будет выполняться быстрее на программируемом ЦПОС. Типовые ЦП ОС
имеют возможность организации циклов без накладных расходов и параллельного
выполнения инструкций умножения-накопления (МАС), которые и составляют
КИХ-фильтр. Код для БИХ-фильтров содержит больше операций по обслужива­
нию указателей на данные и коэффициенты, чем код КИХ-фильтров. Так что,
если вы хотите сделать выбор между БИХ-фильтром, требующим К умножений
на выходной отсчет, и КИХ-фильтром, требующим 2К (или ЗК) умножений на
выходной отсчет, напишите программы реализации обоих и измерьте скорость их
выполнения.
В таблице 6.1 приводятся данные для БИХ- и КИХ-фильтров, позволяющие
сравнивать эти два типа фильтров с точки зрения характеристик и реализации.
282
Гпава 6. Фильтры с импульсной характеристикой бесконечной длины
Табл ица 6 . 1 . Сравнение характеристик БИХ- и нерекурсивных
КИХ-фильтров
КИХ-фильтры
(нерекурсивные)
БИХ-фильтры
Характеристика
Количество умножений
Наименьшее
Наибольшее
Чувствительность к
квантованию
коэффициентов
Может быть высокой'
(для высококачественных
аудио систем требуются
коэффициенты длиной
24 бита)
Очень низкая (для
большинства применений
достаточно иметь
16-битовые
коэффициенты)
Вероятность
переполнений
Может быть высокой2
Очень низкая
Устойчивость
Должна обеспечиваться
при проектировании
Гарантирована
Линейность ФЧХ
Невозможна
Гарантирована3
Может аппроксимировать Да
аналоговые фильтры
Нет
Пам ять коэф ф ициентов
Наибольш ая
Наименьшая
Аппаратурное управление Средней сложности
фильтром
Очень простое
Широкая
Распространенность
программ проектирования
Очень широкая
Сложность
проектирования или
сложность программ
проектирования
Умеренная
Низкая
Сложность анализа шумов Более высокая
квантования
Более низкая
Поддержка адаптивной
фильтрации
Да
Да
Чувствительность можно уменьшить в каскадных или параллельных реализациях.
См. предыдущую сноску
Гарантируется, если коэффициенты КИХ-фильтра симметричны
Библиография
283
Библиография
1. Churchill, R. V. Modem Operational Mathematics in Engineering, McGraw-Hill,
New York, 1944, pp. 307-334.
2. Aseltine, J. A. Transform Method in Linear System Analysis, McGraw-Hill, New
York, 1958, pp. 287-292.
3. Nixon, F. E. Handbook o f Laplace Transformation, Tables and Examples, Prentice-Hall, Engle-wood Cliffs, New Jersey, 1960.
4.
Kaiser, J. F. «Digital Filters» in System Analysis by Digital Computer. Ed. by F. F.
Kuo and J. F. Kaiser, John Wiley and Sons, New York, 1966, pp. 218-277.
5. Kaiser, J. F. «Design Methods for Sampled Data Filters», Chapter 7, in S1963 Proc.
IstAllerton Conference, pp. 221-236.
6.
Ragazzini, J. R. and Franklin, G. F. Sampled-Data Control Systems, McGraw-Hill,
New York, 1958, pp. 52-83.
7.
Milne-Thomson, L. M. The Calculus o f Finite Differences, Macmillan, London,
1951, pp. 232-251.
8.
Truxal, J. G. 1955. Automatic Feedback Control System Synthesis, McGraw-Hill,
New York, 1955, p. 283.
9.
Blackman, R. B. Linear Data-Smoothing and Prediction in Theory and Practice, Addison-Wesley, Reading, Mass., 1965, pp. 81-84.
10. Gold, B. and Jordan, K. L., Jr. «А Note on Digital Filter Synthesis», Proceedings o f
the IEEE, Vol. 56, October 1968, p. 1717.
11. Rabiner, L. R., et al. «Terminology in Digital Signal Processing», IEEE Trans, on
Audio and Electroacoustics, Vol. AU-20, No. 5, December 1972, p. 327.
12. Stearns, S. D. Digital Signal Analysis, Hayden Book Co. Inc., Rochelle Park, New
Jersey, 1975, p. 114.
13. Stanley, W. D., et al., Digital Signal Processing, Reston Publishing Co. Inc., Reston,
Virginia, 1984, p. 191.
14. Oppenheim, A. V, and Schafer, R. W. Discrete-Time Signal Processing, Prentice-Hall, Engle-wood Cliffs, New Jersey, 1989, p. 406 (имеется русский перевод
одного из предыдущих изданий: Оппенгейм А. В., Шафер Р. В. «Цифровая об­
работка сигналов», пер. с англ. / под ред. С. Я. Шаца, М.: Связь, 1979, доступен
по адресу dsp-book.narod.ru/OpShDSP.djvu).
15. Williams, С. S. Designing Digital Filters, Prentice-Hall, Englewood Cliffs, New Jer­
sey, 1986, pp. 166-186.
16. Rabiner, L. R., and Gold, B. Theory and Application o f Digital Signal Processing,
Prentice-Hall, Englewood Cliffs, New Jersey, 1975, p. 216 (есть русский перевод:
Рабинер Л., Голд Б. «Теория и применение цифровой обработки сигналов», М.:
Мир, 1978, доступен по адресу http://geogin.narod.ru/arhiv/dsp/dsp3.htm).
17. Johnson, М. «Implement Stable IIR Filters Using Minimal Hardware», EDN, 14
April 1983.
284
Гпава 6. Фильтры с импульсной характеристикой бесконечной длины
18. Oppenheim, A. V, Willsky, A. S., and Young, I. T. Signals and Systems, Prentice-Hall, Englewood Cliffs, New Jersey, 1983, p. 659.
19. Kaiser, J. F. «Some Practical Considerations in the Realization of Linear Digital
Filters», Proc. Third Annual Allerton Conference on Circuit and System Theory,
1965, pp. 621-633.
20. Deczky, A. G. «Synthesis of Digital Recursive Filters Using the Minimum P Error
Criterion», IEEE Trans, on Audio and Electroacoustics, Vol. AU-20, No. 2, October
1972, p. 257.
21. Steiglitz, K. «Computer-Aided Design of Recursive Digital Filters», IEEE Trans,
on Audio and Electroacoustics, Vol. 18, No. 2,1970, p. 123.
22. Richards, M. A. «Application of Deczky's Program for Recursive Filter Design to
the Design of Recursive Decimators», IEEE Trans, on Acoustics, Speech, and Signal
Processing, Vol. ASSP-30, October 1982, p. 811.
23. Parks, T. W., and Burrus, C. S. Digital Filter Design, John Wiley and Sons, New
York, 1987, p. 244.
24. Rabiner, L., Graham, Y, and Helms, H. «Linear Programming Design of HR Digi­
tal Filters with Arbitrary Magnitude Functions», IEEE Trans, on Acoustics, Speech,
and Signal Processing., Vol. ASSP-22, No. 2, April 1974, p. 117.
»
25. Friedlander, B., and Porat, B. «The Modified Yule-Walker Method of ARMA
Spectral Estimation», IEEE Trans, on Aerospace Electronic Systems, Vol. AES-20,
No. 2, March 1984, pp. 158-173.
26. Jackson, L. B. «On the Interaction of Roundoff Noise and Dynamicjlange and Dy­
namic Range in Digital Filters», Bell System TechnicalJournal Vol. 49, February
1970, pp. 159-184.
27. Jackson, L. B. «Roundoff Noise Analysis for Fixed-Point Digital Filters Realized in
Cascade or Parallel Form», IEEE Trans. Audio Electroacoustics, Vol. AU-18, June
1970, pp. 107-122.
28. Sandberg, I. W. «A Theorem Concerning Limit Cycles in Digital Filters», Proc.
Seventh Annual Allerton Conference on Circuit and System Theory, Monticello, Illi­
nois, October 1969.
29. Ebert, P. M., et al. «Overflow Oscillations in Digital Filters», Bell Sys. Tech. Jour­
nal, Vol. 48, November 1969, pp. 2999-3020.
30. Oppenheim, A. V. «Realization of Digital Filters Using Block Floating Point Arith­
metic», IEEE Trans. Audio Electroacoustics, Vol. AU-18, June 1970, pp. 130-136.
31. Rabiner, L. R., and Rader, C. M., Eds., Digital Signal Processing, IEEE Press, New
York, 1972, p. 361.
32. Grover, D. «Subject: Re: How to arrange the (gain, -pole, zero) o f the cascaded biqu­
ad filter». Usenet group comp.dsp post, Dec. 28, 2000.
33. Grover, D. and Deller, J. Digital Signal Processing and the Microcontroller, Prentice
Hall, Upper Saddle River, New Jersey, 1998.
Глава 7
Специальные
КИХ-фильтры
нижних частот
В этой главе мы предлагаем вашему вниманию две реализации эффективных
КИХ-фильтров нижних частот с линейной ФЧХ. Мы обсуждаем эти специаль­
ные фильтры здесь, потому что их поведение легче понять, используя 2 -иреобразование, которое мы рассмотрели в предыдущей главе.
Первый тип фильтра, который мы представляем вам, называется фильтром на
основе частотной выборки. Эти фильтры принадлежат к классу КИХ-фильтров с
линейной ФЧХ, построенных на основе рекурсивной структуры (использующей
обратную связь). Материал раздела 7.1 новичкам может показаться сложным, но
он заслуживает изучения по двум причинам. Во-первых, эти фильтры могут быть
очень эффективными (с минимальным объемом вычислений) при реализации уз­
кополосных ФНЧ; и, во-вторых, понимание принципа их работы и проектирова­
ния будет способствовать более глубокому усвоению теории ЦОС, изложенной в
предыдущих разделах.
В разделе 7.2 обсуждаются интерполированные КИХ ФНЧ. В этих фильтрах, реа­
лизованных по нерекурсивной схеме (без обратных связей), для уменьшения объема
вычислений используется последовательное соединение нескольких КИХ-фильтров. Их реализация представляет собой новый подход, при котором умножители
в традиционной структуре на основе линии задержки с ответвлениями разделены
несколькими элементами задержки.
Эти типы фильтров похожи друг на друга тем, что они представляют собой филь­
трующие машины, из которых удалено все лишнее. Они буквально по капле выжи­
мают эффективность из гарантированно устойчивых фильтров с линейной ФЧХ.
Во многих применениях эти фильтры могут обеспечить очень существенное умень­
шение вычислительной сложности по сравнению с обычными КИХ-фильтрами,
рассчитанными методом Паркса-Маклеллана, которые мы рассматривали в главе 5.
286
Гпава 7. Специальные КИХ-фильтры нижних частот
7.1. Фильтры на основе частотной
выборки: утраченное искусство
В этом разделе обсуждается класс цифровых фильтров, которые называются
фильтрами на основе частотной выборки (Ф О ЧВ) и которые используются для
реализации КИХ-фильтров с линейной ФЧХ. Хотя фильтры на основе частотной
выборки были разработаны более 35 лет тому назад, распространение мощного
метода проектирования нерекурсивных КИХ-фильтров Паркса-Маклеллана от­
теснило их в тень. В 1970-е годы фильтры на основе частотной выборки настолько
утратили популярность, что в современных курсах лекций и учебниках по ЦОС
они либо упоминаются вскользь, либо не упоминаются вообще. Однако мы пока­
жем, что фильтры на основе частотной выборки остаются более эффективными с
вычислительной точки зрения, чем фильтры Паркса-Маклеллана, в определен­
ных приложениях, где требуемая ширина полосы пропускания составляет мень­
ше примерно одной пятой частоты дискретизации. Для специалиста-практика в
области ЦОС этот материал может послужить введением в структуру, характери­
стики и проектирование фильтров на основе частотной выборки, а также дать по­
дробное сравнение предлагаемой реализации высококачественных фильтров на
основе частотной выборки с их нерекурсивными КИХ эквивалентами. Кроме того,
мы дополним информацию о ФОЧВ практическими соображениями относитель­
но линейности ФЧХ, устойчивости фильтров, нормирования коэффициента пере­
дачи и вычислительной сложности, рассмотрев примеры их проектирования.
В основе ФОЧВ лежит тот факт, что традиционный нерекурсивный КИХфильтр с N ответвлениями, показанный на рисунке 7.1 (а), может быть реализо­
ван в виде гребенчатого фильтра, соединенного последовательно с банком из N
комплексных резонаторов, как показано на рисунке 7.1 (Ь). Мы называем фильтр
на рисунке 7.1 (Ь) обобщенным фильтром на основе частотной выборки (ФОЧВ),
и его эквивалентность нерекурсивному КИХ-фильтру была доказана в [1-3].
Хотя коэффициенты нерекурсивных КИХ-фильтров с N ответвлениями /*(&),
О < к < Ы - 1, обычно имеют действительные значения, в общем случае они могут
быть комплексными. Это начальное предположение, которое принимается при
сравнении двух фильтров на рисунке 7.1. Коэффициенты усиления Н(к), которые
представляют собой отсчеты ДПФ последовательности коэффициентов 1г(к), в
общем случае принимают комплексные значения вида \Н(к)\ е ^ к\
В основе проектирования ФОЧВ лежит определение требуемой АЧХ КИХфильтра в виде отсчетов Н(к) в частотной области, модули которых показаны на
рисунке 7.2 точками. Далее эти комплексные Н(к) используются как множители,
на которые умножаются выходные сигналы резонаторов ФОЧВ (см. блок-схе­
му). Если вы не встречались с этой структурой раньше, не пугайтесь ее внешней
сложности. Мы скоро разберемся со всеми ее частями и с тем, как эти части взаи­
модействуют.
Позже мы выведем математическое выражение для определения интерполи­
рованной (истинной) АЧХ ФОЧВ \Н(е№)\, которая показана сплошной линией
на рисунке 7.2. На этом рисунке по оси абсцисс отложена круговая частота а> в
диапазоне от 0 до 2л радиан, нормированная относительно л радиан, что соответ­
ствует диапазону частот 0 до / 5, где / 5 —частота дискретизации в Гц.
7.1. Фильтры на основе частотной выборки: утраченное искусство
287
(а)
Резонаторы
Н(Л/-1)/Л/
(Ь)
Рис. 7 .1 .
КИХ-фильтры: (а) нерекурсивный с N ответвлениями; (Ь) эквивалентный
фильтр на основе частотной выборки из N секций
Частота
Рис. 7 .2 .
Определение требуемой частотной характеристики с помощью частот­
ной выборки
Чтобы избежать путаницы, мы напоминаем читателю, что существует попу­
лярный метод проектирования нерекурсивных КИХ-фильтров, известный как
метод проектирования по дискретизированной частотной характеристике, описан­
ный в литературе по ЦОС. Проектирование этим методом начинается (подобно
проектированию ФОЧВ) с определения отсчетов требуемой АЧХ #(&), затем вы­
полняется ОДПФ этих отсчетов с целью получить отсчеты импульсной характери­
стики /?(&), используемые в качестве коэффициентов в структуре нерекурсивных
КИХ-фильтров на рисунке 7.1 (а). В описываемом методе проектирования ФОЧВ
288
Гпава 7. Специальные КИХ-фильтры нижних частот
отсчеты требуемой АЧХ Н(к) являются коэффициентами структуры ФОЧВ, при­
веденной на рисунке 7.1 (Ь), которую обычно называют реализацией КИХ-фильтра на основе частотной выборки.
Хотя ФОЧВ сложнее, чем нерекурсивные КИХ-фильтры, они заслуживают
изучения, т. к. во многих ситуациях, когда необходима узкополосная фильтрация,
они могут обеспечить реализацию КИХ-фильтров с линейной ФЧХ, требующую
значительно меньше операций, чем нерекурсивные КИХ-фильтры с N ответвле­
ниями. Уменьшение количества операций происходит благодаря тому, что, в то
время как в реализации нерекурсивных КИХ-фильтров используются все коэффи­
циенты /г(к), большинство отсчетов Н(к), соответствующие полосе задерживания,
принимают нулевое значение и не требуют реализации умножителя. Чтобы понять
принцип работы и преимущества ФОЧВ, мы начнем с рассмотрения поведения
гребенчатого фильтра, а затем рассмотрим характеристики отдельного цифрово­
го резонатора.
7 .1 .1 . Гребенчатый фильтр и комплексный цифровой
резонатор
Одна секция комплексного ФОЧВ представляет собой гребенчатый фильтр,
последовательно с которым включен комплексный цифровой резрнатор, как по­
казано на рисунке 7.3.
Умножитель на коэффициент 1/Ы, следующий за резонатором на рисунке 7.1 (Ь),
для простоты опущен. (Влияние этого коэффициента мы рассмотрим позже.)
Чтобы понять работу отдельной секции ФОЧВ, мы рассмотрим сначала характе­
ристики нерекурсивного гребенчатого фильтра, разностное уравнение которого
имеет вид
у(п) = х(п) - х(п-Ы ) ,
(7-1)
т. е. выход этого фильтра равен разности входной последовательности и ее же, но за­
держанной на N отсчетов. Передаточная функция гребенчатого фильтра имеет вид
Нсоть(?) ~ У(г)/Х(г) - 1 - г~ "
Г реб ен ча ты й
ф и л ьтр
-1
Рис. 7 .3 .
(7-2)
Ко м пл ексны й
р е зо н а то р
е'“г
Одна секция комплексного ФОЧВ
Частотная характеристика гребенчатого фильтра,, вывод которой вы можете
найти в разделе 1 приложения Є, описывается выражением
Нсоть(е^ ) = е-і(шМ~ ^/2 2 зіп((оМ/2)
(7-3)
289
7.1. Фильтры на основе частотной выборки: утраченное искусство
при этом АЧХ выглядит как \НсотЬ(е ^ )\ = 2\зт(о)Ы/2)\, имея максимальное значе­
ние 2. Полезно будет рассмотреть импульсную характеристику гребенчатого фи­
льтра и его АЧХ, приведенные на рисунке 7.4 для N = 8. Вид АЧХ ясно
показывает, почему этот фильтр называется гребенчатым.
Соотношение (7-2) объясняет ключевую особенность гребенчатого фильтра:
его передаточная функция имеет N нулей, распределенных равномерно по еди­
ничной окружности в 2 -плоскости, как показано на рисунке 7.4 (с). Каждый из
этих нулей, расположенный в точке г(к) = е
где к = 0,1,2,..., М - 1, соответст­
вует нулю АЧХ на рисунке 7.4 (Ь), где нормированная частота меняется от - л до
+л радиан. Эти значения г(к) представляют собой N корней уравнения, которое
мы получаем, приравняв (7-2) единице: г(к )^ = (е!2лк/М)М = / МЬ1 можем пока­
зать АЧХ (в линейном масштабе) над 2 -плоскостью в виде трехмерного графика,
приведенного на рисунке 7.5, где мы видим пересечение поверхности |ЯС0Ш^(г)| с
цилиндром, в основании которого лежит единичная окружность. Разрезав ци­
линдр по образующей, проходящей через точку 2 = -1, и выпрямив его поверх­
ность, мы получим график, приведенный на рисунке 7.4 (Ь).
Наша цель —построить ФОЧВ, соединив последовательно гребенчатый фильтр
и цифровой резонатор, полюс передаточной функции которого совпадает с одним
из нулей гребенчатого фильтра, в результате чего получается полосовой фильтр с
линейной ФЧХ. Имея это ввиду, рассмотрим характеристики цифрового резона­
тора, показанного на рисунке 7.3.
Во временной области комплексный резонатор описывается разностным урав­
нением
(7-4)
у(п) = ь(п) + еішгу (п -1 ) ,
где аргумент шг - л < шх< л , определяет резонансную частоту резонатора. Мы по­
кажем это, рассмотрев передаточную функцию резонатора
(7-5)
НгеІ 2 ) = У(2)/У(2) = 1/(1 - <?>г 2-1)
и его комплексную импульсную характеристику для шТ= л / 4 на рисунке 7.6.
Импульсная
характеристика
г-плоскость
АЧХ
о
о.5;
О
Г
тС
кгс оЛ
о
-0.5 і
-1
-1
•
о
5'
10
Время
(а)
Рис. 7 .4 .
15
Частота
-1
0
1
Действительная часть
(Ь)
(с)
0
0.5
Характеристики гребенчатого фильтра при N = 8
290
Глава 1. Специальные КИХ-фильтры нижних частот
соответствует нулевой частоте
Рис. 7 .5 .
АЧХ гребенчатого фильтра при N=8 над г-плоскостью
Импульсная характеристика резонатора с сот= ж/4 предста--------------------- плексную синусоиду, действительная часть которой (косинусоида) изображена на
рисунке 7.7 (а), и длительность ее не ограничена. (Мнимая часть импульсной ха­
рактеристики, как мы и ожидали, является синусоидальной последовательно­
стью.) АЧХ в этом случае является очень узкой, с центром на частоте сог Передаточ­
ная функция резонатора Нге$(г) имеет единственный ноль в точке г = 0, но нас
больше интересует его полюс в точке на единичной окружности, аргумент кото­
рого равен а>Т, как показано на рисунке 7-7(с). Мы можем представлять себе резо­
натор как БИХ-фильтр, который условно устойчив, потому что его полюс не
находится ни внутри, ни снаружи единичного круга.
Импульсная характеристика
15
Время 30
Действительная часть
Рис. 7 .6 .
Импульсная характеристика одного цифрового комплексного резонато­
ра с шг = п/4
291
7.1. Фильтры на основе частотной выборки: утраченное искусство
Импульсная характеристика
(действительная)
АЧХ
г-плоскость
и
0.5
ч
х
0
3X
-0.5
-1
-1
0
10
20
Время
(а)
Рис. 7 .7 .
30
-30
-1
-0.5
О *0.5
Частота Ч
-1
0
1
Действительная часть
(Ь)
(с)
Характеристики цифрового комплексного резонатора при сог = л/4
Теперь проанализируем одну секцию ФОЧВ, показанную на рисунке 7.3. Ее
передаточная функция представляет собой произведение трех сомножителей:
Я(2) = НсотЬ(2)Нге5(2)Н(к) = (1 - 2-*)Щ к)/(1 - Є^г 2-1) .
(7-6)
Если мы примем резонансную частоту сотравной 2лІг/Л/, где к = 0, 1,2,..., N -1,
то полюс передаточной функции наложится на ее ноль, и мы будем иметь переда­
точную функцию вида
Н $$(2) = (1 - 2~М) Н ( к ) / ( 1 - е]2лк/М2-1) ,
(7-7)
где нижний индекс "55" обозначает ФОЧВ с одной секцией. Разобраться в этом
односекционном ФОЧВ мы можем, рассмотрев его показанные на рисунке 7.8
временные и частотные характеристики при N = 32, ^ = 2 и Н(2) = 1.
Рисунок 7.8 содержит много информации. Мы видим, что комплексная импуль­
сная характеристика ФОЧВ представляет собой усеченную комплексную синусо­
иду, действительная часть которой показана на рисунке 7.8 (а). Положительный
импульс, полученный от гребенчатого фильтра, запускает колебания резонатора
в нулевой момент времени. Затем в нужный момент, а именно через N = 32 отсче­
та, что составляет к = 2 периода синусоиды, отрицательный импульс на выходе
гребенчатого фильтра гасит колебания резонатора. АЧХ, которая является преоб­
разованием Фурье ограниченной синусоидальной импульсной характеристики,
имеет форму функции 8Іп(л:)/л:. На карте нулей и полюсов (рисунок 7.8 (с)) вид­
но, что полюс резонатора попадает точно на ноль гребенчатого фильтра к =2, ле­
жащий на единичной окружности, устраняя ноль частотной характеристики на
частоте 2 лк /К = л /8 . (Вспомним, что нормированная угловая частота 2 л к /К ради­
ан соответствует частоте к/5//V, где / 5 —частота дискретизации в Гц. Следователь­
но, фильтр на рисунке 7.8 имеет резонансную частоту / 5/1 6 Гц.)
Мы можем определить интерполированную частотную характеристику ФОЧВ,
вычислив Н35( 2 ) на единичной окружности. Подстановка
вместо г в Н55(г) в
(7-7), как подробно описано в разделе 2 приложения Є, дает частотную характе­
ристику вида
Н 8з(е]а)) = Н 55(2) \2=е]ш =
= е-мм-1)/2 е-]пк/м # (£ ) ът(<аК/2)/*\ф>/2 - лк /Щ .
(7-8)
292
Гпава 7. Специальные КИХ-фильтры нижних частот
Импульсная характеристика
(действительная)
1%
і•
0.5; 1
0-
О
-5
г-плоскость
АЧХ
"1
о
03
т
-10
к03 Оп
5
X
-15
-20
-0.5 Г
о
о
о
о
о
о
о
о
-25
-1
О
10
20
Время
(а)
Рис. 7 .8 .
30
-30
-1
іЛ
іЛі.... __ .
-0.5
О у'
Частота
к/8°о
о
о
о
° 0ооо°0
0.5
1
2 я Ш = я/8
-1
0
1
Действительная часть
(Ь)
(с)
Характеристики односекционного комплексногоФОЧВ при Ы= 32,к = 2\л
Н(2) = 1
Вычисление \Н55(е)ш)\ в диапазоне частот - л < ( о < п дает кривую, показанную
на рисунке 7.8 (Ь). Наш односекционный ФОЧВ имеет линейную ФЧХ, т. к. член
е-]пк/ы в (7-8) дает постоянный сдвиг фаз, определяемый констангами и к, фа­
зовый угол Н (к) фиксирован, а фаза члена
представляет собой линей­
ную функцию частоты ш. Как показано в разделе 2 приложения в , максимум АЧХ
односекционного комплексного ФОЧВ равен N при \Н(к)\=1. Это продемонстри­
ровано на рисунке 7.9.
Рис. 7 .9 .
АЧХ односекционного комплексного ФОЧВ при N=32 и к=2 надг-плоскостью
7 .1 .2 . Многосекционные комплексные ФОЧВ
Чтобы построить практически полезный ФОЧВ, мы используем несколько
секций резонаторов, как показано на рисунке 7.1 (Ь), для реализации полосового
КИХ-фильтра. Построим, например, трехсекционный комплексный полосовой
ФОЧВ, задав N = 32 и взяв ненулевые значения отсчетов Н(2), Н(3) и Н(4). Тре­
буемая частотная характеристика показана на рисунке 7.10 (а), структура полосо­
вого фильтра приведена на рисунке 7.10 (Ь).
7. 1. Фильтры на основе частотной выборки: утраченное искусство
293
Отсчеты \Н(к)\ полосового ФОЧВ
Частота
Рис. 7 .1 0 . Трехсекционный комплексный ФОЧВ с Л/ = 32: (а) требуемая АЧХ; (Ь) реа­
лизация
Анализируя этот случай, вспомним, что передаточная функция параллельно со­
единенных фильтров равна сумме отдельных передаточных функций. Итак, пере­
даточная функция Л^-секционного комплексного ФОЧВ с учетом (7-7) имеет вид
N-1
Н ,х( 2) - ( 1 - г - " ) 2 н ( к ) / ( 1 ,
( 7 -9)
к=0
где нижний индекс "сріх" обозначает комплексный многосекционный ФОЧВ.
Задержимся на минуту, чтобы осмыслить выражение (7-9). Первый сомножи­
тель в правой части представляет гребенчатый фильтр, второй —сумму дробных
членов. Суммирование отношений (каждое из которых представляет резонатор)
означает, что эти резонаторы включены параллельно. Вспомним раздел 6.8.1, где
говорилось, что передаточная функция параллельно соединенных фильтров рав­
на сумме передаточных функций фильтров. Очень важно разобраться в выраже­
нии (7-9), потому что ниже мы встретим много подобных выражений.
Итак, гребенчатый фильтр возбуждает банк резонаторов. Для комплексного
ФОЧВ с Ы = 32 мы могли бы иметь до 32 резонаторов, но на практике для узко­
полосных фильтров их требуется всего несколько. На рисунке 7.10 мы исполь­
294
Гпава 7. Специальные КИХ-фильтры нижних частот
зовали только три резонатора. В этом и состоит красота ФОЧВ: большинство
значений множителей H (k) в (7-9) равны нулю, и соответствующие резонаторы
не реализуются, что позволяет сделать ФОЧВ эффективным с вычислительной
точки зрения.
Выполняя те же шаги, что и в разделе 2 приложения G, мы можем записать час­
тотную характеристику многосекционного ФОЧВ, такого как на рисунке 7.10, в виде
N-1
Нср1х(еП = e~iUJ(N~1}/2 '^ lH(k)e~jJlk/ Nsïn((oN/2)/sin(ü)/2 - лк / N ) .
k=0
(7-10)
Разработчик многосекционного комплексного ФОЧВ может получить любую
требуемую ФЧХ, задав фазовые углы ф(к) всех ненулевых комплексных коэффи­
циентов передачи H (k) = \H(k)\ e w ) . Однако чтобы построить комплексный
ФОЧВ с линейной ФЧХ, разработчик должен: (а) Задать ф(к) как линейную
функцию частоты и (Ь) определить последовательность фаз ф(к) так, чтобы ее
наклон был равен - ( N - 1 ) /2 . Второе условие требует, чтобы ФОЧВ имел поло­
жительную задержку по времени, равную (N - 1 ) /2 отсчетам, как и нерекурсив­
ный КИХ-фильтр с N ответвлениями, показанный на рисунке 7.1 (а). Этим
условиям удовлетворяют следующие выражения для ф(к) при четном N.
ф(к) = k (2 jz /N )[ -(N -1)/2] = - k jz(N -1 )/N , к = 0 ,1 ,2 ,..., ( N / 2 ) - 1 .
(7-11)
ф (Щ 2 )-0 .
(7-11)
ф ( к ) - ( N - k ) ( 2 n / N ) ( N - 1 ) / 2 = j i ( N - k ) ( N - 1 ) / N , k = N / 2 + 1,... , N - 1 .
(7-11")
При нечетном Означения фаз H(k) для обеспечения линейности ФЧХ должны быть
ф(к) = k(2 n /N )[-(N -1 )/2 ] = - к л( N - 1 ) /N , к = 0 ,1 ,2 ,..., ( N - 1 ) /2 .
(7-12)
ф(к) = (N -k )(2 n /N )(N -1 )/2 = n ( N - k ) ( N - 1 ) /N , k = (N + 1 )/2 ,..., N - 1 . (7-12')
Два примера последовательностей ф(к) с линейной ФЧХ для N = 19 n N = 20
показаны на рисунке 7.11. Значение ф(0) = 0 устанавливает нулевую фазу на час­
тоте 0 Гц, a 0(iV/2) = 0 на частоте f s /2 на рисунке 7.11 (Ь) обеспечивает симмет­
рию импульсной характеристики.
Присвоение соответствующих фаз ненулевым коэффициентам Н(к) — это, одна­
ко, только половина дела. Есть хорошая новость. Изучение частотной характеристи­
ки (7-10) показывает нам простой способ получения линейной ФЧХ на практике.
Подстановка \H(k)\
со значениями ф(к), определяемыми приведенным выше
выражением (7-11), вместо Н(к) в (7-10) дает выражение для частотной характери­
стики комплексного многосекционного ФОЧВ при четном Давида
Hcplx, lp(eJUJ) = e - M N~1)/2 sin(0)N / 2 ) х
(N/2)-1
x [ | H (N /2) | e~JJl/ 2/sin(a>/2 - ж/2) + ^ | H(k) \ ( - 1)k/sin((o/2 - rtk/N) k=0
N-1
- ^ Z \H ( k ) \( - 1 ) k/sm ((o /2 - л к /N )] ,
(7-13)
k=(N/2)+1
где нижний индекс "Ip" говорит о линейности ФЧХ.
7. 1. Фильтры на основе частотной выборки: утраченное искусство
Положительная
частота
Частота
(а)
Отрицательная
частота
(к)
Положительная
частота
295
Отрицательная
частота
Частота
(к)
(Ь)
Рис. 7 .1 1 . Линейность фазы Н(к) для односекционного ФОЧВ: (а) для N = 79;
(Ь) N = 20
Выражение (7-13) не такое сложное, каким кажется. Оно просто говорит о том,
что общая частотная характеристика ФОЧВ равна сумме 5т(лг)Д-подобных частот­
ных характеристик отдельных резонаторов. Первое слагаемое в квадратных скобках
представляет собой резонатор, центральная частота которого равна к = N /2 (/8 /2).
Первая сумма в квадратных скобках представляет резонаторы с положительны­
ми резонансными частотами, а вторая сумма —резонаторы с отрицательными ре­
зонансными частотами.
Множители ( - 7)^ в числителях (7-13) заслуживают нашего внимания, посколь­
ку они 1федставляют собой последовательность чередующихся положительных и
отрицательных элементов. Таким образом, частотная характеристика одной сек­
ции будет сдвинута по фазе на 180° относительно характеристик соседних резона­
торов. То есть выходные сигналы соседних односекционных ФОЧВ будут иметь
фиксированную разность фаз в л радиан в полосе пропускания, общей для обоих
фильтров, как показано на рисунке 7.12. (Появление множителей (-7 )^ в (7-13)
обосновано в разделе 3 приложения в .)
Эти множители (-7 )^ оказывают глубокое влияние, которое недостаточно
подчеркивается в литературе по ФОЧВ. Вместо того, чтобы задавать ненулевые
комплексные множители Н(к) с линейно нарастающей фазой <р(к), мы можем по­
строить многосекционный ФОЧВ, используя только модули \Н(к)\ и присваивая
этим действительным коэффициентам чередующиеся знаки. Кроме того, если все
ненулевые коэффициенты |#(&)| равны единице, нам не нужно выполнять умно­
жение, показанное на рисунке 7.10, как на рисунке 7.13 (а).
Единичные коэффициенты \Н(к)\ и чередующиеся знаки слагаемых позволяют
заменить комплексные умножения на рисунке 7.10 (Ь) сложениями и вычитания­
ми на рисунке 7.13 (а). Мы прибавляем выходные сигналы резонаторов с четны7
ми &и вычитаем выходные сигналы резонаторов с нечетными к. Рисунок 7.13 (Ь)
подтверждает, что мы получили линейную ФЧХ с разрывами в точках, в которых
АЧХ равна нулю, для многосекционного комплексного ФОЧВ.
296
Глава 7. Специальные КИХ-фильтры нижних частот
Передаточная функция упрощенного комплексного ФОЧВ с линейной ФЧХ
имеет вид
N-1
(1-Н)
Нср/х(2) = (.1-г~") ' £ ( - 1 ) к/(1 - еР*Ь/м2- 1 ) .
к=0
(В (7-14) мы не использовали индекс "1р", потому что здесь и далее все наши
комплексные ФОЧВ будут иметь линейную ФЧХ.)
.....
К
..
,—...... -
Разность фаз
.0
;
0
0.1
0.2
0.3
0.4
0.5
Частота
0.6
0.7
0.8
0.9
1
Рис. 7 .1 2 . Сравнение АЧХ, ФЧХ и разности фаз секций ФОЧВ к=3 \лк = 4 при N = 32
Частота
(а)
(Ь)
Рис. 7 .1 3 . Упрощенный трехсекционный комплексный полосовой ФОЧВ с линей­
ной ФЧХ при N = 32: (а) реализация; (Ь) частотная характеристика
7. 1. Фильтры на основе частотной выборки: утраченное искусство
297
7 .1 .3 . Обеспечение устойчивости ФОЧВ
До сих пор мы обсуждали комплексные ФОЧВ с взаимным уничтожением ну­
лей и полюсов на единичной окружности. Однако на практике точное взаимное
уничтожение требует вычислений с неограниченной разрядностью. Ошибки
квантования коэффициентов ФОЧВ могут привести к тому, что полюсы фильтра
сместятся за пределы единичного круга. В результате фильтр получится неустой­
чивым, его импульсная характеристика будет иметь неограниченную длитель­
ность, чего следует избегать. (Это прекрасный пример фразы, подтвержденной
временем: «Теоретически, разницы между теорией и практикой нет. На практике
теория иногда не работает».) Даже если полюс сместился очень незначительно за
пределы единичного круга, шум округления со временем будет нарастать, иска­
жая выходные отсчеты фильтра. Мы предотвращаем это явление, слегка смещая
нули гребенчатого фильтра и полюсы резонаторов внутрь единичного круга, как
показано на рисунке 7.14 (а). Здесь нули и полюс расположены на окружности ра­
диуса г, при этом коэффициент затухания г лишь немного меньше 1.
Мы называем г коэффициентом затухания, потому что импульсная характери­
стика однокаскадного ФОЧВ превращается в затухающую синусоиду. Например,
действительная часть импульсной характеристики однокаскадного комплексного
ФОЧВ при N = 32, k = 2, Н(2) = 2 и г = 0.95 показана на рисунке 7.14 (Ь). Сравните
эту импульсную характеристику с изображенной на рисунке 7.8 (а). Структура
односекционного ФОЧВ с нулями и полюсами, лежащими внутри единичного
круга, показана на рисунке 7.14 (с).
Коэффициент гребенчатого фильтра равен —r N, потому что его новая переда­
точная функция имеет вид
НсотЬ, г< Г « - V(z)/X(z) - 1 - r * z -H
(7-15)
при этом N нулей гребенки лежат в точках zT<Д k) = reJ2jlfi/N, где k = 0,1,2,..., N - 1.
Эти значения zT<1(k) представляют собой N корней уравнения, полученного
приравниванием (7-15) к нулю, при этом zr<1(k)N = (rei2jlk/ N)N = r N. Передаточ­
ная функция резонатора, показанного на рисунке 7.14 (Ь), полюс которого имеет
модуль г и аргумент 2nk/N, имеет вид
Hres, т<1 (z) =
r e fr V N z -l) ,
(7-16)
что приводит нас к передаточной функции односекционного комплексного ФОЧВ
с гарантированной устойчивостью вида
Hgs,s.s(z^
Hcomb, г<l(^y^res, т<1
= ( 1 - r Nz~N)H (k)/(1 - rei2*k/ Nz~ 1),
(7-17>
реализация которой показана на рисунке 7.14 (с). Нижний индекс "gs,ss" обозна­
чает односекционный ФОЧВ с гарантированной устойчивостью. Передаточная
функция М-секционного комплексного ФОЧВ имеет вид
Hgw p fc« - С - r N z - N) ^ H ( k ) /( 1 - r e i W N 2-1) _
k=0
(7-18)
298
Гпава 7. Специальные КИХ-фильтры нижних частот
где нижний индекс
обозначает многосекционный комплексный ФОЧВ с
гарантированной устойчивостью. Частотная характеристика многосекционного
комплексного ФОЧВ с гарантированной устойчивостью (выведенная в разделе 3
приложения в ) определяется выражением
Hgs,cpbc(e^<0) ~
N-1
= \ / г м- 1е-М*Г-1)/2 2 я ( ^ ) є - ^ / л г5ІпЬ[Л^1п(г)/2 - і Ш /2 ] /
к=0
/8ІпЬ[1п{г)/2 - ]{о)-2лк/Ы )/2\ ,
Импульсная характеристика
(действительная)
1*
N = 32, к = 2,
Н(2)= 1,
0.5
. г =0.95
х(п)
— — К+ь-»<+)
гл
0
-0.5
Единичная окружность
/
(а)
V
0
ю
20
Время
(Ь)
30
(7-19)
Н(к)
ге1шГ
(С)
Рис. 7 .1 4 . Обеспечение устойчивости ФОЧВ: (а) полюсы и нули находятся внутри
единичного круга; (Ь) действительная часть импульсной характеристики
устойчивого односекционного ФОЧВ; (с) структура ФОЧВ
Если мы модифицируем структуру полосового ФОЧВ на рисунке 7.13 (а),
чтобы переместить нули и полюсы внутрь единичного круга, то мы получим
структуру, показанную на рисунке 7.15 (а). Влияние этого перемещения нулей и
полюсов на частотную характеристику значительно, как можно видеть на рисун­
ке 7.15 (Ь) для двух случаев, когда г = 0.95 и г = 0.9999.
На рисунке 7.15 (Ь) видно, что значение г = 0.95 сильно исказило характеристи­
ки нашего комплексного полосового ФОЧВ; подавление в полосе задерживания
ухудшилось, явно видна нелинейность ФЧХ. Значения коэффициента затухания г,
меньшие единицы, приводят к нелинейности ФЧХ, т. к. нули фильтра больше не
являются взаимно обратными. Вспомните ключевую характеристику КИХ-фильтров: чтобы обеспечить линейную ФЧХ, каждый ноль, лежащий внутри единич­
ного круга, в точке г = гг<1(к), где гт<1(1г) не равно 0, должен сопровождаться
нулем в точке г = 1/гт<1{к), лежащим за пределами единичного круга. Здесь это
условие нарушено, что и привело к нелинейности ФЧХ. (Читатель мог предви­
деть эту нелинейность, исходя из асимметрии импульсной характеристики на ри­
сунке 7.14 (Ь).) Чем ближе к единичной окружности мы размещаем нули, тем
более линейной является ФЧХ. Следовательно, рекомендуется выбирать г как
можно ближе к единице, насколько позволяет двоичный формат представления
коэффициентов [4]. Если используется целочисленная арифметика, можно за­
дать г = 1 -1 /2 в , где В — количество бит в представлении коэффициентов.
7. 1. Фильтры на основе частотной выборки: утраченное искусство
299
АЧХ
(а)
(Ь)
Рис. 7 .1 5 . Трехсекционный комплексный полосовой ФОЧВ с линейной ФЧХ и га­
рантированной устойчивостью при N = 32: (а) реализация; (Ь) частотная
характеристика для двух значений коэффициента затухания г
Другой способ стабилизации, заслуживающий внимания, состоит в уменьше­
нии наибольшей составляющей (действительной или мнимой) коэффициента
обратной связи резонатора е ]2лк/И на единицу младшего разряда. Этот метод
можно применять избирательно к резонаторам, вызывающим опасения, он эф­
фективен в устранении неустойчивости, вызванной ошибками округления, кото­
рые приводят к тому, что коэффициенты е!2лЬ/м, рассчитанные с ограниченной
точностью, имеют модуль больше единицы.
До сих пор мы рассматривали ФОЧВ с комплексными коэффициентами, АЧХ
которых несимметрична относительно 0 Гц. Далее мы исследуем ФОЧВ с дейст­
вительными коэффициентами, имеющими частотную характеристику, которая
является сопряженно-симметричной.
7 .1 .4 . Многосекционные ФОЧВ с действительными
коэффициентами
Мы можем получить структуры ФОЧВ с действительными коэффициентами,
задав для наших комплексных И-секционных ФОЧВ при четном N полюсы, обра­
зующие комплексно-сопряженные пары, путем задания для каждого ненулевого
коэффициента Н(к) комплексно-сопряженного ему коэффициента Н (^ -к ), так
чтобы Н{Ы-к) = Н*(к). То есть мы можем построить действительный ФОЧВ,
если будем использовать комплексно-сопряженные пары полюсов, аргументы
которых равны ±2я^/Лградиан. Передаточная функция такого ФОЧВ (вывод ее
приведен в разделе 5 приложения в ) имеет вид
Гпава 7. Специальные КИХ-фильтры нижних частот
300
(7-20)
= ( 1 - г мг-Н ){ Н (0 )/(1 -гг ~ 1) +Я (А //2)/(7 + гг~ 1)
N /2 - 1
+ ^2\Н (к)\[со $ (ф к) - гсоб(0 ^ - 2 я&/Л02 ~^]/[ 7 - 2гсо$,(2лк/Ы)г~1 + г 2г 2]} ,
к-1
где нижний индекс з,геаГ обозначает многосекционный действительный ФОЧВ
с гарантированной устойчивостью, а ф^ — требуемый фазовый сдвиг к-и секции.
Выражение (7-20) определяет структуру действительного ФОЧВ Типа I в виде,
представленном на рисунке 7.16 (а). Эта структура требует пять умножений на вы­
ходной отсчет резонатора. Реализация действительного двухполюсного резонато­
ра с использованием действительной арифметики показана на рисунке 7.16 (Ь).
(а)
2|Н(Л//2-1)
(Ь)
Рис. 7 .1 6 . Действительный ФОЧВ Типа I с гарантированной устойчивостью при чет­
ном Л/: (а) структура; (Ь) резонатор с действительными коэффициентами
Конечно, для ФОЧВ нижних частот секция, соответствующая коэффициенту
Н(Ы/2) на рисунке 7.16 , не будет реализована, а для полосовых фильтров не будут
реализованы секции, соответствующие коэффициентам Н(0) и Н(Ы/2). Характе­
ристики односекционного действительного ФОЧВ Типа I при N = 32, к = 3,
Н(3) = 1, г = 0.99999 \\ф^ = 0 приведены на рисунке 7.17.
Другая версия ФОЧВ Типа I с упрощенной структурой резонатора может
быть получена путем установки всех ф^ в ноль и перемещения множителя 2
внутрь резонаторов. Затем мы учитываем чередующиеся знаки при окончательном
суммировании, как показано на рисунке 7.18, чтобы получить линейную ФЧХ,
точно так же, как мы делали это при построении многосекционного комплексно­
го ФОЧВ с линейной ФЧХ на рисунке 7.13 (а), т. е. мы прибавляем выходные
7. 1. Фильтры на основе частотной выборки: утраченное искусство
301
отсчеты резонаторов с четным к и вычитаем выходные отсчеты резонаторов с не­
четным &. Символ "±" на рисунке 7.18 (а) предупреждает нас о том, что при четном
N значение ^ = (N /2) -1 может быть как нечетным, так и четным.
2*
Импульсная
характеристика
>
г-плоскость
ч
:¥
•
.0
и
сто
£
2
X
I
* •
о'ооооо,о
о
о
о
о
О
о
о
о
о
оо
о
о
О-. Изолированный О
С)
нуль
о
°оо 0 оо°
- 1!
10
20
Время
(а)
30
-0.5
0
0.5
-1
О
1
Частота
Действительная часть
(Ь)
(с)
Рис. 7 .1 7 . Характеристики односекционного ФОЧВ Типа I при N = 32, к = 3, Н(3) = 1,
г = 0.99999 \лф3 = 0
Если ненулевые коэффициенты |#(&)| равны единице, этот ФОЧВ Типа II тре­
бует только трех умножений на выходной отсчет секции. Если умножение на 2 в
резонаторе может быть реализовано аппаратурным сдвигом влево, то требуется
всего два умножения на выходной отсчет. Передаточная функция этого ФОЧВ с
действительными коэффициентами имеет вид
н Туре-п(г) =
(7-21)
= (1 - г мг - м){ \Щ 0 )\/(1 - гг~ 1) + |Я(ЛГ/2 ) | / ( / + гг~ 1) +
N/2-1
+ ^ ( - 1 ) к \Н(к) \ [2 - 2гсо$(2лк/Ы) г~1]/[1 -2гсо$(2лк/Ы )
к=1
+ г 2г 2] } .
Ни ФОЧВ Типа I, ни ФОЧВ Типа II не имеют линейной ФЧХ. В то время как не­
линейность ФЧХ относительно невелика, в многосекционных структурах групповая
задержка в полосе пропускания может иметь флуктуации, размах которых (от пика
до пика) может достигать двух периодов дискретизации (2/ / 5 ). Такая нелинейность
ФЧХ неизбежна, поскольку эти ФОЧВ имеют изолированные нули, расположен­
ные в точках 2 = гсо$(2лк/Ы), когда = 0, как показано на рисунке 7.17 (с). Посколь­
ку изолированные нули внутри единичного круга не имеют обратных нулей,
расположенных за пределами единичного круга в точках 2 = 1/[г соб(2лк/Ы)], к
сожалению, это приводит к нелинейности ФЧХ.
Несмотря на то, что ФОЧВ Типа I чаще всего описываются в литературе по
ФОЧВ, их неспособность обеспечить в точности линейную ФЧХ не подвергалась
достаточному анализу. В следующем разделе мы предпринимаем шаги для полу­
чения линейной ФЧХ путем смещения изолированного нуля.
302
Глава 7. Специальные КИХ-фильтры нижних частот
(а)
|Н(Л//2-1 )|
(Ь)
Рис. 7 .1 8 . Действительный ФОЧВ Типа II с четным Л/: (а) структура; (Ь) реализация
резонатора с действительными коэффициентами
7 .1 .5 . Действительные многосекционные ФОЧВ
С линейной ФЧХ
Мы можем получить линейную ФЧХ, модифицировав коэффициенты прямой
связи резонатора действительного ФОЧВ Типа I, показанного на рисунке 7.16 (Ь),
так, чтобы сдвинуть изолированный ноль в точку, в которой находится ноль гре­
бенчатого фильтра 2 = г. Мы достигаем этого, присвоив ф^ = жк/И. Числитель пе­
редаточной функции одной секции действительного ФОЧВ, согласно (7-20),
равен со^(Фк)- г соз(0 £ - 2жк/Ы) г~1. Если мы приравняем это выражение нулю и
положим фк = жк/ТУ, то мы найдем позицию сдвинутого нуля 20:
со^Фь) - гсоъ^фь - 2жк/Ы)г0~1 = со$(жк/1\Г) - rcos(жk/N - 2жк/Ы)г0~1 = 0
или
20 = гсо$(жк/Ы)/со§(жк/М) = г .
Подстановка жк/Ывместо фк в (7-20) дает передаточную функцию действитель­
ного ФОЧВ Типа III с линейной ФЧХ в форме
НТуре-Ш(2) ~ ( 1 - Л - И ) { \Н ( 0 ) \/( 1 - гг-1 ) +
(7-22)
N/2-1
+ 5> < - 1 ) к\Н(к)\соБ(жк/Ы)(1 - гг~ 1) /[ 1 - 2 г соъ(2жк/Щг 1 + г 2г - 2]}.
к=1
Реализация ФОЧВ Типа III с линейной ФЧХ показана на рисунке 7.19 и тре­
бует четыре умножения на выходной отсчет секции.
7. 1. Фильтры на основе частотной выборки: утраченное искусство
303
Обратите внимание, секция Я(Д//2), ( /А
. /2 ) на рисунке 7.19 (а) отсутствует.
Мы объясняем это следующим образом: секции ФОЧВ Типов I, II и III с четным
N имеют импульсные характеристики, содержащие N ненулевых отсчетов. При
этом импульсная характеристика секции &= N/2, состоящая из четного количест­
ва чередующихся положительных и отрицательных элементов, несимметрична.
Эта асимметрия исказит линейную ФЧХ, если будет включена секция к = N/2.
Следовательно, как и в случае нерекурсивных КИХ-фильтров четной длины, дей­
ствительные ФОЧВ Типов I, II и III при четном Донельзя использовать для реали­
зации ФВЧ с линейной ФЧХ.
(а)
(Ь)
Рис. 7 .1 9 . Действительный ФОЧВ Типа III с линейной ФЧХ при четном А/: (а) структу­
ра; (Ь) реализация резонатора с действительными коэффициентами
На рисунке 7.20 показаны частотные характеристики восьмисекционного ФОЧВ
Типа III при N=32, в котором реализованы секции 0 < к < 7. Рисунок 7.20 (с) позво­
ляет сравнить групповую задержку ФОЧВ Типа III и эквивалентного восьмисекци­
онного ФОЧВ Типа И. Результат сравнения показывает значительное улучшение
ФЧХ для ФОЧВ типа III, который имеет постоянную групповую задержку в по­
лосе пропускания, равную (Ы -1)/2 отсчетов.
7 .1 .6 . Откуда мы вышли и куда идем
Мы рассмотрели структуру и характеристики комплексного ФОЧВ, каскады
комплексного резонатора которого имеют полюсы, совпадающие с нулями гребен­
чатого фильтра, в результате чего получается рекурсивный КИХ-фильтр. Далее,
для гарантированной устойчивости фильтра мы смещали полюсы и нули внутрь
единичного круга. Мы изучили действительный ФОЧВ Типа I с гарантированной
устойчивостью при четном М, имеющий резонатор с парой комплексно-сопряжен­
ных полюсов, приводящий к ФОЧВ с действительными коэффициентами. Далее
мы модифицировали структуру действительного ФОЧВ Типа I, получив более
эффективную с вычислительной точки зрения, но имеющую слегка нелинейную
304
Гпава 7. Специальные КИХ-фильтры нижних частот
ФЧХ структуру действительного ФОЧВ Типа II. Наконец, мы модифицировали
коэффициенты действительного ФОЧВ Типа I и добавили после резонаторов ум­
ножение на коэффициенты, что позволило получить действительный ФОЧВ
Типа III с линейной ФЧХ. В процессе получения этих структур мы пришли к вы­
воду, что действительные ФОЧВ Типов I, II и III с четным Донельзя использовать
для реализации фильтров верхних частот с линейной ФЧХ.
АЧХ
(а)
(Ь)
Групповая задержка
16. 5:
ФОЧВ Типа II
яя
_а
-- IV!
О
^X
ь
СО
(с)
О. Ф
Ф о.
.
Г
(= х 14.5-
,/
Действительный
ФОЧВ Типа III
О
.
-
13. 5 \
0.2
0. 4
0. 6
0.8
Частота
Рис. 7 .2 0 . Интерполированная частотная характеристика ФОЧВ Типа III, содержа­
щего восемь секций, при N = 32: (а) АЧХ; Ь) ФЧХ; (с) групповая задержка в
сравнении с групповой задержкой эквивалентного ФОЧВ Типа II
В оставшейся части этого раздела мы предлагаем структуру резонатора, которая
обеспечивает лучшие характеристики, чем резонаторы Типов І, II, III. Затем мы по­
знакомимся с использованием ненулевых секций переходных полос для улучше­
ния пульсаций в полосе пропускания и подавления в полосе задерживания, после
чего обсудим ряд моментов, относящихся к моделированию и проектированию
ФОЧВ. Мы сравним характеристики реальных ФОЧВ с характеристиками экви­
валентных нерекурсивных КИХ-фильтров, рассчитанных методом Паркса-Маклеллана, с N ответвлениями. Наконец, мы познакомимся с подробной процедурой
проектирования ФОЧВ.
7 .1 .7 . Эффективный действительный ФОЧВ
Существует множество резонаторов с действительными коэффициентами, ко­
торые можно использовать в ФОЧВ, но для нас особенно интересен резонатор
7. 1. Фильтры на основе частотной выборки: утраченное искусство
305
Типа IV, показанный на рисунке 7.21 (а). Этот резонатор заслуживает внимания
потому, что он:
□
гарантированно устойчив,
□
обладает высоко линейной ФЧХ,
□
использует действительные коэффициенты,
□
эффективен с точки зрения количества операций,
□
может реализовать КИХ ФВЧ,
□
дает лучшее подавление в полосе задерживания, чем ФОЧВ типов І, II и III.
Резонатор Типа IV
Упрощенный резонатор Типа IV
(Ь)
Рис. 7 .2 1 . Резонатор Типа IV. (а) исходная структура; (Ь) упрощ енная версия
Отныне и навеки Тип IV будет нашим избранным типом ФОЧВ.
Последовательное включение резонаторов Типа IV после гребенчатого филь­
тра дает действительный ФОЧВ Типа IV с передаточной функцией
N/2
НГур, ч к(г) - (1 - г ^ - м) 2 ( - 1 ) к\ т ) \ и - г ^ ) /
1г=0
/ [ 1 - 2гсо$,(2лк/Ы) г 1 + г 2г 2\ ,
(7-23)
где N — четное. (Заметьте, что при нечетном N величина к = N /2 не является це­
лым числом, и член |Я(Л72)| не существует.) Как показано в разделе 6 приложе­
ния С, частотная характеристика ФОЧВ Типа IV имеет вид
N/2
н Тур<>-іу(е]ш) = е ^ шМ/ 2^ ( - 1 ) к \ Н ( к ) \ [со^(соМ/2 - со) - с о ь ( с о ^ 2 + с о ) \ /
/ \со$,(2лк/К) - со8(а>)] ,
^
При четном N частотная характеристика и ее модуль на частоте резонанса для
отдельной секции ФОЧВ Типа IV определяются выражениями
Н т у р С- ] у ( е ^ )
= е 1ш^ / 2 [ с о $ (а»Лу2 - с о ) -
/ [ со^(2жк/ М) - соз(а;)]
и
соб( соЫ / 2 +
,
си)]/
(7-25)
306
Гпава 7. Специальные КИХ-фильтры нижних частот
\И Туре-1у(еП \<о-2лк/М -К к - 1 ,2 .......(Ы /2)-1.
(7-26)
Модули этой частотной характеристики при к = 0 (постоянная составляющая)
и к = (Лу2 ) ( /5 /2 ) равны
\Н Т у р е -п (е П \ш -0 - \Нтуре-1У^П\ш-ж -Ш
(7-27)
Для уменьшения количества умножений при реализации резонатора кажется ес­
тественным объединить два умножителя на коэффициент - г 2 на рисунке 7.21 (а),
что упростит резонатор Типа IV, как показано на рисунке 7.21 (Ь). Однако для
уменьшения количества как умножений, так и сложений следует реализовать мно­
житель ( 1 -г2г~2) в числителе (7-23) как гребенчатый фильтр второго порядка, что и
показано на рисунке 7.22 (а)[5]. При этом резонатор Типа IV преобразуется в форму,
показанную на рисунке 7.22 (Ь). Множители \Н(0)\ /2 и \Н(Ы/2)\ /2 компенсируют ко­
эффициент передачи резонатора Типа IV, равный 2Ы согласно (7-27).
Символы "±" на рисунке 7.22 (а) снова напоминают о том, что при четном N
значение к = N /2 может быть четным или нечетным. Этот ФОЧВ обладает одним
полезным свойством, а именно: длина его импульсной характеристики равна М+1
отсчетов. Следовательно, в отличие от ФОЧВ Типов I, II и III ФОЧВ Типа IV с
четным N имеет симметричную импульсную характеристику секции к = N /2 (че­
редующиеся ±1) и может быть использован для построения ФВЧ с линейной
ФЧХ. При нечетном N секция &= N /2 на рисунке 7.22 отсутствует, и передаточ­
ная функция ФОЧВ Типа IV при нечетном N идентична (7-23) при верхнем пре­
деле суммирования (Ы -1)/2 вместо N/2.
Модифицированные
резонаторы Типа IV
Рис. 7 .22. Действительный ФОЧВ Типа IV при четном Л/: (а) структура; (Ь) модифи­
цированный резонатор
Мы уже прошли долгий путь. В таблице 7.1 подводится итог тому, что мы узна­
ли о действительных ФОЧВ. В таблице приводятся средняя групповая задержка в
полосе пропускания, измеренная в периодах дискретизации, количество умноже­
7. 1. Фильтры на основе частотной выборки: утраченное искусство
307
ний и сложений на выходной отсчет для одной секции ФОЧВ и несколько замеча­
ний о характеристиках разных действительных ФОЧВ. Коэффициенты передачи
секций на их резонансных частотах в предположении, что требуемые коэффициен­
ты \Н(к) | равны единице, равны N цля всех четырех действительных ФОЧВ.
Таблица 7 .1 . Сводка свойств действительных ФОЧВ с четным N
Тип
Групповая Количество Количество
действительного задержка умножений сложений
ФОЧВ
Замечания
Л//2
ФОЧВ с
действительными
коэффициентами.
ФЧХ примерно
линейная
II
(рисунок 7.18)
Л//2
Модифицированная
и более
эффективная версия
ФОЧВ типа I. ФЧХ
примерно линейная.
Одно из умножений
резонатора можно
заменить двоичным
сдвигом влево
III
(рисунок 7.19)
(Л/+1 )/2
IV
(рисунок 7.22)
N/2
(рисунок 7.16)
4
Очень линейная
ФЧХ. Не может
использоваться для
построения ФВЧ с
линейной ФЧХ
Очень линейная
ФЧХ. Улучшенное
подавление в полосе
задерживания.
Может
использоваться для
реализации
фильтров нижних и
верхних частот, а
также полосовых
7 .1 .8 . Моделирование ФОЧВ
Мы вывели несколько разных выражений для частотной характеристики Н(е^ш)
не столько для того, чтобы использовать их для моделирования поведения ФОЧВ,
сколько для того, чтобы изучить их и помочь построить структуры ФОЧВ. Нанри-
308
Гпава 7. Специальные КИХ-фильтры нижних частот
мер, анализ свойств Н Туре_1у (е1ш) привел нас к использованию множителя 1 /2 в
структуре ФОЧВ Типа IV.
При моделировании ФОЧВ, к счастью, нет необходимости писать программу
вычисления частотных характеристик с использованием разных выражений для
Н (е ^ ), приведенных здесь. Достаточно написать программу вычисления импуль­
сной характеристики моделируемого ФОЧВ, дополнить ее достаточным количе­
ством нулей, чтобы длина расширенной последовательности была в 10 -20 раз
больше длины исходной, вычислить ДПФ дополненной последовательности и
построить графики полученных интерполированных АЧХ и ФЧХ. Конечно, если
длина дополненной последовательности равна целой степени двойки, вы сможете
использовать для вычисления частотных характеристик эффективный алгоритм
БПФ. С другой стороны, многие коммерческие пакеты программ имеют встроен­
ные функции вычисления частотных характеристик только по коэффициентам
передаточных функций.
7 .1 .9 . Улучшение характеристик с помощью
коэффициентов переходной полосы
Мы можем повысить подавление в полосе задерживания ФОЧВ, если тщатель­
но определим значения отсчетов АЧХ \Н(к)\ в переходной полосе, между полосами
пропускания и задерживания. Например, рассмотрим ФОЧВ НЧ Типа IV, имею­
щий семь секций с единичным усилением при N = 32, требуемая характеристика
которого.показана на рисунке 7.23 (а), а реальная АЧХ —на рисунке 7.23(Ь).
Задание переходного отсчета характеристики, коэффициента Гу, значение ко­
торого лежит в пределах от 0 до 1, как на рисунке 7.23 (с), уменьшает разрыв при
переходе требуемой характеристики от полосы пропускания к полосе задержива­
ния. Задание Т1 = 0.389 приводит к уменьшению пульсаций АЧХ в полосе пропу­
скания и улучшает подавление боковых лепестков в полосе задерживания, как
показано на рисунке 7.23 (с1). Это улучшение достигается ценой появления до­
полнительной секции ФОЧВ и расширения переходной полосы.
Значение Т1 = 0.389 выбрано не произвольно и не по каким-то магическим пра­
вилам. Измерение максимального уровня боковых лепестков в полосе задержи­
вания для разных значений 0 < Т 1 < 1 показало наличие оптимального значения
для Гу. На рисунке 7.24 показано, что максимальный уровень боковых лепестков
минимизируется, когда Гу = 0.389. Минимальный уровень бокового лепестка - 46
дБ (при Т1 = 0.389) соответствует высоте максимального бокового лепестка в по­
лосе задерживания на рисунке 7.23 (с1). Этот общепризнанный метод использова­
ния коэффициентов в переходной полосе для уменьшения пульсаций АЧХ в
полосе пропускания и минимизации боковых лепестков в полосе задерживания
. применим также к полосовым ФОЧВ, когда переходные отсчеты размещаются
непосредственно перед и сразу за единичными отсчетами полосы пропускания.
Еще большее подавление боковых лепестков возможно при использовании двух
переходных коэффициентов, Гу и Т2, таких что 0 < Т2 < Т 1< 1. (Примечание: в слу­
чае ФНЧ, если Гу есть отсчет \Н(к)\, то Т2 есть отсчет \Н(к+1)\.) Каждый дополните­
льный переходной коэффициент улучшает подавление в полосе задерживания
примерно на 25 дБ. Однако поиск оптимальных значений коэффициентов Г пред­
ставляет собой серьезную задачу. Значения оптимальных коэффициентов пере­
7.1. Фильтры на основе частотной выборки: утраченное искусство
309
ходной полосы зависят от количества секций ФОЧВ с единичными
коэффициентами, от значения N и количества используемых коэффициентов. К
сожалению, замкнутой формулы для вычисления оптимальных значений пере­
ходных коэффициентов не существует, мы вынуждены искать их эмпирически.
Ч астота
(а)
О тсчеты \Н (к)\ Ф О ЧВ нижних частот
Ч астота
(Ь)
АЧХ
§ 0.75
І'
|
2
0.5
<
0.25
0.2
0.4
Ч астота
(с)
Ч астота
(СІ)
Рис. 7 .2 3 . ФОЧВ Типа IV с N = 32\ (а) требуемая АЧХ; (Ь) реальная характеристика;
(с) использование одного переходного отсчета; (с!) улучшенное подав­
ление в полосе задерживания
Если используется один коэффициент (Гу), поиск его оптимального значения
можно выполнить с помощью одномерного поиска. Для двух коэффициентов по­
иск становится двумерным и т. д. К счастью, в литературе имеются описания ме­
тода поиска на основе линейной алгебры [ 1 , 6 -8 ], а коммерческие математические
пакеты программ содержат встроенные функции оптимизации, облегчающие та­
кой трудоемкий поиск. Для ФОЧВ Типа 1/П опубликованы таблицы оптималь­
ных коэффициентов переходной полосы для разных Ы, при разном количестве
секций ФОЧВ [1], подмножество этих таблиц приведено в качестве приложения
к учебнику [2]. Для более качественных ФОЧВ Типа IV таблицы оптимальных коэф­
фициентов подготовлены автором этой книги и приведены в приложении Н. Приняв к
сведению эти обнадеживающие новости, мы скоро рассмотрим пример проектирова­
ния реального ФОЧВ, который позволит оценить преимущества ФОЧВ.
Гпава 7. Специальные КИХ-фильтры нижних частот
310
ьс
О
■і
і . •
5S
I
я m 0.3
5 с -50 1
2
0.32
0.34
0.36
0.38
0.4
0.42
Г, Модуль переходного отсчета
0.44
0.46
Рис. 7.24. Максимальный уровень бокового лепестка как функция значения коэф­
фициента переходной полосы для действительного ФОЧВ Типа IV с се­
мью секциями при N = 32
7 .1 .1 0 . Другие структуры ФОЧВ
Если коэффициент прямой связи гребенчатого фильтра на рисунке 7.22 равен
-г
четное), N нулей его передаточной функции распределены равномерно
на окружности, радиус которой меньше единицы, как показано на рисунках 7.4 (с)
и 7.25 (а), так что ноль к = 1 имеет аргумент, равный 2л/ N радиан. В этом случае при
нечетном N нули гребенки распределены так, как показано на рисунке 7.25 (Ь). Воз­
можна другая ситуация, когда коэффициент прямой связи гребенчатого фильтра
равен +г^. В этом случае нули при четном N располагаются на окружности в на­
правлении, обратном ходу часовой стрелки, с шагом л/М радиан, как показано на
рисунке 7.25 (с), где ноль к, = 1 имеет аргу мент З л/М радиан [5]. Нули# = 0 показа­
ны на рисунках черными точками.
Структура ФОЧВ во втором случае идентична структуре ФОЧВ в первом
случае. Однако во втором случае коэффициенты резонаторов должны быть изме­
нены так, чтобы полюсы повернулись на л/Ы радиан и сохранилось взаимное
уничтожение полюса и нуля. Во втором случае передаточная функция ФОЧВ
Типа IV при четном N имеет вид
Н Case II, T ype-iv(z )
(7-28)
N/2
= (1+rN z~N) ^ ( - 1 ) k \H (k)\(1 - r 2z~2)/{1 -2 г соз[2л(к+ 1/2)/N \ z~1+r2z~2} .
k=0‘
Поскольку во втором случае ФОЧВ не может иметь ноль или полюс в точкеZ =
1, эти фильтры нельзя использовать для построения ФНЧ. В таблице 7.2 перечис­
лены возможности различных ФОЧВ Типа IV для первого и второго случаев.
Применение ФОЧВ во втором случае ограничивается невозможностью реали­
зовать ФНЧ, но смещение центральных частот резонаторов дает дополнительные
возможности задания частот среза полосовых фильтров и фильтров верхних час­
тот. В оставшейся части материала мы будем рассматривать только ФОЧВ Типа
IV для первого случая.
311
7.1. Фильтры на основе частотной выборки: утраченное искусство
N четное
Случай I:
коэффициент
гребенчатого
фильтра
равен -Iм
1! N = 8
О
о
о
я
У
к
я
2
S
ж
о
о
2
(0
X
о
05
2Е
S
X
2
о
о: 0
•
У
1
о
-1
о
о
4лIN
>
•
О
о
-1
о
Действительная часть
Действительная часть
(а)
(Ь)
1j N = 8 0
Случай II:
коэффициент
гребенчатого
фильтра
равен +/Л
О
2 nIN
о
0
1
л
о
к
(D
О
.0
N нечетное
О
СО II
к03 ипi
5S
X
о
Т
Л/: =9
о
л
н
(оУО
оя:
S
5
X
5
Зтс/Л/
*
О
-1
5 nIN
1
►
о
О
-1
а
о
о
-1
о
1
Действительная часть
Действительная часть
(с)
(d)
Рис. 7.25. Четыре возможных варианта расположения нулей гребенчатого фильтра
вблизи единичной окружности
7 .1 .1 1 . Достоинства ФОЧВ
В годы становления теории КИХ-фильтров (начало 1970-х) была распростра­
нена программа проектирования нерекурсивных КИХ-фильтров, использующая
метод Паркса-Маклеллана (Parks-McClellan —PM) [9]. Этот метод проектирова­
ния фильтров давал полный контроль над неравномерностью АЧХ в полосе про­
пускания, подавлением в полосе задерживания и шириной переходной полосы.
(КИХ-фильтры, рассчитанные этим методом, часто называют оптимальными
КИХ-фильтрами, фильтрами Ремеза, фильтрами чебышевской аппроксимации,
равноволновыми фильтрами.) Многие из ранйих описаний метода РМ содержат
графическое сравнение различных методов проектирования КИХ ФНЧ, подоб­
ное приведенному на рисунке 7.26 [7,10-11]. На этом рисунке нормированная (по
отношению к длине импульсной характеристики N и частоте дискретизации / 5)
ширина переходной полосы для того или иного фильтра построена как функция
минимального подавления в полосе задерживания. (Размах пульсаций АЧХ в по­
лосе пропускания в дБ приводится в качестве параметра графиков.)
Поскольку нормированная мера ширины переходной полосы D на рисунке 7.26
почти не зависит от N, этот график рассматривается как корректное сравнение
трех методов проектирования КИХ-фильтров. При заданных уровне пульсаций в
полосе пропускания и подавлении в полосе задерживания КИХ-фильтр, рассчи­
танный методом РМ, может иметь наименьшую ширину переходной полосы и,
следовательно, обладать наилучшими характеристиками. Широкое распростра­
нение графиков, приведенных на рисунке 7.26, вполне оправданно настроило раз-
312
Гпава 7. Специальные КИХ-фильтры нижних частот
работников фильтров в пользу метода РМ. (Во время одной из дискуссий по
поводу рисунка 7.26 один автор безапелляционно заявил «Чем меньше Б, тем
лучше фильтр.» [10]) Обладающий гибкостью, улучшенными характеристиками
и простой в использовании метод РМ быстро стал господствующим методом про­
ектирования КИХ-фильтров. Вследствие этого в 1970-е годы реализации ФОЧВ
утратили популярность до такой степени, что сегодня они редко упоминаются в
лекциях и учебниках.
Таблица 7 .2 . Режимы работы ФОЧВ Типа IV
НЧ
Полосовой
ВЧ
Первый случай, N четное
Да
Да
Да
Первый случай, N нечетное
Да
Да
Нет
Второй случай, N четное
Нет
Да
Нет
Второй случай, N нечетное
Нет
Да
Да
ФОЧВ Типа IV
Ослабление в полосе задерживания (дБ)
Рис. 7.26. Сравнение методов проектирования КИХ-фильтров с помощью окна
Кайзера, на основе частотной выборки и Паркса-Маклеллана
Однако с точки зрения вычислительной нагрузки рисунок 7.26 похож на со­
временный купальник: то, что он показывает, важно, а то, что он не показывает,
жизненно необходимо. Это сравнение методов проектирования не принимает в
расчет те случаи, когда и фильтры на основе частотной выборки, и фильтры, рас­
считанные методом РМ, удовлетворяют требованиям к их характеристикам, но
реализации на основе частотной выборки оказываются более экономичными с
точки зрения объема вычислений. Следующий пример проектирования КИХ-
7.1. Фильтры на основе частотной выборки: утраченное искусство
313
фильтра демонстрирует это положение и показывает, почему следует включить
ФОЧВ в наш набор инструментов проектирования КИХ-фильтров.
7 .1 .1 2 . Пример ФОЧВ Типа IV
Рассмотрим проектирование КИХ-фильтра нижних частот с линейной ФЧХ,
частота среза которого равна 0.05/5. Полоса задерживания должна начинаться с
частоты 0.095/8, неравномерность АЧХ в полосе пропускания не должна превы­
шать 0.3 дБ от пика до пика и минимальное подавление в полосе задерживания
должно быть не менее 65 дБ. Если мы спроектируем ФОЧВ Типа IV при N = 6 2 и
г = 0.99999, его частотная характеристика будет удовлетворять заданным требо­
ваниям и иметь форму, показанную сплошной линией на рисунке 7.27 (а).
АЧХ
АЧХ
(а)
(Ь)
Рис. 7.27. Шестисекционный ФОЧВ Типа IV с N = 62 (сплошная линия) против фильтра
с 60 ответвлениями, рассчитанного методом РМ (штриховая линия): (а)
АЧХ; (Ь) полоса пропускания в увеличенном масштабе
Для этого ФОЧВ были использованы два отсчета в переходной полосе: \Н(4)\ =
Т1 = 0.589921 и \Н(5)\ = Т2 = 0.104964. Штриховой линией на рисунке 7.27 (а) пока­
зана АЧХ нерекурсивного КИХ-фильтра с 60 ответвлениями, рассчитанного ме­
тодом РМ. Оба фильтра удовлетворяют требованиям и имеют линейную ФЧХ.
Структура ФОЧВ Типа IV приведена на рисунке 7.28. Фильтр, рассчитанный ме­
тодом РМ, реализуется в виде сложенной структуры, использующей симметрию
его импульсной характеристики для двукратного уменьшения количества умно­
жителей, вследствие чего для его реализации требуется 30 умножений и 59 сло­
жений на выходной отсчет. Мы вцдим уменьшение количества операций в случае
ФОЧВ Типа IV, который требует выполнения только 17 умножений и 19 сложе­
ний на один выходной отсчет. (Заметим, что коэффициенты ФОЧВ Н(к) равны
нулю при 6 < & < 31.)
314
Гпава 7. Специальные КИХ-фильтры нижних частот
Модифицированные
резонаторы Типа IV
г
Рис. 7.28. Структура шестисекционного ФОЧВ Типа IV нижних частот с N = 62 и дву­
мя коэффициентами переходной полосы
7 .1 .1 3 . Когда следует использовать ФОЧВ
В этом разделе мы ответим на жгучий вопрос: Когда выгоднее использовать
Ф О Ч В Типа IV вместо КИХ-фильтра, рассчитанного методом РМ? Вычисли­
тельная сложность КИХ-фильтра, рассчитанного методом РМ, прямо связана с
длиной его импульсной характеристики, которая в свою очередь обратно пропор­
циональна ширине переходной полосы фильтра. Чем уже переходная полоса, тем
больше операций необходимо выполнить на один выходной отсчет фильтра. С дру­
гой стороны, количество операций для ФОЧВ примерно пропорционально ши­
рине полосы пропускания. Чем больше требуется секций ФОЧВ для расширения
полосы пропускания и чем больше используется коэффициентов переходной по­
лосы, тем больше объем вычислений при реализации фильтра. Таким образом,
при сравнении вычислительной сложности ФОЧВ и фильтров, рассчитанных
методом РМ, следует рассматривать как ширину полосы пропускания, так и ши­
рину переходной полосы.
На рисунке 7.29 приведено сравнение ФОЧВ Типа IV с четным N и нерекур­
сивных КИХ ФНЧ, рассчитанных методом РМ, с точки зрения объема вычисле­
ний. Графики представляют требуемые параметры фильтра, когда ФОЧВ Типа
IV и фильтр, рассчитанный методом РМ, имеют примерно одинаковое количест­
во операций на выходной отсчет. (Значения ширины полос, отложенные по осям
графиков, нормированы относительно частоты дискретизации, так что, напри­
мер, значение 0.1 соответствует/ \/1 0 .) Если комбинация требуемых ширины пе­
реходной полосы и ширины полосы пропускания задает точку, лежащую ниже
кривых на рисунке 7.29, то ФОЧВ Типа IV более эффективен, чем фильтр, рас­
считанные методом РМ. Графики на рисунке 7.29 (а) построены с учетом только
операций умножения. Для реализаций фильтров, в которых для умножения и
315
7.1. Фильтры на основе частотной выборки: утраченное искусство
сложения требуется одинаковое время, на рисунке 7.29 (Ь) приведены графики с
учетом количества обеих операций. Отдельная черная точка на рисунке соответ­
ствует рассмотренному выше примеру ФОЧВ Типа IV. (Пример расчета ФОЧВ
Типа IV с использованием кривых рисунка 7.29 будет приведен ниже.)
При построении графиков на рисунке 7.29 предполагалось, что ФОЧВ Типа
IV с четным N имеет коэффициент затухания г = 0.99999, а масштабирующий
множитель 1/М не используется. Реализация фильтра, рассчитанного методом
РМ, использованная при сравнении, представляет собой сложенную структуру с
, М ответвлениями, применимую в случае симметричной импульсной характери­
стики и требующую М /2 умножений и М - 1 сложение. Для расчета фильтра мето­
дом РМ задавались требования, соответствующие типовому ФОЧВ Типа IV (с
коэффициентами в формате с плавающей точкой), приведенные в таблице 7.3.
Резонаторы Типа IV имеют коэффициент усиления, равный N, следователь­
но, коэффициент усиления ФОЧВ на рисунке 7.28 равен N. Для реализации
ФОЧВ с использованием чисел в формате с плавающей запятой это усиление
может не представлять серьезной проблемы. При реализации с фиксированной
запятой усиление в N раз может вызвать ошибки переполнения, поэтому пона­
добится уменьшить коэффициент усиления с помощью масштабного множителя
1/N. В литературе иногда масштабирующие множители 1/N показывают как
один умножитель, включенные перед гребенчатым фильтром [2,12]. Такая реали­
зация может привести к недопустимому ухудшению отношения сигнал /шум
квантования. Более практичным представляется размещение масштабирующего
множителя ///У на выходе каждой секции ФОЧВ, перед окончательным сумми­
рованием, как показано на рисунке 7.1 (Ь). Таким образом, выход каждого резона­
тора умножается на неединичный коэффициент, что повышает количество
требуемых операций. Сравнение ФОЧВ Типа IV с четным А^и фильтров, рассчи­
танных методом РМ, для этой ситуации приведено на рисунке 7.30.
Конечно, если Л/равно целой степени двойки, некоторые аппаратурные реализа­
ции могут выполнять масштабирование 1/N в виде аппаратурного сдвига числа
вправо, делая, таким образом, умножитель ненужным. В этой ситуации применимо
сравнение фильтров по вычислительной сложности, приведенное на рисунке 7.29.
Таблица 7 .3 . Типовые свойства ФОЧВ Типа IV при четном N
Параметр
1 -й коэффициент 2-й коэффициент 3-й коэффициент
Размах пульсаций в
полосе
пропускания (от
пика до пика), дБ
0.7
0.35
0.16
Минимальное
подавление в
полосе
задерживания, дБ
-4 5
-6 8
-95
316
Гпава 7. Специальные КИХ-фильтры нижних частот
Эффективность с учетом только умножений
0 . 3 ! ------------ Ч
----------------- Т----------------- Т----------------- т
—
Эффективность с учетом умножений и сложений
,---------------- г
2 переходных коэффициента
0.25
3 переходных коэффициента
Р.
/
□ Л/=128
* N = 256
ПМ более эффективен
ПМ более эффективен
ч
О N = 64
V Л/ = 16
А N = 24
о N = 32
1 переходной коэффициент
'
чч \
\,\ Ч
\>
Пример ФОЧВ
Типа IV
\
Л
ФОЧВ более эффективен
ФОЧВ более эффективен
\
_1_______ I_______ I_______ I_______ |_
0.02
0.06
0.1
Ширина переходной полосы И
(а)
0.13
0.04
0.08
0.12
Ширина переходной полосы / Г
0.16
(Ь)
Рис. 7.29. Сравнение ФОЧВ Типа IV с четным N и нерекурсивных КИХ-фильтров,
рассчитанных методом РМ, по количеству операций: (а) с учетом только
умножений; (Ь) с учетом и умножений, и сложений. (Масштабирующий
коэффициент //Л/не учитывается.)
Э ф ф е кти в н о с т ь с уче то м т о л ь ко у м н о ж е н и й
Ширина переходной полосы
(а)
Э ф ф е кти в н о с т ь с уч е то м ум н о ж е н и й и сл о ж е н и й
Ширина переходной полосы
(Ь)
Рис. 7.30. Сравнение ФОЧВ Типа IV с четным N и нерекурсивных КИХ-фильтров,
рассчитанных методом РМ, по количеству операций с учетом масштаби­
рующего множителя 1/Ы на выходах резонаторов: (а) с учетом только ум­
ножений; (Ь) с учетом и умножений, и сложений
Следует заметить, что программируемые Ц П ОС не могут использовать преи­
мущества сложенной структуры реализации КИХ-фильтров, которую мы испо­
льзовали для сравнения на рисунках 7.29 и 7.30. В этом случае КИХ-фильтр с М
7. 1. Фильтры на основе частотной выборки: утраченное искусство
317
ответвлениями, реализуемый прямой сверткой, имеет тот недостаток, что он дол­
жен выполнять все М умножений на выходной отсчет. Однако ЦПОС имеют
команды циклов без накладных расходов и однотактные команды умножения с
накоплением (МАС), что делает их более эффективными при реализации КИХфильтров с помощью прямой свертки, чем при реализации рекурсивных структур
ФОЧВ. Таким образом, недостаток реализаций на основе ЦПОС, требующих бо­
льше операций, и преимущество в скорости выполнения этих операций компен­
сируют друг друга. Имея это ввиду, мы можем пользоваться рисунками 7.29 и 7.30
при выборе варианта реализации фильтра с использованием ЦПОС.
Наконец, рассматривая последние два рисунка, мы можем сделать вывод, что
ФОЧВ Типа IV более эффективны с вычислительной точки зрения, чем КИХфильтры, спроектированные методом РМ, для реализации фильтров нижних час­
тот, когда ширина полосы пропускания меньше, чем примерно / 5 /5, а ширина пе­
реходной полосы меньше, чем примерно / 9/8.
7 .1 .1 4 . Проектирование ФОЧВ
Практическое проектирование ФОЧВ Типа IV включает три этапа: (1) следу­
ет определить, может ли ФОЧВ реализовать заданные характеристики фильтров,
(2) необходимо определить, является ли выбранный ФОЧВ более эффективным
с вычислительной точки зрения, чем эквивалентный фильтр, рассчитанный мето­
дом РМ и (3) надлежит рассчитать ФОЧВ и проверить его характеристики. При
выполнении первого этапа могут помочь показанные на рисунке 7.31 данные о
минимальном подавлении в полосе задерживания ФОЧВ Типа IV как функции
ширины переходной полосы при разном числе коэффициентов переходной поло­
сы. (Различные значения Ми типовые значения неравномерности АЧХ в полосе
пропускания на рисунке 7.31 приведены как параметры.)
При проектировании ФОЧВ мы находим, что значение N является функцией
требуемой ширины переходной полосы. Необходимое количество секций ФОЧВ
определяется как значением Ы, так и требуемой шириной полосы пропускания.
При заданных для КИХ-фильтра с линейной ФЧХ параметрами ширины полосы
пропускания, неравномерности АЧХ в полосе пропускания, ширины переходной по­
лосы и минимального подавления в полосе задерживания проектирование ФОЧВ
Типа IV нижних частот с линейной ФЧХ выполняется следующим образом:
1. Используя рисунок 7.31, определяем, какая из полос удовлетворяет за­
данному минимальному подавлению в полосе задерживания. На этом
шаге определяется количество переходных коэффициентов, необходи­
мое для достижения заданного подавления.
2.
Убеждаемся в том, что заданная ширина переходной полосы лежит в
пределах выбранной полосы. (Если значение ширины переходной по­
лосы лежит справа от полосы, фильтр, рассчитанный методом РМ, бу­
дет более эффективным по количеству операций, чем ФОЧВ Типа IV,
поэтому продолжать проектирование ФОЧ*В не следует.)
3.
Определяем, приемлем ли уровень пульсаций ФЧХ в полосе пропус­
кания, полученный по графикам рисунка 7.31 для выбранной полосы.
Если да, то ФОЧВ Типа IV способен реализовать заданные требова­
ния. Если нет —следует попробовать метод РМ.
318
Гпава 7. Специальные КИХ-фильтры нижних частот
Без переходных коэффициентов
(К * 1 .6 дБ)
256
Минимальное ослабление
в полосе задерживания (дБ)
-20
Д ІI
-40 і
I
64
г
32
16
128
т
256
—
64
И = неравномерность
в полосе пропускания
от пика до пика
Один переходной коэффициент
(К а 0.7 дБ)
I---- ___
-------- 1_
32
II
-60 І
128
Два переходных
коэффициента
(Р а 0.35 дБ)
-1 2 0 і
0.05/
0.1 Л
0.15/
0 .2/
0.25/
Ширина переходной полосы
Рис. 7 .3 1 . Типовые значения подавления ФОЧВ Типа IV нижних частот в полосе за­
держивания как функция ширины переходной полосы
4.
Выбрав способ реализации арифметических операций, выполняем срав­
нение объема вычислений для ФОЧВ и нерекурсивного фильтра, рас­
считанного методом РМ, с помощью рисунков 7.29 или 7.30.
5.
Используя заданные значения ширины переходной полосы и полосы
пропускания как координаты точки на выбранном графике сравнения
вычислительной сложности фильтров, определяем, лежит ли эта точка
ниже соответствующей кривой. Если да, то ФОЧВ может реализовать
заданные параметры с меньшим количеством операций на выходной от­
счет фильтра, чем фильтр, спроектированный методом РМ. (Если точка,
определяемая шириной переходной полосы и полосы пропускания, ле­
жит выше соответствующей кривой, следует применить метод РМ.)
6.
Если мы в процессе проектирования дошли до этого этапа, следующим
шагом является выбор порядка фильтра N. Значение Л^зависиг от задан­
ной ширины переходной полосы и количества переходных коэффици­
ентов, полученного на шаге 1 , и может быть оценено по нормированной
относительно^ ширине переходной полосы с помощью выражения
N ~ / 5 (количество переходных коэффициентов + 1)/
/ ( ширина переходной полосы)
(7-29)
Необходимое количество секций ФОЧВ с единичными коэффициен­
тами — это целое число М, которое примерно равно удвоенной задан­
ной ширине полосы пропускания, деленной на разрешение по частоте
(/$/Щ . Величина М оценивается по формуле
М ~ 2 N (ширина полосы пропускания)//5.
(7-30)
7 .1. Фильтры на основе частотной выборки: утраченное искусство
319
8.
Имея начальные значения N и М, по таблицам приложения Н находим
оптимальные значения коэффициентов переходной полосы. Если в таб­
лицах нет значений коэффициентов для заданных N и М, разработчик
может вычислить их приближенные значения, используя линейную ин­
терполяцию табличных значений. Как альтернативу для нахождения
оптимальных значений переходных коэффициентов можно использо­
вать программу оптимизации.
9.
Используя значения Ы, М и оптимальных переходных коэффициентов,
вычисляем интерполированную (действительную) частотную харак­
теристику фильтра как функцию этих параметров фильтра. Эту час­
тотную характеристику можно получить с помощью (7-24). Удобнее
вычислять частотную характеристику с помощью коммерческого паке­
та программ обработки сигналов как ДПФ импульсной характеристи­
ки ФОЧВ или по коэффициентам передаточной функции (7-23).
10. Далее начинается увлекательный процесс небольших модификаций
значений N и Л/ и повторения шагов 8 и 9 до тех пор, пока процесс не
сойдется к минимальному значению М для минимизации количества
операций и к оптимальным значениям переходных коэффициентов,
максимизирующим подавление в полосе задерживания.
\
11. Когда оптимальные параметры фильтра получены, мы используем их в
реализации Ф О Ч В Типа IV, как на рисунке 7.28.
12. Заключительный шаг — откинуться на спинку кресла и насладиться
хорошо сделанной работой.
Пример ФОЧВ Типа IV, представленный на рисунках 7.27 и 7.28, дает нам ил­
люстрацию шагов 6 и 7. Начальные оценки для ІУи М равны
~ /( .2 + 1 ) /[ ( 0 .0 9 5 - 0 .0 5 ) /, ]
Мш
-
( 2 X 6 2 X 0 .0 5 /, )//„
«
-
66
6 .2 .
При повторном выполнении шагов 8-11 значения ІУи Л/сходятся к N = 62 и М = 6,
которые позволяют выполнить требования к параметрам проектируемого фильтра.
7 .1 .1 5 . Резюме
Мы познакомились со структурой, с характеристиками и методом проектиро­
вания КИХ-фильтров на основе частотной быборки. Особое внимание мы удели­
ли практическим вопросам линейности ФЧХ, устойчивости и вычислительной
сложности этих фильтров. Кроме того, мы привели подробное сравнение высоко­
качественных ФОЧВ Типа IV и их нерекурсивных КИХ эквивалентов. Были
приведены графики параметров, призванные помочь разработчику сделать выбор
между ФОЧВ Типа IV и КИХ-фильтрами, спроектированными методом Паркса-Маклеллана, в случае реализации узкополосных фильтров с линейной ФЧХ.
320
Гпава 7. Специальные КИХ-фильтры нижних частот
Мы установили, что:
□
□
□
□
ФОЧВ Типа IV при некоторых уровнях подавления в полосе задержива­
ния более эффективны с точки зрения количества операций, чем нерекур­
сивные КИХ-фильтры, спроектированные методом Паркса-Маклеллана,
в реализациях Ф НЧ (или ФВЧ), для которых ширина полосы пропус­
кания меньше / 5/ 5 и ширина переходной полосы меньше / 5 /8 (см. ри­
сунки 7.29 и 7.30).
ФОЧВ строятся по модульному принципу. Их компоненты (секции)
имеют одинаковую структуру и их работа хорошо изучена.
Можно сгенерировать таблицы оптимальных коэффициентов переход­
ной полосы (как в приложении Н) и использовать их для улучшения
характеристик ФОЧВ.
Несмотря на то, что ФОЧВ представляют собой рекурсивные структу­
ры, их можно сделать гарантированно устойчивыми и обладающими
линейной ФЧХ.
7.2. Интерполированные КИХФНЧ
В этом разделе мы познакомимся с другим классом цифровых фильтров, кото­
рые называются интерполированными КИХ-фильтрами и используются для по­
строения узкополосных ФНЧ, которые могут оказаться более экономичными,
чем традиционные КИХ-фильтры, рассчитанные методом Паркса-Маклеллана.
Интерполированные КИХ-фильтры способны снизить количество операций при
реализации узкополосных ФНЧ более чем на 80 % по сравнению с традиционными
КИХ-фильтрами. Мы представим интерполированные КИХ-фильтры на простом
примере, обсудим, как выбираются параметры фильтра, приведем графики пара­
метров фильтра и рассмотрим пример проектирования простого ФНЧ, показыва­
ющий экономию вычислений по сравнению с традиционными фильтрами [13,14].
Интерполированные КИХ (ИКИХ) фильтры используют особенности пове­
дения нерекурсивных фильтров с N ответвлениями с линейной ФЧХ в случае,
когда элементы задержки на один такт заменяются элементами задержки на М
тактов, причем коэффициент расширения М является целым числом, как показа­
но на рисунке 7.32 (а). Если Нр{к) —импульсная характеристика КИХ-фильтра с
9 ответвлениями, показанная на рисунке 7.32 (Ь), то импульсная характеристика
к5^(к) расширенного КИХ-фильтра при М = 3 имеет вид, показанный на рисун­
ке 7.32 (с). Элементы задержки на М отсчетов приводят к появлению в к ^ к ) ну­
левых отсчетов, отмеченных белыми кружочками. Переменная & представляет
собой просто индекс времени в диапазоне 0 < к < Ы -1. Мы будем называть исход­
ный КИХ-фильтр прототипом, поэтому в кр(к) мы использовали индекс "р", а
фильтр с расширенными элементами задержки - формирующим субфильтром.
Скоро мы увидим, чем объясняется такая терминология.
Мы можем выразить передаточную функцию КИХ-прототипа в виде
Мр-1
НР(2>=Е
к=0
(7_31)
321
7.2. Интерполированные К ИХ ФНЧ
где Ыр —длина кр. Передаточная функция формирующего КИХ-фильтра при за­
мене г в (7-31) на 2 м имеет вид
Мр -1
я 5а(2)
=
(7-32)
к=0
Если количество коэффициентов прототипа равно Ыр, то формирующий
фильтр имеет А!р ненулевых коэффициентов и длину расширенной импуль­
сной характеристики
КЛ - М ф р -1 ) + 1.
(7-33)
Позже мы увидим, насколько существенное влияние оказывает К^ на реализа­
цию ИКИХ-фильтров.
4
Формирующий
фильтр /?8Ь(/С)
(с)
04
0 0* 00
о о
^
к
6
^
оо
10
оо
к
о о
15
о о •
20
о о
25
Рис. 7.32. Соотношения фильтров: (а) формирующий КИХ-фильтр с М единичными
задержками между ответвлениями; (Ь) импульсная характеристика
КИХ-прототипа; (с) импульсная характеристика формирующего КИХфильтра с расширенными задержками при М = 3
Влияние задержек на М отсчетов в частотной области показано на рисунке 7.33.
Как и следовало ожидать, М-кратное удлинение импульсной характеристики при­
водит к М-кратному сжатию (и повторению) АЧХ \Нр(/)\, как на рисунке 7.33 (Ь).
Частотная ось этих графиков нормирована относительно частоты дискретизации
входного сигнала / 5. Например, нормированная частота / ра58 эквивалентна абсо­
лютной частоте / ра$5/ $ Гц. Повторяющиеся полосы пропускания |Я ^(/)|, центры
которых лежат на частотах 1/М ( /5/М Гц), называются изображениями, и именно
на них мы сейчас обратим внимание.
322
Гпава 7. Специальные КИХ-фильтры нижних частот
ML
: HrM
(d)
0
fpass
fstop
4V
+-►
1
Частота
Рис. 7.33. Амплитудно-частотные характеристики ИКИХ-фильтра: (а) фильтрапрототипа; (Ь) формирующего субфильтра; (с) субфильтра подавления
изображений; (d) результирующего ИКИХ-фильтра
Если мы последовательно с формирующим субфильтром включим низкочастот­
ный субфильтр подавления изображений (его АЧХ показана на рисунке 7.33 (с)), за­
дачей которого является ослабление полос пропускания изображений, мы можем
получить многокаскадный фильтр, частотная характеристика которого показана
на рйсунке 7.33 (d). Результирующая АЧХ \Нфг(/)\ является произведением
l% X /)l - \НЛ(/)\ Щ М •
(7-34)
Структура из включенных последовательно субфильтров представляет собой
так называемый ИКИХ-фильтр, показанный на рисунке 7.34 (а), интерполиро­
ванная импульсная характеристика которого приведена на рисунке 7.34 (Ь).
Если^требуемая ширина полосы пропускания Ф Н Ч равна f pass, его полоса за­
держивания начинается на частоте f stop и ширина переходной полосы равна
ftrans =fstop —fpass’ то нормированные параметры прототипа определяются как
fp-pass —М fpass
(7-35)
fp-stop = M fstop
(7-35')
fp-trans - M f trans - M ( f stop - f pass) .
(7-35")
Частотные параметры субфильтра подавления изображений определяются как
fir-pass ' fpass
(7-36)
fir -s to p -O /M ) -fstop-
<7-3(0
323
7.2. Интерполированные КИХ ФНЧ
О
5
10
.
15
20
25
Рис. 7.34. Интерполированный КИХ-фильтр: (а) каскадная структура; (Ь) результи­
рующая импульсная характеристика
Подавление в полосе задерживания прототипа и субфильтра подавления
изображений идентичны и равны требуемому подавлению ИКИХ-фильтра. Сло­
во «интерполированный» в названии ИКИХ-фильтров используется потому, что
субфильтр подавления изображений интерполирует нулевые отсчеты импуль­
сной характеристики формирующего субфильтра к8^(к), в результате чего общая
импульсная характеристика Ьф^к) ИКИХ-фильтра на рисунке 7.34 (Ь) оказывает­
ся почти эквивалентной импульсной характеристике длины К ^ нерекурсивного
КИХ-фильтра. (Вы заметили, что А,•/■,>(£) представляет собой интерполирован­
ную версию кр(к)на рисунке 7.32 (Ь)?) Некоторые авторы подчеркивают это об­
стоятельство, называя субфильтр подавления изображений интерполятором.
Частота дискретизации в пределах ИКИХ-фильтра не меняется, поэтому ника­
кой интерполяции на самом деле нет.
Чтобы дать вам стимул для дальнейшего чтения, рассмотрим следующий
пример, который демонстрирует огромное преимущество ИКИХ-фильтра с
точки зрения количества операций. Рассмотрим проектирование КИХ-фильтра
с линейной ФЧХ, нормированная ширина полосы пропускания которого равна
/раз5 =
неравномерность АЧХ в полосе пропускания равна 0.1 дБ, ширина пе­
реходной полосы / (тпз = 0.02, а подавление в полосе задерживания не меньше
60 дБ. (Неравномерность АЧХ в полосе пропускания представляет собой размах
пульсаций от пика до пика в дБ.) АЧХ прототипа \Нр(/)\ при коэффициенте рас­
ширения М = 3 показана на рисунке 7.35 (а). Ось частот этих графиков пронорми­
рована так, что значение 0.5 на оси абсцисс представляет частоту / 5 /2 Гц, т. е.
половину частоты дискретизации. Частотная характеристика формирующего
субфильтра при М = 3 приведена на рисунке 7.35 (Ь), при этом центр изображе­
ния находится на частоте 1/М. Характеристика субфильтра подавления изобра­
жений на рисунке 7.35 (с) показана сплошной линией, а характеристика всего
фильтра приведена на рисунке 7.35 (с!).
Чтобы реализовать требования к исходному фильтру, соответствующие ри­
сунку 7.35 ((1), потребовался бы традиционный КИХ-фильтр с Ыфг = 137 ответ­
влениями, где*индекс "(/гг" обозначает традиционный КИХ-фильтр. В нашем
ИКИХ-фильтре формирующий и подавляющий изображения субфильтры тре­
буют
= 45 и Л^г = 25 ответвлений соответственно, при этом общее количество
ответвлений составляет Ыфг = 70.
324
Гпава 7. Специальные КИХ-фильтры нижних частот
0
0|---------------------------- ----------------ч
1«РМ1
”\
'
\
ш
ч
ш
ч
\
-6 0
-6 0
.........................................
0.1
0.2
0.3
Частота
І
миішмш
НУшшшН
*
0.4
0.5
0
0.1
(а)
ШШ
Цш
0.2
0.3
Частота
0.4
0.5
(Ь)
ш
ч
-601
Ь .___ Л Л Л А Л Л ___:
0.1
Частота
0.2
0.3
Частота
(с)
(с))
0.4
0.5
Рис. 7.35. Амплитудно-частотные характеристики для примера ИКИХ-фильтра
нижних частот: (а) характеристика прототипа; (Ь) характеристика фор­
мирующего субфильтра; (с) характеристика субфильтра подавления
изображений; (с!) характеристика окончательного ИКИХ-фильтра
Мы можем определить относительное уменьшение количества операций в
процентах в случае использования ИКИХ-фильтра по сравнению с традицион­
ным КИХ-фильтром как
% уменьшения количества операций = 1 0 0 ( - Ыр - А^г)/АГфг .
(7 -37)
При этом ИКИХ-фильтр из рассмотренного примера обеспечил снижение ко­
личества операций по сравнению с традиционным КИХ-фильтром, равное
% уменьшения количества операций = 100(137 - 70)/137 = 49 % .
(7 -37')
Рисунок 7.35 показывает, что ширина переходной полосы (форма) \Нфг(/)\
определяется шириной переходной полосы \Н5^(/)\, и этим оправдывается реше­
ние назвать к8^(к) «формирующим» фильтром
7 .2 .1 . Выбор оптимального значения коэффициента
расширения М
Коэффициент расширения М заслуживает нашего внимания, т. к. он может ока­
зывать существенное влияние на вычислительную эффективность ИКИХ-фильтров. Чтобы показать это, предположим, что в нашем примере на рисунке 7.35 мы
приняли М = 2. В этом случае мы реализовали бы ИКИХ-фильтр, параметры кото­
рого приведены в строке М = 2 таблицы 7.4 и который обеспечивает уменьшение
объема вычислений на 43 %. При М = 2 коэффициент сжатия Н ^ (/) в частотной об­
ласти меньше, что потребовало увеличения количества ответвлений И8^(к) по срав­
нению со случаем М = 3.
325
7.2. Интерполированные КИХ ФНЧ
Таблица 7.4. Зависимость снижения количества операций
ИКИХ-фильтра от М
„5(1(к)
Ык)
пйиш о „па
ик0ибх“|« ^ ра
Уменьшение
_
___ _
количества
операций в %
2
69
8
77
43
3
45
25
70
49
4
35
95
130
8
Коэффициент
расширения
Количество ответвлений
Если бы мы взяли М = 4, уменьшение объема вычислений составило бы всего
8 %, как показано в таблице 7.4. Это объясняется тем, что изображения Hs^(f) рас­
полагаются так близко друг к другу, что требуется фильтр подавления изображе­
ний повышенного качества (с увеличенным количеством ответвлений). Как часто
бывает в обработке сигналов, здесь требуется найти разумный компромисс. Нам
хотелось бы использовать большие значения А/, чтобы как можно сильнее сжать
переходную полосу Hsfr(f), но увеличение М требует уменьшения ширины пере­
ходной полосы субфильтра подавления изображений, что приводит к увеличе­
нию количества ответвлений hir(k) и требуемого объема вычислений. В нашем
примере ИКИХ-фильтра на рисунке 7.35 значение М = 3 является оптимальным,
потому что оно дает наибольший коэффициент уменьшения объема вычислений
по сравнению с традиционным нерекурсивным однокаскадным КИХ-фильтром.
Как показано на рисунке 7.33 (Ь), максимальное значение М равно наибольше­
му целому числу, удовлетворяющему условию 1/M ~ f stop >fstoP’ которое обеспе­
чивает отсутствие перекрытия изображений. Следовательно, верхняя граница М
определяется выражением
M max -
LV ( 2 f M p )J •
<7 -38>
где [*J обозначает усечение* до целого числа. Таким образом, приемлемыми бу­
дут целые значения коэффициента расширения в диапазоне 2 < М < Mmax. Вычис­
ляя (7-38) для примера ИКИХ-фильтра, приведенного на рисунке 7.35, получаем
Мщох ~ M
W
+ 0.02)]} - 4 ,
О -38’)
что объясняет диапазон значений М, использованных в таблице 7.4.
7.2.2. Оценка количества ответвлений КИХ-фильтра
Для оценки уменьшения количества операций при использовании ИКИХ-фильтров необходим алгоритм вычисления количества ответвлений N традиционного
нерекурсивного КИХ-фильтра. Ряд авторов предлагали эмпирические формулы
для оценки значения N традиционных нерекурсивных КИХ-фильтров на основе
неравномерности АЧХ в полосе пропускания, подавления в полосе задерживания
и ширины переходной полосы [8,15-17]. Наиболее простое выражение для расчета
326
Гпава 7. Специальные КИХ-фильтры нижних частот
N, дающее результаты, согласующиеся с другими оценками при неравномерности
АЧХ в полосе пропускания й районе 0.1 дБ, имеет вид
^tfir
Atten/[22(f s t o p —fpass )] >
(7-39)
TjxeAtten —подавление в полосе задерживания в д З ,/разз и f stop — нормированные
(относительные) частоты, показанные на рисунке 7.33 (d) [17]. Аналогично, ко­
личество ответвлений прототипа и субфильтра подавления изображений можно
оценить по формуле
Np « A tten/[22(M )(fstop - f pass)]
(7-39')
Nir * Atten/[22( 1/M - fstop - f Pass)] •
(7-39")
7 .2 .3 . Моделирование характеристик ИКИХ-фильтров
Уменьшение объема вычислений ИКИХ-фильтра зависит от коэффициента
расширения М, ширины полосы пропускания и ширины переходной полосы раз­
рабатываемого ИКИХ-фильтра. Чтобы продемонстрировать эту зависимость,
подставим выражения (7-39) в (7-37) и запишем
% уменьшения количества операций =
- ЮОЦМ - 1)/М - M ftram/( 1 - М /Ыт - 2Mfp as)] .
(7-40)
График, построенный согласно (7-40) для ширины полосы пропускания, равной
одной десятой частоты дискретизации (f pass =0.1), показан на рисунке 7.36 (а) и по­
казывает достижимые значения коэффициента уменьшения объема вычислений
как функцию ширины переходной полосы для коэффициентов расширения 2 ,3 и
4. Рассмотрев внимательно рисунок 7.36 (а), мы видим, что при большой ширине
переходной полосы (скажем, f trans = 0.07) сумма ширины полосы пропускания и
ширины переходной полосы так велика по сравнению с шириной полосы пропус­
кания, что только коэффициент расширения М = 2 позволит избежать перекры­
тия изображений.
При меньших значениях ширины переходной полосы можно использовать
значения коэффициента 3 и 4. Например, когда ширина переходной полосы ле­
жит в диапазоне от 0.005 до 0.028, коэффициент расширения М = 3 дает большее
уменьшение количества операций, чем М = 2. Оптимальное значение (обеспечи­
вающее наибольшее уменьшение объема вычислений) коэффициента расшире­
ния как функция ширины переходной полосы приведено на рисунке 7.36 (Ь).
Черные точки на рисунке 7.36 представляют пример ИКИХ-фильтра, показан­
ный на рисунке 7.35, с шириной переходной полосы f trans = 0.02.
Чтобы показать, как процент снижения количества операций ИКИХ-филь­
тров изменяется в зависимости от заданной ширины полосы пропускания, на
рисунке 7.37 приведены характеристики ИКИХ-фильтра при ширине полосы
пропускания, составляющей 5% частоты дискретизации (fpass = 0.05). Числа на
графиках на рисунке 7.37 (а) представляют значения коэффициента расширения.
327
7.2. Интерполированные КИХ ФНЧ
Ширина переходной полосы /
(а)
(Ь)
% уменьшения количества операций
Рис. 7.36. Параметры ИКИХ-фильтра как функции ширины переходной полосы при
fpass = 0.1: (а) процентное уменьшение количества операций; (Ь) оптима­
льные значения коэффициента расширения
Ширина переходной полосы /(гап5
(а)
Ширина переходной полосы ^апа
(Ь )
Рис. 7.37. Параметры ИКИХ-фильтра как функции ширины переходной полосы при
fpass= 0.05: (а) процентное уменьшение количества операций; (Ь) опти­
мальные значения коэффициента расширения
328
Гпава 7. Специальные КИХ-фильтры нижних частот
Оптимальные значения М в зависимости от ширины переходной полосы пока­
заны на рисунке 7.37 (Ь). Кривые на рисунке 7.37 (а) показывают, в соответствии
с отношением в квадратных скобках (7-40), что при приближении ширины пере­
ходной полосы к нулю процент снижения количества операций приближается к
100(М -1)/М .
Мы продолжаем обсуждение эффективности ИКИХ-фильтров, рассматривая
жирную кривую на рисунке 7.38 (а), которая представляет максимальное умень­
шение количества операций как функцию ширины переходной полосы для
ИКИХ-фильтра с/ ра53 = 0.1, аналогично рисунку 7.36 (а). Чтобы показать макси­
мальное уменьшение количества операций в более широком диапазоне значений
ширины переходной полосы, на рисунке 7.38 (Ь) этот график показан в логариф­
мическом масштабе по оси частот.
Далее, мы повторяем график рисунка 7.38 (Ь) на рисунке 7.39 (а), и добавляем
кривые зависимости уменьшения объема вычислений от ширины переходной по­
лосы для пяти других ИКИХ-фильтров, имеющих разные значения ширины по­
лосы пропускания, которые показывают, насколько значительным может быть
уменьшение количества операций при использовании ИКИХ-фильтров нижних
частот. Оптимальные значения коэффициентов расширения, использованные
для построения кривых на рисунке 7.39 (а), показаны на рисунке 7.39 (Ь). Чтобы
не загромождать нижнюю часть рисунка 7.39 (Ь), ступенчатые кривые были заме­
нены гладкими. Скоро мы увидим, как кривые рисунка 7.39 (Ь) используются в
примере проектирования ИКИХ-фильтра.
0.01
0.03
0.05
0.07
0.09
Ширина переходной полосы ^,гап5
(а)
0.0001
0.001
0.01
Ширина переходной полосы ^1гап5
(Ь)
Рис. 7.38. Максимальное уменьшение объема вычислений в процентах в зависи­
мости от ширины переходной полосы при fpass = 0.1: (а) в линейном мас­
штабе; (Ь) в логарифмическом масштабе оси частот
7.2. Интерполированные КИХ ФНЧ
329
100
3“
ГС
О. 90
0
С
о
со
со
К
з:
Iо.
X
3
о
ш
о.
ь
г
80
с5
Ф
т
с;
о
К
70
60
ГГ
£ 50
■а
■соа
о
В
л
40
>
V?
30
>5
3
X 20
Л
с;
со
5
$ 10
и
со
2
0.0001
X
л
с,
го
5Н
С
О
0.01
0.001
Ширина переходной полосы /,гап5
(а)
0.
0.0001
0.001
0.01
о,
Ширина переходной полосы /|гап5
(Ь)
Рис. 7.39. Параметры ИКИХ-фильтра в зависимости от ширины переходной поло­
сы при разных значениях ширины полосы пропускания: (а) максималь­
ное уменьшение объема вычислений в процентах; (Ь) оптимальные
значения коэффициентов расширения
7 .2 .4 . Вопросы реализации ИКИХ-фильтров
Рассмотренное уменьшение вычислительной сложности ИКИХ-фильтров осно­
вано на предположении, что фильтры реализуются в виде двух отдельных субфиль­
тров, как показано на рисунке 7.34. Мы не поддались искушению объединить эти два
фильтра в один, коэффициенты которого являются сверткой импульсных характе­
ристик субфильтров. Такой маневр лишил бы нас нулевых коэффициентов форми­
рующего субфильтра, и мы потеряли бы часть эффективности.
Графики на рисунке 7.39 (Ь) указывают на важную особенность реализации
при использовании ИКИХ-фильтров. При уменьшении ширины полосы пропус­
кания ИКИХ-фильтра можно использовать большие значения коэффициента
расширения М. При использовании ЦПОС большие значения М требуют исполь­
зования более объемного блока памяти в форме циклического буфера для хране­
ния достаточного количества входных отсчетов х(п) формирующего субфильтра.
Объем этой памяти должен быть равен К8ц в (7-33). Некоторые авторы считают
это требование по выделению памяти для хранения всех промежуточных нулей
импульсной характеристики
недостатком ИКИХ-фильтров. Это ошибочное
утверждение, т. к. оказывается, что длина к8^(к), К ^, только на несколько процен­
тов больше, чем длина импульсной характеристики традиционного КИХ-фильтра,
имеющего такие же характеристики, как и ИКИХ-фильтр. Таким образом, с точки
зрения памяти данных цена, которую мы платим при использовании ИКИХ-фильтров, состоит в небольшом увеличении объема памяти для хранения данных суб­
фильтров. На практике для узкополосных ИКИХ Ф Н Ч К\г обычно составляет
330
Глава 7. Специальные КИХ-фильтры нижних частот
меньше 10 % от Ksh. Выделение блока памяти размером Ksh слов для формирую­
щего фильтра не требуется при реализации ИКИХ-фильтров на ПЛИС класса
FPGA, т. к. площадь FPGA не является жесткой функцией коэффициента расши­
рения М [ 18]..
При реализации ИКИХ-фильтра на ЦПОС уменьшение объема вычислений
может быть реализовано только в случае, когда архитектура ЦПОС включает
команды работы с циклическими буферами, свободные от накладных расходов,
при инкременте адреса, равном коэффициенту расширения М. Такая возмож­
ность обеспечивает выполнение операций умножения только с ненулевыми ко­
эффициентами формирующего фильтра hsh(k).
На практике формирующий субфильтр и субфильтр подавления изображений
следует реализовать в виде КИХ-фильтра сложенной структуры, используя сим­
метрию их импульсных характеристик для уменьшения количества выполняемых
умножений в два раза (см. раздел 13.7). Использование сложенной структуры не
меняет графиков параметров фильтров, приведенных на рисунке 7.39. Что же каса­
ется реализации ИКИХ-фильтров с использованием арифметики с фиксирован­
ной запятой, то их чувствительность к ошибкам квантования коэффициентов не
больше, чем чувствительность традиционных КИХ-фильтров [13].
7 .2 .5 . Пример проектирования ИКИХ-фильтра
Проектирование реального ИКИХ ФНЧ не представляет сложности и состо­
ит из четырех шагов:
1. Задать требования к характеристикам проектируемого ФНЧ.
2.
Выбрать начальное значение коэффициента расширения М.
3.
Спроектировать формирующий субфильтр и субфильтр подавления
изображений и оценить их характеристики.
4.
Исследовать характеристики ИКИХ-фильтра при других значениях
коэффициента расширения, близких к начальному значению М.
В качестве примера проектирования рассмотрим рисунок 7.33 (d) и предполо­
жим, что мы хотим построить ИКИХ Ф НЧ с
= 0.02, размахом пульсаций в по­
лосе пропускания 0.5 дБ, шириной переходной полосы f trans = 0.01 (следовательно,
f stop = 0.03) и подавлением в полосе задерживания 50 дБ. Прежде всего, найдем точку ffrans = 0.01 на оси абсцисс рисунка 7.39 (Ь) и проведем через нее вертикальную
линию до пересечения с кривой, соответствующей f pass = 0.02. Эта точка пересече­
ния показывает, что мы должны начать проектирование с коэффициентом расши­
рения М - 7. (Аналогичная точка пересечения на рисунке 7.39 (а) подсказывает,
что мы можем получить уменьшение количества операций примерно на 80 %.)
При М = 7, воспользовавшись (7-35), мы используем нашу любимую програм­
му проектирования традиционных КИХ-фильтров для проектирования КИХфильтра-прототипа с линейной ФЧХ и следующими параметрами:
f p-pass- Ш 0.02) - 0.14,
неравномерность в полосе пропускания = (0.5)/2 дБ = 0.25 дБ,
f p - s t o p = Щ 0.03) = 0.21 и
подавление в полосе задерживания = 50 дБ.
7.2. Интерполированные КИХФНЧ
331
(Заметьте, что для задания уровня пульсаций в полосе пропускания мы воспо­
льзовались приближенным методом для каскадного соединения фильтров из раз­
дела 6.8.1 и задали уровень пульсаций в полосе пропускания для прототипа,
равный половине общей заданной неравномерности. Мы сделаем то же для суб­
фильтра подавления изображений.) Такой КИХ-прототип будет иметь N = 33 от­
ветвления и, в соответствии с (7-33), при расширении в М = 7 раз формирующий
субфильтр будет иметь импульсную характеристику длиной в Ksh = 225отсчетов.
Далее, используя (7-36), мы рассчитываем субфильтр подавления изображе­
ний, обладающий следующими параметрами:
fir-pass~fpass ~ 0-02,
неравномерность в полосе пропускания = (0.5)/2 дБ = 0.25 дБ,
fir-stop = V M - f stop = 1/7 - 0.03 = 0.113, И
подавление в полосе задерживания = 50 дБ.
Этот субфильтр подавления изображений будет иметь Nir = 27 ответвлений и при
последовательном соединении с формирующим субфильтром образует ИКИХфиЛьтр, требующий 60 умножений на один выходной отсчет. Частотная характе­
ристика этого ИКИХ-фильтра показана на рисунке 7.40 (а), а полоса пропуска­
ния в увеличенном масштабе — на рисунке 7.40 (Ь).
Традиционный КИХ-фильтр, удовлетворяющий нашим требованиям потребовал
бы примерно Ntf lr = 240 отсчетов. Поскольку ИКИХ-фильтр требует только 60 умно­
жений на выходной отсчет, используя (7-37), мы находим, что реализовано уменьше­
ние объема вычислений на 75 %. И последний шаг проектирования ИКИХ-фильтра —
откиньтесь на спинку кресла и насладитесь хорошо сделанной работой.
Дальнейшее моделирование нашего фильтра при разных значениях коэффи­
циента расширения дает параметры ИКИХ-фильтра, приведенные в таблице 7.5.
Здесь мы видим, что значения коэффициента расширения от 5 до 8 дают очень
близкие значения коэффициента уменьшения количества операций и требуемого
объема памяти для формирующего фильтра.
И КИХ-фильтры подходят для применений, в которых требуются узкополос­
ные фильтры с линейной ФЧХ, например, при фильтрации перед прореживани­
ем для узкополосного выделения каналов в приемниках беспроводных систем
связи или в цифровом телевидении. ИКИХ-фильтры являются важными компо­
нентами в маскирующих КИХ-фильтрах с широкополосными частотными харак­
теристиками с резкими переходами [19, 20]. Кроме того, ИКИХ-фильтры можно
использовать в узкополосных двумерных фильтрах.
В литературе описаны и другие, более сложные методы проектирования ИКИХфильтров. Улучшенная вычислительная эффективность, на 30-40 % выше представ­
ленной здесь, заявлена для замысловатой схемы, в которой субфильтр подавления
изображений заменен многокаскадным фильтром [2 1 ].
В заключение обсуждения узкополосных ИКИХ-фильтров с линейной ФЧХ
мы напомним: они могут обеспечить значительное уменьшение объема вычисле­
ний (до 90 %) по сравнению с традиционными нерекурсивными КИХ-фильтрами
за счет повышения требуемого объема памяти менее чем на 10 %. Отрадно также
то, что реализация ИКИХ-фильтра образуется как простое последовательное со­
единение фильтров, которые рассчитываются с помощью легкодоступных про­
грамм проектирования традиционных КИХ-фильтров.
332
Гпава 7. Специальные КИХ-фильтры нижних частот
1
......
г •'
■■■■
1
0
-0 .2
IW
.W
I
ш
с£
\Hm(f)\\ ^
lq
/ Л
"°"4
\
4 -0 .6
-50 і
0.1
0.2
Ad
0.3
A
0.4
-0 .8
0.5
0
0.005
0.01
0.015
0.02
Ч астота
Ч астота
(а)
(Ь)
Рис. 7.40. АЧХ ИКИХ-фильтра из примера проектирования: (а) полная характери­
стика; (Ь) полоса пропускания в увеличенном масштабе.
Т аб л и ц а 7 .5 . Уменьшение объема вычислений в примере
проектирования ИКИХ-фильтра как функция М
Количество ответвлений
Коэффициент
расширения M h ,J k ) h j k )
Общее для
,г
ИКИХ-фильтра
Количество
ячеек
памяти Ksh
Уменьшение
объема
вычислений,%
3
176
8
84
226
65
4
58
12
70
229
71
5
46
17
63
226
74
6
3’9
22
61
229
75
7
33
27
60
225
75
8
29
33
62
225
74
9
26
41
67
226
72
10
24
49
73
231
70
11
21
60
81
221
66
Библиография
1.
Rabiner, L., et al, «An Approach to the Approximation Problem for Nonrecursive
Digital Filters,» IEEE Transactions Audio Electroacoust., Vol. AU-18, June 1970,
pp. 83-106.
2. Proakis. J. and Manolakis, D. Digital Signal Processing—Principles, Algorithms, and
Applications, Third Edition, Prentice Hall, Upper Saddle River, New Jersey, 1996,
pp. 506-507.
3. Taylor, F. and Mellott, J. Hands-On Digital Signal Processing, McGraw-Hill, New
York, 1998, pp. 325-331.
Библиография
4.
333
Rader, С. and Gold, В. «Digital Filter Design Techniques in the Frequency Doma­
in,» Proceedings o f the IEEE, Vol. 55, February 1967, pp. 149-171.
5. Rabiner, L. and Schafer, R. «Recursive and Nonrecursive Realizations of Digital
Filters Designed by Frequency Sampling Techniques,» IEEE Trans. Audio Electroacoust., Vol. AU-19, September 1971, pp. 200-207.
6. Gold, B. and Jordan, K .«A Direct Search Procedure for Designing Finite Duration
Impulse Response Filters,» IEEE Trans. Audio Electroacoust., Vol. AU-17, March
1969, pp. 33-36.
7.
Rabiner, L. and Gold, B. Theory and Application оf Digital Signal Processing, Prentice
Hall, Upper Saddle River, New Jersey, 1975, pp. 105-112 (есть русский перевод:
Рабииер Л., Голд Б. «Теория и применение цифровой обработки сигналов,» М.:
Мир, 1978, доступен по адресу http://geogin.narod.ru/arhiv/dsp/dsp3.htm).
8.
Rorabaugh, С. DSP Primer, McGraw-Hill, New York, 1999.
9.
Parks, T. and McClellan, J. «А Program for the Design of Linear Phase Finite Im­
pulse Response Digital Filters,» IEEE Trans. Audio Electroacoust., Vol. AU-20,
August 1972, pp. 195-199.
1 0 . Herrmann, O. «Design of Nonrecursive Digital Filters with Linear Phase,» Elect­
ron. Lett, Vol. 6, May 28,1970, pp. 328-329.
1 1 . Rabiner, L. «Techniques for Designing Finite-Duration-Impulse-Response Digi­
tal FiIters,»IEEE Trans, on Communication Technology, Vol. CO M -19, April 1971,
pp. 188-195.
1 2 . Ingle, V and Proakis, J. Digital Signal Processing Using MATLAB, Brooks/Cole
Publishing, Pacific Grove, CA, 2000, pp. 202-208.
13. Mitra, S. K., et al, «Interpolated Finite Impulse Response Filters,» IEEE Trans.
Acoust, Speech, Signal Processing, vol. ASSP-32, June 1984, pp. 563-570.
14. Vaidyanathan, P. Multirate Systems and Filter Banks, Prentice Hall, Englewood
Cliffs, New Jersey, 1993.
15. Crochiere, R. and Rabiner, L. «Interpolation and Decimation of Digital Signals—A
Tutorial Review,» Proceedings o f the IEEE, Vol. 69, No. 3, March 1981, pp. 300-331.
16. Kaiser, J. «Nonrecursive Digital Filter Design Using Io-sinh Window Function, »
Proc. 1974 IEEE Int. Symp. Circuits Systems, April 1974, pp. 20-23.
17. Harris, F. «Digital Signal Processing for Digital Modems», DSP World Spring De­
sign Conference, Santa Clara, CA, April 1999.
18. Dick, C. «Implementing Area Optimized Narrow-band FIR Filters Using Xilinx
FPGAs», SPIE International Symposium on Voice, Video and Data Communications,
Boston, Massachusetts, pp. 227-238, Nov. 1998. [http://www.xilinx.com/products/logicore/dsp/ifir.pdf \]
334
Гпава 7. Специальные КИХ-фильтры нижних частот
19. Lim, Y. «Frequency-Response Masking Approach for the Synthesis of Sharp Line­
ar Phase Digital Filters,» IEEE Trans. Circuits Syst., Vol. 33, April 1986, pp.
357-364.
20. Yang, R., et al, «A New Structure of Sharp Transition FIR Filters Using FrequencyResponse Masking,» IEEE Transfctions Circuits and Systems, Vol. 35, August 1988,
pp. 955-966.
21. Saramaki, T., et al, «Design of Computationally Efficient Interpolated FIR Fil­
ters», IEEE Trans. Circuits Syst., Vol. 35, January 1988, pp. 70-88.
Гпава 8
Квадратурные
сигналы
Теория квадратурных сигналов строится с использованием комплексных чисел.
Вероятно, никакая другая тема не причинила столько головной боли новичкам в
ЦОС, сколько эти числа и связанные с ними странные термины, такие KdKj-оператор, комплексный, аналитический, мнимый, действительный и ортогональный.
Если от вас ускользает физический смысл комплексных чисел и оператора j = V - 1,
не стоит отчаиваться, поскольку вы находитесь в достойной компании. Итальян­
ский математик шестнадцатого века Джироламо Кардано писал, что комплекс­
ные числа «настолько же непонятны, насколько бесполезны».
В XVII веке Готфрид Лейбниц описывал мнимые числа как «амфибии, прожи­
вающие на грани существующего и несуществующего». (Термин «мнимый» впер­
вые был использован блестящим математиком и философом Рене Декартом в
XVII веке, и при этом он имел пренебрежительный оттенок. Это объясняется тем,
что не только понятие квадратного корня из отрицательного числа было в лучшем
случае сомнительным, но и, как ни удивительно, в то время не существовало еди­
ного мнения о смысле отрицательных действительных чисел.) Даже Карл Фрид­
рих Гаусс, один из величайших математиков мира, называл у-оператор «тенью
теней». Далее мы прольем немного света на эти тени, чтобы вам никогда не прихо­
дилось прибегать к помощи специалистов-психоаналитиков телефонной службы
Psychic Hotline.
Квадратурные сигналы, представленные комплексными числами, использу­
ются практически во всех областях науки и техники1. Нам они интересны тем, что
используются в анализе Фурье, а также в квадратурной обработке и в реализации
современных систем связи. В этой главе мы дадим обзор основ комплексных чи­
сел и познакомимся с тем, как они используются для описания квадратурных сиг­
налов. Затем мы познакомимся с понятием отрицательной частоты, т. к. оно тесно
связано с алгебраической записью квадратурных сигналов, а также научимся го­
ворить на языке квадратурной обработки. Кроме того, чтобы прояснить понятие
квадратурных сигналов и придать ему физический смысл, мы будем использо­
вать трехмерные графики в пространстве время-частота.
1 Это объясняется тем, что комплексные синусоиды являются решениями линейных
дифференциальных уравнений второго порядка, используемых для описания множе­
ства явлений природы.
336
Гпава 8. Квадратурные сигналы
8.1. Почему нас так занимают
квадратурные сигналы?
Квадратурные сигналы, которые также называют комплексными сигналами, ис­
пользуются во многих применениях цифровой обработки сигналов, таких как:
□ системы связи,
□
радиолокационные системы,
□
системы измерения разности времен прихода сигналов в радионавигации,
□
когерентные измерительные системы,
□
системы формирования луча антенны,
□ однополосные модуляторы.
Эти приложения попадают в одну общую категорию, известную как квадра­
турная обработка, и обеспечивают дополнительные возможности обработки
сигналов благодаря когерентному измерению фазы синусоидальных сигналов.
Квадратурный сигнал — это двухмерный сигнал, значение которого в некото­
рый момент времени может быть задано одним комплексным числом, содержа­
щим две части, которые мы называем действительной частью и мнимой частью.
(Термины действительная и мнимая, хотя и общеприняты, неудачны из-за смыс­
ла, который они имеют в повседневной речи. Инженеры систем связи используют
термины синфазная и квадратурная составляющие. Подробнее об этом погово­
рим позже.) Рассмотрим математическую запись комплексных чисел.
8.2. Запись комплексных чисел
Чтобы сформировать терминологию, определим действительные числа как чис­
ла, которые мы используем в повседневной жизни для выражения таких величин,
как напряжение, температура или баланс банковского счета. Эти одномерные чис­
ла могут быть либо положительными, либо отрицательными, как показано на ри­
сунке 8.1 (а). На этом рисунке мы изобразили одномерную ось координат и
показываем, что действительное число можно представить точкой на этой оси.
По традиции давайте называть эту ось действительной осью.
Комплексное число с показано на рисунке 8.1 (Ь), где оно изображено как точ­
ка. Расположение комплексных чисел не ограничено одномерной прямой, они
могут располагаться где угодно на двухмерной плоскости. Эту плоскость называ­
ют комплексной плоскостью (некоторым математикам нравится называть ее диа­
граммой Аргана), и она дает нам возможность изображать комплексные числа,
имеющие как действительную, так и мнимую части. Например, на рисунке 8.1(Ь)
комплексное число с = 2.5 + /2 изображается точкой, не лежащей ни на действитель­
ной, ни на мнимой оси. Мы приходим в эту точку, продвинувшись от начала коор­
динат на +2.5 единицы вдоль действительной оси и поднявшись на +2 единицы
вдоль мнимой оси. Вы можете представлять себе действительную и мнимую оси
точно так же, как вы.представляете себе направления Восток-Запад и Север-Юг
на карте автомобильных дорог.
337
8.2. Запись комплексных чисел
Эта точка представляет
действительное число -2.2
(а)
-5
-4
І-
/
И- 1
-
і-
-3
-2
-1
О
-1---- 1---- 1---- 1----►
1
2
3
4
Действительная
ось
і Мнимая
ось(/)
Эта точка представляет
комплексное число
с = 2 5 + у2
Действительная
ось
(Ь )
Рис. 8.1.
Графическая интерпретация: (а) действительного числа; (Ь) комплекс­
ного числа
Мы будем использовать геометрические представления для объяснения ариф­
метики комплексных чисел. Посмотрев на рисунок 8.2, мы можем использовать
тригонометрию прямоугольного треугольника для получения нескольких раз­
личных способов представления комплексного числа с.
Комплексное число с в литературе записывается несколькими различными
способами, показанными в таблице 8 . 1 .
Таблица 8 .1 . Формы записи комплексных чисел
Название
Математическое
формы записи
выражение
Примечание
Прямоугольная
форма
с = а +уб
Используется для пояснений.
( 8- 1 )
Наиболее понятная форма. (Ее
называют также декартовой формой.)1
Тригонометри­
ческая форма
с = М[соб(Ф) +
М п (0 )]
Широко используется для описания ( 8 -2 )
квадратурных сигналов
в системах связи.
Полярная
форма
с = М е$
Самая непонятная, но главная
форма, используемая в
математических выкладках.
(Называется также
экспоненциальной формой. Иногда
записывается в виде Мехр(]ф).)
(8-3)
Модульаргумент
с *=МАф
Используется в описаниях, но
слишком неудобна для
использования в алгебраических
выражениях. (По существу,
представляет собой сокращенную
запись выражения (8-3).)
(8-4)
' В отечественной литературе эту форму часто называют также алгебраической фор­
мой — (прим. перев.).
338
Гпава 8. Квадратурные сигналы
Уравнения (8-3) и (8-4) напоминают нам, что с можно также рассматривать
как координаты на комплексной плоскости конца фазора длиной М, направленно­
го под углом ф градусов к положительной полуоси действительной оси, как показа­
но на рисунке 8.2. Помните при этом, что с — комплексное число, а значения а, Ь, М
и ф —действительные числа. Абсолютная величина или модуль с есть величина
М= |с| =
Рис. 8.2.
V а2 + Ь2
.
(8-5)
Представление комплексного числа с = а +у'Ь в виде фазора на комплекс­
ной плоскости
Фазовый угол ф, т. е. аргумент числа с, вычисляется как арктангенс отношения
мнимой части к действительной, или
ф = 1ъп~1(Ь /а ) .
( 8 -6)
Если мы приравняем (8-3) к (8-2), М е$ = М[соз(ф) +у м п ^ )], то сможем полу­
чить соотношение, которое в настоящее время называется тождеством Эйлера и
выглядит следующим образом:
е№ = со$(ф) + уип(ф) .
(8-7)
Недоверчивый читатель сейчас должен спросить: «На каком основании мы пред­
ставляем комплексное число этим странным выражением, содержащим основание
натуральных логарифмов е, возводимое в мнимую степень?» Мы можем подтвер­
дить правильность (8-7) так, как это сделал европейский кудесник бесконечных
рядов Леонард Эйлер, подставиву'0 вместо г в разложении ег в ряд, которое приве­
дено в верхней строке рисунка 8.3'. Эта подстановка показана во второй строке.
Далее, чтобы получить ряд, приведенный в третьей строке, мы вычисляем вы­
сшие степени/ Те из вас, кто обладает развитыми математическими способностя­
ми, как Эйлер (или кто обратится к какому-нибудь справочнику по математике),
увидят, что четные и нечетные члены ряда в третьей строке образуют разложения
в ряд для косинуса и синуса.
Рисунок 8.3 подтверждает правильность (8-7) и обосновывает представление
комплексного числа в полярной форме (8-3): М е$. Если вместо 2 в верхней строке
рисунка 8.3 мы подставим -]ф мы придем к несколько отличной, но очень полез­
ной форме тождества Эйлера:
е
= соБ(ф) - у в т ( 0 ) .
( 8 -8 )
Леонард Эйлер (Leonhard Euler), который родился в Швейцарии в 1707 году, считает­
ся многими историками величайшим математиком мира. Между прочим, фамилия
Euler произносится как «Ойлер».
339
8.2. Запись комплексных чисел
е*, = 1 + г
г
+ ——
2!
г
+ ——
3!
+ ——
4!
+.
,/Ф = соб(Ф) + )зіп(ф)
Рис. 8.3.
Один из способов вывода тождества Эйлера с использованием разло­
жений е 7, соБ(ф) и ь\п(ф) в ряд
Полярная форма (8-7) и ( 8 -8 ) выгодна нам по следующим причинам:
□
она упрощает математические выкладки и анализ, преобразуя тригоно­
метрические уравнения в более простые показательные, математические
операции над комплексными числами подчиняются тем же правилам,
что и операции над действительными числами;
□
она преобразует сложение сигналов в простое сложение комплексных
чисел (векторное сложение);
□
□
это самая короткая форма;
она показывает, как реализуются и описываются в литературе системы
связи.
Вот вам пример того, как полярная форма комплексных чисел может упрос­
тить математический анализ. Допустим, мы хотим разобраться в процессе умно­
жения комплексного числа с1 = соъ(ф) + ; 8т ( 0 ) на другое комплексное число с2 =
сое(2ф) - у в т ( 2 0 ), аргумент которого равен удвоенному значению аргумента пер­
вого числа, взятому с обратным знаком. Произведение имеет вид:
С1 с2 = [СО5(0 ) + 75іп(0)][со§(^0) ~ М п(2ф)] =
= СО8(0)СО5(20) + 5ІП(0)5ІП(20) +у[8Іп(0 )сО8(2 0 ) - СО8(0 ) 8ІП(2 0 )]
(8-9)
Используя тригонометрические тождества для произведения функций, мы
можем записать (8-9) как
С1с2 = (1/2)[соз(-ф) + соъ(3ф) + со8(-0) - соъ(3ф)] +
+ ^1 /2)[зт(3ф) + 8ш(—0) - Бт(3ф) + 8Ш(-0)] =
= с о б ( —0 ) + ; ' 8 ш ( - 0 ) = с о 8 ( 0 ) - ; з т ( 0 ) .
(8 -1 0 )
Таким образом, произведение с ^ 2 есть число, комплексно-сопряженное со­
множителю Су. Это не слишком впечатляет, гораздо больше впечатляет простота
данной операции в полярной форме.
340
Глава 8. Квадратурные сигналы
Мы можем записать все это одной короткой строкой:
с1 с2 = е$е~12<Р = е~№,
(8-11)
которая эквивалентна (8-10). Для математического анализа обычно выбирают
полярную форму.
Вернемся к квадратурным сигналам. Чтобы понять природу квадратурных
сигналов во временной области, мы будем использовать уравнения (8-7) и ( 8 -8 ).
Но прежде вдохнем поглубже и войдем в Сумеречную Зону операторау.
Выше уже приводилось определение у = V - 1. Словами его можно выразить так:
у представляет собой число, которое при умножении само на себя^дает -1. Да, это
определение для новичка создает определенные трудности, т. к. все мы знаем, что
любое число, умноженное само на себя, дает положительный результат. (К не­
счастью, технические учебники часто именно так определяют у, а затем с по­
спешностью, впрочем, оправданной, переключаются на способы использования
операторау для анализа синусоидальных сигналов. Читатели быстро забывают о
вопросе: «Что на самом деле значиту = V - 17») Символ V - 1 уже был известен мате­
матикам в течение некоторого времени, но не принимался всерьез до тех пор, пока в
XVI веке они не были вынуждены использовать его для решения кубических поли­
номиальных уравнений [1,2]. Математики неохотно начали принимать абстракт­
ное понятие V - 1, не имея потребности в его визуализации, т. к. его математические
свойства были совместимы с арифметикой обычных действительных чисел.
Именно идея Эйлера совместить комплексные числа и действительные коси­
нусы и синусы, а также блестящая идея комплексной плоскости, предложенная
Гауссом, окончательно узаконили понятие V—1 для европейских математиков в
XVIII веке. Эйлер, выходя за пределы области действительных чисел, показал, что
комплексные числа имеют четкую связь с хорошо известными действительными
тригонометрическими функциями синус и косинус. Подобно тому, как Эйнштейн
показал эквивалентность массы и энергии, Эйлер показал эквивалентность дейст­
вительных синусов и косинусов комплексным числам. Беря пример с современных
физиков, которые не знают, что собой представляет электрон, но хорошо понимают
его свойства, мы не будем беспокоиться о том, что такоеу, а удовлетворимся пони­
манием его поведения. Мы будем рассматривать у не как число, а как операцию
над числом, точно так же, как мы рассматриваем операции изменения знака или
умножения. С нашей точки зрения оператор у обозначает поворот комплексного
числа на 90° против часовой стрелки. Давайте посмотрим, почему.
Мы освоимся с представлением мнимцх чисел на комплексной плоскости,
изучив математические свойства оператора у = V - 1, как показано на рисунке 8.4.
Умножение любого числа, лежащего на действительной оси, нау дает мнимое
значение, лежащее на мнимой оси. Пример в левой части рисунка 8.4 показывает,
что если +5 представлено точкой, лежащей на положительной полуоси действи­
тельной оси, то умножение +5 нау дает мнимое число +]8, расположенное на поло­
жительной полуоси мнимой оси. Аналогично, умножение +]8 на у приводит еще к
одному повороту на 90° и дает число - 8 , лежащее на отрицательной полуоси дей­
ствительной оси, потому чтоу 2= - 1. Умножение -8 нау приводит к дальнейшему
повороту на 90° и дает число -у#, лежащее на отрицательной полуоси мнимой оси.
Когда любое число умножается на у, результатом становится поворот на 90° против
часовой стрелки. (В противоположность этому умножение на -у приводит на комп­
лексной плоскости к повороту в направлении по ходу часовой стрелки на 90°.)
341
8.2. Запись комплексных чисел
Если мы в (8-7) положим ф = л /2 , то мы можем сказать, что
е ]л/2 = со б( л / 2 ) + р т ( л / 2 ) = 0 + ] 1 ,
или
е ^ /2 = ]
(8- 1 2 )
Это следует запомнить. Если у вас есть одно комплексное число, представлен­
ное точкой на комплексной плоскости, то умножение его на] или на е)71/ 2 даст новое
комплексное число, повернутое на 90° против часовой стрелки на комплексной
плоскости. Не забывайте об этом, т. к. это пригодится при чтении литературы по
системам квадратурной обработки!
Мнимая
1 ось
Мнимая
ось
ß.
К
'м
8 Действительная
ось
-8
я
■У8
= умножение нау
А і і м і і і Оі м м
-8
її#
8 Действительная
ось
Г:
-/8
^ = умножение на -у
Рис. 8.4.
Преобразования числа 8 при умножении на у и -у
Рис. 8.5.
Мгновенное фото двух комплексных чисел, показатели степени которых
меняются со временем: (а) числа показаны точками; (Ь) числа изобража­
ются в виде фазоров
Возьмем таймаут, чтобы перевести дыхание. Не унывайте, если идеи мнимых
чисел и комплексной плоскости кажутся несколько загадочными. Вначале так
бывает со всеми —вы будете осваиваться с ними тем больше, чем больше вы будете
их использовать. (Помните, что оператору озадачивал самых маститых математи­
ков Европы в течение многих лет.) Конечно, не только математика комплексных
чисел кажется поначалу несколько странной, но и применяемая терминология
342
Гпава 8. Квадратурные сигналы
весьма необычна. Тогда как использование термина «мнимый» просто неудачно,
термин «комплексный» совершенно сбивает с толку. При первой встрече с ним
выражение «комплексные числа» заставляет нас думать о неких сложных числах.
Это тем более достойно сожаления, что понятие комплексных чисел в действите­
льности не так сложно1. Просто знайте, что целью приведенных выше математи­
ческих рассуждений было обоснование выражений (8-2), (8-3), (8-7) и ( 8 -8 ).
Теперь (наконец-то!) поговорим о сигналах во временной области.
8.3. Представление действительных
сигналов с помощью комплексных фазоров
Теперь рассмотрим комплексную величину, которая является функцией време­
ни. Рассмотрим число, модуль которого равен единице и фазовый угол которого
увеличивается со временем. Это комплексное число представлено точкой е)2л№,
показанной на рисунке 8.5 (а). (Член 2 л /0 представляет собой частоту в радианах
в секунду, которая соответствует частоте / 0 периодов в секунду, измеряемой в
Герцах.) По мере увеличения времени £фазовый угол комплексного числа растет,
и число описывает окружность с центром в начале координат комплексной плос­
кости в направлении против хода часовой стрелки. На рисунке 8.5 (а) показано
это число, представленное жирной точкой, зафиксированное в некоторый произ­
вольный момент времени. Если, скажем, частота/ 0 = 2 Гц, то точка будет обходить
окружность два раза в секунду. Мы можем также представить себе другое комп­
лексное число е ~12л/о1 (белая точка), которое вращается по ходу часовой стрелки,
т. к. его фазовый угол с увеличением времени становится все более отрицательным.
Назовем два комплексных выражения е^2л/о1и е Ч2л№ квадратурными сигнала­
ми. Каждое из них имеет действительную и мнимую части, и оба они являются
функциями времени. Эти выражения е $ л/<£и е ~12л/ о* в литературе часто называют
комплексными экспонентами.
Мы можем также представить квадратурные сигналы е12л1о1и е ~)2л/ог как кон­
цы фазоров, вращающихся в противоположных направлениях, как показано на ри­
сунке 8.5 (Ь). Дальше мы будем придерживаться этого фазорного представления,
т. к. оно позволит нам достигнуть цели —представления действительных синусоид
в контексте комплексной плоскости.
Для более полного понимания поведения простого квадратурного сигнала на ри­
сунке 8.6 изображена трехмерная траектория сигнала е/2я/</, которую он описывает с
течением времени. Чтобы показать, что е32л1ог описывает спиральную траекторию,
ориентированную в соответствии с правилом буравчика, ось которой совпадает с
осью времени, мы добавили временную ось, направленную от страницы к читате­
лю. Действительная и мнимая части е12л1о1на рисунке 8.6 показаны как синусная и
косинусная проекции, что позволяет лучше понять соотношение (8-7).
Блестящий американский инженер Чарльз П. Стейнмец (Charles Р. Steinmetz) кото­
рый в начале двадцатого века первый использовал мнимые числа для анализа электри­
ческих цепей, избегал использования термина «комплексные числа» —он называл их
общими числами (general numbers).
8.3. Представление действительных сигналов с помощью комплексных фазоров 343
Рис. 8.6. Движение e i ^ o 1 со временем
Чтобы понять физический смысл всего сказанного, вспомним, что непрерыв­
ный квадратурный сигнал e ^ f o 1 = cos(2jif0t) +jsu i(2 n f0t) - не просто математи­
ческая абстракция. Мы можем генерировать
в нашей лаборатории и
передавать его в другую лабораторию. Для этого достаточно двух генераторов си­
нусоидальных сигналов одинаковой частоты/0. (Однако мы должны каким-то об­
разом синхронизировать эти два генератора так, чтобы разность фаз генерируемых
сигналов составляла ровно 90°.) Далее мы подсоединяем коаксиальные кабели к
выходным разъемам генераторов и протягиваем эти кабели к месту назначения, по­
метив их надписями cos для косинусоидального сигнала и sin для синусоидального,
в соответствии с рисунком 8.7.
А теперь мы предлагаем вам небольшую анкету из двух вопросов. Первый во­
прос: что мы увидим в другой лаборатории на экране осциллоскопа, если подадим
непрерывные действительные сигналы соs(2nf0t) и sin(2jzf0t) и на входы каналов
горизонтального и вертикального отклонения осциллоскопа соответственно? (Не
забыв, естественно, переключить канал горизонтального отклонения на внешний
вход.) Правильно, мы увидим, как электронный луч осциллоскопа вращается на
экране по кругу против хода часовой стрелки.
Следующий вопрос: что мы увидим на экране осциллоскопа, если кабели по­
мечены неправильно и наши сигналы поменялись местами? Мы снова увидим
окружность, но луч будет вращаться по ходу часовой стрелки. Этот опыт был бы
особенно наглядным, если бы мы установили частоту/0, равную, например, 1 Гц.
Этот опыт имеет большое значение и помогает нам ответить на важный вопрос:
«Как аппратурно реализуется оператор / когда мы работаем с квадратурными
сигналами?» Реализация оператора j заключатся в том, как мы интерпретируем
два сигнала по отношению друг к другу. Мы должны рассматривать их как орто­
гональные, так что действительный сигнал cos (2 n f0t) представляет направление
344
Гпава 8. Квадратурные сигналы
восток-запад, а действительный сигнал бш(2 я / 0£) представляет ортогональное ему
направление север-юг. (Под ортогональностью я понимаю то, что угол между направ­
лениями север-юг и восток-запад составляет ровно 90°.) Таким образом, в нашем при­
мере с осциллоскопом оператору реализуется просто порядком подключения наших
кабелей к осциллоскопу. Действительный косинусоидальный сигнал управляет
отклонением луча по горизонтали, а действительный синусоидальный сигнал
управляет отклонением луча по вертикали. В результате формируется двухмерный
квадратурный сигнал, значение которого представляется мгновенным положением
точки на экране осциллоскопа. Пример, приведенный на рисунке 8.7, напоминает
нам об одной важной характеристике квадратурных сигналов: в то время, как дей­
ствительные сигналы могут передаваться по одному проводу, для передачи квадра­
турных (комплексных) сигналов всегда требуется два провода.
Генератор
сигнала
віп(2яЛ0
I
Генератор
сигнала
Рис. 8.7.
Осциллоскоп
Вход верт
канала
Вход гориз
канала
Ї2кП
Визуализация квадратурного сигнала с помощью осциллоскопа
Возвращаясь к рисунку 8.5 (Ь), спросим себя: «Чему равна векторная сумма
этих двух фазоров, когда они вращаются в противоположных направлениях?» По­
думайте об этом... Правильно, действительные части фазоров всегда суммируются
с одинаковыми знаками, а мнимые части всегда взаимно уничтожаются. Это зна­
о* и е ~)2л1о1 всегда будет действительным числом.
чит, что сумма фазоров е
Именно на этом свойстве основаны реализации современных систем связи!
Чтобы подчеркнуть важность действительной суммы этих двух комплексных
синусоид, мы нарисуем еще один рисунок. Рассмотрим сигнал на трехмерном ри­
сунке 8 .8, полученный как сумма двух комплексных фазоров е->2л/о*/2 и е Ч2л1о1/2
половинной амплитуды, вращающихся в противоположных направлениях вокруг
оси времени и движущихся вдоль нее.
Рассматривая эти фазоры, легко понять, почему косинусный сигнал можно
приравнять сумме двух комплексных экспонент в соответствии с формулой
соз(2я/00 = е)2ли / 2 + е
/2 =
+ е ~)2лЩ / 2 .
(8-13)
Соотношение (8-13) хорошо известно, его также называют одним из тождеств
Эйлера. Мы могли бы вывести это тождество, решив уравнения (8-7) и ( 8 -8 ) отно­
сительно у зт ( 0 ), приравняв полученные выражения и решив результирующее
уравнение относительно соз(0 ). Мы могли бы проделать аналогичные выкладки
и показать, что действительный синус также представляет собой сумму двух ком­
плексных экспонент вида
БІП(2 я /о0 = (е )2ли - е -Рли )/(2 ] ) =>(е -і2ли - е і2ли ) / 2 .
(8-14)
8.4. Несколько мыслей по поводу отрицательной частоты
Рис. 8.8.
345
Косинус, представленный суммой двух вращающихся комплексных фазоров
Посмотрите внимательно на выражения (8-13) и (8-14) —они представляют со­
бой стандартные выражения для косинусоидального и синусоидального сигналов
в комплексной записи и часто встречаются в литературе по квадратурным систе­
мам связи. Чтобы ваша голова не закружилась, подобно этим комплексным фазорам, осознайте, пожалуйста, что единственной целью рисунков 8.5 — 8.8 является
обоснование комплексных выражений для синусоидального и косинусоидального
сигналов, приведенных в (8-13) и (8-14). Эти два уравнения вместе с уравнения­
ми (8-7) и ( 8 -8 ) представляют собой Розеттский камень квадратурной обработки
сигналов1. Теперь мы можем легко переводить синусоиды в комплексные экспо­
ненты и наоборот.
Теперь отступим немного назад и напомним себе, что же мы делаем. Мы изуча­
ем, как действительные сигналы, которые можно передавать по коаксиальному ка­
белю, оцифровывать и сохранять в памяти компьютера, могут быть представлены
комплексными числами. Да, каждая из составных частей комплексного числа дей­
ствительна, но мы рассматриваем эти части особым образом —как квадратуры.
8.4. Несколько мыслей по поводу
отрицательной частоты
Для нас важно освоиться с понятием отрицательной частоты, т. к. оно сущест­
венно для понимания эффектов размножения спектра при периодической диск­
ретизации, дискретного преобразования Фурье и различных методов обработки
1 Розеттский камень представляет собой древнюю базальтовую плиту, найденную в
Египте в 1799 году. На ней сохранился один и тот же текст, написанный на трех языках,
два из которых —греческий и египетские иероглифы. Это позволило ученым расшиф­
ровать наконец древние иероглифы.
346
Гпава 8. Квадратурные сигналы
квадратурных сигналов, обсуждаемых в главе 9. Соглашение об отрицательной
частоте служит как состоятельный и мощный инструмент в анализе сигналов. Испо­
льзование отрицательной частоты становится обязательным, когда мы представляем
действительные сигналы, такие как косинусы и синусы, в комплексной записи.
Трудности понимания идеи отрицательной частоты для некоторых, наверное,
сродни тому оцепенению, которое ощущалось в кабинетах средневековых мате­
матиков, когда они впервые столкнулись с отрицательными числами. Вплоть до
тринадцатого века отрицательные числа рассматривались как фиктивные, пото­
му что числа обычно использовались для счета и измерения. Соответственно, до
того времени отрицательные числа просто не имели смысла. В те времена допус­
тимо было спросить: «Как вы можете держать в руке нечто, которое меньше, чем
ничто?» Идея вычитания шести из четырех должна была казаться бессмыслен­
ной. Историки математики предполагают, что отрицательные числа впервые
были введены в оборот в Италии. Как свидетельствует история, около 1200 года
итальянский математик Леонардо Пизанский (более известный как Фибоначчи)
работал над некой финансовой проблемой, единственное допустимое решение
которой включало отрицательные числа. Отважный Лео писал: «В отношении
этой проблемы я показал, что она неразрешима, если только не допустить, что
первый человек имел долг.»
Так отрицательные числа появились на математическом горизонте и никогда
больше с него не уходили.
Современные мужчины и женщины теперь могут понять, что с отрицательны­
ми числами связано направление. Направление назад от нуля в том смысле, что
положительные числа показывают направление вперед от нуля. Например, отри­
цательные числа могут представлять температуру, измеряемую в градусах ниже
нуля, время в минутах до текущего момента, если текущий момент принят за 0 ,
или сумму денег, которую мы должны сборщику налогов, когда наш доход пред­
ставляется положительной суммой. Таким образом, понятие отрицательного чис­
ла вполне состоятельно, если мы определяем его соответствующим образом. Как
бы ни были для нас привычны отрицательные числа, отрицательная частота
остается трудным и сомнительным понятием для многих инженеров [3, 4]. Ав­
тор однажды встретил статью в техническом журнале, которая утверждала: «т. к.
отрицательные частоты не могут существовать...» Ладно, как и отрицательные
числа, отрицательная частота представляет собой вполне состоятельное понятие,
если мы правильно определяем ее по отношению к тому, что мы называем поло­
жительной частотой. Запомнив это, мы назовем сигнал е12лМ на рисунке 8.5 комп­
лексной экспонентой положительной частоты, потому что он вращается вокруг
начала координат по кругу в положительном направлении с частотой / 0 оборотов
в секунду. Аналогично, сигнал е Ч2^ !^ будем называть комплексной экспонентой
отрицательной частоты из-за отрицательного направления его вращения.
Таким образом; мы определили отрицательную частоту в частотной области.
Если мои коллеги по ЦОС хотят заявить, что отрицательная частота не существует
во временной области, я не буду спорить. Однако наше определение отрицательной
частоты в частотной области является однозначным, совместимым с действитель­
ными сигналами, очень Полезным, и мы будем его придерживаться.
347
8.5. Квадратурные сигналы в частотной области
8.5. Квадратурные сигналы в частотной
области
Теперь, когда нам известно достаточно о временной природе квадратурных сиг­
налов, мы готовы взглянуть на их описание в частотной области. Будем использо­
вать полное трехмерное изображение частотной области, так что ни одно из фазо­
вых соотношений не останется невидимым. Рисунок 8.9 подсказывает нам прави­
ла представления комплексных экспонент в частотной области.
Рис. 8.9.
Отрицательная
частота
Положительная
частота
Направление вдоль
мнимой оси
Модуль равен 1/2
\
Интерпретация комплексных экспонент в частотной области
Мы будем представлять одну экспоненту как узкий импульс, расположенный
на частоте экспоненты. Кроме того, мы будем изображать фазовые соотношения
между комплексными экспонентами на действительной и мнимой осях в частот­
ной области. Чтобы показать эти фазовые соотношения, необходимо комплекс­
ное представление в частотной области. Приняв во внимание все это, посмотрим
на рисунок 8 . 10 .
С0Э(2 я / ^ ) :
ґ
к
Мнимая
Действительная
Частота
дМнимая
Действительная
Мнимая
Действительная 8іп(2я/го0 :
е-у2я^
еу2яу
У о— - У—=—
(Ь)
Время
Частота
віп(2я П )
Рис. 8.10. Комплексное представление во временной и частотной областях: (а) ко­
синусоидального колебания; (Ь) синусоидального колебания
Посмотрите, как действительные косинусоидальный и синусоидальный сиг­
налы изображены в нашем комплексном представлении частотной области в пра­
вой части рисунка-8.10. Толстые стрелки справа на рисунке 8.10 не являются
вращающимися фазорами, а представляют собой символы импульсов в частот­
ной области, изображающие отдельные спектральные линии, соответствующие
348
Гпава 8. Квадратурные сигналы
отдельным комплексным экспонентам, таким как
Направления, в которых
показывают эти спектральные импульсы, определяют относительные фазы спек­
тральных компонентов. Амплитуды этих спектральных импульсов равны 1/2.
Обратите внимание на то, каким образом спектр соб(2л/0£) оказывается чисто
действительным. Это происходит потому, что соз(2л/0£) является четной функ­
цией времени, его значение при отрицательных значениях времени Ьравно зна­
чению при положительных и или
со$[2л{0( - 0 ] = со8( 2 л /0£)
(8-15)
Функция ъ т ( 2 л / 0£), с другой стороны, имеет чисто мнимый спектр, потому что
она является нечетной. Значение нечетной функции при отрицательном значе­
нии времени £ равно ее значению при положительном £, взятому с обратным зна­
ком, или
(8-16)
БІп[2 л /о( - 0 ] = -віп (2ж/0ґ)
Почему мы так много внимания уделяем этому 3-мерному представлению час­
тотной области? Потому что оно представляет собой инструмент, который мы бу­
дем использовать для того, чтобы понять принципы генерации (модуляции) и
детектирования (демодуляции) квадратурных сигналов в цифровых (и некоторых
аналоговых) системах связи, а это одна из целей данной главы. Прежде чем перейти
к ней, проверим приведенное частотное представление на небольшом примере.
Рисунок 8.11 представляет собой непосредственный пример того, как мы ис­
пользуем комплексную частотную область. Мы начинаем с действительного сину­
соидального сигнала, умножаем его н а / а затем прибавляем его к действительному
косинусоидальному сигналу той же частоты. В результате получаем одну комп­
лексную экспоненту
что графически иллюстрирует тождество Эйлера, ко­
торое мы вывели аналитически в (8-7).
Мнимая
Действительная
Мнимая
умножить
на і
Действительная
Частота
Частота
Мнимая
, Мнимая
Действительная
Действительная
1
Ж Частота
соэ(2л(і)
е
= са&(2пЦ) + узіп(2я^0
Рис. 8 .1 1 . Изображение тождества Эйлера е ^ ^ о * = сов(27г^о0 + /з1п(2л:^£) в комп­
лексной частотной области
8.6. Полосовые квадратурные сигналы в частотной области
349
На частотной оси отрицательные частоты проявляются как спектральные им­
пульсы, расположенные в точках - 2 n f0 радиан/с. Этот рисунок показывает, какую
цену мы платим: когда мы используем комплексную запись, общие комплексные
экспоненты ei271?1 и е ~i2:rcft представляют собой фундаментальные составляющие
действительных синусоид sin(2я/£) или cos(2jt/£). Э т о объясняется тем, что как
sin(2jr/£), так и cos(2nft) образуются из компонентов e ß rf1и е -fa ft. Если бы потре­
бовалось вычислить дискретное преобразование Фурье от набора дискретных во
времени отсчетов синусоидального сигнала sin(2nf0t), косинусоидального сигна­
ла cos(2nf0t) или комплексной синусоиды efirfo1и построить графики комплекс­
ных результатов, вы получили бы в точности такие же узкие импульсы в частотной
области, какие изображены на рисунке 8 .1 1 .
Если вы поняли обозначения и операции, изображенные на рисунке 8.11, по­
хвалите себя —вы знаете уже довольно много о природе и математическом описа­
нии квадратурных сигналов.
8.6. Полосовые квадратурные сигналы
в частотной области
В квадратурной обработке принято называть действительную часть спектра
синфазной составляющей, а мнимую часть спектра — квадратурной составляю­
щей. Сигналы, комплексные спектры которых приведены на рисунках 8-12 (а),
(Ь) и (с) действительны, и во временной области они могут быть представлены
как комплексные значения, действительная часть которых отлична от 0 , а мнимая
тождественно равна 0. Никто не заставляет нас использовать комплексное пред­
ставление для таких сигналов во временной области —эти сигналы просто дейст­
вительные.
Действительные сигналы всегда содержат спектральные компоненты с поло­
жительными и отрицательными частотами. Для любого действительного сигнала
компоненты с положительными и отрицательными частотами его синфазной
(действительной) составляющей всегда обладают четной симметрией относите­
льно нулевой частоты. Это значит, что компоненты синфазной части с положите­
льной и с отрицательной частотой представляют собой зеркальное отражение
друг друга. Компоненты же квадратурной (мнимой) составляющей с положите­
льной и с отрицательной частотой всегда имеют противоположные знаки. Это
значит, что фазовый угол любого данного квадратурного компонента с положите­
льной частотой равен фазовому углу соответствующего квадратурного компонента
с отрицательной частотой, взятому с противоположным знаком, как показано
тонкими сплошными стрелками на рисунке 8 .12 (а). Эта сопряженная симметрия
является неотъемлемым свойством действительных сигналов и становится оче­
видной, когда их спектр представляется в комплексной записи.
Комплекснозначный сигнал, спектр которого может иметь вид, показанный на
рисунке 8.12 (d), не обязательно должен обладать описанной сопряженной симмет­
рией. Мы будем называть такой комплексный сигнал аналитическим сигналом, пока­
зывая, что он не содержит спектральных компонентов с отрицательными частотами.
350
Гпава 8. Квадратурные сигналы
------
Комплексная экспонента
------ Синфазная (действительная) часть
------
Квадратурная (мнимая) часть
Квадратурная составляющая
Квадратурная составляющая
Синфазная составляющая
Частота
Рис. 8.12. Квадратурное представление сигналов: (а) действительной синусоиды
соэ(2я/0£ + ф)\ (Ь) действительного полосового сигнала, содержащего
шесть синусоид в полосе В Гц; (с) действительного полосового сигнала,
содержащего бесконечное количество синусоид в полосе В Гц; (с!) комп­
лексного полосового сигнала в полосе В Гц
Напомним себе еще раз: жирные стрелки на рисунках 8.12 (а) и (Ь) не являются
вращающимися фазорами. Они представляют собой импульсы в частотной области,
изображающие отдельные комплексные экспоненты еІ2лІЇ. Направления, указыва­
емые стрелками, показывают относительные фазы спектральных компонентов.
Существует один важный принцип, о котором следует помнить, чтобы двигать­
ся дальше. Умножение сигнала на комплексную экспоненту е)2^ о г , которое мы
называем квадратурным смешиванием (его также называют комплексным смеши­
ванием), сдвигает спектр сигнала вверх по частоте на / 0 Гц, как показано на рисун­
ках 8.13 (а) и (Ь). Аналогично, умножение сигнала на е~І2лІ<ї (которое также
называют комплексным понижающим преобразованием или переносом в основную
полосу) сдвигает спектр сигнала вниз так, что центральная частота становится рав­
ной 0 Гц, как показано на рисунке 8.13 (с). Процесс квадратурного смешивания ис­
пользуется во многих применениях ЦОС и в самых современных системах связи.
Все наши рассуждения о квадратурных сигналах до сих пор относились к непре­
рывным сигналам, но описанные принципы в равной мере применимы и к дискрет­
ным сигналам. Рассмотрим влияние комплексного понижающего преобразования
на спектр дискретного сигнала.
351
8.7. Комплексное понижающее преобразование
Рис. 8.13. Квадратурное смешивание полосовых сигналов: (а) спектр комплексно­
го сигнала х(0; (Ь) спектр х(і)е^2л^ \ (с) спектрх(і)е _У2я/о?
8.7. Комплексное понижающее
преобразование
Комплексное понижающее преобразование дискретного сигнала представляет
собой простой процесс, и описывать его лучше всего на примере. Рассмотрим дейст­
вительную дискретную последовательность х(п), имеющую модуль спектра \Х(т) |,
ненулевые отсчеты которого показаны как черные точки на рисунке 8.14 (а).
-■—•
1
><
(а)
• -------г -
2
1
/ Л
О с о — ю сю оохоззооэ.......... с в о — -о с о — —озо- ■ | • -с а х о э з а х о вх » — о
-у 4
Гс
0
ЦА
Ц2
Частота
\х т
гл
(Ь)
■V4
у
••••
»,
"-о-ф-о- —-Частота
О
Л
Л
V4
+Частота
Рис. 8.14. Дискретный спектр Х(т) действительной последовательности: (а) тра­
диционное изображение; (Ь) изображение циклической частотной оси
352
Гпава 8. Квадратурные сигналы
Вследствие периодичности спектра дискретного сигнала, которую мы обсуж­
дали в разделах 2.1 и 3.17 (а также вследствие того, что частотная ось БП Ф лежит
на единичной окружности в 2-плоскости, о чем шла речь в разделе 6.3), мы можем
изобразить спектр \Х(тп) | в виде трехмерного циклического графика, приведенного
на рисунке 8.14 (Ь). На этом рисунке мы свернули линейную ось частот, изобра­
женную на рисунке 8.14 (а), в окружность, длина которой равна частоте дискрети­
зации / 3 , таким образом, что частотам / 5 /2 и - / 5 /2 соответствует одна и та же
точка на циклической оси.
Цп)
х(л)
х(п)
*(” ),
- х(п) = і(п) + ід(п)
сое (2лЛлМ
д(о) _
(а)
>-РкГЛ
-віпі'гя/'пу
✓
2
1
(Ь)
Ч
✓ ч
О ООЗЗСШЭ........ С О " О О О --------- соэ— |— соззоззсххохо— с ю — -ооэззо
■4Л
< /4
О
П4
П2
Частота
*
^
2
^ -о -о -о ю -о -о -с н э -о
••
(с)
'
0-0 о -
-Частота
_
-0-0-0 о о
+Частота
Рис. 8.15. Дискретный спектр |Хс( т ) | временной последовательности, подверг­
нутой понижающему преобразованию: (а) условные обозначения пони­
жающего преобразования; (Ь) традиционное изображение частотной
оси; (с) циклическое изображение частотной оси
Если х(п) — действительная последовательность, содержащая N отсчетов, ее амп­
литудный спектр \Х(т)\ симметричен относительно нулевой частоты. Если мы теперь
выполним комплексное понижающее преобразование (умножив х(п) на еЧ2л/с где
353
8.7. Комплексное понижающее преобразование
£5= 1/ / 5, используя любую из эквивалентных схем, показанных на рисунке 8.15 (а)), ре­
зультатом будет комплексная последовательность лгс(я) = і(п) +jq(n), спектр которой
показан на рисунке 8.15 (Ь). Знак минус в экспоненте
приводит к сдвигу
спектра |Х (т) | н а /с Гц в направлении отрицательных частот. Конечно, т. к. последо­
вательность х с(п) комплексная, \Хс(т)\ не обладает симметрией относительно ну­
левой частоты. Циклическое изображение \Хс(т) \ приведено на рисунке 8.15 (с).
Говорят, что составляющие і(п) и д(и) последовательности х с(п) ортогональны, и
это значит, что они независимы и не влияют друг на друга, при этом выполняется
следующее условие:
N-1
2 К п )д (п )-0 .
(8-17)
п-0
Рисунки 8.14 и 8.15 приведены,чтобы показать, как перенос по частоте с помо­
щью комплексного понижающего преобразования приводит к завороту спектра­
льных компонентов вокруг точки /5/2.
Рисунок 8.15 (а) демонстрирует метод понижающего преобразования действи­
тельной временной последовательности х(п). Для полноты рисунок 8.16 показыва­
ет, что для переноса комплексной временной последовательности хс(п) = і(п)+
7<7(п) вверх или вниз по частоте н а /с Гц требуется комплексный умножитель.
Этот комплексный умножитель вычисляет
і \гі) +7# '(п) = х с(п)е ± Ы с
(8-18)
= [і(п) + Ж и )][с 08( 2 я / Сп£5) ± ^ т ( 2 я /сШ$)\
Если вы используете этот умножитель, не забывайте о знаке минус в верхнем
сумматоре на рисунке 8.16. (Эту ошибку легко допустить. Поверьте мне.)
сое (
2
7
э т (2л//??,.) < — повышающее преобразование
-& \п (2 п ^ а) <—
понижающее преобразование
Рис. 8.16. Комплексный умножитель, используемый для повышающего и понижа­
ющего преобразований
354________________________________________ Гпава 8. Квадратурные сигналы
8.8. Пример комплексного понижающего
преобразования
Мы можем использовать все, что узнали до сих пор о квадратурных сигналах,
исследуя процесс квадратурной дискретизации. Квадратурая дискретизация —
это процесс оцифровки непрерывного (аналогового) полосового сигнала с одно­
временным понижающим преобразованием его спектра, в результате которого
центральная частота спектра сигнала становится равной 0 Гц. Посмотрим, как ра­
ботает этот популярный процесс, на примере непрерывного полосового сигнала,
ширина спектра которого равна В, а центр спектра находится на несущей частоте,
равной/с Гц в соответствии с рисунком 8.17 (а).
— ►
Частота
|Х(т)|
-f$
0
f
Частота (т)
Рис. 8 .1 7 . Спектр квадратурно-дискретизированного сигнала до и после преобра­
зования
Наша цель при квадратурной дискретизации состоит в том, чтобы получить
оцифрованную версию аналогового полосового сигнала, но мы хотим также, что­
бы центральная частота спектра оцифрованного сигнала была равна 0 Гц, а не
f c Гц, так, как показано на рисунке 8.17 (Ь). То есть мы хотим смешать сигнал с
е~]2щсг, чтобы выполнить комплексное понижающее преобразование. Частота
представляет собой частоту дискретизации аналого-цифрового преобразователя
в отсчетах в секунду. На рисунке 8.17 (Ь) мы показываем размноженный спектр,
чтобы напомнить себе о том, что при аналого-цифровом преобразовании имеет
место это явление.
Мы можем решить поставленную задачу с помощью схемы блока квадратурной
дискретизации (известного также как квадратурный демодулятор), приведенной
на рисунке 8.18 (а). Устройство, состоящее из двух синусоидальных генераторов,
дающих сигналы с разностью фаз 90°, часто называют квадратурным генератором.
Прежде всего, исследуем синфазную (верхнюю) часть квадратурного дискретиза­
тора. Если входной сигнал *£_(£) имеет спектр, показанный на рисунке 8.18 (Ь),
спектр выходного сигнала верхнего смесителя будет выглядеть в соответствии с
рисунком 8.18 (с).
Присутствующие на рисунке 8.18 экспоненты е~12л/с* и
с^напоминают нам
в соответствии с (8-13), что комплексные экспоненты, образующие действитель­
ный косинус, приводят к раздвоению и смещению каждой копии спектра Р ^ ( / ) |,
давая в результате спектр |Х,-(/)|. При этом происходит уменьшение модуля спект­
ра \Xjif) | в 2 раза, но сейчас нас это не волнует. На рисунке 8.18 (с1) показан спектр
выходного сигнала фильтра нижних частот (Ф Н Ч ) синфазного канала.
355
8.8. Пример комплексного понижающего преобразования
- * с(п)=і{п) + ія(п)
(а)
-яп(2яЛ0
1
1 *ь р М
(Ь)
І " —
---------------------------------*—
1—
Ч—
------------------
В —►
----------------------------- ►
(С)
1/(01
1
IV
1 чч
(<1)
------------------------------------------------------------------------ ►
-В/2
О
В/2
Частота
Рис. 8.18. Квадратурная дискретизация: (а) блок-схема; (Ь) спектр входного сиг­
нала; (с) спектр выходного сигнала синфазного смесителя; (с!) спектр
выходного сигнала синфазного фильтра
Точно так же рисунок 8.19 показывает, как мы получаем отфильтрованную не­
прерывную квадратурную составляющую (нижняя часть схемы) требуемого ком­
плексного сигнала путем смешивания хЬр(Ь) с - біп(2л/ (і ). Из (8-14) мы знаем, что
действительный -8Іп(2л/с£) образуется из двух комплексных экспонент е і2л№ и
-е~І2л№. Знак минус в члене -е~І2лУс*учитывает то, что переносимый вниз по частоте
спектр в [Х^(/)| сдвинут по фазе на 180° относительно спектра, переносимого вверх.
Это описание квадратурной дискретизации можно сделать более наглядным,
если посмотреть на него в трехмерном пространстве, как на рисунке 8.20. Здесь
множитель +7 поворачивает «чисто мнимый» (3(/) на 90°, делая его «чисто дейст­
вительным». Величина7<2(/) прибавляется затем к /(/), давая спектр комплексно­
го непрерывного сигнала х(() = і(і) +
Подавая этот сигнал на два АЦП, мы,
наконец, получаем требуемый дискретный сигнал х с(п) = і(п) + п), изображен­
ный на рисунке 8.18 (а) и имеющий спектр, показанный на рисунке 8.17 (Ь).
Такая схема квадратурной дискретизации обладает рядом достоинств, некото­
рые из которых приведены ниже:
□ каждый АЦП работает на частоте, равной половине частоты, необходи­
мой при обычной дискретизации действительных сигналов;
□ часто работа на пониженной частоте позволяет снизить потребляемую
мощность;
□ при заданной частоте дискретизации / 5 мы можем обрабатывать более
широкополосные сигналы;
356
Гпава 8. Квадратурные сигналы
□
□
□
квадратурные последовательности делают использование БП Ф более
эффективным благодаря охвату более широкого диапазона частот;
квадратурная дискретизация облегчает измерение мгновенных ампли­
туд и фаз сигнала в процессе демодуляции;
зная мгновенные фазы сигналов, мы можем выполнять когерентную
обработку.
С
0
/
'с
Частота
Спектральные компоненты
Рис. 8.19. Спектры сигналов в квадратурном (нижнем) канале блок-схемы
В то время как квадратурный дискретизатор, изображенный на рисунке 8.18 (а),
выполняет комплексное понижающее преобразование, легко реализовать комп­
лексное повышающее преобразование, просто заменив последовательность хс(п)
комплексно сопряженной последовательностью, что, по существу, приводит к
зеркальному отображению спектра последовательности хс(п) относительно нуле1
вой частоты, как показано на рисунке 8.21.
8.9. Альтернативый метод понижающего
преобразования
Метод квадратурной дискретизации с использованием комплексного понижа­
ющего преобразования, изображенный на рисунке 8.18 (а) хорошо работает на бу­
маге, но на практике на высоких частотах и для широкополосных сигналов трудно
выдержать точную разность фаз в 90°. Обычно ошибка составляет один или два
градуса. В идеале нам нужны точно согласованные по фазовым характеристикам
коаксиальные кабели, два генератора, сигналы которых разнесены по фазе точно
на 90°, два идеальных смесителя с идентичными характеристиками и полным от­
сутствием постоянной составляющей на выходе, два аналоговых фильтра нижних
частот с идентичными амплитудно-частотными и фазо-частотными характери­
стиками и два АЦП с идентичными характеристиками. (Как это ни грустно, но та­
ких электронных компонентов у нас нет.) К счастью, существует более простой
для реализации метод квадратурной дискретизации [5].
357
8.9. Альтернативый метод понижающего преобразования
Мнимая
, ось 0)
Действительная
V ось
Мнимая
0015 0) Действительная
ось
Частота
Мнимая
і і
О СЬ
(І)
д
е й с т в и т е л ь н а я
__ось
Частота
Мнимая
ось 0) Действительная
Частота
Частота
Рис. 8.20. Трехмерное изображение процесса объединения спектров /(0 и 0 (0 в
спектр /(0 +у’О(0
Цп)
--------------1
'------------------------------- 1
-1
<7(п)
А
и
Г
Кп)ЧФ)
l(n) +jq(n)
-Б/2
о
частота
-Б/2
о
Частота
Рис. 8.21. Использование операции комплексного сопряжения для управления
ориентацией спектра
Рассмотрим процесс, изображенный на рисунке 8.22, где аналоговый сигнал
х ьр(І) сначала оцифровывается, а затем подвергается смешиванию и фильтрации,
которые выполняются уже в цифровой форме. Такая квадратурная дискретиза­
ция с применением цифрового смесителя полностью устраняет проблемы, связан­
ные с реализацией метода квадратурной дискретизации, изображенного на
рисунке 8.18 (а) и избавляет нас от одного из АЦП.
358
Гпава 8. Квадратурные сигналы
хс(п) =/(Я) +М л )
-зіп(2ял/4)
Рис. 8.22. Квадратурная дискретизация с цифровым смешиванием
1*ьр(01<
1
|\
1
'
(а)
1'Н
-и
(Ь)
1
в
->
<
И
с
Частота
и
\Х(т)\к
1
’' "
,Чч
: 'Г'1
-4ГгС
-ЗіС
-2ГС
-ГСг
С
і
ГС = Л/4
й
2ЛС
ГСг =в /74
2ЛС
—».
ЗЛс
і
^
^Частота
с
Щт)\к
(с)
о
К>
(с!)
-ЗЛ
-2Л
<
о
4fc Частота
|/(т)| а
-Г
Рис. 8.23. Спектры при квадратурной дискретизации с цифровым смешиванием в
синфазном (верхнем) канале
На рисунке 8.23 показаны спектры в синфазном канале квадратурного дискре­
тизатора с цифровым смесителем. Обратите внимание на подобие аналогового
|/(/) | на рисунке 8.18 (с!) и дискретного |/(т )| на рисунке 8.23 (с1). Приятной особен­
ностью этого процесса является то, что п р и /с =/5/4 выходы генераторов косинуса и
синуса представляют собой последовательности из четырех значений соб(лп/ 2) =
1,0, - 1 ,0 и -бш (лп /2 ) = 0 ,-1 , 0, 1, которые периодически повторяются. (Подроб­
ности об этих особых опорных последовательностях см. в разделе 13.1.) Для пере­
носа спектра на нулевую частоту в действительности никакой смеситель (или
умножитель) не нужен! После низкочастотной фильтрации последовательности
г(и) и q{ri) обычно прореживаются в два раза, чтобы уменьшить поток данных для
последующей обработки. (Тема прореживания рассматривается в разделе 10.1.)
При всех присущих ему преимуществах вы должны были обратить внимание
на один недостаток этого метода квадратурной дискретизации с цифровым сме­
шиванием: частота дискретизации / 5 должна быть ровно в четыре раза больше
центральной частоты сигнала/с. На практике значение 4 /с может оказаться обес­
кураживающе большим. К счастью, мы можем воспользоваться особенностями
полосовай дискретизации для снижения частоты дискретизации. Вот вам при­
мер: рассмотрим действительный аналоговый сигнал, центральная частота кото­
рого составляет 50 МГц, показанный на рисунке 8.24 (а). Вместо того чтобы
359
Библиография
дискретизировать этот сигнал с частотой 200 МГц, мы используем полосовую ди­
скретизацию и в соответствии с (2-13) при т0^ = 5 установим частоту дискретиза­
ции, равную 40 МГц. Это приводит к тому, что одна из копий спектра дискретного
сигнала |Х (т) | переносится на частоту/ 5 /4 , как показано на рисунке 8.24 (Ь), чего
мы и добивались. Выходной сигнал АЦП х(п ) теперь готов для комплексного по­
нижающего преобразования ш f s /4 (10 МГц) и цифровой фильтрации.
(а)
50
-50
(Ь)
-50
|Х (/77)|
А
-10
0
Частота
(МГц)
f = 40 Mhz
10
т
А
50
Частота
(МГц)
Рис. 8 .2 4 . Эффекты полосовой дискретизации, используемые для понижения час­
тоты дискретизации при квадратурной дискретизации с цифровым сме­
шиванием: (а) спектр входного аналогового сигнала; (Ь) спектр на
выходе АЦП
В разделе 13.1 описан остроумный прием снижения вычислительной сложности
фильтров нижних частот, использованных на рисунке 8 .22 , когда этот метод понижа­
ющего преобразования на / 5 /4 используется вместе с прореживанием в два раза.
Библиография
1 .- Struik, D. A Concise History o f Mathematics, Dover Publications, New York, 1967
(неоднократно издавались русские переводы, например: Стройк Д. Я. Крат­
кий очерк истории математики. М. Наука, 1990, 256 с.).
2 . Bergamini, D. Mathematics, Life Science Library, Time Inc., New York, 1963.
3.
Lewis.L. J., et al. Linear Systems Analysis, McGraw-Hill Inc., New York, 1969, p. 193.
4.
Schwartz, M. Information, Transmission, Modulation, and Noise, McGraw-Hill
Inc., New York, 1970, p. 35.
5.
Considine, V. «Digital Complex Sampling», Electronics Letters, 19, August 4,1983.
Для заметок
Гпава 9
Дискретное
преобразование
Гильберта
к
--- ч*
V
Дискретное преобразование Гильберта представляет собой процедуру, использу­
емую для генерации комплексных сигналов из действительных сигналов. Использо­
вание комплексных сигналов вместо действительных упрощает многие операции
обработки сигналов и повышает их эффективность. Если вы читали о дискретном
преобразовании Гильберта в книгах по ЦОС, вы, вероятно, с трудом продирались
сквозь математические описания аналитических функций с ограничениями на их
2 -преобразования в областях сходимости и, возможно, встречали интегральную
теорему Коши, используемую в определении преобразования Гильберта1. В дей­
ствительности дискретное преобразование Гильберта не так сложно, как кажется
в первый раз, и в этой главе делается попытка подтвердить данное заявление.
Здесь мы вводим преобразование Гильберта с практической точки зрения, объ­
ясняем математические основы его описания и показываем, как оно используется в
системах ЦОС. В дополнение к изложению некоторых аналитических выкладок,
отсутствующих в ряде учебников, мы покажем характеристики преобразования во
временной и частотной областях с упором на физический смысл квадратурных
(комплексных) сигналов, связанных с применениями преобразования Гильберта.
В конце приводятся примеры проектирования нерекурсивного преобразователя
Гильберта и примеры генерации комплексных, так называемых аналитических,
сигналов. (Если вы не слишком сведущи в описании и поведении комплексных
сигналов, здесь было бы полезно просмотреть главу 8 .)
Преобразование Гильберта названо в честь великого немецкого математика Давида
Гильберта (1862-1943). На его могиле в Геттингене, Германия, написано «Wir müssen
wissen, wir werden wissen.» (Нам необходимо знать, мы будем знать.)
362
Гпава 9. Дискретное преобразование Гильберта
9.1. Определение преобразования
Гильберта
Как показано на рисунке 9.1, преобразование Гильберта (ПГ) —это математи­
ческая процедура, выполняемая над действительным сигналом xv(t) и дающая но­
вый действительный сигнал •%(£)•
При этом наша цель состоит в том, чтобы x^t(t) представлял собой сдвинутую
по фазе на 90° версию сигнала ,гг(£). Итак, прежде чем двигаться дальше, убедимся
в том, что мы понимаем обозначения, использованные на рисунке 9.1. Перемен­
ные определены следующим образом:
□
x v(t) = действительный непрерывный входной сигнал во временной
области;
□
h (t) = импульсная характеристика преобразователя Гильберта;
□
Xflt(t)= ПГ x T(t), (Xfait) — тоже действительный сигнал во временной
области);
□
Х т(со) = преобразование Фурье действительного входного сигнала xT(t)',
□
Щсо) = частотная характеристика (комплексная) преобразователя Гиль­
берта;
□
Xfa(a)) = преобразование Фурье выходного сигнала x^t(t);
□
со = непрерывная частота в радианах в секунду;
□
t = непрерывное время в секундах.
Мы покажем, что x^t(t) = h(t) *xT(t), где символ * обозначает свертку. Кроме
того, мы можем определить спектр Xfait) как Xfo(a>) = Щсо)Хт(со). (Конечно, эти
соотношения делают ПГ похожим на фильтр, не так ли? Мы поразмышляем об
этом позже в данной главе.)
Самое короткое описание того, чем отличается новый сигнал x^t(t), ПГ сигнала
x v(t), от исходного сигнала хг(£), можно получить, связав преобразования Фурье
этих сигналов Х т(со) и X ht((x>). Выражая это описание словами, мы можем сказать,
что все компоненты Xfoff) с положительными частотами равны компонентам хг(£)
с положительными частотами, сдвинутым по фазе на -90°. А все компоненты
Xfa(t) с отрицательными частотами равны компонентам x r(t) с отрицательными
частотами, сдвинутым по фазе на +90°. Напомним:
X ht((o) = Щ ш)Хг((о) ,
( 9 - 1)
где Н((о) = - j для положительных частот и Н(ш) =j для отрицательных частот.
Отличная от 0 мнимая часть Н(со) показана на рисунке 9.2 (а).
Чтобы полностью описать комплексную H(co), на рисунке 9.2 (Ь) мы представ­
ляем ее плавающей в трехмерном пространстве. Толстая линия изображает рас­
сматриваемую комплексную Щсо). В правой части расположена вертикальная
плоскость, на которую мы можем проецировать мнимую часть Щсо).
363
9.1. Определение преобразования Гильберта
Рис. 9 .1 .
*г(0
Преобразование Гильберта
ХДсо)
/7(0, Н(со)
Обозначение, используемое для определения непрерывного преобра­
зования Гильберта
М ним ая
Н(со)
М н и м а я ч а с т ь Н(<о)
Дось
М н и м а я ч а с ть Н (ю )
2І
к
11
+1
о-!
■1 1
-2 1
О
Ч астота
-Ч а с т о т а
-1
-Г ^ Г »
Д ейств ител ьн ая
ч а с т ь Н(со)
(а)
Рис. 9 .2 .
Комплексная частотная характеристика Н(а>)
В нижней части рисунка 9.2 (Ь) показана горизонтальная плоскость, на которую
мы можем проецировать действительную часть Н(а>). В терминах декартовых ко­
ординат мы говорим, что Н(а>) = 0 +]1 для отрицательных частот и Н(си) = 0 -]1 для
положительных частот. (Мы вводим трехмерные оси на рисунке 9.2 (Ь) потому,
что позже мы будем использовать их для рассмотрения других комплексных фун­
кций в частотной области.)
Чтобы привести простой пример ПГ и укрепить нашу графическую точку зре­
ния, мы показываем на рисунке 9.3 (а) трехмерные представления действитель­
ного косицусоидального сигнала соз(а>ґ) во временной и частотной областях.
Рисунок 9.3 (Ь) показывает, что ПГ со8(о>£) дает синусоидальный сигнал 8Іп(соґ).
Мнимая
ось
Мнимая
Действительная
ось
Действительная
ось
(а)
Действительная
косинусоида
Время
Мнимая
ось
Мнимая
Действительная
ось
(Ь)
Действительная
синусоида
Рис. 9.3.
Частота
Время
Действительная
ось
Частота
Преобразование Гильберта: (а) со8(й>0; (Ь) его преобразование віп(а>і)
364
Гпава 9. Дискретное преобразование Гильберта
Комплексный спектр в правой части рисунка 9.3 (Ь) демонстрирует, как ПГ
поворачивает компонент косинусоидального сигнала с положительной частотой
на -j, а его компонент с отрицательной частотой - на +j. Вы можете убедиться в
том, что по нашему определению операция умножения на +j есть просто поворот
спектрального компонента на +90° против часовой стрелки вокруг частотной оси.
(Длина вектора спектрального компонента равна половине амплитуды исходного
косинусоидального сигнала.) Мы предполагаем, что синусоиды в правой части
рисунка 9.3 существуют для всех значений времени, и это позволяет нам изобра­
жать их спектр в виде бесконечно узких импульсов в частотной области.
Теперь, когда мы определили частотную характеристику ПГ, новичок имеет
полное право спросить: «Зачем кому-то понадобилась такая частотная характери­
стика, как эта причудливая H(cd) на рисунке 9.2 (Ь)?»
9.2. Почему нас так занимает
преобразование Гильберта?
Ответ: нам необходимо понимать ПГ потому, что оно оказывается полезным во
множестве приложений обработки комплексных (квадратурных) сигналов. Даже
простой поиск в Интернете выявляет методы обработки сигналов, связанные с
ПГ, применяющиеся в следующих областях:
□
□
квадратурная модуляция и демодуляция (связь);
автоматическая регулировка усиления (АРУ);
□
анализ двух- и трехмерных комплексных сигналов;
□
построение изображений в медицине, анализ сейсмических данных и
океанических волн;
□
оценка мгновенной частоты;
□
обработка сигналов в радарах/сонарах и анализ сигналов во временной
области с использованием вейвлетов;
□
измерение задержки приема сигналов;
□
приемники телевидения высокой четкости (HDTV);
□
акустические системы, комнатная акустика и анализ механических виб­
раций;
□
сжатие аудиосигналов и цветных изображений;
□
анализ нелинейных и нестационарных систем.
Во всех этих приложениях ПГ используется либо для генерации, либо для из­
мерения комплексных сигналов во временной области, и именно здесь проявля­
ется сила ПГ. ПГ дает нам в буквальном смысле другое измерение возможностей
обработки сигналов, т. к. мы переходим от двухмерных действительных сигналов
к трехмерным комплексным сигналам. Уясним, как это делается.
365
9.2. Почему нас так занимает преобразование Гильберта?
Рассмотрим несколько математических определений. Если мы имеем действи­
тельный сигнал хг(0> мы можем связать с ним некоторый комплексный сигнал
хс(£), определяемый как
х с( 0 = х г( 0 + Д ( 0
(9-2)
.
Комплексный сигнал хс(Ь) известен как аналитический сигнал (потому что он
не содержит спектральных компонентов с отрицательными частотами), а его дей­
ствительная часть равна исходному действительному сигналу х г(£). Ключевым
моментом здесь является то, что мнимая часть х^£) сигнала х с(^) есть ПГ исходно­
го сигнала хг(0 , как показано на рисунке 9.4.
*г(0
хМ)
П ре о б р азо в ате л ь
Г и л ьберта Л (/)
Рис. 9 .4 .
- хси) =хг(0 +ух,(0
-► х,(0
Функциональное соотношение между х с(Г) и х г(Г)
Как мы вскоре увидим, во многих практических ситуациях работа с х с(() ока­
зывается более простой и понятной, чем работа с исходным сигналом х Г( ^ .
Прежде чем мы увидим, почему это так, продолжим исследование х с(() и попы­
таемся придать ему некоторый физический смысл. Рассмотрим действитель­
ный сигнал х г(() = сое(<уо0 , точнее четыре его периода, и его ПГ хг(£),
представляющее собой синусоидальный сигнал, изображенные на рисунке 9.5.
Аналитический сигнал х с(Ь) изображен толстой спиралью, ориентированной в
соответствии с правилом буравчика.
Мы можем описать хс(£) как комплексную экспоненту, используя одно из
тождеств Эйлера:
х с{1:) = л:г( 0 + / г 2-(£) = С08(а>0 £) + 7зт(со0 £) = е^°о1.
(9-3)
Спектры этих сигналов показаны на рисунке 9.6. Обратите внимание на три
особенности рисунка 9.6. Во-первых, в соответствии с (9-3), если мы повернем
Х^ш ) на +90° против часовой стрелки (+7 ) и прибавим результат к Х Т(со), мы по­
лучим Х с(со) = Х г(со)+]Х^(о). Во-вторых, заметьте, что модуль Хс(а>) равен удво­
енному модулю компонентов Хг(а>). В-третьих, обратите внимание на то, что
Х с(со) равен нулю на всех отрицательных частотах. Именно благодаря тому, что от­
сутствуют спектральные компоненты с отрицательными частотами, х с(€) назван
аналитическим сигналом. Некоторые называют Х с(а)) односторонним спектром.
Чтобы разобраться в физическом смысле приведенных выкладок, вспомним,
что сигнал хс(£) — не просто математическая абстракция. Мы можем генериро­
вать х с( 1 ) в нашей лаборатории и передавать его по кабелям в другую лаборато­
рию. (Эта идея описана в разделе 8.3.)
Для иллюстрации полезности понятия аналитического сигнала х с(£), посмот­
рим, как аналитический сигнал помогает при измерении мгновенных параметров
некоторого сигнала во временной области, таких как амплитуда, фаза или частота
в некоторый заданный момент времени. Идея измерения мгновенных значений
кажется не такой значительной, когда мы имеем ввиду описание, скажем, чистой
366
Глава 9. Дискретное преобразование Гильберта
синусоиды. Но когда мы говорим о более сложных сигналах, таких как модулиро­
ванный синусоидальный сигнал, измерение мгновенных значений может быть
очень важным. Если действительный сигнал .гг(£) промодулирован по амплитуде,
так что в его огибающей содержится какая-то информация, то с помощью анали­
тической версии сигнала мы можем измерять мгновенные значения огибающей
£(£), используя соотношение:
£(0- |*с(01- Удгг(еЯ+дг,.<г)2-
(9-4)
Огибающая сигнала совпадает с модулем хс(Ь). На рисунке 9.7 (а) мы приво­
дим простой пример демодуляции АМ сигнала, где синусоидальный сигнал моду­
лирован по амплитуде низкочастотной синусоидой (штриховая кривая). Для
восстановления модулирующего сигнала по традиционной схеме потребовалось
бы выпрямить модулированный сигнал хт^ ) и пропустить результат выпрямле­
ния через фильтр нижних частот. Выходной сигнал фильтра показан на рисун­
ке 9.7 (Ь) сплошной линией, которая представляет модулирующий сигнал.
Вместо этого мы можем вычислить ПГ хг(£), получив в результате хг(£), и исполь­
зовать последний для формирования аналитического сигнала хс(£) = хг(£) + ./гг(£).
Наконец, для выделения модулирующего сигнала, показанного на рисунке 9.7 (с)
толстой сплошной линией, мы вычисляем с помощью (9-4) модуль хс(£). Функ­
ция | хс(£) | значительно точнее представляет модулирующий сигнал, чем сплош­
ная линия на рисунке 9.7 (Ь).
Предположим, с другой стороны, что некоторый действительный синусоида­
льный сигнал хг(£) модулирован по фазе. Мы можем оценить мгновенную фазу
ф(Г) сигнала хс(£), используя выражение:
Рис. 9.5.
Преобразование Гильберта и аналитический сигнал для соэ(й>0?)
367
9.2. Почему нас так занимает преобразование Гильберта?
Хг(со)
Х (ю )
Мнимая
ось
О5 і
*
Мнимая
ось
Мнимая
ось
Действительная
к
^ось
-ОХ,
Г 05
ч
Действительная
’Г ось
1
0 \< » 0
''Ж
А
Частота
Рис. 9.6.
-0.5
Частота
Частота
Спектры ПГ: (а) спектр со б ((уо0 ; (Ь) спектр ПГ соэ(со0?), зт(а>о0; (с) спектр
аналитического сигнала, соответствующего соз(а>о0, еУ^Uof
Амплитудно-модулированная.
(а) і
0
0.1
и
0.15
0.25
01
Время 015
0.25
Время
5 0.8 г |xr(f)|
(Ь) і
Рис. 9.7.
0 ,6 "
Выделение огибающей: (а) входной сигнал хг(0: (Ь) результат традици­
онной фильтрации |хг(ґ)|; (с) результат выделения огибающей с помо­
щью комплексного сигнала, |хс(0 1
0 ( 0 = tan~ 1 [xi(t)/xT(t)].
(9-5)
Вычисление <p(t]) эквивалентно фазовой демодуляции сигнала x T(t). Аналогич­
но, если действительный синусоидальный несущий сигнал модулирован по час­
тоте, мы можем измерять его мгновенную частоту F(t), вычисляя мгновенную
скорость изменения мгновенной фазы xc(t) (а чаще всего реализуется именно
этот способ), используя выражение:
F(t) = d[</>(t)]/dt = d{t2Ln~1 [xi(t)/xr(t)] } /d t.
(9-6)
368
Гпава 9. Дискретное преобразование Гильберта
Вычисление Д О эквивалентно частотной демодуляции сигнала х г(Ь). Кстати,
если 0 ( 0 измеряется в радианах, то единицей измерения /г(0 в (9-6) будет радиан
в секунду. Разделив Д 0 на 2л, мы получаем частоту в Гц. (Другой метод частот­
ной демодуляции обсуждается в разделе 13.22.)
В качестве еще одного примера применения ПГ рассмотрим действительный
сигнал хг( 0 , модуль спектра которого | Хг(<у)| располагается в окрестности цент­
ральной частоты 25 кГц (рисунок 9.8 (а)). Допустим, мы хотим перенести этот
спектр на центральную частоту 20 кГц. Мы могли бы умножить хг(0 на действи­
тельную синусоиду соъ(2л5000Ь), чтобы получить действительный сигнал, спектр
которого показан на рисунке 9.8 (Ь). Проблема такого подхода состоит в том, что
для подавления высокочастотных копий спектра нам потребовался бы фильтр с
практически нереализуемой частотной характеристикой (штриховая линия).
№ )1
1------- Г
(а)
-50 КГц
50 КГц
~г—і------------1--г
(Ь )
о
-50 КГц
50 КГц
Частота
Частота
1* » 1
а
(с)
50 КГц
-50 КГц
1*ои,(СО)|
(Ч)
I
-50 КГц
I
I
I
I
Г
0
а
"1
Г
50 КГц
Частота
Частота
(е)
-50 КГц
Рис. 9 .8 .
50 КГц
Частота
Спектры, связанные с переносом сигналахг(£) по частоте
С другой стороны, если МЫ ВЫЧИСЛИМ ПГ Хг( 0 И получим Хг-(0, затем сформи­
руем из этих двух сигналов аналитический сигнал х с( 0 = хг( 0 +/хг( 0 >мы будем
иметь комплексный сигнал хс( 0 , односторонний спектр которого показан на ри­
сунке 9.8 (с). Затем мы умножим комплексный хс( 0 на комплексную экспоненту
еЧ2л500(к, получив сдвинутый по частоте комплексный сигнал хшг( 0 , спектр ко­
торого показан на рисунке 9.8 (с1). Нам остается взять действительную часть
х ои((0» чтобы получить действительный сигнал Стребуемым спектром, централь­
ная частота которого равна 20 кГц, как показано на рисунке 9.8 (е).
Теперь, когда мы убедились в полезности ПГ, определим импульсную характе­
ристику преобразователя Гильберта и используем ее для построения такого пре­
образователя.
369
9.3. Импульсная характеристика преобразователя Гильберта
9.3. Импульсная характеристика
преобразователя Гильберта
Вместо того чтобы в соответствии с традицией просто написать уравнение им­
пульсной характеристики для прибора, который выполняет ПГ, мы покажем, как
получить это выражение. Чтобы получить выражение для импульсной характе­
ристики преобразователя Гильберта, мы берем обратное преобразование Фурье
от частотной характеристики ПГ Н(со). Одна из разновидностей непрерывного
обратного преобразование Фурье произвольной функции частоты X (f) по опре­
делению имеет вид:
00
x(t) = J Х (/)е 1 2лА d f ,
—
(9*7)
00
г д е / —это частота в периодах в секунду (Герцах). В это уравнение мы внесем три
изменения. Во-первых, поскольку мы используем круговую частоту си = 2л/ради­
ан в секунду, а также потому, что d f = dw / 2 n, вместо члена d f мы подставим
do)/2jr. Во-вторых, т. к. мы знаем, что частотная характеристика дискретной сис­
темы периодична с периодом повторения, равным частоте дискретизации cus, мы
будем вычислять интеграл на интервале, равном периоду повтрения с границами
~(os/2 и +(os/2. В-третьих, мы разделим исходный интеграл на два отдельных ин­
теграла. Эти математические манипуляции приводят к следующему результату:
(os / 2
0
ojs / 2
h(t) = ( 1 / 2 л ) fH (a)) eiwt dw = ( 1 / 2 л ) JjeJ^d w + ( 1 / 2 л \ f -je iwt da> =
- V is / 2
= ( 1 / 2 л€){ [ e ^ l
- U s /2
0
0
о) /2
- [e -^ ] 5 ) = ( 1 / 2 л€) (eJO - e ~^°sl/ 2 - e ^ s t/ 2 + eJ°^) =
-u )s / 2
0
= (1/2лЬ)[2 - 2cos(a>//2)] = (1 /л ^ [ 1 - cos(g>//2)].
(9-8)
Скоро мы сможем начертить график этой импульсной характеристики, но сна­
чала нужно преодолеть одно препятствие. Подстановка t = 0 в (9-8) может вы­
звать сердечный приступ, так как мы приходим к неопределенному отношению
0/0. Здесь придется призвать на помощь чистую математику. Чтобы получить
h(0), мы просто извлекаем из памяти правило маркиза де Лопиталя, берем произ­
водные по времени от числителя и знаменателя (9-8), а затем подставляем t = 0.
Следующие выкладки подводят итог сказанному:
d/dtd /d t
1
' K tsin (a > //2 )/a r] I
-0 .
(9-9)
Таким образом, мы теперь знаем, что h(0) = 0. Найдем дискретную версию
(9-8), т. к. именно ее можно промоделировать программно и использовать в прак­
тических системах ЦОС. Мы можем перейти к цифровой системе, подставив ди­
скретную переменную nts вместо непрерывной переменной времени t в (9-8).
370
Гпава 9. Дискретное преобразование Гильберта
Используя следующие обозначения:
□ п = дискретный индекс во временной области (..., -3, - 2 , - 1 , 0 , 1 , 2 ,3 ,...),
□ f s = частота дискретизации в отсчетах в секунду,
□ ts = период времени между отсчетами в секундах (ts = 1 / f s),
□ ws —2 n fs ,
мы можем переписать (9-8) в дискретной форме:
h(n) = ( 1 /n n t s) [ 1 - cos(a>s nts / 2 ) ] .
( 9 - 10 )
Подставляя 2 n f$ вместо ws и 1 /fs вместо ts , получим:
h(n) = ( 1/nnts)[1 - cos(27ifs n /2 fs )] = f s /n n [1 - cos(ttn)].
(9-11)
для n ^ 0 и [h(n) = 0 , для n= 0 ] .
Наконец, построим импульсную характеристику ПГ h(n) на рисунке 9.9. Член
f s в (9-11) —просто масштабирующий множитель, его значение не влияет на фор­
му h(n). Информированный читатель мог бы сейчас сказать: «Погодите минуту.
Уравнение (9-11) выглядит совсем не так, как уравнение для импульсной харак­
теристики, которое я нашел в другой книге по ЦОС. Которое из них правильно?»
И читатель будет прав, потому что в литературе популярно следующее выраже­
ние для h(n)\
Альтернативная форма: h(n) = 2ъ\т?(лп/2')/(лп) .
(9-12)
Ответ состоит в следующем. Во-первых, вывод уравнения (9-12) основан на
предположении, что частота дискретизации / 5равна единице. Кроме того, если вы
стряхнете пыль с вашего старого справочника по математике, то внутри него вы
найдете тригонометрическое тождество: з т -^ а ) = [1 - со$(2а)]/2. Если в (9-11)
мы подставим 1 вместо / 5 и подставим 2 $т.2 (лп / 2 ) вместо [ 1 - соъ(лп)], то мы уви­
дим, что (9-11) и (9-12) идентичны.
2
h(n)
5л
/
0.5
Зл
7
2
/ 7л
•
.
.
-0.5
_ 1
-1
-15
-10
-5
п
10
15
Рис. 9.9. Дискретная импульсная характеристика преобразования Гильберта при К = 1
9.4. Проектирование дискретного преобразователя Гильберта
371
Посмотрев снова на рисунок 9.9, мы можем усилить обоснованность нашего
вывода h(n). Заметим, что при п > 0 значения h(n) отличны от нуля только для не­
четных значений п. Кроме того, эти ненулевые значения уменьшаются как ряд чи­
сел 1/1, 1/3, 1/5, 1/7 и т. д. Что это вам напоминает? Правильно, ряд Фурье для
периодического прямоугольного сигнала! Это не случайно, т. к. h(n) представля­
ет собой обратное преобразование Фурье прямоугольной функции Н(ш), пока­
занной на рисунке 9.2. Более того, h(n) антисимметрична, и это согласуется с тем,
что H(w) — чисто мнимая. (Если бы нам требовалось сделать h(n) симметричной,
проинвертировав ее значения при п < 0 , новая последовательность была бы про­
порциональна ряду Фурье действительного периодического прямоугольного ко­
лебания.)
Теперь, когда мы имеем выражение для импульсной характеристики ПГ h(n),
используем его для построения дискретного преобразователя Гильберта.
9.4. Проектирование дискретного
преобразователя Гильберта
Дискретное преобразование Гильберта может быть реализовано как во вре­
менной, так и в частотной области. Сначала рассмотрим преобразователь Гиль­
берта во временной области.
9 .4 .1 . Преобразование Гильберта во временной
области: реализация в виде КИХ-фильтра
Взгляните снова на рисунок 9.4. Имея h(n), мы хотим узнать, как получить ди­
скретный сигнал х^п ). Вспомнив, что в (9-1) используется умножение в частот­
ной области, мы можем сказать, что x t(n) образуется в результате свертки х г(п) с
h(k). Аналитически это выглядит так:
00
x i<n) = 2 h(k) х т(п - k) .
&=-00
(9-13)
Это значит, что мы можем реализовать преобразователь Гильберта в виде диск­
ретного нерекурсивного фильтра с конечной импульсной характеристикой (КИХ);
как показано на рисунке 9.10.
Рис. 9 .1 0 . Реализация преобразователя Гильберта с К ответвлениями в виде
КИХ-фильтра
372
Гпава 9. Дискретное преобразование Гильберта
Проектирование традиционного КИХ-преобразователя Гильберта сводится к
вычислению значений h(k), благодаря чему становится возможной реализация
схемы, приведенной на рисунке 9.4. А, может быть, просто взять коэффициенты
h(n) согласно (9-11) или рисунку 9.9, и использовать их в качестве h(k) на рисунке
9.10? Это почти правильный подход. К сожалению, последовательность h(n) на
рисунке 9.9 имеет бесконечную длину. И все усилия при проектировании сосре­
доточиваются на выяснении того, как следует усекать h(ri).
Для начала мы должны решить, должна ли усеченная h(n) иметь четную или
нечетную длину. Мы принимаем это решение, вспомнив, что реализации КИХфильтров, имеющих антисимметричные коэффициенты и нечетную или четную
длину, называются системами III или IV типа соответственно [1 - 3]. Частотные
характеристики антисимметричных фильтров этих типов удовлетворяют непре­
одолимым ограничениям:
Длина h ( n ) нечетна (тип III)
Длина А(я) четна (тип IV)
IЩ 0 )\ = 0
IЩ 0 )\ = о
| Щ(о5 / 2 ) |= 0
| H((üs / 2 ) | без ограничений
Эта маленькая табличка говорит нам, что амплитудно-частотная характери­
стика преобразователей Гильберта с нечетным числом ответвлений равна нулю
как на частоте 0 Гц, так и на частоте, равной половине частоты дискретизации.
Преобразователи Гильберта с четным количеством ответвлений всегда имеют
АЧХ, равную 0 на нулевой частоте. Рассмотрим несколько примеров.
На рисунке 9.11 показана частотная характеристика КИХ-преобразователя
Гильберта длиной в 15 ответвлений (Тип III, нечетная длина), коэффициенты ко­
торого обозначены как h-f(k). Эти графики могут многому научить нас.
1---------- Г----------1---------- Т
----------Т
----------т--------- ,---------/),(*)
Оо • . •
•
•
• • • • • О
_ - | ______________________________________ I___________________ |___________________ L________ ___________I___________________ I___________________
0
2
4
6
к
8
10
12
14
Рис. 9 .1 1 . Частотная характеристика Н^ш) преобразователя Гильберта с 15 ответ­
влениями, имеющего импульсную характеристику ЛД/с)
9.4. Проектирование дискретного преобразователя Гильберта
373
1.
Например, КИХ-реализация нечетной длины действительно имеет ну­
левую АЧХ на частотах 0 Гц и ± / 5/2 Гц. Это значит, что КИХ-реализации нечетной длины (Ш-го типа) ведут себя как полосовые фильтры.
2.
#/(а>) имеет пульсации в полосе пропускания. Нам следовало этого
ожидать, т. к. мы не можем использовать последовательность /г^(к) бес­
конечной длины. Здесь, точно Так же, как и при проектировании стан­
дартных КИХ-фильтров нижних частот, усечение импульсной
характеристики во временной области приводит к появлению пульса­
ций в частотной области. (Когда мы резко обрываем функцию в одной
области, Природа мстит нам, вводя в действие явление Гиббса, резуль­
татом которого являются пульсации в другой области.) Как вы, види­
мо, уже догадались, мы можем уменьшить пульсации |Н ^ш ) |, умножив
усеченную последовательность /*у(£) на окно. Однако умножение ко­
эффициентов на окно приведет к некоторому сужению полосы пропус­
кания ЯДо>), поэтому может потребоваться увеличение количества
коэффициентов. Попробуйте убедиться в том, что взвешивание усе­
ченной последовательности /*/(&) окном дает положительный эффект.
3.
Очень трудно рассчитать ПГ для низкочастотных сигналов. Мы можем
несколько расширить полосу пропускания и уменьшить ширину пере­
ходной полосы Н^(ю), но это потребует существенного увеличения
длины фильтра.
4.
Фазо-частотная характеристика Яу(со) линейна, как и должно быть
при симметричной импульсной характеристике. Наклон ФЧХ (кото­
рый в нашем случае постоянен) пропорционален задержке, которую
испытывает сигнал, проходя через КИХ-фильтр. Ниже мы поговорим
об этом подробнее. Разрыв ФЧХ на частоте 0 Гц соответствует я радиа­
нам, как и должно быть в соответствии с рисунком 9.2. Отлично, это
как раз то, чего мы добивались в первую очередь!
В нашем неустанном стремлении к точным результатам при генерации анали­
тического сигнала х с(п) мы должны компенсировать линейный фазовый сдвиг,
присутствующий в #/(<у) - а именно, постоянную задержку во времени, равную
групповой задержке фильтра. Мы делаем это, задерживая во времени исходный
сигнал хт(п) на время, равное групповой задержке КИХ-преобразователя Гильбер­
та с импульсной характеристикой /гД£). Напомним, что групповая задержка С
КИХ-фильтра длиной в К ответвлений, измеряемая в отсчетах, равна С = (К -1 )/2
отсчетов. Так что блок-схема процесса генерации комплексного сигнала х с(п) с по­
мощью КИХ-фильтра приобретает вид, показанный на рисунке 9.12 (а). Мы за­
держиваем х т(п) на С = (7 -1 ) / 2 = 3 отсчета, получая при этом задержанную
последовательность:*:'г(я).*Эта задержанная последовательность теперь корректно
выровнена по времени с х^п).
Если вы реализуете КИХ-преобразователь Гильберта с нечетным количест­
вом ответвлений в аппаратуре, простейший способ получения х 'т(п) состоит в
том, чтобы взять копию задержанной исходной последовательности х т(п) со
среднего ответвления линии задержки КИХ-преобразователя Гильберта, как
374
Гпава 9. Дискретное преобразование Гильберта
показано на pricyнке 9.12 (Ь). Если вы моделируете схему, приведенную на рисун­
ке 9.12 (а), программно, то последовательность х 'т(п) можно получить, введя
G = 3 нулевых отсчета в начало исходной последовательности х т(п).
хг(л)
Задержка
на 3 отсчета
- Хс(л)= x\(n) +yXj(/7)
(а)
КИХ-преобразователь
Гильберта
с 7 ответвлениями
хг(п)
► Х,(Л)
х»
(Ь )
h(0)
х,(п)
---- ►
Рис. 9 .1 2 . Генерация последовательности хс (л) с помощью КИХ-фильтра Гильбер­
та, имеющего 7 ответвлений: (а) схема обработки; (Ь) структура фильтра
Мы можем, например, реализовать КИХ-преобразователь Гильберта, исполь­
зуя структуру IV типа с четным количеством ответвлений. На рисунке 9.13 изобра­
жен этот случай, причем коэффициенты обозначены как Ь2 {к). Обратите внимание
на то, что АЧХ отлична от нуля на частотах ± /5/2 Гц. Следовательно, этот фильтр
четной длины аппроксимирует идеальный преобразователь Гильберта несколько
лучше, чем фильтр нечетной длины.
о
-5
ш -10
Модуль HJw)
Ct -1 5
-20
-2 5
-/7 2
-fJA
fJ 2
Рис. 9 .1 3 . Частотная характеристика Н2((о) преобразователя Гильберта с 14 ответ­
влениями и коэффициентами ґі2(к)
9.4. Проектирование дискретного преобразователя Гильберта
375
Одна из проблем, связанных с этой традиционной реализацией преобразователя
Гильберта состоит в том, что коэффициент передачи в полосе пропускания \Н2 (со)\
равен единице не на всех частотах, в отличие от коэффициента передачи канала
х'т(п) на рисунке 9.12. Поэтому для минимизации ошибок мы вынуждены увеличи­
вать количество коэффициентов Ь2 {к) (или использовать взвешивание с помощью
окон), чтобы сделать \Н2 (со) | в полосе пропускания как можно более гладкой.
Хотя на рисунке это не показано, отрицательный наклон ФЧХ Н 2 (а)) соответ­
ствует групповой задержке С = ( 1 4 -1 )/2 = 6.5 отсчетов. Это заставляет нас задер­
живать исходную последовательность хт(п) на нецелое (дробное) количество
отсчетов, чтобы достичь выравнивания по времени с х^п). Фильтры с дробными
задержками выходят за рамки данной книги, но вы можете получить дополните­
льную информацию по этой теме, прочитав статью [4].
Давайте вспомним теперь, что каждый второй коэффициент в структуре типа
III равен нулю. Таким образом, преобразователь Гильберта с нечетным количест­
вом ответвлений более привлекателен с точки зрения объема вычислений, чем
преобразователь четной длины. Почти половина умножений, показанных на ри­
сунке 9.10, для структуры преобразователя Гильберта типа III может быть отбро­
шена. Разработчики могут уменьшить количество умножений еще в два раза,
применив сложенную структуру КИХ-фильтра (которая обсуждается в разделе
13.7). Это возможно благодаря тому, что коэффициенты симметричны (с учетом
того, что половина из них отрицательны).
Краткое предупреждение: здесь возможна ошибка, которую иногда допускают
даже профессионалы. Когда мы рассчитываем стандартные КИХ-фильтры с ли­
нейной ФЧХ, мы вычисляем коэффициенты, а затем используем их в програм­
мной или аппаратурной реализации. Иногда мы забываем изменить порядок
следования коэффициентов на обратный перед использованием их в КИХ-фильтре. Эта забывчивость обычно не приводит к тяжелым последствиям, т. к. коэффи­
циенты большинства обычных КИХ-фильтров обладают зеркальной симметрией.
В случае КИХ-фильтров Гильберта это не так, поэтому, пожалуйста, не забы­
вайте изменить порядок следования коэффициентов перед использованием их
для фильтрации. Если вы этого не сделаете, фазо-частотная характеристика ва­
шего ПГ будет искажена.
Между прочим, преобразователи Гильберта могут сроиться также на основе
БИХ-фильтров, и в некоторых случаях такая реализация оказывается более эф­
фективной с точки зрения объема вычислений, чем КИХ реализация, за счет не­
которого отклонения сдвига фаз между хТ(п) и х ^ п ) от 90° [5, 6 ].
9.4 .2 . Преобразование Гильберта в частотной области
Существует также схема вычисления преобразования Гильберта в частотной
области, заслуживающая упоминания потому, что ПГ х Т(п) и аналитический сиг­
нал хс(п) генерируются одновременно. Мы просто берем ^-точечное ДПФ дейст­
вительной последовательности х т(п) четной длины ДГ, получая дискретный
спектр Х т(т), показанный на рисунке 9.14 (а). Затем мы создаем новый спектр
Х с(т) = 2ХТ(т). Приравниваем отсчеты Х с(т), соответствующие отрицательным
частотам, т. е. отсчеты с номерами (Ы/2 ) + 1 < т < N - 1 , нулю, в результате чего у
нас остается односторонний спектр Х с(т), показанный на рисунке 9.14 (Ь). Затем
376
Гпава 9. Дискретное преобразование Гильберта
делим отсчеты спектра Х с( 0 ) (постоянную составляющую) и ХС(Л1 /2 ) на два. На­
конец, выполняем ЛГ-точечное обратное ДПФ нового спектра Х с( т ) , результатом
которого является требуемая аналитическая последовательность х с(п) во вре­
менной области. Действительная часть хс(п) представляет собой исходный сиг­
нал х Т(п), а мнимая часть х с(п) представляет собой ПГ хг(и). Готово!
Есть несколько моментов, касающихся описанной схемы прямой генерации
аналитического сигнала в частотной области, о которых необходимо помнить:
1*г(т)|
^ ^|Х С(П7)|
Ч асто та
-Гр. -“о 0 (00
(а)
Рис. 9.14.
|
-Л /2
0
(Ь )
|
ш0
к р г с( т ) |
Ч асто та
Гз12
,гП
- Г в -со0
^
С
*1 Ч астота
®°
г,
*
(с)
Спектр исходной последовательности х г(п) и односторонний спектр ана­
литической последовательности х с (п)
1.
Если возможно, выбирайте длину входной последовательности х г(п)
равной степени двойки, чтобы для эффективного вычисления ДПФ
можно было использовать алгоритм БП Ф по основанию 2.
2.
Длина последовательности Х с( т ) должна быть равна длине исходной
последовательности Х Т( т ) . Помните, что обнуление составляющих
Х с(т) с отрицательными частотами не означает их выбрасывание из
массива.
3.
Множитель 2 в присвоении Х с( т ) = 2 Х Т( т ) компенсирует снижение
амплитуды в 2 раза, связанное с потерями энергии спектра на отрица­
тельных частотах.
4.
Если ваше применение ПГ ориентировано на блочную обработку дан­
ных в том смысле, что вам необходимо генерировать аналитическую
последовательность для действительной последовательности фикси­
рованной длины, стоит подумать об использовании этого метода, т. к.
он избавляет от головной боли, связанной с необходимостью выравни­
вания задержек при КИХ реализации во временной области. С появле­
нием быстрых микросхем ЦОС и конвейерных методов БПФ эта схема
генерации аналитических сигналов может оказаться жизнеспособной
в целом ряде применений. Одна из возможностей, которые следует
рассмотреть, состоит в использовании для вычисления прямого ДПФ
действительного сигнала х Т(п) эффективного метода 2 №точечного
действительного БПФ, описанного в разделе 13.5.2. Конечно, вдумчи­
вый инженер проведет также поиск в литературе, чтобы выяснить, ка­
кие алгоритмы эффективного вычисления обратного БПФ есть для
случая, когда многие отсчеты в частотной области равны нулю.
Допустим, вам необходимо получить прореженную в два раза аналитическую
последовательность х 'с(п), основанную нахг(и). Это легко сделать благодаря [7].
377
9.5. Генерация аналитического сигнала во временной области
Во-первых, вычисляем ІУ-точечную последовательность Х т(т). Затем создаем
новую спектральную последовательность Х 'с(1г) = 2ХТ(к) для 1 < к < (Ы /2)-1.
Положим Х 'с(0) равным Х т(0) + Хг(ЛГ/2). Наконец, вычисляем (N /2 )-точечное
обратное ДПФ от Х 'с(т), которое дает прореженную в два раза аналитическую
последовательность х'с(п). Частота дискретизации последовательности х 'с(п) со­
ставляет / ' 5= / 5 /2 , а спектр показан на рисунке 9.14 (с).
В разделе 13.28.2 мы обсудим схему генерации интерполированного аналити­
ческого сигнала по х г(п).
9.5. Генерация аналитического сигнала во
временной области
В цифровых системах связи КИХ-реализация ПГ (подобная показанной на
рисунке 9.12 (Ь)) используется для генерации комплексного аналитического сиг­
нала хс(п). Некоторые практики при обработке полосовых сигналов для получе­
ния аналитического сигнала сейчас используют метод комплексной фильтрации
во временной области [8 ]. Эта схема, которая, по существу, не выполняет ПГ вход­
ной последовательности х Т(п), использует комплексный фильтр, образованный
двумя действительными КИХ-фильтрами с равными АЧХ, ФЧХ которых отли­
чаются в точности на 90°, как показано на рисунке 9.15.
, к \Х г( т )|
.Г^гЛ
-^2
-<м
0
хг(л)
со„
і І І« в р (т )І
Частота
:
1
1
с)
/ к
1*с(т )1
Частота
» Ч астота
1
11
^
®0
Г р
"
|
-у 2
|
Ч
(>
“ о
1р. ^
/и/с), д е й с т в и т е л ь н ы й
К И Х -ф и л ь т р
[д е й с т в и т е л ь н а я ч а с т ь /івр(/с)]
х.(п )
- Хс(п ) = х,(л ) + ух0 (л)
/7$іп(/с), д е й с т в и т е л ь н ы й
К И Х -ф и л ь т р
[м н и м а я ч а с ть /?ВР(/с)]
* 0( п )
Рис. 9 .1 5 . Генерация последовательности хс{п) с помощью комплексного фильтра
(двух вещественных КИХ-фильтров)
Вот как это делается. Используя любую понравившуюся нам программу рас­
чета КИХ-фильтров, рассчитываем стандартный КИХ-фильтр нижних частот,
удвоенная полоса пропускания которого несколько превышает полосу частот,
которую занимает интересующий нас действительный полосовой сигнал. Затем
вещественные коэффициенты фильтра нижних частот /г^р(^), умножаются на
комплексную экспоненту е&опь где использованы следующие обозначения:
□
0)о = центральная частота исходного полосового сигнала в радианах в
секунду, о)0=2 ж/0,
378
Гпава 9. Дискретное преобразование Гильберта
□
/ 0 = центральная частота в Гц;
□
п = временной индекс коэффициентов фильтра нижних частот (и = 0 , 1 ,
2,
□
ts = промежуток времени между отсчетами, измеряемый в секундах
(ts = l / f s y,
f s = частота дискретизации исходного полосового сигнала х т(п).
d
В результате умножения на e ^o ^s формируются комплексные коэффициенты,
которые в алгебраической форме выглядят следующим образом
hBP(k) = hcos(k) +jhsin(k) ,
(9-14)
и описывают комплексный полосовой фильтр, центр полосы пропускания кото­
рого находится на частоте / 0 Гц.
Затем мы используем действительную и мнимую части коэффициентов филь­
тра hBP(k) в двух отдельных КИХ-фильтрах с действительными коэффициентами,
как показано на рисунке 9.15. На языке ЦОС фильтр, выдающий последователь­
ность х j(n), называется /-каналом для синфазной составляющей, а фильтр, выда­
ющий х q( h), называется Q-каналом для квадратурной составляющей. Эта схема
генерации аналитического сигнала с использованием смешивания, приведенная
на рисунке 9.15, обладает рядом интересных особенностей:
1. Смешивающее преобразование коэффициентов hLP (k) путем умно­
жения на е WePts приводит к уменьшению амплитудно-частотных ха­
рактеристик двух действительный КИХ-фильтров в 2 раза. Удвоение
значений hLP (k) перед смешиванием устранит эти потери.
2.
Мы можем взвесить коэффициенты hLP (k) окном перед смешиванием
для уменьшения величины пульсаций в полосе пропускания и разно­
сти АЧХ двух действительных фильтров. (Нам хотелось бы сохранить
коэффициенты передачи в полосе пропускания обоих фильтров как
можно ближе друг к другу.) Конечно, взвешивание несколько ухудша­
ет крутизну АЧХ в переходной полосе, поэтому может потребоваться
больше коэффициентов.
3.
В этом случае можно использовать фильтры как нечетной, так и четной
длины.
4.
Если либо hcos(k), либо hsin(k) симметричны, можно использовать сло­
женную КИХ-структуру (см. раздел 13.7) для уменьшения в два раза
количества умножений на один выходной отсчет.
5.
Если центральные частоты исходного полосового сигнала и комплекс­
ного полосового фильтра равны четверти частоты дискретизации (f s/ 4 ),
вам крупно повезло, потому что примерно половина коэффициентов
каждого из действительных фильтров в этом случае равна нулю, что
снижает количество умножений еще в два раза.
9.6. Сравнение методов генерации аналитических сигналов
379
6.
Особенно эффективен полуполосный КИХ комплексный полосовой
фильтр, центральная частота которого перенесена на / 0= / 5 /4. В этом
случае половина коэффициентов /гС05(&) принимают нулевые значения
и все, кроме одного, коэффициенты А51п(&) равны нулю!
7.
При аппаратурной реализации должны быть реализованы оба действи­
тельных КИХ-фильтра, изображенные на рисунке 9.15. Если же вы ре­
ализуете генерацию аналитического сигнала просто для тренировки на
каком-нибудь языке высокого уровня, например, в рамках МАТЬАВ,
используемый язык может дать возможность реализации кВр{к) в виде
одного комплексного фильтра.
Запомните, что последовательность х ^ п ) на рисунке 9.15 не является преобра­
зованием Гильберта входной последовательности х т( п ) . Это не было нашей целью.
Мы намеревались получить аналитический сигнал х с( п ) , квадратурная составляю­
щая которого Х д ( п ) представляет собой преобразование Гильберта синфазной по­
следовательности Х]{п).
9.6. Сравнение методов генерации
аналитических сигналов
Проектирование преобразователя Гильберта во временной области представ­
ляет собой, по существу, упражнение в проектировании фильтров нижних частот.
И как таковой, идеальный дискретный КИХ-преобразователь Гильберта, как и
идеальный КИХ-фильтр нижних частот, не может быть реализован практически.
К счастью, мы обычно можем обеспечить полосу пропускания преобразователя
Гильберта, перекрывающую полосу частот исходного сигнала, который мы сдви­
гаем по фазе на ± 90°. Использование большего количества ответвлений улучшает
характеристики преобразователя (минимизируя пульсации в полосе пропуска­
ния), а выбор нечетного или четного количества ответвлений определяется тем,
хотим ли мы, чтобы коэффициент передачи на частоте Найквиста был равен 0,
или нет, а также тем, должна ли задержка равняться целому количеству периодов
дискретизации. Эти замечания справедливы также и в случае генерации комп­
лексного сигнала по входному действительному сигналу методом комплексной
фильтрации (рисунок 9.15). Один возможный недостаток этого метода состоит в
том, что действительная часть получаемого комплексного сигнала не совпадает с
исходным входным вещественным сигналом (т. е. ' х ^ п ) не равна х т( п ) . )
При использовании вычислений с плавающей точкой схема комплексной
фильтрации обеспечивает разность между двумя вещественными фильтрами
длиной в 100 отсчетов каждый не более 0.15 дБ, тогда как КИХ-фильтр Гильберта
требует примерно 30 ответвлений для обеспечения такой же величины пульсаций
в полосе пропускания. Эти числа имеют место, когда не используется взвешива­
ние с помощью окон. Таким образом, КИХ-фильтр Гильберта более эффективен с
вычислительной точки зрения, чем схема комплексной фильтрации. Для высоко­
качественной генерации аналитических сигналов (когда ширина полосы пропус­
кания преобразователя Гильберта должна быть очень близка к полной полосе
380
Гпава 9. Дискретное преобразование ГильбертЗ
сигналов / 5 / 2 , и пульсации в полосе пропускания должны быть очень низкими)
следует рассмотреть возможность применения метода ДПФ.
Схема комплексной фильтрации вносит потери по амплитуде в два раза, а ме­
тоды ДПФ и КИХ-фильтрации не дают таких потерь. Метод ДПФ обеспечивает
самую точную генерацию комплексного аналитического сигнала по вещественно­
му сигналу, и при использовании ДПФ действительная часть хс(п) совпадает с ве­
щественным входным сигналом х т(п). Выбор используемого метода в каждом
конкретном приложении требует моделирования на целевой аппаратуре с ис­
пользованием ожидаемой формы представления чисел (целых или с плавающей
точкой) при типовых входных сигналах, которые вы собираетесь обрабатывать.
Библиография
1.
Proakis, J., and Manolakis, D. Digital Signal Processing: Principles, Algorithms and
Applications, Prentice-Hall, Upper Saddle River, New Jersey, 1996, pp. 618, 657.
2.
Rabiner, L., and Gold, B. The Theory and Application o f Digital Signal Processing, Pre­
ntice-Hall, Englewood Cliffs, New Jersey, 1975, pp. 67, 168 (есть русский перевод:
Рабинер Л., Голд Б. «Теория и применение цифровой обработки сигналов», М.:
Мир, 1978, доступен по адресу http://geogin.narod.ru/arhiv/dsp/dsp3.htm).
3.
Oppenheim, A., and Schafer, R. Discrete-Time Signal Processing, Prentice-Hall,Englewood Cliffs, New Jersey, 1st Ed. 1989,2nd Ed. 1999 (имеется русский пере­
вод одного из предыдущих изданий: Оппенгейм А. В., Шафер Р. В. «Цифро­
вая обработка сигналов», пер. с англ. / под ред. С. Я. Шаца, М.: Связь, 1979,
доступен по адресу dsp-book.narod.ru/OpShDSP.djvu).
4.
Laasko, Т., et. al. «Splitting the Unit Delay», IEEE Signal Processing Magazine, J an.
1996.
5. Gomes, J., and Petraglia, A. «An Analog Sampled-Data DSB to SSB Converter
Using Recursive Hilbert Transformer for Accurate I and Q Channel Matching»,
IEEE Trans, on Circuits and Sus.-II, Analog and Digital Signal Processing, Vol. 39.
No. 3, Mar. 2002, pp. 177-187.
6 . Ansari, R. «HR Hilbert Transformers», IEEE Trans. Acoust., Speech Signal Proces­
sing, Vol. 35, Aug. 1987, pp. 1116-1119.
7.
Marple Jr., S. «Computing the Discrete-time 'Analytic' Signal via FFT», IEEE
Trans, on Signal Proc., Vol. 47, No. 9, Sept. 1999, pp. 2600-2603.
8.
Reilly, A., et. al. «Analytic Signal Generation—Tips and Traps», IEEE Trans, on
Signal Proc., Vol. 42, No. 11, Nov. 1994.
Глава 10
Преобразование
частоты
дискретизации
Полезная и увлекательная процедура преобразования частоты дискретизации
представляет собой изменение частоты дискретизации дискретного сигнала по­
сле того, как сигнал был оцифрован. Такое преобразование частоты дискретиза­
ции находит множество применений, оно используется для минимизации объема
вычислений путем уменьшения потока данных, когда полоса частот, занимаемая
сигналом, уменьшается вследствие низкочастотной фильтрации. Преобразование
частоты дискретизации неизбежно при обработке сигналов в реальном масштабе
времени, когда два процессора, работающие на разных частотах, должны обменивать­
ся цифровыми сигналами. При обработке медицинских и спутниковых изображений
преобразование частоты дискретизации необходимо для улучшения изображений,
изменения масштаба, вращения изображений. Преобразование частоты дискрети­
зации используется также для уменьшения сложности некоторых узкополосных
цифровых фильтров.
Мы можем определить преобразование частоты дискретизации следующим
образом: рассмотрим ситуацию, когда непрерывный сигнал у с(£) был оцифрован с
частотой дискретизации / 0у = 1 /Т 0^ , в результате чего получены отсчеты х ^ п )
= у с(пТ 01^). Преобразование частоты дискретизации необходимо, когда нам ну­
жен сигнал х пет(п) - у с(пТпет), а прямая дискретизация непрерывного сигнала
у с(€) с новой частотой дискретизации/ пеьг) = 1/Тпеге) невозможна. Например, пред­
ставим себе, что мы имеем систему аналого-цифрового преобразования (АЦП),
которая выдает по одному отсчету каждые Т01у секунд. Но наш процессор может
принимать данные только по одному отсчету каждые Тпеи) секунд. Как можно по­
лучить х пехе)(п) непосредственно из хоЬ£п)1 Можно преобразовать последователь­
ность х 01^ п ) в аналоговый сигнал, т. е. восстановить г/с(£), а затем преобразовать
у с(Ь) в цифровую форму с частотой дискретизации / пеи), и получить в результате
х пек>(пУ Из-за спектральных искажений, вносимых цифро-аналоговым преобразо­
ванием и последующим аналого-цифровым преобразованием, этот метод преобра­
зования частоты дискретизации ограничивает динамический диапазон сигнала, и
на практике его стараются избегать. К счастью, как мы скоро увидим, разработаны
точные чисто цифровые алгоритмы преобразования частоты дискретизации.
382
Глава 10. Преобразование частотыдискретизации
10.1. Прореживание
Изменение частоты дискретизации встречается в двух разновидностях: как
понижение и повышение. Понижение частоты дискретизации известно как деци­
мация1. (Термин децимация не совсем подходит в этом случае, т. к. изначально де­
цимация понималась как уменьшение в десять раз. В настоящее время термин
децимация используется для обозначения понижения частоты дискретизации в
любое целое число раз.) Процесс повышения частоты дискретизации известен
как интерполяция, т. е. получение оценок значений промежуточных отсчетов. По­
скольку прореживание является самым простым случаем изменения частоты ди­
скретизации, сначала рассмотрим именно его.
Мы можем проредить, или понизить частоту дискретизации, последователь­
ность дискретных отсчетов в И раз, выбрав каждый Ь -й отсчет и отбросив все
остальные отсчеты. По отношению к исходной частоте дискретизац и и,/^, новая
частота дискретизации равна
/* » -/<
м/о-
(Ю-1)
Например, чтобы проредить последовательность хо!(^п ) в три раза (0=3), мы
оставляем х ^ О ) и отбрасываем х 0{(](1 ) и х 0^ ( 2 ), сохраняем х 0^ ( 3 ) и отбрасываем
х о1иОО и х о к £ 5 ) ’ сохраняем х ^ б ) и так далее, как показано на рисунке 10.1. Таким
образом, хпетю(п) =х 0[^(3п), где п = 0,1,2 и т. д. Результат такого процесса прорежива­
ния идентичен результату исходной дискретизации с частотой / пехю = / 0/^ / 3 для по­
лучения х пеш(п).
4 *ои(Л)
1 ■■_■
(а)
0
-1
-
-++■1 M i l l
■
я
■_
_■
Я'ИЯ
1Я -
(b)
о
-1
■■■■ ■
Ус(0
Яяяя
f Н -Н -+* I M i l l И
я
я
■Яя
_ я*
я— м
ж- - я
я
-I-X
■Я"
Рис. 10.1. Преобразование частоты дискретизации: (а) исходная последователь­
ность; (Ь) прореженная в три раза последовательность
Спектральные эффекты прореживания вполне предсказуемы, как показано на
рисунке 10 .2 , где ограниченный спектр непрерывного сигнала показан сплошной
линией. На рисунке 10.2 (а) показан периодический спектр Х ^ п г ) дискретной
1 Хотя в русскоязычной литературе понижении частоты дискретизации чаще называют
прореживанием, здесь мы используем для обозначения этого приема транслитерацию
английского термина decimation. Причины тому две: в последнее время у нас получил
распространение и термин децимация, а, кроме того, при использовании термина «про­
реживание» следующее замечание автора было бы непонятно читателю —(прим. перев.).
383
10.1. Прореживание
последовательности Хд^п). Спектр Х пеш(т ) при хпеш(п ) = х^^Зп) показан на ри­
сунке 10.2 (Ь). Рисунок 10.2 иллюстрирует две важные особенности. Во-первых,
Х пеТ11(т) можно было бы получить непосредственно, дискретизируя исходный не­
прерывный сигнал с частотой/и , а не путем прореживания х ^ п ) в три раза. И,
во-вторых, значение коэффициента прореживания ограничено шириной спектра
В исходного сигнала. Мы должны выдерживать с о о т н о ш е н и е > 2 В , чтобы не
допустить возникновения наложений после прореживания.
і
► В <-
(а)
!
Y
:
_ ;------ і------ :-------------,--------------------f------------
-
-------- 1-------------t--------і----і--- ^
-f.О
ІСІ
^ои
Ч астота
(Ь)
-2 f
-3 f
-f
2f
0
new
3 /neW Ч а с т о т а
“ ^old
___
В '< —
*
< .В ►
(С)
-f
-f.ОІСІ
Частота
U 2
S'
(d)
-L
-В
0
-<rAf>
LJ*
+
7
Г
f
stop
в
^Г\ЄМ Ч а с т о т а
Рис. 10.2. Прореживание в три раза: (а) спектр исходного сигнала; (Ь) спектр после
прореживания в три раза; (с) полоса в ’должна сохраняться; (с!) частота
среза фильтра нижних частот по отношению к ширине спектра В'
Когда требуется, чтобы / пеш была меньше, чем 2В, перед выполнением проре­
живания необходимо профильтровать х ^ п ) фильтром нижних частот, как пока­
зано на рисунке 10.2 (с). Если исходный сигнал имеет ширину спектра В, а нас
интересует только диапазон частот В сигналы с частотами выше В 'должны быть
отфильтрованы до выполнения прореживания, при этом полоса подавления дол­
жна начинаться с частоты / 5І0р. На рисунке 10.2 ((1) это показано подробнее, при­
чем частотная характеристика фильтра нижних частот, показанная штриховой
линией, должна ослабить составляющие сигнала с частотами, превышающими В
На практике для реализации прореживающих фильтров предпочтительной явля­
ется структура КИХ-фильтра, показанная на рисунке 5.13, благодаря линейности
ее ФЧХ [1].
Когда требуется реализовать большой коэффициент прореживания Д скажем
£) > 10 , следует учитывать одну важную особенность процесса фильтрации/про­
реживания. Можно добиться существенного уменьшения объема вычислений,
384
Глава 10. Преобразование частотыдискретизации
если реализовать прореживание в несколько ступеней, как показано на рисун­
ке 10.3 (а). Операция прореживания (понижения частоты дискретизации)
означает отбрасывание каждого 1)у-го отсчета. Произведение
и Б 2 дает требуе­
мое значение коэффициента прореживания, т. е. В 1В 2 =Б. Проблема состоит в
следующем: какими должны быть значения £)у и Б 2 для минимизации количества
ответвлений фильтров нижних частот ЬРБ^ и ЬРР21 Если О = 100, следует ли вы­
брать 0 1 Э 2 равными (5)(20), (25)(4) или ( 10)(10)? Вдумчивые и внимательные
пионеры ЦОС нашли для нас ответ на этот вопрос [1]. Для двухступенчатой филь­
трации с прореживанием оптимальное значение В ^ составляет
( 10-2 )
И ,>ор( = 2 Д[У - У О Ґ /( 2 - ^ ) ] / [ 2 - А О + 1 ) ] ,
где ^ — ширина переходной полосы, отнесенная к границе полосы подавления,
т. е. = А ///^ ор. Определив В 1ор1., находим второй коэффициент прореживания:
(
10- 2 ’)
(а)
(Ь )
^
Го и = 1 6 К Г ц
= 400 КГц
^
= 4 КГц
А *<*("»)
(с)
£
Л
200
4 0 0 Ч астота
(К Г ц )
(с^)
Ч астотная
характери сти ка Ь Р Г,
16
Ч астота
(К Г ц )
(е)
1.8 2
4
Ч астота
(К Г ц )
Рис. 10.3. Многокаскадное прореживание: (а) обобщенная блок-схема прорежи­
вания; (Ь) прореживание в 100 раз; (с) спектр исходного сигнала;
(сі) спектр сигнала на выходе блока прореживания в О = 25 раз; (е) спектр
выходного сигнала блока прореживания в 0 = 4 раза
Для примера предположим, что мы имеем входные данные, поступающие с ча­
стотой дискретизации 400 кГц, и мы должны проредить их в £) = 100 раз, чтобы
получить частоту дискретизации 4 кГц. Предположим также, что интересующий
нас диапазон нижних частот простирается от 0 до В ' = 1.8 кГц.
10.1. Прореживание
385
Таким образом, имея / пегю = 4 кГц, мы должны отфильтровать всю энергию сиг­
н а л а х ^ « ) , сосредоточенную в полосе частот выше/ пеи)/ 2 , причем переходная по­
лоса фильтра может занимать диапазон частот от 1.8 кГц до / з1ор = { пе№/ 2 = 2 кГц.
Теперь оценим количество ответвлений Г, необходимое для однокаскадной реали­
зации фильтрации с прореживанием. Было показано, что количество ответблений
Т стандартного КИХ ФНЧ, построенного на основе линии задержки с ответвле­
ниями, пропорционально отношению исходной частоты дискретизации к ширине
переходной полосы фильтра А /н а рисунке 10.2 ((1) [1, 2]:
T = k fo ld / ( / s to p - Я
)
=
k fo id /A f,
(10-3)
где 2 < к< 3 , в зависимости от заданных неравномерности АЧХ в полосе пропуска­
ния и подавления в полосе задерживания. Таким образом, для нашего случая, если
£, к примеру, равно 2, Т = 2(400/0.2) = 4000. Представьте себе КИХ-фильтр с 4000
ответвлений (коэффициентов)! Теперь разделим наш прореживатель на два каска­
да: для И = 100иР=(0.2кГц/2 кГц) (10.2) дает оптимальное значение коэффициен­
та прореживания 0 1ор(, равное 31.9. Ближайший целый делитель коэффициента
100 равен 25, поэтому мы беремИ 1 = 2 5 и И 2 = 4, как показано на рисунке 10.3 (Ь).
Предположим, что спектр исходного сигнала Х ^ т ) простирается от нулевой
частоты до частоты, несколько превышающей 100 кГц, как на рисунке 10.3 (с).
Если первый ФНЧ ЬРРуимеет частоту среза 1.8 кГц, а граница его полосы задержи­
вания положена равной 8 кГц, выходной сигнал блока прореживания с Б = 25 будет
иметь спектр, изображенный на рисунке 10.3 (<!), где интересующий нас диапазон
частот шириной 1.8 кГц отмечен штриховой линией. Когда ГРР2 имеет частоту сре­
за 1.8 кГц, а его/^ор принята равной / пеуо/2 = 2 кГц, выходной сигнал блока проре­
живания с И - 4 будет иметь требуемый спектр, показанный на рисунке 10.3 (е).
Смысл всего ЭТОГО В ТОМ, ЧТО общее количество ответвлений двух Ф Н Ч Т Ш а 1 на­
много меньше, чем 4000 ответвлений, необходимых при однокаскадной фильтра­
ции. Из (10.3) для двух фильтров ЬРБ1 и ЬРР2
(10-4)
= 2 х 400/(8 - 1.8) + 2 х 16/(2 - 1.8) = 289 ответвлений
Это впечатляющее уменьшение объема вычислений. Рассмотрев (10.3) для
каждого каскада, мы можем увидеть, что для первого каскада при постоянной
fold = 400 кГц мы увеличиваем А/. Для второго каскада уменьшаются и А/, и / 0^.
Следует хорошо запомнить тот факт, что при определении количества ответвле­
ний Ф Н Ч в (10.3) отношение/ 0ц /А /оказы вает значительно большее влияние,
чем k. Этот пример, хотя и страдает некоторым преувеличением, показывает, ка­
ким образом достигается уменьшение объема вычислений при многокаскадном
прореживании. Разве не удивительно, что увеличение количества каскадов об­
работки в схеме прореживания с D = 100 в действительности уменьшает требо­
вания к вычислительной мощности?
Можете посчитать, что, если бы мы в нашем примере прореживания в 100 раз ис­
пользовали значения D 1 = 5 0 u D 2 = 2 (или Dy= 10и Ъ 2 = 10), то общее количество
ответвлений фильтров было бы существенно больше 400. Следовательно, D-i = 25 и
D 2 = 4 представляют собой оптимальное решение.
386
Глава 10. Преобразование частотыдискретизации
Практическая реализация процесса фильтрации/прореживания достаточно
прозрачна. Возвращаясь к нашему примеру прореживания в D = 3 раза, мы може^
реализовать его в виде стандартного КИХ-фильтра с линейной ФЧХ на основе
линии задержки с ответвлениями, показанного на рисунке 10.4, при этом мы вы­
числяем выходной отсчет у(п ), задвигаем в линию задержки D = 3 новых отсче­
тов х(п) и вычисляем следующий выходной отсчет у ( п '), задвигаем три новых
отсчета х(п) и вычисляем следующий выходной отсчет у(п ) ит. д. (Если коэффи­
циенты нашего КИХ-фильтра нечетного порядка симметричны, так что h(4) =
h(0) и h{3) = h( 1 ), существует остроумный способ уменьшить необходимое коли­
чество умножений, описанный в разделе 13.7.)
Рис. 10.4. Реализация фильтра прореживания
Прежде чем покончить с этой темой, упомянем две необычные особенности про­
реживания. Во-первых, интересно отметить, что прореживание представляет собой
один из тех немногих процессов, которые не инвариантны во времени. Исходя из
природы процесса прореживания можно заключить, что если мы задержим вход­
ной сигнал на один отсчет, блок прореживания выдаст на выход совершенно дру­
гую последовательность. Например, если мы подадим на вход блока прореживания
последовательность х(п)= х(0), х( 1), х (2), х(3), х ( 4 ) ,... и D s 3, выходной сигнал
у(п) будет представлять собой последовательность х(0), х(3), х ( 6 ) , .... Если же мы
задержим входную последовательность на один отсчет, задержанный входной
сигнал х \ п ) будет выглядеть так: х( 1), х(2), х(3), х(4), х ( 5 ) ,.... В этом случае вы­
ходная прореженная последовательность у'(п) будет содержать отсчеты х ( 1 ),
х(4), х( 7),..., что не является задержанной версией у(п). Следовательно, процесс
прореживания не инвариантен во времени.
Во-вторых, прореживание не приводит к уменьшению амплитуды сигнала во
временной области. Синусоида с размахом в 10 единиц сохраняет этот размах по­
сле прореживания. Однако прореживание в D раз вносит потери амплитуды в час­
тотной области в D раз. Предположим, что дискретное преобразование Фурье
(ДП Ф ) от синусоидального сигнала х(п) длиной в 300 отсчетов есть [Х(ш)|. Если
мы проредим х(п) в D = 3 раза, получив синусоидальную последовательность х \п )
длиной в 100 отсчетов, амплитуда ДПФ сигнала л:'(я) будет \K\m)\ = \Х(т)\/3. Это
происходит потому, что модули отсчетов ДП Ф пропорциональны количеству
преобразованных отсчетов во временной области.
И в завершение позволим себе дать небольшой практический совет от инжене­
ра ЦОС: всегда, когда мы можем проредить сигнал без возникновения ошибок на­
ложения из-за перекрытия копий спектра, разумно использовать прореживание.
10.2. Интерполяция
387
Понижение частоты дискретизации f s:
□
снижает требуемую вычислительную мощность (количество операций
в секунду);
□
снижает количество отсчетов во временной области, которые необхо­
димо обработать — наши вычисления завершаются скорее, что позво­
ляет нам обрабатывать более широкополосные сигналы;
□
позволяет уменьшить стоимость (за счет снижения тактовых частот)
аппаратурных компонентов, используемых при аппаратурной реализа­
ции обработки;
□
уменьшает потребляемую аппаратурой мощность (это важно в прибо­
рах с батарейным питанием);
а
позволяет увеличить отношение сигнал/шум за счет фильтрации сиг­
нала (искаженного шумом), за которой следует прореживание.
Вывод: взвешивайте возможность прореживания сигналов всегда, когда оно
представляется разумным.
10.2. Интерполяция
Прореживание —это только одна сторона преобразования частоты дискрети­
зации. Рассмотрим другую сторону — интерполяцию. Повышение частоты ди­
скретизации с помощью интерполяции несколько сложнее, чем прореживание,
поскольку при интерполяции необходимо вычислять значения новых отсчетов.
Концептуально интерполяция состоит в генерации непрерывной кривой y c(t),
которая проходит через точки, соответствующие значениям отсчетов X0ij(n),
как показано на рисунке 10.5 (а), с последующей дискретизацией этой кривой с
новой частотой дискретизации f new для получения интерполированной после­
довательности x new(ri) на рисунке 10.5 (Ь). Конечно, непрерывные кривые не мо­
гут строиться цифровыми машинами, поэтому нам необходимо получать x new(n)
непосредственно из x 0ij(ji). Для повышения заданной частоты дискретизации в
М раз нам необходимо вычислить М - 1 промежуточных значений между кажды­
ми двумя соседними отсчетами x ^ i n ) . Этот процесс абсолютно прямолинеен, и
понять его лучше всего на примере.
'
Предположим, что мы имеем последовательность x old(n), часть которой пока­
зана на рисунке 10.6 (а), и мы хотим увеличить частоту дискретизации в М = 4
раза. Спектр последовательности x ^ r i ) приведен на рисунке 10.6 (а) в диапазоне
от 0 Гц до 4 / 0ц. Обратите, пожалуйста, внимание: штриховые линии на графике
X old(m) обозначают копии спектра. Чтобы повысить частоту дискретизации после­
довательности х 0ц(п) в четыре раза, мы, как правило, добавляем три нуля между
каждой парой отсчетов, как показано на рисунке 10.6 (Ь), в результате чего полу­
чаем новую последовательность x int(n ). Индекс int означает intermediate, т. е. про­
межуточная. Заметьте, что при п ' = 4п значение x int( n ) = х 0[^п), т. е. старая
последовательность теперь включена в новую. Введение нулей устанавливает но­
вые значения индексов последовательности интерполированных значений xint( n г).
388
Глава 10. Преобразование частотыдискретизации
Ус(0
Ш-
н-
(а)
-1 »
1 *•
(Ь)
•
-1
+
?Ч- І I И I 1 « Т
Я
■
• • м .*
•
- -
Рис. 10.5. Преобразование частоты дискретизации: (а) исходная последователь­
ность; (Ь) последовательность, частота дискретизации которой увеличе­
на в три раза
(а)
A
А*ои(Л) ■
/1
-told
Врем я
0
old
2fold
3fold
-Н
4 f oïd Ч а с т о т а
(g
(b)
old
В рем я
m Мf М
n
зf
old
2 old
old
new
Частота
(Q
A\ew(m)
Л
A X new(n ’)
(c)
old
В рем я
old
И зо б раж ен ия
N-''
21old
old
' new
Ч астота
(Q
Рис. 10.6. Интерполяция в четыре раза: (а) исходная дискретизированная после­
довательность и ее спектр; (Ь) введение нулей в исходную последовате­
льность и результирующий спектр; (с) выходная последовательность
интерполирующего фильтра и окончательный спектр интерполирован­
ной последовательности
Спектр Х^(тп) последовательности х^п1( п г) показан на рисунке 10.6 (Ь), где
1пехю=4/о1(1- Составляющие спектра Х ^т п ), нарисованные сплошными линиями,
центры которых расположены на частотах, кратных/0^, называются изображени­
ями. Добавив нули, мы просто повысили эффективную частоту дискретизации до
Л *=fnew (см- Рис- Ю-6 (Ь)). Последний шаг интерполяции состоит в том, чтобы от­
фильтровать последовательность х ^ г(п ) фильтром нижних частот, амплитудночастотная характеристика которого изображена на рисунке 10.6 (Ь) штриховой
линией на частотах вблизи 0 Гц и / пеш Гц, чтобы подавить изображения спектра.
10.3. Объединение прореживания и интерполяции
389
Этот фильтр нижних частот называется интерполирующим фильтром, а его выход­
ная последовательность и есть требуемая x new(n ), показанная на рисунке 10.6 (с)
и имеющая спектр X new(m).
Итак, мы сделали все, необходимое для внедрения нулей, интерполяции и
фильтрации? Ну, не совсем —из-за того, что мы не можем реализовать идеальный
фильтр нижних частот, x new(ji) не будет точной интерполяцией последователь­
ности x 0i^ n ). Ошибка проявляется как остатки изображений в X new(m). При ис­
пользовании идеального фильтра эти остатков не было бы. Мы можем только
аппроксимировать идеальный интерполирующий фильтр нижних частот. Важно
помнить, что точность всего процесса интерполяции зависит от уровня подавления
в полосе задерживания интерполирующего фильтра. Чем больше подавление, тем
точнее интерполяция. Как и в случае прореживания, интерполяцию можно рас­
сматривать как упражнение по проектированию фильтров нижних частот.
Обратите внимание на то, что из-за внедрения нулей процесс интерполяции
приводит к потере амплитуды в Мраз. Следовательно, чтобы обеспечить единич­
ный коэффициент преобразования x ^ J ji) в x new(ji % фильтр интерполяции дол­
жен иметь коэффициент усиления, равный М.
И еще один последний момент, относящийся к интерполяции. Вы можете
впасть в заблуждение, думая, что интерполяция —порождение современной тео­
рии и применения цифровой обработки сигналов. (Например, она используется,
когда мы повышаем частоту дискретизации музыкального сигнала перед подачей
его на цифро-аналоговый преобразователь (ЦАП), выходной сигнал которого по­
дается далее на усилитель и громкоговоритель в проигрывателе компакт-дисков.
Такое повышение частоты дискретизации снижает стоимость аналогового филь­
тра, включенного на выходе ЦАП). Не стоит так думать. Древние астрономиче­
ские клинописные таблицы (составленные в Уруке и Вавилоне*за 200 лет до
Рождества Христова) показывают, что для заполнения пропущенных клеток в
таблицах положения небесных тел, когда атмосферные условия препятствовали
прямым наблюдениям, использовалась линейная интерполяция [3]. С тех пор ин­
терполяция часто использовалась для заполнения пропущенных данных.
10.3. Объединение прореживания
и интерполяции
Хотя изменение частоты дискретизации в целое количество раз с помощью
прореживания или интерполяции и может быть полезным, что делать, если нам
необходим нецелый коэффициент преобразования частоты дискретизации?
Можно реализовать преобразование частоты дискретизации с любым рациональ­
ным коэффициентом М/D путем последовательного выполнения интерполяции
в Мраз и прореживания в D раз. Поскольку отношение М/D можно получить с та­
кой точностью, какую мы хотим, при правильном выборе целых М и D, мы можем
практически реализовать почти любое значение коэффициента преобразования.
Например, повышение частоты дискретизации с коэффициентом 7.125 можно
выполнить путем интерполяции с М = 57 с последующим прореживанием в D - 8
раз, т. к. 7.125 = 57/8.
390
Глава 10. Преобразование частотыдискретизации
Изменение частоты дискретизации с коэффициентом М/D изображается в виде
схемы, показанной на рисунке 10.7 (а). Операция повышения частоты, обозначен­
ная как f М, состоит во введении М -1 нулевых отсчетов между парами отсчетов
xoid(n)' Замечательным свойством этой процедуры является то, что вычислитель­
ная сложность изменения частоты дискретизации с рациональным коэффициен­
том М/D меньше, чем сумма вычислительных сложностей интерполяции и по­
следующего прореживания, выполняемых по отдельности. Это объясняется тем,
что мы можем объединить интерполирующий фильтр LPFM и прореживающий
фильтр LPFd в о д и н фильтр, который на рисунке 10.7 (Ь) обозначен как LPFMj/d.
Процесс, изображенный на рисунке 10.7 (Ь) обычно называют преобразованием час­
тоты дискретизации, потому что, если М > D, мы имеем интерполятор, а при D > М
мы имеем устройство прореживания. (Фильтр LPFM//D часто называют многочас­
тотным фильтром.) Фильтр LPFM/ D должен существенно подавлять спектраль­
ные изображения, возникающие при интерполяции, чтобы вызванные ими
искажения полезного сигнала не превышали некоторого допустимого уровня.
Рис. 10.7. Преобразование частоты дискретизации с рациональным коэффициен­
том: (а) комбинация интерполяции и прореживания; (Ь) преобразование
частоты дискретизации с помощью единственного фильтра
Заметим, что граница полосы задерживания фильтра ЬРРМ должна быть меньше
/ пеи) /2, чтобы после прореживания не возникали наложения. Подавление в полосе
задерживания ЬРРм/ъ должно быть достаточно большим, чтобы остатки ослаблен­
ных изображений спектра не вносили шум недопустимо высокого уровня, когда
они накладываются на диапазон частот от 0 до/ пет / 2 в результате прореживания.
И снова наша задача интерполяции/прореживания сводится к задаче проек­
тирования Ф НЧ. Для ее решения мы можем применить все наши знания и все
инструменты, которые доступны для проектирования Ф НЧ. При программном
проектировании интерполяторов/прореживателей мы хотим, чтобы Ф Н Ч эф­
фективно подавлял изображения спектра, и его реализация работала как можно
быстрее. Для аппаратурных интерполяторов/прореживателей мы стремимся до­
стичь разумного компромисса противоречивых требований высокого качества
(минимального уровня наложений), простой архитектуры, высокой пропускной
способности и низкого энергопотребления.
Фильтрация при изменении частоты дискретизации в том виде, в каком мы ее
представили, удручающе неэффективна. Представьте себе изменение частоты ди­
скретизации сигнала с коэффициентом 4/3; нам необходимо вставить в исходную
последовательность три нулевых отсчета на каждый исходный отсчет, а затем по­
дать эту расширенную последовательность на ФНЧ. Три четверти умножений
10.4. Полифазные фильтры
391
при реализации фильтра будут давать нулевой результат. Затем мы отбросим две
трети отфильтрованных отсчетов. Это очень неэффективно! К счастью, сущест­
вуют специальные фильтры преобразования частоты дискретизации, которые на­
зываются цифровыми полифазными фильтрами и которые позволяют повысить
эффективность фильтрации. Рассмотрим полифазные фильтры, а затем обсудим
особый фильтр, известный как последовательный интегратор-гребенчатый
фильтр (ИГФ = CIC —cascaded integrator-comb) , использование которого эффек­
тивно при аппаратурной реализации преобразования частоты дискретизации.
10.4. Полифазные фильтры
Допустим, нам требуется интерполирующий КИХ-фильтр с линейной ФЧХ,
имеющий 12 ответвлений. Первоначальный план состоит в том, что мы будем по­
давать последовательность x int(n ) с добавленными нулевыми отсчетами, пока­
занную на рисунке 10.8 (а), на этот фильтр, коэффициенты которого показаны на
рисунке 10.8 (Ь), чтобы получить требуемую последовательность x new(n ). (Этот
фильтр, коэффициенты которого образуют последовательность h(k), часто назы­
вают КИХ-фильтром-прототипом. Это вызвано тем, что мы собираемся позже
модифицировать его.) Обратите внимание на то, что во времени, которое на ри­
сунке 10.8 (а) увеличивается вправо, коэффициенты фильтра используются в
обратном порядке, как показано на рисунке 10.8 (Ь). Такая фильтрация требует
12 умножений на каждый выходной отсчетx new(n % при том, что девять произве­
дений всегда будут равны нулю. Но оказывается, что нам не нужно выполнять
все 12 умножений.
X in.(n ')
*o,d(3)
(а)
->—•—•—
0
12
3
h(к)
(Ь)
4
5
6
7
8
9
10 11
11
(/?')
с D
/7(11)
/
12 13 14
/7(0)
!
° 8
7 6
5
4
3
°
Рис. 10.8. Интерполяция в 4 раза с помощью КИХ ФНЧ с 12 ответвлениями:
(а) входные отсчеты фильтра; (Ь) коэффициенты фильтра, используе­
мые для вычисленияxnew(n')
Чтобы показать это на примере, предположим, вернувшись к нашему случаю
интерполяции с М = 4, что мы решили использовать Ф Н Ч с 12 ответвлениями, ко­
эффициенты которого показаны на рисунке 10.8 (Ь). Задача интерполирующего
фильтра нижних частот состоит в вычислении свертки коэффициентов с последо­
вательностью x int(n ). Рисунок 10.9 (а) показывает, как коэффициенты фильтра
392
Глава 10. Преобразование частотыдискретизации
накладываются на часть отсчетов х ^ п ) при вычислении первого отсчета после­
довательности х пеге( п '), х пт)(0). Коэффициенты фильтра показаны символами□
По точкам, которые на рисунке 10.9 (а) представляют последовательность
х тг(п ")>мы ВИДИМ>что, хотя среди коэффициентов девять отмечены символом П и
три —символом (Э, только три коэффициента, отмеченные символом Б!, дают не­
нулевые произведения, вносящие вклад в сумму хпеь1)(0). Это коэффициенты
КИХ-фильтра 1г(3), А(7) и к(11). Суть здесь в том, что нам не нужно выполнять
умножения, когда участвующий в нем отсчет х ^ ( п ) равен нулю. Чтобы получить
х пем(0)’ нам необходимо выполнить только 3 умножения. Чтобы уяснить идею
полифазного фильтра, вспомним, что для вычисления х пеьв( 0 ) мы используем ко­
эффициенты фильтра-прототипа, отмеченные значками 0 . Когда мы сдвинем им­
пульсную характеристику вправо на один отсчет, мы будем использовать для
вычисления х пеге)(1) коэффициенты, отмеченные на рисунке 10.9 (Ь) кружочками,
т. к. ненулевые отсчеты последовательности х ^ п ) попадут под них. Эти кружоч­
ки представляют коэффициенты Ь(0), к(4) и к( 8 ).
Л»
„(1 )
□о
ОО
/7(4)
о ЛГ
Щ
/7(7)-
/7(3)
Хо.й<°)
□
~т— -т—•—ь-
*оИ<1 >
^ (3 )
/ *0И(2 )
хо,с(2)
Л(8У к-
• •
Врем я
°
МО)
\
>4
\
Р '
(Ь)
А хпе«(3)
..ПО,
.д о
ё'
*«(1^
_ ■
; -
У
о
/ **(2 )
У 3)
■ ■*
О■ ^■
®
:
г,
—•..•.... № Д .. ♦ ».. • —
(гЛ
• • »►
Врем я
(а)
х ом(2 )
\.Г
/Х 3>
Врем я
!— •
^
*
«. ) о У
•►
Врем я
«I)
Рис. 10.9. Коэффициенты фильтра, используемые для вычисления разных отсче­
тов последовательности хпеи,(л')
Таким же образом, когда мы сдвинем импульсную характеристику вправо еще
на один отсчет для вычисления х пет( 2 ), мы будем использовать коэффициенты,
показанные на рисунке 10.9 (с) ромбиками. Наконец, мы сдвинем импульсную
характеристику вправо еще раз и используем коэффициенты, показанные на ри­
сунке 10.9 ((1) треугольниками, для вычисления хпеге)(3). Еще один сдвиг импуль­
сной характеристики вправо приведет снова к использованию коэффициентов,
отмеченных значком Б!, для вычисления хпеи)(4). Теперь легко понять предлагае­
мую схему —имеются М = 4 разных набора коэффициентов, использованных для
вычисления отсчетов х пет(п ) по отсчетам х 0[^(п). Каждый раз, когда необходимо
вычислить новый отсчет х пегю(п ) мы продвигаемся циклически на один шаг по че­
тырем наборам коэффициентов и выполняем вычисления следующим образом:
393
10.4. Полифазные фильтры
х пш( 0 ) = к(.3 )х 01с^ 2 ) + /г( 7 )х 01^ 1 ) + к ( 1 1 )хо^ 0 )
х петю( 1) = К 0 )х оЖ З) + Н(4)хЫ(^ 2 ) + к( 8 )х 01^ 1)
хпет(2) = К Ъ о Ж З ) + К 5 )х Ы(]^2) + К 9 )хЫс^ 1)
и ^ ) = К 2 )х ы/ 3 ) + К6)ХЫ(^2) + А( 10)хоУЦ1)
х пеш(4) = К З )х о1с^ З ) + /г( 7)хо1(^ 2 ) + /г( 1 1)хо1(£ 1)
х пеш(5) = КО)х 01<£4 ) + к(4)х 0ф ) + к(8)хо1(^ 2 )
х пеи№) = к { 1 )х 01(^ 4 ) + К 5 )х 01^ 3 ) + Н(9 )х 01^ 2 )
х пеи>(7) = К 2 )х 01({{4 ) + Ь(6 )х 01(^ 3 ) + к( 1 0 )хо1^ 2 )
«-использует коэффициенты,
отмеченные значком б]
«-использует коэффициенты,
отмеченные значком О
использует коэффициенты,
отмеченные значком О
^использует коэффициенты,
отмеченные значком Д
«^использует коэффициенты,
отмеченные значком !Э
«-использует коэффициенты,
отмеченные значком О
«-использует коэффициенты,
отмеченные значком О
«-использует коэффициенты,
отмеченные значком А
и так далее.
Привлекательной чертой этого механизма является то, что нам в действитель­
ности вообще не нужно формировать последовательность х^п((п % и мы не выпол­
няем никаких ненужных вычислений. Это и есть полифазная фильтрация.
Эта последовательность вычислений показывает нам не только, что нужно филь­
тровать, но и как это нужно делать. Мы можем реализовать наш метод полифазной
интерполирующей фильтрации с помощью банка из четырех субфильтров, пока­
занного на рисунке 10.10. Эта схема называется коммутаторной моделью полифазных интерполирующих фильтров. В ней имеется переключатель, который
совершает полный оборот на каждый поступающий отсчет х 0у(<п). Таким спосо­
бом вычисляются четыре отсчета х пет(п ) на каждый входной отсчет х ^ п ) .
В общем случае, если необходима интерполяция с коэффициентом М, нам нужно
иметь М субфильтров. На рисунке 10.11 приведена структура полифазного фильтра,
использующая минимум памяти, которая содержит три переключателя, вращаю­
щихся синхронно против часовой стрелки и подключающих последовательно четы­
ре набора коэффициентов на каждый новый отсчет х 0у(п). Как и раньше, в этом
случае вычисляются четыре новых отсчета хпеге)(п ) на каждый отсчет х 0ц(п).
Преимуществом этой схемы является минимизация количества регистров для
сохранения задержанных отсчетов х 0ц(п). Если полифазный фильтр реализует ко­
эффициент интерполяции М, то используются М наборов коэффициентов. Мы мо­
жем обосновать приведенные блок-схемы полифазных КИХ-фильтров с помощью
уравнений в 2 -области. Начнем с описания полифазного КИХ-фильтра вида:
Щ г) - НО) + А(4)гш-1 + К 8)гы-2 +
+ \Ы 1 ) + К 5 )гы- ' + Ы9)гт-2]2м -1 +
+ Щ 2 ) + т ц п~ 1 + К 1 0 )1 1п 2 \гм - 1 +
+ [КЗ) + И7)гы-< + Н11)гы- 2]гош-^
(10-5)
394
Глава 10. Преобразование частотыдискретизации
где 2 гП~ 1 - единичная задержка на частоте дискретизации входного сигнала, а
~ единичная задержка на частоте дискретизации выходного сигнала, реали­
зуемая с помощью переключателя. Поскольку 21И~ 1 = гоШ~ 4 и г1И~2 = гоШ~8 . мы мо­
жем написать;
Щ г ) = Ь(0) + К 4 ) 2оШ~4 + К 8 ) 2оШ~8 +
+ [Ь(1 ) + К 5 )г ш ~ 4 + К9)2 Ш ~8 ]гш ~ 1 +
+ [К 2 ) + К 6 )2о и Г 4 + К 1 0 )2 ШГ 8 ]2 оиг 2 +
+ [ а д + К 7 )г оШ- 4 + к(11)2оШ~8 ]2оШ-3 =
= Н(0 ) + К4)2 ш ~ 4 + К 8 )гои1- 8 +
+ К 1 )2 оиг~ 1 + К5)2ш ~5 + К9)20М~9 +
+ К 2 )2ои{~2 + К 6 )2оШ- 6 + К 1 0 )2оШ~ 10 +
+ к О ) 2оиГ 3 + К 7 )2 оШ~7 + К 1 1 )2 оШ~ 11 =
=1
К к) 2 0Ш~к ,
( 10 -6 )
*=0
что представляет собой классическую передаточную функцию КИХ-фильтра
с 12 ответвлениями. Уравнение (10.5) называется полифазным разложением
уравнения ( 10 .6 ).
Рис. 1 0 .1 0 . Структура полифазного интерполирующего фильтра с коэффициен­
том 4, реализованного в виде банка субфильтров
10.4. Полифазные фильтры
395
Рис. 10 .11 . Структура полифазного фильтра с минимальной памятью, использую­
щая коммутируемые коэффициенты.
Рассматривая пример, приведенный на рисунке 10.9, следует иметь ввиду сле­
дующее:
1. Для коэффициента интерполяции М большинство людей предпочита­
ют иметь КИХ-прототип с количеством ответвлений, кратным М, что
облегчает реализацию. Интерполирующие КИХ-фильтры, о которых
мы говорили, вносят ослабление сигнала, равное коэффициенту интер­
поляции М. Чтобы компенсировать эти потери, мы можем увеличить
коэффициенты фильтра в Мраз или умножить выходную последовате­
льность х пш(п ) на М.
2.
3.
В примере на рисунке 10.9 использован фильтр-прототип с четным ко­
личеством ответвлений, но можно также использовать интерполирую­
щие фильтры-прототипы с нечетным количеством ответвлений [4].
Например, для реализации коэффициента интерполяции 5 можно ис­
пользовать КИХ-прототип длиной в 15 ответвлений.
Поскольку наборы коэффициентов на рисунке 10.11 не обязательно
должны быть симметричными, мы не можем уменьшить количество
операций, используя сложенную структуру КИХ-фильтра, которую
мы обсуждаем в разделе 13.7.
Основываясь на структуре, показанной на рисунке 10.10, мы можем построить
полифазный фильтр с прореживанием в 4 раза, используя переключатель на вхо­
де схемы, как на рисунке 10.12. Переключатель проходит циклически по четырем
позициям (И = 4), подавая четыре отсчета входной последовательности х ^ п ) на
субфильтры, затем выходные сигналы четырех субфильтров суммируются и
дают один отсчет выходной последовательности х пеи1( п '). Заметьте, что субфиль­
тры здесь точно те же, что и в схеме интерполирующего фильтра на рисунке 10 . 10 .
Достоинством полифазного прореживающего фильтра является то, что выполня­
ются только действительно необходимые вычисления. Это значит, что в процессе
прореживания никакие вычисленные отсчеты не отбрасываются.
На практике преобразование частоты дискретизации с большими коэффици­
ентами выполняется в несколько этапов (при этом схема на рисунке 10 .1 2 , напри­
мер, может использоваться как один каскад), на каждом из которых выполняется
преобразование с меньшим коэффициентом. Каскадная реализация обладает сле­
дующими преимуществами:
□ уменьшается вычислительная нагрузка,
□ упрощается проектирование фильтров,
396
Глава 10. Преобразование частотыдискретизации
□
уменьшается объем памяти,
□
уменьшается вредное влияние ограниченной длины слова коэффици­
ентов.
Рис. 10.12. Структура полифазного прореживающего в 4 раза фильтра в виде бан­
ка КИХ-субфильтров
Изложенное введение в преобразование частоты дискретизации по необходи­
мости затронуло лишь поверхность этой важной технологии ЦОС. К счастью для
нас, блестящая работа первых инженеров и математиков, исследовавших эту об­
ласть, хорошо отражена в литературе.
Ряд стандартных учебников по ЦОС затрагивают более тонкие вопросы проекти­
рования многочастотных фильтров [5-7], другие книги посвящены исключительно
полифазным фильтрам и многочастотным системам [8-10]. Любознательный чита­
тель может продолжить изучение этой темы и узнать, как в многочастотных систе­
мах выбирается количество каскадов [ 1 , 1 1 ], из каких соображений выполняется
проектирование оптимальных КИХ-фильтров [1, 12], какие выгоды дает использо
вание полуполосных КИХ-фильтров [4,13], в каких случаях предпочтение мож­
но отдать БИХ-фильтрам [12], каковы особенности преобразования частоты ди­
скретизации в обработке изображений [14 -16], какие рекомендации существуют
для разработчиков управляющей логики при аппаратурной реализации алгорит­
мов преобразования частоты дискретизации [ 1 2 ], как преобразование частоты
дискретизации помогает более эффективно использовать коммерческую тесто­
вую аппаратуру [17, 18], и какие программные инструменты проектирования
многочастотных фильтров существуют сегодня [19].
397
10.5. Каскадные интеграторы-гребенчатые фильтры
Прежде чем покончить с преобразованием частоты дискретизации, познако­
мимся с последней темой —каскадными интеграторами-гребенчатыми фильтрами.
Эти фильтры популярны среди разработчиков систем преобразования частоты
дискретизации в современных системах связи.
10.5. Каскадные
интеграторы-гребенчатые фильтры
Каскадные интеграторы-гребенчатые фильтры (ИГФ ) представляют собой
эффективную реализацию узкополосных ФНЧ.И в этом качестве используются
для аппаратурной реализации прореживания и интерполяции в современных си­
стемах связи.
ИГФ, частный случай более общего класса фильтров на основе частотной вы­
борки, обсуждаемых в разделе 7.1, хорошо подходят для антиэлайзинговой филь­
трации, предшествующей прореживанию (понижению частоты дискретизации),
как показано на рисунке 10.13 (а), и для подавления изображений спектров при
интерполяции (повышении частоты дискретизации), как изображено на рисун­
ке 10.13 (Ь). Оба применения связаны с необходимостью фильтрации высокоско­
ростных потоков данных в таких устройствах как аппаратурные квадратурные
модуляторы и демодуляторы в современных беспроводных системах, а также сиг­
ма-дельта АЦП и ЦАП.
Прореживание, fsout < fsin
х(п) ь Прореживающий
ИГФ
Компенсирующий
и прореживающий
КИХ-фильтр
У(п)
Интерполяция, fsout > fs.
Рис. 1 0 .1 3 . Применения ИГФ: (а) прореживание; (Ь) интерполяция
Поскольку АЧХ таких фильтров имеет форму, подобную функции зт(л:)/г,
после ИГФ или перед ним обычно включают более качественный КИХ-фильтр с
линейной ФЧХ, задачей которого является компенсация неравномерности АЧХ
ИГФ в полосе пропускания. Такая каскадная структура обладает рядом ценных
качеств. Например, при прореживании благодаря предварительной фильтрации
ИГФ узкополосные Ф Н Ч удается реализовать с существенным уменьшением
вычислительной сложности по сравнению с реализацией в виде одного КИХ
ФНЧ. Кроме того, КИХ Ф Н Ч второго каскада работает на пониженной частоте
дискретизации, что позволяет уменьшить потребление энергии в высокоскорост­
ных аппаратурных реализациях. Дополнительным преимуществом ИГФ являет­
ся то, что они не используют операции умножения.
398
Глава 10. Преобразование частотыдискретизации
ИГФ были предложены сообществу специалистов по обработке сигналов более
двух десятилетий тому назад, но возможности их использования выросли в послед­
ние годы [20]. Прогресс технологии СБИС, расширение использования методов
полифазной фильтрации, успешное развитие техники сигма-дельта преобразова­
телей и быстрое развитие беспроводных систем связи существенно подстегнули
интерес к ИГФ и модификацию их традиционных схем. Ниже приводится введе­
ние в структуры и свойства традиционных ИГФ, представлены их частотные ха­
рактеристики и обсуждаются некоторые важные аспекты их реализации.
1 0.5.1. Рекурсивные фильтры скользящего
суммирования
ИГФ ведут свою родословную от рекурсивных фильтров скользящего суммиро­
вания, которые в свою очередь представляют собой эффективную форму нере­
курсивного фильтра скользящего среднего. Посмотрев на D-точечный фильтр
скользящего среднего, изображенный на рисунке 10-14 (а), можно видеть, что для
вычисления выходного отсчета у(п) требуется выполнить D -1 сложений плюс
одно умножение на 1/D.
Г ребенчаты й
ф ил ь тр
х(п)
И н тегр ато р
н Э — н£>
у(п)
—►
z -1
Преды дущ ее
среднее,
у{п-1)-
___ 1
x(n-D)
x(n-D)
(to)
(с)
Рис. 1 0 .1 4 . D-точечные усредняющие фильтры: (а) стандартный фильтр скользя­
щего среднего; (Ь) рекурсивный фильтр скользящего суммирования;
(с) версия D-точечного усредняющего фильтра с использованием ИГФ
Выходной сигнал фильтра скользящего среднего с D ответвлениями во вре­
менной области вычисляется как
у(п) = ( 1/D ) [х(п) + х ( п - 1 ) + х (п -2 ) + х (п -3 ) + ... + x(n -D + 1 )\.
(Ю-7)
В 2 -области этому выражению соответствует изображение
Y(n) = (1/D ) [.Х(п) + X (n )z ~ 1 + X (n)z ~2 + X(n)z~3 + ... +X(n)z~D+1] ,
(10-8)
а передаточная функция H(z) выглядит следующим образом
H(z) = Y(z)/X(z) =
D-1
( 1/D)Y j z~n =
( 1/D) [1 +z~1 +z~2 + ... + z~D+1] .
(10-9)
10.5. Каскадные интеграторы-гребенчатые фильтры
399
Эквивалентной, но более эффективной формой фильтра скользящего среднего
является рекурсивный фильтр скользящего суммирования, показанный на рисун„ ке 10.14 (Ь), где текущий отсчет х(п) прибавляется к предыдущему значению выход­
ного сигнала y i n - 1), а самый старый отсчет,x(n-D ), вычитается из него. Разностное
уравнение, описывающее фильтр скользящего суммирования, имеет вид
У(п) = (1/D )[x(n) - x (n -D )] + у ( п - 1 ) ,
(10-10)
а передаточная функция H(z)
H(z) = ( 1/D) [1 - z~D]/[1 - z~1] .
(10-11)
Мы используем одно и то же обозначение H(z) для передаточных функций фи­
льтра скользящего среднего и рекурсивного фильтра скользящего суммирования
потому, что их передаточные функции равны. Заметьте, что фильтр скользящего
среднего имеет D - 1 элементов задержки, а первая линия задержки рекурсивного
фильтра скользящего суммирования содержит D элементов.
Фильтр скользящего суммирования имеет то преимущество, что он требует
только две операции сложения на один выходной отсчет, независимо от величи­
ны D задержки! Этот фильтр используется во многих приложениях, где подавле­
ние шума достигается за счет усреднения. Далее мы увидим, что ИГФ сам по себе
также является рекурсивным фильтром скользящего суммирования.
10.5.2. Структуры ИГФ
Если мы представим линию задержки одним блоком и опустим масштабирую­
щий множитель 1/D на рисунке 10.14 (Ь), мы получим классическую форму ИГФ
первого порядка, каскадная структура которой показана на рисунке 10.14 (с).
Часть ИГФ с прямой связью называется гребенчатой секцией, разностная задер­
жка которой равна D, а секцию с обратной связью обычно называют интеграто­
ром. Гребенчатый каскад вычитает задержанный входной отсчет из текущего
входного отсчета, а интегратор представляет собой просто аккумулятор, к которо­
му на каждом периоде дискретизации добавляется новый отсчет. Разностное
уравнение ИГФ имеет вид
y (n )= x (n )-x (n -D )+ y (n -1 ),
(10-12)
а его передаточная функция выглядит так
H ck(z) - [1 - z-D\/{1 - z-1\ .
(Ю-13)
Чтобы увидеть, чем интересен ИГФ, мы, прежде всего, исследуем его поведение
во временной области для D = 5 по характеристикам, показанным на рисунке 10.15.
Обратите внимание на то, что положительный импульс с выхода гребенчатого
фильтра приводит к тому, что все отсчеты на выходе интегратора становятся рав­
ными единице. Затем, через D отсчетов, отрицательный импульс с выхода гребен­
чатого фильтра обнуляет интегратор, все его последующие выходные отсчеты
становятся равными 0 .
Ключевым моментом здесь является то, что общая импульсная характеристи­
ка ИГФ представляет собой дискретный прямоугольный импульс, идентичный
400
Глава 10. Преобразование частотыдискретизации
импульсной характеристике рекурсивного фильтра скользящего суммирования.
(Фильтры скользящего среднего, рекурсивные фильтры скользящего суммиро­
вания и ИГФ — близкие родственники. Они имеют одинаковые карты нулей и
полюсов в г-области, их АЧХ имеют одну и туже форму, их фазо-частотные ха­
рактеристики идентичны, а их передаточные функции отличаются только посто­
янным масштабирующим множителем.) АЧХ и ФЧХ ИГФ при О = 5 показаны на
рисунке 10.16 (а), где частотная ось нормирована относительно входной частоты
дискретизации / 5 = / 5 іп.
Вычисление передаточной функции Нсіс(г) на единичной окружности, при г =
е*(0, дает частотную характеристику ИГФ вида
Нск( е П - ( 1 - <г>£>)/( 1 - е -> ) = [е-)0>Ъ/1 (е]<»О/ 2 _ е-)шО/2 } у \ е-}о)/2 {е]о) /2 _ е-)<»/2 )\ .
Используя тождество Эйлера 2 /8 т(а) = еіа —
(10-14)
мы можем записать
Нск(е*») = (е~і^Г>/2 / е -> /2 ) [^/зіп (о>1)/2)/2]$\п(а) /2 ) ] =
= е~1(°(0 - 1 )/ 2 [8{п((0 п / 2 )/$т((о/2 ) ] .
Импульсная характеристика
гребенчатого фильтра
2 .................................. .... |
1і і
0
-1
■
!
-?
Общая импульсная
характеристика ИГФ
Импульсная характеристика
интегратора
1.5
1і
(10-15)
1.5
1
1
0.5
0.5
0
0
-0.5
-0.5
5
Время
5
Время
5
Время
Рис. 10 .1 5 . Характеристики однокаскадного ИГФ во временной области при 0 = 5
г-плоскость
АЧХ
ш
сс
-П2
э
Частота
(а)
-ПА
$
О
Частота
(Ь)
ЦЛ Щ
-1
0
1
Действительная часть
(с)
Рис. 10 .1 6 . Характеристики однокаскадного ИГФ при 0 = 5: (а) ЛАЧХ; (Ь) ФЧХ; (с)
карта нулей и полюсов
И в результате получаем Ф Н Ч с характеристикой вида 8Іп(х)/х, центр которой
расположен на частоте 0 Гц. (По этой причине ИГФ иногда называют ятс-филь-
401
10.5. Каскадные интеграторы-гребенчатые фильтры
трами.) Расположение нулей и полюсов ИГФ в 2 -плоскости при 0 = 5 приведено
на рисунке 10.16 (с), при этом гребенчатый фильтр дает О нулей, распределенных
равномерно по единичной окружности, а интегратор дает единственный полюс,
компенсирующий ноль в точке 2 = 1 . Нули гребенчатого фильтра, которые явля­
ются корнями степени О из 1 , расположены в точках 2 (т )= е^лтп/ г>, где т = 0 , 1 , 2 ,
..., 0 - 1 , соответствующих нулям АЧХ на рисунке 10.16 (а).
Рискованная, как правило, ситуация, когда полюс находится на единичной
окружности, в данном случае не должна нас беспокоить, потому что передаточная
функция Яас(2) не содержит ошибки, обусловленной квантованием коэффициен­
тов. Коэффициенты ИГФ равны единице и в формате чисел с фиксированной запя­
той представляются без погрешности. Хотя ИГФ является рекурсивным фильтром,
он гарантированно устойчив, обладает линейной ФЧХ и имеет импульсную харак­
теристику конечной длительности.
Если мы рассмотрим модуль Я С1С( е ^ ) из (10.15), мы можем определить коэф­
фициент передачи нашего ИГФ на нулевой частоте. Положив в (10-15)(о=0, мы
имеем
Коэффициент передачи ИГФ = \Нс1с(е)ш) \ ш=о = |8 т (0 )/8 т (0 ) | = 0 /0 . (10-16)
Пусть эта неопределенность вас не беспокоит, мы можем применить к (10-16)
правило маркиза де Лопиталя
Коэффициент передачи ИГФ = [со8((л)0/2)(0/2)]/[соБ(си/2)( 1/2)] =
= [со8(0)(Д/2)]/[со8(0)( 1/2)] = Б .
(10-17)
Таким образом, коэффициент передачи ИГФ для постоянной составляющей
равен задержке гребенчатого фильтра £). Этот факт будет важным для нас, когда
мы захотим реализовать наш ИГФ в аппаратуре.
ИГФ используются для антиэлайзинговой фильтрации перед прореживанием
и для подавления изображений спектра интерполированных сигналов [21]. Хоро­
шо запомнив все сказанное, поменяем порядок следования гребенчатого фильтра
и интегратора, в котором они показаны на рисунке 10.14 (с), на обратный — мы
имеем право сделать так, потому что оба фильтра линейны —и введем блок изме­
нения частоты дискретизации в Я раз, получив схему на рисунке 10.17 (а). (Пре­
доставляем читателю самостоятельно доказать, что импульсная характеристика
комбинации интегратор-гребенчатый фильтр, предшествующая изменению ча­
стоты дискретизации на рисунке 10.17 (а), равна импульсной характеристике
фильтра, изображенного на рисунке 10.15 (с).) В большинстве применений ИГФ
коэффициент преобразования частоты дискретизации И принимается равным
разностной задержке гребенчатого фильтра О, но мы пока будем рассматривать
эти параметры как независимые.
Операция прореживания 4 /? состоит в отбрасывании каждого /?-го отсчета, в
результате чего выходная частота дискретизации равна / 5 ои1= / 5 /Я . Чтобы ис­
следовать подробнее поведение ИГФ в частотной области, на рисунке 10.18 (а)
показана ЛАЧХ ИГФ, предшествующего прореживанию, при 0 = 8 . Требуемая
полоса пропускания фильтра представляет собой полосу частот шириной В,
центр которой расположен на нулевой частоте. Ключевым моментом для расчета
ИГФ является заворачивание спектра, обусловленное прореживанием.
402
Глава 10. Преобразование частотыдискретизации
П рореж ивание
И н тер п о л я ц и я
J 1_
И н т е гр а то р Гр еб ен чаты й
к
к
ф ил ьтр
Гр еб ен чаты й
ф ил ьтр
(а)
и н т е гр а т о р
(Ь)
Рис. 1 0 .1 7 . Использование однокаскадных КГИФ при: (а) прореживании; (Ь) ин­
терполяции
Затененные на рисунке 10.18 (а) полосы частот шириной В, центры которых
расположены на частотах / 5 г„ /Я, при прореживании в /?=£ раз будут накладывать­
ся непосредственно на интересующий нас диапазон частот, как показано на ри­
сунке 10.18 (Ь). Заметьте, что уровень наибольшего накладываемого компонента
примерно на 16 дБ ниже уровня компонента в интересующем нас диапазоне час­
тот. Конечно же, уровни накладываемой энергии зависят от ширины полосы час­
тот В —чем меньше В, тем мейыпе уровень наложений после прореживания.
Ч а с т о т а (п е р е д п р о р е ж и в а н и е м )
Ч а с т о т а (после п р о р е ж и в а н и я )
Рис.
( и 16)
10.18. АЧХ прореживающего ИГФ первого порядка с О = 8: (а) характеристика
перед прореживанием; (Ь) характеристика и наложения после проре­
живания в Я = 8 раз
На рисунке 10.17 (Ь) показан ИГФ, используемый для интерполяции, при
этом символ | Я обозначает введение Л - 1 нулей между парами соседних отсчетов
исходной последовательности, в результате чего получаем частоту дискретиза­
ции выходного сигнала у(п), равную / 50и£=^ Л т- (® текущем обсуждении ИГФ
интерполяция понимается как введение нулей с последующей фильтрацией.)
На рисунке 10.19 (а) показан произвольный низкочастотный спектр сигнала,
403
10.5. Каскадные интеграторы-гребенчатые фильтры
подаваемого на интерполирующий ИГФ с D = R = 8 , показанный на рисунке
10.17 (Ь), с его копиями^ Спектр выходного сигнала фильтра на рисунке 10.19 (Ь)
показывает, как неидеальная фильтрация приводит к появлению нежелательных
изображений спектра.
После интерполяции мешающие изображения основного спектра шириной В
расположены вокруг значений частоты, на которых АЧХ фильтра принимает ну­
левые значения и которые кратны частоте f s 0Ut /R . Если мы после ИГФ включим
обычный КИХ Ф Н Ч на основе линии задержки с ответвлениями, полоса подав­
ления которого включает полосу первого изображения, мы можем достичь доста­
точно хорошего подавления изображений.
» .
(а)
ш -10
4
---- ► £3 *—
-20
-30
s.in
і :
•
!f v
's.in
2f
“ s,in
К*
4f
Ч а с т о т а (п е р е д и н т е р п о л я ц и е й )
(b)
Ч а с т о т а (после и н те р п о л я ц и и )
Рис. 10.19. Спектры в случае интерполирующего ИГФ первого порядка, О = Я = 8: (а)
спектр входного сигнала до интерполяции; (Ь) изображения выходного
спектра
10.5.3. Улучшение подавления ИГФ
Самый общий метод улучшения подавления ИГФ состоит в повышении его
порядкаЛ/путем включение нескольких секций фильтра. На рисунке 10.20 пока­
заны структура и ЛАЧХ прореживающего ИГФ третьего порядка (М = 3).
Обратите внимание на то, что подавление в полосах частот вблизи / 5 г„ /Л на
рисунке 10.20 (Ь) улучшилось по сравнению с фильтром первого порядка, пока­
занным на рисунке 10.18 (а). Поскольку М = 3 секций ИГФ включены последова­
тельно, общая АЧХ представляет собой произведение характеристик каскадов, или
IНас, порядок M^ej0)) I= Isin(iuD/2 ) / sin(o)/2) \м .
(10-18)
404
Глава 10. Преобразование частотыдискретизации
За улучшение ослабления копий спектра мы платим увеличением количест­
ва аппаратурных сумматоров1и увеличением неравномерности АЧХ в полосе
пропускания^. Дополнительная цена повышения порядка —увеличение коэф­
фициента передачи фильтра, который растет экспоненциально с ростом поряд­
ка. Поскольку ИГФ обычно должны работать с полной разрядностью, чтобы
сохранить устойчивость, разрядность сумматоров’определяется как М[о%2(0),
так что за более высокий порядок фильтра приходится платить большой длиной
слова данных. Несмотря на это, многокаскадные реализации распространены в
коммерческих интегральных схемах, при этом ИГФ М-то порядка часто называ­
ют 5шсм фильтрами.
о
Рис. 10.20. Прореживающий ИГФ третьего порядка, М = 3, О = Я = 8: (а) структура;
(Ь) ЛАЧХ перед прореживанием
10.5.4. Особенности реализации ИГФ
В ИГФ гребенчатый каскад может предшествовать или следовать за интеграто­
ром. Однако важно поместить гребенчатый фильтр на той стороне, которая работа­
ет на меньшей частоте дискретизации, т. к. при этом для реализации задержки
требуется меньше памяти. Поменяв порядок следования гребенчатых фильтров и
операций изменения частоты дискретизации на рисунке 10.17 на обратный, полу­
чим наиболее распространенную реализацию ИГФ, показанную на рисунке 10.21.
Заметьте, что гребенчатый каскад прореживающего фильтра теперь имеет длину
линии задержки (разностную задержку), равную N = D/R. Это происходит благо­
даря тому, что задержка на N отсчетов после прореживания в R раз эквивалентна
задержке в D отсчетов перед прореживанием в R раз. Аналогично для интерполиру­
ющего фильтра: задержка на N отсчетов перед интерполяцией с коэффициентом R
эквивалентна задержке на D отсчетов после интерполяции.
А также увеличением объема памяти, необходимого для реализации регистров сдвига
—(прим. перев.).
Или соответствующим сужением полосы пропускания —(прим. перев.).
10.5. Каскадные интеграторы-гребенчатые фильтры
405
Конфигурации, приведенные на рисунке 10.21, имеют два главных достоинст­
ва: во-первых, новая разностная задержка гребенчатого каскада уменьшается до
N = D /R, что снижает требуемый объем памяти, а во-вторых, гребенчатая секция
теперь работает на пониженной частоте дискретизации. Оба эти преимущества
приводят к снижению потребляемой энергии.
Типовое значение параметра разностной задержки N гребенчатой секции состав­
ляет 1 или 2 для больших коэффициентов преобразования частоты дискретизации,
которые часто используются в повышающих/понижающих преобразователях.
По существу, N задает количество нулей частотной характеристики прореживаю­
щего фильтра, как показано на рисунке 10.22 (а).
Важной особенностью прореживающего фильтра на основе ИГФ является то,
что форма его характеристики в зависимости от коэффициента прореживания
меняется очень мало, как показано на рисунке 10.22 (Ь). Для значений R, превы­
шающих 16, изменение формы характеристики пренебрежимо мало. Это позво­
ляет использовать один и тот же компенсирующий КИХ-фильтр в системах с
переменным коэффициентом прореживания.
ИГФ подвержены переполнениям регистров, вызванных единичной обратной
связью в каждой интегрирующей секции. Эти переполнения не приводят к непри­
ятным последствиям, если выполняются следующие два условия:
1. Диапазон представления чисел в выбранном формате данных не мень­
ше максимальных ожидаемых значений выходных сигналов.
2.
Фильтр реализован в двоичной дополнительной арифметике (без на­
сыщения).
Прореживание
Интерполяция
(Ь)
(а)
Рис. 10.21. Однокаскадные реализации ИГФ: (а) для прореживания; (Ь) для интер­
поляции
0
0
N = 1^
10 /
У '\
-20 I
I
-30
-f*п.«12
s.out
;
\ :
'■!
LO
Ч
3
;/
;;
-10
Іt
1
-К Я
s.out
О
U
/
N- 2
\
/
/4
\
1
11
fs J 2
------= 2
У
а
\
/
I
I
.
-20 І
-fs.oJ2
\
— R =2 |
— R = 16 |
I:
-fsJ 4
0
Частота
Частота
(а)
(Ь)
U
/4
fs J 2
Рис. 10.22. Частотные характеристики прореживающего ИГФ: (а), для разных зна­
чений разностной задержки N при Я = 8; (Ь) для двух коэффициентов
прореживания при N = 2
Глава 10. Преобразование частотыдискретизации
406
Как показано в (10.17), ИГФ первого порядка имеет коэффициент передачи на
нулевой частоте (постоянной составляющей), равный И = N11, а Мвключенных по­
следовательно прореживающих фильтров имеют коэффициент передачи (МК)м .
Каждый дополнительный интегратор для правильной работы должен добавлять
М? бит. Интерполирующие ИГФ вводят нули между отсчетами входного сигнала,
что уменьшает коэффициент передачи в Л раз с учетом нулевых значений, следова­
тельно, полный коэффициент передачи интерполирующего ИГФ равен (МК)м/ К
Поскольку фильтр должен использовать целочисленную арифметику, длина
слова для каждого каскада фильтра должна быть достаточной, чтобы принять
максимальный сигнал (максимально возможный входной сигнал, умноженный
на коэффициент передачи) этого каскада.
Хотя коэффициент передачи прореживающего ИГФ равен (ЫК)М, в отдельных
интеграторах может возникнуть переполнение. (Их усиление для постоянной со­
ставляющей бесконечно.) Использование двоичной дополнительной арифмети­
ки позволяет преодолеть эту трудность, если длина слова интегратора способна
принять максимальное значение разности двух последовательных отсчетов (т. е.
разность дает не более однократного переполнения). Используя двоично-дополни­
тельный формат с его цикличностью, следующий гребенчатый фильтр вычислит
правильную разность двух последовательных выходных отсчетов интегратора.
Чтобы проиллюстрировать этот принцип, на рисунке 10.23 показано, как при
прореживании с использованием четырехбитового двоичного дополнительного
формата чисел первый выходной отсчет интегратора х ^ ( 0 ), равный шести, вычи­
тается из второго отсчета, х ^ ( 1 ) , равного 13 (что приводит к переполнению), и в
результате получается правильная разность 7.
Д есятичны й
+7
+6
+5
+4
+3
+2
+1
0
-1
-2
-3
-4
-5
-6
-7
-8
Двоичны й
дополнительны й
0111
0110
0101
0100
0011
0010
0001
0000
1111
1110
1101
1100
1011
1р ю
1001
1000
*іп .(0 ) = б двс = 0 1 1 0
ДВОИЧ
*іп,(1) = 13двС= 1101 ДВОИЧ
«3
явс
п осле п е р е п о л н е н и я
(з а в о р о т )
*Л 1 >-*«№>= 1101 .
+1010 ДВОИЧ
0111 ДВО
ИЧ
-6 две
+7' две
Рис. 10.23. Пример получения правильной разности при переполнении вдвоичных
дополнительных кодах
При интерполяции увеличение длины слова составляет один бит на каждую
гребенчатую секцию, и для правильной работы интеграторов необходимо избегать
10.5. Каскадные интеграторы-гребенчатые фильтры
407
переполнения. Таким образом, при интерполяции мы должны обеспечить увели­
чение длины слова на один бит данных на каждую гребенчатую секцию. Мы име­
ем некоторую свободу при отбрасывании отдельных младших битов в пределах
секций ИГФ, за счет некоторого увеличения шума на выходе фильтра. Исследо­
вание специфических эффектов отбрасывания младших битов, однако, достаточ­
но сложно, поэтому мы отсылаем читателя к работе [20 ].
Приведенные выше рассуждения были сфокусированы на ИГФ, реализуемых в
жесткой логике, но такие фильтры могут быть реализованы и на программируемых
ЦОС, использующих форматы данных с фиксированной запятой. Хотя такие про­
цессоры имеют жестко заданные разрядности шин и АЛУ и фиксированную длину
слова, реализация ИГФ и в этом случае может иметь преимущества при больших
коэффициентах изменения частоты дискретизации. Большую длину слова можно
реализовать с помощью многословных сложений, за счет дополнительных команд.
Даже в этих условиях при больших коэффициентах преобразования частоты диск­
ретизации вычислительная нагрузка на один отсчет в ЦПОС с фиксированной за­
пятой может быть меньше, чем объем вычислений, необходимый при использовании
обычного КИХ-фильтра на основе линии задержки с ответвлениями.
10.5.5. КИХ-фильтры компенсации и предискажений
В типовых применениях прореживания/интерполяции необходимо обеспе­
чить достаточно гладкую АЧХ фильтра в полосе пропускания и узкую переход­
ную полосу. Эти требования нельзя удовлетворить одним только ИГФ с его
спадающей АЧХ в полосе пропускания и широкой переходной полосой. Мы мо­
жем приблизиться к решению этой проблемы, например, при прореживании,
включив после ИГФ компенсирующий нерекурсивный КИХ-фильтр, как на ри­
сунке 10.13 (а), который позволяет сузить переходную полосу и выровнять АЧХ в
полосе пропускания.
В идеале АЧХ компенсирующего КИХ-фильтра должна представлять собой
инвертированную версию АЧХ ИГФ в полосе пропускания, наподобие той, что
показана штриховой линией на рисунке 10.24 (а) для простого КИХ-фильтра с
тремя ответвлениями, коэффициенты которого равны [-1 /1 6 ,9 /8 , -1/16]. Пунк­
тирной линией показана некомпенсированная спадающая в полосе пропускания
АЧХ ИГФ первого порядка с 11 = 8 , сплошной линией показана скомпенсирован­
ная характеристика включенных последовательно фильтров. Если увеличивает­
ся ширина полосы пропускания или порядок ИГФ, коррекция становится более
жесткой и требует повышения длины компенсирующего КИХ-фильтра. Пример
такой ситуации показан на рисунке 10.24 (Ь), где пунктирная кривая показывает
спад АЧХ в полосе пропускания ИГФ третьего порядка с II = 8 , а штриховая ли­
ния, описываемая уравнением [х/з 1п(х)] 3, представляет собой характеристику
компенсирующего КИХ-фильтра с 15 ответвлениями, имеющего коэффициенты
[-1 ,4 , -16,32, -64,136, -352,1312, -352,136, -64, 32, -16, 4, -1].
Широкополосная коррекция означает также, что сигналы вблизи частоты / 5оьЛ/2
сильно ослаблены при прохождении через ИГФ и, следовательно, должны быть
408
Глава 10. Преобразование частотыдискретизации
усилены компенсирующим фильтром, что увеличивает уровень шума. Поэтому
на практике часто ограничивают ширину полосы пропускания компенсирующего
КИХ-фильтра примерно одной четвертой частоты первого нуля АЧХ И ГФ 1.
Частота
Частота
(а)
(Ь)
Рис. 10.24. АЧХ компенсирующего КИХ-фильтра: (а) для прореживающего ИГФ
первого порядка; (Ь) для прореживающего ИГФ третьего порядка
Штриховые кривые на рисунке 10.24 представляют АЧХ компенсирующих
КИХ-фильтров, внутри которых не происходит изменение частоты дискретиза­
ции. (Частоты дискретизации на входе и на выходе КИХ-фильтров совпадают с
выходной частотой дискретизации прореживающего ИГФ f sout) Если бы ком­
пенсирующий КИХ-фильтр был предназначен для дополнительного прорежива­
ния в два раза, его АЧХ выглядела бы так, как на рисунке 10.25, где f s in — входная
частота дискретизации компенсирующего фильтра.
ш
‘2 --------- -
"
1
4
-6 !
-80
V 4
W2
Частота
Рис. 1 0 .2 5 . ЛАЧХ компенсирующего КИХ-фильтра с прореживанием в два раза
В качестве резюме запомним: прореживающий ИГФ — это просто очень эф­
фективная рекурсивная реализация фильтра скользящего среднего длины NR,
выходной сигнал которого прореживается в R раз. Аналогично, интерполирую­
щий ИГФ выполняет вставку R - 1 нулевых отсчетов между соседними входными
отсчетами с последующей фильтрацией фильтром скользящего среднего длины
NR, работающим на выходной-частоте дискретизации f sout. При прорежива­
нии и интерполяции с большими коэффициентами каскадные реализации на
1 Я благодарен моему коллеге по ЦОС Рэю Андрака из Andraka Consulting Group Inc. за
его ценные указания относительно этой особенности реализации.
Библиография
409
рисунке 10.13 требуют значительно меньшего объема вычислений, чем обыч­
ный КИХ-фильтр. Структуры ИГФ спроектированы так, чтобы максимизиро­
вать количество операций, выполняемых на более низкой частоте, что позволяет
уменьшить энергопотребление в высокоскоростных аппаратурных реализациях.
Кроме того, ИГФ не требуют умножений, для них достаточно только сложения и
вычитания. Их характеристики позволяют нам сказать, что, говоря техническим
языком, ИГФ являются экономными фильтрующими приборами.
В разделе 13.24 приводятся некоторые остроумные приемы, дающие возмож­
ность реализовать нерекурсивные ИГФ, а это позволяет смягчить проблему роста
длины слова данных, характерную для описанных выше традиционных рекурсив­
ных ИГФ.
Библиография
1.
Crochiere, R. and Rabiner, L. «Optimum FIR Digital Implementations for Deci­
mation, Interpolation, and Narrow-band Filtering», IEEE Trans, onAcoust. Speech,
and Signal Proc., Vol. ASSP-23, No. 5, October 1975.
2.
Ballanger, M. «Computation Rate and Storage Estimation in Multirate Digital
Filtering with Half-Band Filters», IEEE Trans, on Acoust. Speech, and Signal Proc.,
Vol. ASSP-25, No. 4, August 1977.
3.
Neugebauer, O. Astronomical Cuneiform Texts. Babylonian Ephemeridesofthe Seleucid Period fo r the Motion o f the Sun, the Moon and the Planets, London, UK: Lund
Humphries, 1955.
4.
Schafer, R. and Rabiner, L. «A Digital Signal Processing Approach to Interpolati­
on», Proceedings o f the IEEE, Vol. 61, No. 6, June 1973.
5.
Proakis, J. and Manolakis, D. Digital Signal Processing: Principles, Algorithms and
Applications, Prentice-Hall, Upper Saddle River, New lersey, 1996.
6 . Oppenheim, A. and Schafer, R. Discrete-Time Signal Processing, Prentice-Hall, En­
glewood Cliffs, New Jersey, 1st Ed. 1989,2nd Ed. 1999 (имеется русский перевод
одного из предыдущих изданий: Оппенгейм А. В., Шафер Р. В. «Цифровая об­
работка сигналов», пер. с англ. / под ред. С. Я. Шаца, М.: Связь, 1979, доступен
по адресу dsp-book.narod.ru/OpShDSP.djvu).
7.
Rorabaugh, С. DSP Primer, McGraw-Hill, New York, 1999.
8 . Fliege, N. Multirate Digital Signal Processing: Multirate Systems, Filter Banks, Wa­
velets, John Wiley & Sons, 1995.
9.
Crochiere, R. and Rabiner, L. Multirate Digital Signal Processing, Prentice-Hall,
Upper Saddle River, New Jersey, 1983.
1 0 . Vaidyanathan, P. Multirate Systems and Filter Banks, Prentice-Hall, Upper Saddle
River, NJ, 1992.
410
Глава 10. Преобразование частотыдискретизации
1 1 . Crochiere, R. and Rabiner, L. «Decimation and Interpolation of Digital Signals—A
Tutorial Review», Proceedings o f the IEEE, Vol. 69, No. 3, March 1981.
1 2 . Crochiere, R. and Rabiner, L. «Further Considerations in the Design of Decima-
tors and Interpolators», IEEE Trans, on Acoust. Speech, and Signal Proc., Vol.
ASSP-24, No. 4, August 1976.
13. Ballanger, M. et al. «Interpolation, Extrapolation, and Reduction of Computatio­
nal Speed in Digital Filters», IEEE Trans, on Acoust. Speech, and Signal Proc., Vol.
ASSP-22, No. 4, August 1974.
14. Hou, H. and Andrews, H. «Cubic Splines for Image Interpolation and Digital Fil­
tering», IEEE Trans, on Acoust. Speech, and Signal Proc., Vol. ASSP-26, No. 6,
August 1978.
15. Keys, R. «Cubic Convolution Interpolation for Digital Image Processing», IEEE
Trans, on Acoust. Speech, and Signal Proc., Vol. ASSP-29, No. 6, August 1981.
16. Parker, J., et al. «Comparison of Interpolating Methods for Image Resampling»,
IEEE Trans, on Medical Imaging, Vol. MI-2, No. 1, August 1983.
17. Blue, K., et al. «Vector Signal Analyzers for Difficult Measurements on Time-Varying and Complex Modulated Signals», Hewlett-PackardJournal, December, 1993.
18. Bartz, M., et al. «Baseband Vector Signal Analyzer Hardware Design», Hew­
lett-PackardJournal, December, 1993.
19. Mitchell, J. «Multirate Filters Alter Sampling Rates Even After You’ve Captured
the Data», EDN, August 20,1992.
20. Hogenauer, E. «An Economical Class of Digital Filters for Decimation and Inter­
polation», IEEE Trans. Acoust. Speech and Signal Proc., Vol. ASSP-29, April 1981,
pp. 155-162.
2 1 . Chu, S. and Burrus, C. «Multirate Filter Designs Using Comb Filters», IEEE
Trans. Circuits and Systems, Vol. CAS-31, Nov. 1984, pp. 913-924.
Глава 11
Усреднение
сигналов
Как мы определяем среднюю величину, оценку или действительное значение
некоторого измеряемого параметра? Сделать это не так легко, поскольку резуль­
таты любых измерений в нашем мире искажены случайными возмущениями. Эти
возмущения являются следствием как природы измеряемых величин, так и по­
грешностей наших измерительных приборов. Каждый раз, когда мы стараемся
точно измерить некоторую физическую величину, мы получаем несколько раз­
личающиеся значения. Эти случайные флуктуации называются шумом, и спе­
циалисты по цифровой обработке сигналов научились минимизировать шум с
помощью усреднения. В литературе мы можем найти описание использования
усреднения не только для улучшения точности измерений, но и для обнаружения
сигналов, а также в схемах фильтров нижних частот. Эта глава дает введение в ма­
тематические основы усреднения и описывает, как и где этот важный процесс ис­
пользуется. Соответственно, когда мы перейдем к численной оценке влияния
усреднения, нам придется использовать такие понятия статистики как среднее,
дисперсия и стандартное отклонение.
В цифровой обработке сигналов усреднение часто используется в форме сумми­
рования отсчетов сигнала с последующим делением суммы на количество просум­
мированных отсчетов. Математически среднее N отсчетов последовательности
х(п), обозначаемое как х аюе, записывается в виде
ЛГ
х аюе = ('* /Л ) 2 Х(п) = [х(1) + х(2 ) + х(3) + ... +*(Л0]/ЛГ.
(11-1)
п=1
(То, что мы называем средним, статистики называют математическим ожида­
нием.) При изучении усреднения важным понятием, которое мы должны хорошо
усвоить, является о 2 —дисперсия последовательности, определяемая как
N
о 2 = ( 1 /Ы )£ [*(я) - х аие \2=
п=1
= {[х(1)~ хаие] 2 +[х(2)~ хте] 2 +[х(3)~ хаие] 2 + ... +[х(Ы)~ хаг)е] 2}/Ы.
(П -2 )
(11-2')
412
Глава 11. Усреднение сигналов
Как поясняется в приложении Э, дисперсия ст2 в(11-2)и(11-2') дает нам коли­
чественную меру того, насколько сильно значения отсчетов последовательности
флуктуируют относительно среднего значения. Это объясняется тем, что, напри­
мер, значение х( 1 ) - хаье в квадратных скобках представляет собой разность зна­
чения текущего отсчета х( 1) и среднего значения хаье. Другая важная величина,
которую мы будем использовать — это стандартное отклонение, которое опреде­
ляется как положительное значение квадратного корня из дисперсии, или
п-1
(11-3)
Другими словами, среднее значение хах)е представляет собой постоянный уро­
вень, относительно которого значения отдельных отсчетов могут изменяться.
Дисперсия о 2 представляет собой сумму квадратов отклонений отдельных отсче­
тов от среднего уровня х а1!е\ Если последовательность х(п) представляет собой
временной ряд или отсчеты сигнала, мы можем сказать, что хах)е определяет по­
стоянную составляющую сигнала, стандартное отклонением отражает амплитуду
флуктуаций, или переменной составляющей сигнала, а дисперсия о 2 отражает
мощность переменной составляющей. (Для тех читателей, кто не каждый день
сталкивается с этими понятиями статистики, в приложении О приводится объяс­
нение их природы.)
Теперь мы готовы исследовать два вида усреднения — когерентное и некоге­
рентное, чтобы узнать, чем они отличаются друг от друга и в каких условиях их
следует применять.
11.1. Когерентное усреднение
В процессе когерентного усреднения (известного также как линейное, преддетекторное,- или векторное усреднение), ключевую роль играет временная сетка,
используемая для дискретизации исходного сигнала: мы накапливаем множество
последовательностей отсчетов смеси сигнала с шумом, причем необходимо, что­
бы начальная фаза сигнала во всех этих последовательностях была одна и та же.
Например, когда мы усредняем синусоиду, смешанную с шумом, для когерентного
усреднения необходимо, чтобы начальная фаза синусоиды была одинаковой во
всех последовательностях отсчетов. Когда это требование выполняется, усредне­
ние синусоиды дает ее истинные отсчеты. Шум, однако, отличается в каждой по­
следовательности, участвующей в усреднении, и результат его усреднения равен
нулю2. Смысл этого в том, что когерентное усреднение уменьшает дисперсию
шума, сохраняя в то же время неизменными отсчеты сигнала, которые синхронны,
или когерентны, относительно начала интервала накопления. При когерентном
Точнее, средний квадрат отклонений от среднего уровня —(прим. перев.).
Мы предполагаем, что отсчеты шума некоррелированы друг с другом и с частотой дис­
кретизации. Если какой-то компонент шума коррелируется с частотой дискретизации,
после усреднения он останется.
413
11.1. Когерентное усреднение
усреднении мы можем действительно улучшить отношение сигнал/шум. В каче­
стве примера рассмотрим последовательность из 128 отсчетов, график которой
приведен на рисунке 11.1 (а). Эта последовательность содержит отсчеты импуль­
са, искаженного шумом. (Для иллюстрации сказанного исходный импульс, амп­
литуда которого равна 2.5, показан в качестве фона рисунка 11.1.) В графике
смеси сигнала с шумом (жирная черная линия) на рисунке 1 1 . 1 (а) очень трудно
разглядеть исходный импульс. Допустим, мы накопили 32 набора по 128 отчетов
смеси сигнала с шумом вида
Набор отсчетов 1 = хД 1), х ^ ) , х ^ З ) , ..., х^( 128),
Набор отсчетов 2 = х2( 1), х 2 (2), х 2 (3) , ..., х2( 128),
<
Набор отсчетов 3 = х3( 1), х 3 (2), х 3 (3) , ..., х3( 128),
Набор отсчетов 32 = х32( 1), х32(2), х32(3 ) , ..., х32( 128).
Здесь на сцену выходит вопрос когерентности: моменты времени взятия от­
счетов должны быть каким-то образом синхронизированы с началом импульса,
взаимное положение импульса и первого отсчета во всех последовательностях
должно быть одинаковым. Когерентное усреднение 32 наборов отсчетов путем
сложения (11-4) по столбцам выглядит следующим образом
32
х те (к) = ( 1/ 32) 2 хп(к> = Iх 1 &) + х 2 (к) + хз(к) + ••• + х32(к)]/32
п= 1
хаье(1) = М О
+х3(1) + - +Х32(1)]/32
х аье (2 > = [х 1(2 ) + х 2(2) + х ?(2 ) + - + Х3^ 2 )]/ 3 2
хме СО = Ы 3 ) + х 2 (3) + х3(3) + ... + х32(3)]/32
(11-5)
хаье ( 128) = [ху( 128) + х2( 128) + х3( 128) + ... + х32( 128)]/32.
Если мы усредним 32 последовательности, как показано в (11-5), мы получим
128-точечную последовательность хах}е(к), график которой показан на рисун­
ке 11.1 (Ь). Здесь мы уменьшили шумовые флуктуации, и форма импульса стано­
вится более явной. Когерентное усреднение 256 последовательностей дает график,
показанный на рисунке 1 1.1 (с), где форма импульса видна уже достаточно хорошо.
Мы уменьшили шумовые флуктуации, сохранив в то же время отсчеты импульса.
(Здесь важно уяснить, что и суммирование, и усреднение уменьшают дисперсию
шума. Суммирование просто реализует (11-5) без деления на N = 32. Ели мы вы­
полняем суммирование и не делим на Ы, мы просто изменяем вертикальный масш­
таб графиков на рисунках 11.1 (Ь) и (с). Однако относительный уровень шумовых
флуктуаций по отношению к амплитуде импульса остается неизменным.)
414
Гпава 11. Усреднение сигналов
(а)
20
40
60
80
100
120
Время
Амплитуда
Фронт импульса
(с)
J
!
Срез импульса ;
1
V
/ ’ . 1 . і ...
^ v “ i;
........................... ..........................
|
;
1
Л/= 256
20
40
60
80
'
100
120
Время
Рис. 11.1. Смесь импульса с шумом: (а) один из наборов отсчетов; (Ь) результат
усреднения 32 наборов отсчетов; (с) результат усреднения 256 наборов
отсчетов
Математическая основа процесса усреднения (11-5) имеет большое значение
и в то же время не представляет сложности. Нам необходимо получить меру улуч­
шения отношения сигнал/шум в процессе когерентного усреднения как функцию
N, количества усредняемых наборов отсчетов. Допустим, мы хотим измерить уро­
вень некоторого постоянного сигнала А, и каждый раз, когда выполняется изме­
рение, мы получаем разные значения А. Мы понимаем, что наши измерения
искажаются шумом, так что результат и-го измерения г(п) равен
r(n) = А + noise(n),
(11-6)
где noise(w) представляет вклад шума. Наша цель состоит в том, чтобы определить
А в условиях, когда мы не имеет никаких других данных, кроме зашумленной по­
следовательности г(п). Для более точной оценки А мы усредняем N отсчетов г(п) и
вычисляем среднее значение rave.
11.1. Когерентное усреднение
415
Чтобы оценить точность результата rave, мы вычислим последовательность
средних rave(k) и посмотрим, как они флуктуируют:
rave( 1) = [г( 1) + г(2) + г(3) + ... + r(N )]/N ,
1-е среднее по N точкам
rave(2) = [r(N+1) + r(N+2) + r(N+3) + ... + r(2 N )]/N ,
2-е среднее по N точкам
rave(3) =[r(2N+1) + r(2N+2) + r(2N+3) + ... + r(3N )]/N , 3-е среднее no N точкам
rave(k) = [r([k-1]*N+1)+r([k-1]*N+2)+r([k-1]*N+3)+...+ r(k* N )\/N .
(11-7)
или в более компактной форме
r ave(k )
N
= V /N ) 2 r([k-1 ]'N + n ) .
n= 1
(11-8)
Чтобы увидеть, как усреднение уменьшает неопределенность измерений, нам
необходимо сравнить стандартное отклонение последовательности средних rave(Jk)
со стандартным отклонением исходной последовательности г(п).
Если стандартное отклонение исходной последовательности измерений г(п)
равно ain, то, как показано в [1 - 5], стандартное отклонение последовательности
средних по N отсчетам rave(k), oave, определяется выражением
°ave=ai
n
(11-9)
Формула (11-9) имеет важное значение, поскольку она говорит нам, что после­
довательность средних rave(k) будет флуктуировать относительно А не так сильно,
как исходные результаты измерений г(п); т. е. последовательность rave(k) будет со­
держать меньше шума, чем последовательность г(п) и, чем сильнее мы усредняем,
повышая N, тем ближе отдельные оценки rave(k) к истинному значению А \
С другой стороны, мы можем количественно оценить уменьшение шума вслед­
ствие усреднения. Если величина Л представляет уровень сигнала, a oin — стандарт­
ное отклонение шума, искажающего сигнал, мы можем утверждать, что отношение
сигнал/шум равно
SNRin = А /oin.
( 1 1 -Ю)
Соответственно, отношение сигнал/шум после усреднения, SNRave, будет равно
SNRave ~ rave
ave ~ ^/°аье •
( 1 1 -1 1 )
Далее, коэффициент улучшения отношения сигнал/шум, SNRCOiц, который мы
получили благодаря когерентному усреднению, равен отношению SNRave к SNRin,
или
Формула (11-9) основана на предположении, что среднее шума рабно нулю и что ни А,
ни <7ги не меняются в процессе выполнения наших измерений и усреднения.
416
Гпава 11. Усреднение сигналов
Коэффициент улучшения SNRC0^ =
- S S m ave/SN R ir,~
—( А /оave ) / (A/Oin) ~ Оin /о ave '
(11-12)
Подставляя oave из (11-9) в ( 11-12), полууаем коэффициент улучшения отно­
шения сигнал/шум
Коэффициент улучшения SNRC0^ = oin /( p in /V N ) = V n .
(11-13)
Итак, с помощью усреднения мы можем достичь улучшения отношения сиг­
нал/шум, пропорционального квадратному корню из количества усредняемых
отсчетов. При измерении отношения сигнал/шум в децибелах мы имеем коэффи­
циент улучшения когерентного усреднения, или интегрирования, равный
Коэффициент улучшения SNRcoh(dB) =
- 20 • lo g ^ S M ^ ,,) -
( 11-14)
- 2 0 • log 10(v77) - 1 0 • log 10(N) .
Формулы (11-13) и(11-14) также справедливы, если Л характеризует уровень
сигнала, a oin представляет стандартное отклонение исходного шума.
Другой способ, с помощью которого можно определить коэффициент интег­
рирования, достигаемый при когерентном усреднении, состоит в рассмотрении
стандартного отклонения входного шума oin и вероятности получения того или
иного конкретного значения амплитуды импульса, показанного на рисунке 1 1 . 1 .
Предположим, что мы выполнили множество отдельных измерений амплитуды
импульса и построили гистограмму измеренных значений, получив график, изоб­
раженный штриховой линией на рисунке 11.2. Вертикальная ось на рисунке 11.2
представляет вероятность получения измеренного значения амплитуды импульса,
откладываемого по горизонтальной оси. Если шум подчиняется хорошо известно­
му нормальному, или Гауссовому, распределению, то распределение вероятностей,
изображаемое штриховой линией, описывается формулой
р(х) = [ 1 /( о Ш ) ] е < х~ ^ 2/ 2а2= Ке~(х- ^ 2/ 2а2,
(И -15)
где о = oin, а истинная амплитуда импульса соответствует ц = 2.5. По штриховой
кривой мы видим, что любое измеренное значение с наибольшей вероятностью
будет расположено близко к истинной амплитуде импульса, равной 2.5. Заметьте,
однако, что существует ненулевая.вероятность получения таких значений, как 1.0
или 4.0. Будем говорить, что штриховая линия представляет распределение веро­
ятностей смеси импульса с шумом, показанной на рисунке 11.1 (а). Если мы ус­
редним 32 отсчета этой смеси и построим кривую распределения вероятностей
усредненных измерений, мы получим график, начерченный сплошной линией на
рисунке 11.2. Эта кривая характеризует отсчеты смеси импульса с шумом, пока­
занные на рисунке 11.1 (Ь). По этой кривой мы видим, что после усреднения веро­
ятность получить значение меньше 2.0 или больше 3.0 очень мала.
11.1. Когерентное усреднение
417
Рис. 11.2. Графики функций плотности вероятности измеренных амплитуд без
усреднения (АУ = 7) и при усреднении N = 32 отсчетов
Из (11-9) мы знаем, что стандартное отклонение результата усреднения 32 от­
счетов сигнала равно
На рисунке 11.2 мы можем видеть уменьшений стандартного отклонения в
результате усреднения со статистической точки зрения. Использование для вы­
числения среднего большего количества отсчетов сожмет сплошную кривую на ри­
сунке 11.2 еще больше вокруг значения 2.5, т. е. истинной амплитуды импульса1.
Возвращаясь к зашумленному сигналу на рисунке 11.1 и выполняя когерент­
ное усреднение для разных значений Ы, мы видим на рисунке 11.3 (а), что с ростом
N усредненная амплитуда импульса приближается к истинному значению ампли­
туды 2.5. Рисунок 11.3 (Ь) показывает, как быстро уменьшается дисперсия шума
при увеличении N. Проиллюстрировать уменьшение дисперсии с ростом N мож­
но и другим способом: постройте график мощности шума в логарифмическом
масштабе, как на рисунке 11.3 (с). На этом графике дисперсия шума нормирована
относительно дисперсии шума без усреднения, т. е. при N = 1. Обратите внимание
на то, что наклон графика на рисунке 11.3 (с) довольно точно соответствует
предсказанию (11-13) и (11-14): когда N увеличивается в 10 раз, мощность
усредненного шума уменьшается на 10 дБ. Хотя тестовый сигнал в данном слу­
чае представляет собой импульс, выражения (11-13) и (11-14) будут справедли­
вы и для синусоидального сигнала.
1 Кривые на рисунке 11.2 для удобства нормированы. Согласно (11-15) при сг= 1 дляЛ/’=
1 получаем К = 0.3989. В случае N = 32 новое стандартное отклонение равно а ' = a/VN
=1/\Г32, и К = 0.3989432 =2.23.
418
Гпава 11. Усреднение сигналов
Рис. 11.3. Результаты усреднения смеси импульса с шумом: (а) измеренная амплиту­
да в зависимости от Л/: (Ь) дисперсия амплитуды в зависимости от Л/; (с)
мощность шума в зависимости от N в логарифмическом масштабе
11.2. Некогерентное усреднение
Процесс некогерентного усреднения (известного также как среднеквадратичное,
последетекторное, скалярное или видео-усреднение) представляет собой усредне­
ние отсчетов сигнала в случае, когда на временные соотношения дискретизации не
накладываются никакие ограничения; т. е. интервалы измерения сигнала никак не
синхронизированы с фазой измеряемого сигнала. Подумайте, каким будет среднее
значение зашумленного импульса, приведенного на рисунке 11.1 (а), если мы не бу­
дем синхронизировать каким-то образом начало накопления отсчетов с началом
11.2. Некогерентное усреднение
419
импульса. В результате мы получим импульсы, которые начинаются в разные
моменты в разных наборах отсчетов. Усреднение множества наборов отсчетов
размажет импульс по набору отсчетов, или попросту «задавит сигнал». (Для чи­
тателей, знакомых с использованием осциллоскопа, некогерентное усреднение
похоже на попытку увидеть импульс, когда начало развертки не синхронизиро­
вано с сигналом.) По этой причине некогерентное усреднение во временной об­
ласти приносит мало пользы1. В частотной области, однако, все не так, потому
что некогерентное усреднение может увеличить точность измерения относитель­
ного уровня сигнала. Действительно, некогерентное усреднение используется во
множестве измерительных приборов, таких как анализаторы спектра, анализа­
торы сетей и анализаторы сигналов.
В некоторых аналоговых измерительных приборах сигналы представляются в
частотной области с помощью узкополосного фильтра, средняя частота которого
пробегает весь исследуемый диапазон частот, и детектора мощности. Эти приборы
измёряют мощность сигнала как функцию частоты. Детектор мощности необхо­
дим, поскольку изменение частоты не синхронизировано по времени с йзмеряемым сигналом. Следовательно, данные, полученные таким образом в частотной
области, представляют только мощность и не содержат никакой информации о
фазе сигнала. Хотя в этом случае улучшать входное отношение сигнал/шум уже
поздно, некогерентное усреднение может улучшить точность измерения мощности
сигнала в присутствии шума, т. е., если спектр мощности сигнала очень зашумлен,
мы можем уменьшить флуктуации оценок мощности и улучшить точность измере­
ния мощности сигнала и шума. Рисунок 11.4 (а) иллюстрирует эту идею, на нем мы
видим мощность (квадрат модуля) отсчетов БПФ основного тона и нескольких его
гармоник, маскируемых шумом. Обратите внимание на то, что уровни мощности
шума на рисунке 11.4 (а) изменяются почти на 20 дБ относительно истинной сред­
ней мощности шума, показанной штриховой линией на уровне -19 дБ.
Если бы берем 10 БПФ, усредняем квадраты их модулей и нормируем эти зна­
чения, мы получаем спектр мощности, показанный на рисунке 11.4 (Ь). Здесь мы
уменьшили дисперсию шума в спектре, но не улучшили отношение мощности
гармонических сигналов к мощности шума; т. е. средний уровень мощности шума
не изменился. Усреднение квадратов модулей ста БПФ дает спектр, показанный
на рисунке 11.4 (с), который обеспечивает более точное измерение относитель­
ных уровней мощности гармоник.
Аналогично тому, как мы получили выражение для коэффициента улучшения
когерентного интегрирования (11-14), мы можем выразить коэффициент улуч­
шения некогерентного интегрирования 5Л/7?1ИС0^ через отношение сигнал/шум в
дБ следующим образом
Коэффициент улучшения
= 10 • \og^o(VN ) . (11-17)
Термин некогерентное усреднение несколько неудачен. Усреднение данных это не бо­
лее, чем усреднение —мы складываем набор значений данных и делим сумму на коли­
чество отсчетов в наборе. Некогерентное усреднение следовало бы, вероятно, назвать
усреднением данных, полученных некогерентно.
420
Гпава 11. Усреднение сигналов
Рис. 11.4. Результат усреднения спектра для смеси гармоник с шумом: (а) без
усреднения N = 7; (Ь) Л/= 70; (с) Л/= 100
Соотношение (11-17) применимо, когда усредняемая величина представляет
собой мощность сигнала. Поэтому мы использовали в (11-17) коэффициент 10
вместо 20 в (11-14)1. Мы можем сравнить коэффициенты улучшения (11-14) и
(11-17), построив графики этих выражений на рисунке 11.5.
В разделе Е. 1 приложения Е приводится объяснение того, почему при измерении мощ­
ности сигналов мы используем коэффициент 10, а при работе с амплитудами —коэф­
фициент 20.
421
11.3. Усреднение результатов быстрого преобразования Фурье
Рис. 11.5. Коэффициент улучшения отношения сигнал/шум при обработке во вре­
менной области согласно (11-14) и при обработке в частотной области
согласно (11-17) как функция N
11.3. Усреднение результатов быстрого
преобразования Фурье
В разделе 3.12 мы обсуждали коэффициент улучшения, связанный с ДПФ, и
установили, что мы можем повысить его, увеличив количество точек № точечного
ДПФ. Обсудим этот вопрос в случае, когда ДПФ реализуется в виде алгоритма
БПФ. Проблема состоит в том, что БПФ большой длины требует выполнения
большого объема вычислений. Поскольку сложение реализуется проще и быст­
рее, чем умножение, для повышения чувствительности при обнаружении сигна­
лов мы можем усреднить выходные последовательности нескольких БПФ;
другими словами, легче (и обычно быстрее) усреднить выходы четырех 128-то­
чечных БПФ, чем вычислить одно 512-точечное БПФ. Повышение чувствитель­
ности БПФ или снижение дисперсии шума благодаря усреднению результатов
БПФ также называется коэффициентом улучшения интегрирования. В резуль­
тате усреднения случайные флуктуации шума бинов БПФ уменьшаются, в то
время как модули сигнальных бинов ДПФ остаются постоянными. (В этих рас­
суждениях предполагается, что сигнал присутствует на всех интервалах наблюде­
ния, подвергающихся БПФ с последующим усреднением, а значения отсчетов
шума не‘зависят от частоты дискретизации.) Существуют два вида улучшения
при усреднении БПФ: некогерентное и когерентное.
Некогерентное интегрирование по отношению к БПФ представляет собой
усреднение соответствующих модулей бинов нескольких БПФ, т. е. для некоге­
рентного усреднения Ирезультатов БПФ нулевой бин некогерентного среднего
БПФ вычисляется как
Рщ сок(0) - ( \ Р № \
+ Ш 0)\
+ Ш 0)\ + - + \F m \y k ,
(11-18)
где |.РП(0) | — модуль нулевого бина п-то результата БПФ. Аналогично, первый
бин некогерентно усредненного спектра, ^гсо/г(0> вычисляется как
422
Гпава 11. Усреднение сигналов
Fi„c„h(1) - ( \ Ч 1 ) \ + т ь \ + I ty O l +... + \Fk(1 )\)/k ,
(11-18')
и т. д., до последнего бина, Fincoh(N-1), который вычисляется как
Fmcoh(N~ 1 ) - ( W N - 1 ) \ + Щ Ы -1)\ + \F £N -t)\ +■■■+ \Fk(N -1 )\)/k , (11-18")
Некогерентное Интегрирование дает уменьшение шума, которое усиливает
улучшение, присущее самому БПФ. Мы можем показать это на рисунке 11.6 (а),
где серой линией показан результат отдельного БПФ смеси тона с частотой, соот­
ветствующей 16-му бину 64-точечного БПФ, с шумом. Черная линия на рисун­
ке 11.6 (а) отображает результат некогерентного интегрирования модулей десяти
отдельных 64-точечных БПФ. Оба графика нормированы относительно своих
пиковых значений, так что максимальное значение равно 0 дБ. Обратите внимание
на то, что изменения мощности шума на черном графике уменьшились в результате
усреднения десяти БПФ. Уровень мощности шума, изображаемый черной ли­
нией, флуктуирует не так сильно, как уровень шума, изображаемый серой ли­
нией. Использовав усреднение, мы не увеличили мощность тона в 16-м бине, но
мы уменьшили пиковые значения мощности шума. Чем больше количество
усредняемых результатов БПФ, тем теснее значения шумовых бинов группиру­
ются вокруг истинного среднего уровня мощности шума, показанного штриховой
линией на рисунке 11.6 (а).
Рис. 11.6. Модули отсчетов отдельного БПФ (серая линия) и результат усреднения
модулей десяти БПФ (черная линия): (а) частота тона совпадает с цент­
ром бина; (Ь) частота тона находится между центрами бинов
11.3. Усреднение результатов быстрого преобразования Фурье
423
Когда частота тона не совпадает с центром бина, некогерентное усреднение
тоже уменьшает флуктуации шумовых бинов БПФ. Серая линия на рисунке
11.6 (Ь) показывает результат отдельного БПФ смеси шума и тона, частота кото­
рого отстоит на одинаковую величину от центров 16-го и 17-го бинов 64-точечного БПФ. Черная кривая на рисунке 11.6 (Ь) показывает результат усреднения
десяти БПФ. Вариации мощности шума, демонстрируемые черной линией, и в
этом случае были уменьшены благодаря интегрированию десяти БПФ. Следова­
тельно, некогерентное интегрирование уменьшает флуктуации мощности шума
независимо от частоты сигнала. Как и следовало ожидать, на рисунке 11.6 (Ь) пики
сигнала шире, а истинная мощность шума выше, чем на рисунке 11.6 (а), потому
что утечка спектра повышает средний уровень мощности шума, а гребешковые по­
тери уменьшают уровень мощности бинов БПФ на рисунке 11.6 (Ь). Следует запом­
нить, что некогерентное усреднение модулей отсчетов БПФ уменьшает вариации
мощности шума, но не уменьшает его среднюю мощность. Уменьшение дисперсии
шума [6] при некогерентном усреднении к результатов БПФ по отношению к дис­
персии шума отдельного БПФ аналогично результату, полученному в разделе
11.2, и выражается как
° 2к Б П Ф / ° 2одно Б П Ф ~1/Ъ.
(11-19)
Соответственно, если мы усредняем модули £ отдельных БПФ, мы уменьшаем
дисперсию шума в к раз.
На практике, когда усредняются несколько БПФ, а входные последовательно­
сти БПФ сглаживаются окном, входные последовательности обычно берутся с
перекрытием во временной областд. Это показано на рисунке 11.7 для интервала
накопления длительностью 5.5Ш8секунд, когда мы хотим усреднить десять резуль­
татов тУ-точечных БПФ, при этом £5 — период дискретизации (1//5). Поскольку
входные последовательности БПФ формируются во временной области с 50 % пе­
рекрытием, некоторая часть шума, содержащаяся в N отсчетах, подготовленных
для первого БПФ, будут содержаться также и во втором БПФ. Возникает вопрос:
«Каким будет уменьшение дисперсии шума, когда некоторая часть шума присутст­
вует в результатах двух БПФ?» Ответ на этот вопрос зависит от используемого
окна. Было показано, что для наиболее распространенных окон при использовании
перекрытия на 50 % или меньше выражение (11-19) остается справедливым [7].
5.5М3 секунд
■>
ряд
Время
1-е БПФ \
2-е БПФ Ї
3-є БПФ \
4-е БПФ Ь
N отсчетов
10-е БПФ|----------
Рис. 11.7. Входные последовательности БПФ с 50 % перекрытием
Гпава 11. Усреднение сигналов
424
Улучшение когерентного интегрирования возможно, когда мы усредняем от­
дельно действительные и мнимые части бинов нескольких БПФ, а затем объеди­
няем среднюю действительную часть и среднюю мнимую часть в один средний
комплексный бин; т. е. для когерентного усреднения результатов к отдельных
БПФ нулевой бин комплексного когерентного среднего БПФ, Рсоь(0), вычисля­
ется как
рсок( ° ) = [р 1(°)геа1 + р2(°)геа1 + рз(°)геа1 + - + р№ Х е (А /к +
+Л р 1(°)таё + р2(°)таё + рз(°)т аё + - + рк(°\таёУ к •
(11 -20)
Первый бин комплексного когерентного среднего БПФ, /7соЛ( 1), равен
рсоИ( 1) = [р 1( 1\еа1 + Р2( 1)геа1 + рз( 1\еа1 + - + Рк( 1)геа1\/к +
+Лр1( 1)таё + р2( 1\таё + рз( ^\таё + —+ рк( ^)таёУк ’
и т. д. до последнего бина, РС0^(М-1), который вычисляется как
Р с о ^ - 1) - ^ ( Ы - 1)геа, +
(11-20 )
1)геа1 + Г3(М- 1 \еа1 + ... +1)геа1]/к+
+ЦР,(М-1)1тай +
+ р3( N - 1 ) ^ + ... + Рк(Ы- /)шед] Д , (11-20")
Давайте подумаем, почему улучшение интегрирования, получаемое в резуль­
тате когерентного усреднения, полезнее улучшения интегрирования от некоге­
рентного усреднения. Некогерентное интегрирование не уменьшает средний
уровень мощности шума, но оно уменьшает вариации уровня мощности шума, по­
скольку мы работаем только с модулями отсчетов БПФ, и все бины БПФ, содер­
жащие шум, положительны. Следовательно, их среднее значение никогда не
будет нулевым. С другой стороны, когда мы усредняем комплексные бины БПФ,
комплексные шумовые бины могут быть как положительными, так и отрицатель­
ными. Эти положительные и отрицательные значения действительных и мнимых
частей будут компенсировать друг друга. Это значит, что средние шумовые бины
могут оказаться близкими к 0 до того, как мы будем вычислять их модули, в то
время как усредненные сигнальные бины будут приближаться к истинному нену­
левому значению. Если мы говорим, что отношение сигнал/шум когерентно
усредненного БПФ определяется выражением
5Л7?С0^ =20 • \о$^(модулъ сигнального бина/модуль шумового бина), (11-21)
мы можем видеть, что при уменьшении знаменателя этого выражения SNRcofl повы­
шается. Посмотрим на пример когерентного интегрирования на рисунке 11.8 (а), где
серой линией показан результат отдельного БПФ суммы шума и тона, частота ко­
торого совпадает с центром 16-го бина 64-точечного БПФ. Черная линия на ри­
сунке 11.8 (а) представляет результат когерентного интегрирования десяти
64-точечных БПФ. Обратите внимание, насколько уменьшился средний уровень
мощности шума1. Это результат когерентного интегрирования. Чем больше коли­
чество усредняемых БПФ, тем сильнее уменьшается средняя мощность шума.
Наблюдательный читатель может здесь сказать: «Постойте. Кажется, когерентное ин­
тегрирование уменьшает средний уровень мощности шума, но не похоже, чтобы оно
уменьшало вариации мощности шума.» Вариации уровня мощности шума в действи­
тельности уменьшились по амплитуде —помните, что мы используем логарифмиче­
ский масштаб. Амплитуда вариаций мощности шума от -20 дБ до -30 дБ меньше, чем
амплитуда вариаций от -10 дБ до -20 дБ.
11.3. Усреднение результатов быстрого преобразования Фурье
425
Когда частота тона не совпадает с центром бина, когерентное интегрирование
тоже уменьшает средний уровень шума, но не в такой степени, как в случае, когда
частота тона совпадает с центром бина. Серая кривая на рисунке 11.8 (Ь) пред­
ставляет результат отдельного БПФ суммы случайного шума и тона, частота ко­
торого лежит посредине между центрами 16-го и 17-го бинов 64-точечного БПФ.
Соответственно, черная линия на рисунке 11.8 (Ь) показывает результат когерен­
тного усреднения десяти БПФ. Средний уровень мощности шума и в этом случае
уменьшился. Когерентное интегрирование обеспечивает наибольшее улучшение,
когда частота дискретизации / 5кратна частоте тона, который мы пытаемся обнару­
жить. В этом случае тон всегда будет иметь одну и ту же фазу в начале всех интерва­
лов взятия отчетов для отдельных БПФ. Следовательно, частоту дискретизации / 5
следует выбирать так, чтобы частота интересующего нас тона (мы предполагаем, что
она не меняется в процессе измерения) совпадала с центром одного из бинов БПФ.
При когерентном усреднении нескольких БПФ помните о двух моментах.
Во-превых, если случайный шум, искажающий сигнал, имеет ненулевое среднее,
в усредненном спектре будет присутствовать ненулевой отсчет нулевой частоты
^ соа(^)- Усреднение, конечно же, не уменьшит уровень этого бина. Во-вторых, ко­
герентное интегрирование может уменьшить отношение сигнал/шум, если обна­
руживаемый сигнал имеет случайную начальную фазу относительно начала
интервала взятия отсчетов для отдельного БПФ. Вот вам пример такой ситуации:
серая линия на рисунке 11.8 (с) демонстрирует результат отдельного БПФ смеси
шума и тона, частота которого совпадает с центром 16-го бина 64-точечного БПФ.
Черная линия на рисунке 11.8 (с) представляет результат когерентного усреднения
десяти отдельных 64-точечных БПФ. Но для каждого из этих десяти БПФ в тон
вносился случайный сдвиг фазы. Обратите внимание на то, что средний уровень
мощности шума в усредненном спектре выше, чем средний уровень мощности
шума в результате отдельного БПФ. Когда начальная фаза тона меняется случай­
ным образом, мы ухудшаем, а не улучшаем, отношение сигнал/шум, потому что
входной тон в этом случае не синхронизирован с частотой анализа бина БПФ.
Существует наглядное объяснение того, почему когерентное интегрирование
ведет себя таким образом. Если мы посмотрим на фазоры, представляющие бин в
последовательных БПФ, мы поймем поведение фазора, являющегося их суммой.
Но сначала освежим в памяти векторное сложение двух фазоров1. Поскольку бин
БПФ представляет собой комплексную величину с действительной и мнимой ча­
стью, мы можем изобразить его в виде фазора, подобного фазору А на рисунке 11.9
(а). Мы можем изобразить бин следующего БПФ с таким же индексом как фазор В
на рисунке 11.9 (Ь). Есть два способа когерентного сложения двух бинов БПФ, т. е.
сложения фазоров А и В. Как показано на рисунке 11.9 (с), мы можем сложить две
действительные части между собой и две мнимые части между собой, в результате
чего получим фазор суммы С. Графический метод сложения фазоров А и В, пока­
занный на рисунке 11.9 (с1), состоит в том, что начало фазора В совмещается с кон­
цом фазора Л. Фазор суммы С образуется затем как новый фазор, идущий от начала
фазора А к концу фазора В. Заметьте, что два фазора С на рисунках 11.9 (с) и
11.9 (с!) идентичны. Мы будем использовать метод графического суммирования
фазоров, чтобы лучше понять процесс когерентного интегрирования бинов БПФ.
Соглашаясь с аргументами, выдвинутыми в разделе А.2 приложения А, мы будем для
описания отдельного комплексного выходного отсчета ДПФ использовать термин фа­
зор, а не вектор.
426
Глава 11. Усреднение сигналов
Рис. 11.8. Модуль результата отдельного БПФ (серая линия) и результата когерен­
тного интегрирования десяти отдельных БПФ (черная линия): (а) частота
тона совпадает с центром бина; (Ь) частота тона между центрами бинов;
(с) частота тона совпадает с центром бина, но начальная фаза тона меня­
ется случайным образом при каждом отдельном БПФ
Теперь мы готовы рассмотреть фазоры бинов БПФ, содержащих сигнал в по­
следовательных вычислениях БПФ, чтобы увидеть, как ведет себя фазор, получен­
ный их суммированием. Рассмотрим три комбинации фазоров на рисунке 11.10 (а).
Каждый фазор представляет собой бин отдельного БПФ, содержащий тон, кото­
рый мы пытаемся обнаружить с помощью когерентного интегрирования. Темные
стрелки представляют собой компоненты фазора, обусловленные сигналом, а
маленькие серые стрелки представляют компоненты фазора, обусловленные
11.3. Усреднение результатов быстрого преобразования Фурье
427
случайным шумом в бине БПФ, содержащем тон. В этом случае частота дискре­
тизации кратна частоте тона, так что фазовый угол фазора 0 одинаков во всех трех
вычислениях БПФ. Следовательно, три темных фазора, представляющих тон,
имеют нулевой сдвиг фаз по отношению друг к другу. Фазовые углы шумовых
компонентов случайны. Если мы сложим три комбинации фазоров, как на первом
шаге когерентного интегрирования, мы получим суммарный фазор, показанный
на рисунке 11.10 (Ь). Толстый серый вектор на рисунке 11.10 (Ь) представляет
идеальный суммарный фазор, который был бы получен, если бы в трех рассмат­
риваемых комбинациях не было бы случайных составляющих. Поскольку шумо­
вые компоненты достаточно малы, реальный фазор суммы не слишком сильно
отличается от идеальной суммы.
ФазорА
^
1
Мнимая
часть А
Действительная часть А
(а)
Мнимая
часть Л '
Фазор С
Действительная часть А
Мнимая
часть В
Действительная часть В
Фазор С
Рис. 11.9. Два способа сложения фазоров А и В, где фазор С = А + В
Теперь, если начальная фаза сигнала при каждом вычислении БПФ меняется
случайным образом, мы можем получить три комбинации фазоров, показанные
на рисунке 11.10 (с). Суммирование этих трех комбинаций дает реальный фазор
суммы, показанный на рисунке 11.10 (с1). Заметьте, что случайные фазы тона при­
вели к тому, что длина фазора суммы оказалась меньше, чем длины фазоров, изоб­
ражающих компоненты тона на рисунке 11.10 (с). Здесь мы ухудшили, а не
улучшили отношение сигнал/шум в усредненном спектре.
Следует помнить, что, хотя когерентное усреднение представляет собой пред­
почтительный метод улучшения отношения сигнал/шум, нам редко выпадает
счастье обрабатывать реальные сигналы, синхронизированные с интервалами на­
копления отсчетов для БПФ. Поэтому на практике обычно используется некоге­
рентное усреднение. Конечно, при любом методе интегрирования за улучшение
чувствительности методов обнаружения в частотной области мы платим допол­
нительными вычислениями и более медленной реакцией системы, обусловлен­
ной необходимостью дополнительного вычисления суммы.
428
Глава 11. Усреднение сигналов
Рис. 1 1 .1 0 . Бины БПФ, представленные в виде фазоров: (а) три варианта одного и
того же бина в случае, когда частота тона совпадает с центром бина; (Ь)
когерентное интегрирование (сложение фазоров) трех бинов; (с) три
варианта одного бина, когда входной тон имеет случайную начальную
фазу при каждом вычислении БПФ; (сі) когерентное интегрирование
трех вариантов бинов при случайной начальной фазе тона
11.4. Фильрующие свойства усреднения во временной области
429
11.4. Фильрующие свойства усреднения
во временной области
В разделе 5.2 мы познакомились с КИХ-фильтрами на примере усредняющего
фильтра и впервые узнали, что процесс усреднения во временной области эквива­
лентен фильтру нижних частот. Действительно, последовательные выходы А^-точечного устройства усреднения идентичны выходным отсчетам КИХ-фильтра с
(Ы -1) ответвлением, все коэффициенты которого равны 1/Ы, как показано на ри­
сунке 11.11.
Входной сигнал
Выходной сигнал
усредняющего фильтра
Рис. 1 1 .1 1 . Устройство усреднения, изображенное как КИХ-фильтр
Вопрос, на который мы должны ответить здесь, формулируется следующим
образом: «Какую АЧХ имеет обобщенный А^-точечный усредняющий филйтр?»
Мы можем вычислить АЧХ по формуле (6-28) при всех а(к) = 0, которая дает час­
тотную характеристику КИХ-фильтра с N ответвлениями. В этом выражении мы
должны присвоить всем коэффициентам от Ь(0) до Ь(АТ-1) значения 1/Ии вычис­
лить модуль Нр1К(ш) в диапазоне нормированных круговых частот 0 < со < ж.
Этот диапазон соответствует диапазону реальных частот 0 < / < / 5/2 (где/5—ча­
стота дискретизации в Гц). Но проще ^удет вспомнить раздел 5.2, в котором ука­
зывалось, что мы можем вычислить частотную характеристику КИХ-фильтра
как ДПФ последовательности коэффициентов фильтра. В этом случаем мы мо­
жем использовать программу М-точечного БПФ для преобразования последова­
тельности N коэффициентов, равных //АТ. Конечно, М должно быть больше ЛГ,
чтобы стала заметной форма частотной характеристики вида зіп(х)/х Следуя
этой процедуре и используя программу 128-точечного БПФ, получаем частотные
характеристики М-точечного фильтра усреднения при разных значениях Ы, при­
веденные на рисунке 11.12. Чтобы придать этим графикам больше наглядности,
частотная ось на рисунке определена через / 5 в отсчетах/секунду.
430
Гпава 11. Усреднение сигналов
Рис. 1 1 .1 2 . Амплитудно-частотная характеристика Л/-точечного усредняющего
фильтра в зависимости от N
11.5. Экспоненциальное усреднение
Существует вид усреднения во временной области, который используется в
некоторых приборах измерения мощности —он называется экспоненциальным
усреднением [8 -11]. Этот метод обеспечивает подавление шума путем умноже­
ния входного отсчета на константу и сложения этого произведения с предыду­
щим значением среднего, умноженным на дополнение константы до единицы.
На словах это кажется запутанным, но закон функционирования устройства экс­
поненциального усреднения представляет собой простое выражение
y(n) = ax(n) + (1 - a) y(n - 1) ,
(11-22)
где y(n) —текущий выходной отсчет устройства усреднения, у (п -1 ) —предыду­
щий отсчет среднего и a — постоянный весовой коэффициент. Процесс, описы­
ваемый уравнением (11-22) реализуется так, как показано на рисунке 11.13.
Преимущество экспоненциального усреднения в том, что оно требует всего одну
ячейку памяти для хранения значения у(п-1) до получения следующего входного
отсчета х(п).
Название этого устройства происходит от его импульсной характеристики.
Предположим, что на вход устройства усреднения Поступает длинная последова­
тельность нулей и в момент времени t —Омы подаем на его вход один единичный
отсчет. Затем входная последовательность снова представляет собой последова­
тельность нулей. Выходная последовательность устройства усреднения при a = 0.4
показана на рисунке 11.14. В момент t = 0 входной отсчет умножается на«, следова­
тельно, выходной отсчет равен 0.4. На следующем такте входной отсчет равен
нулю, а старое значение 0.4 умножается на (1 - 0.4), или 0.6, давая значение выходно­
го отсчета 0.24. На следующем такте входной отсчет опять равен нулю, старое значе­
ние, равное 0.24, умножается на 0.6 и дает выходной отсчет, равный 0.144. Дальше
выходная последовательность, или импульсная характеристика, устройства экспо­
ненциально уменьшается вследствие последовательных умножений на 0.6.
11.5. Экспоненциальное усреднение
431
Рис. 11.13. Устройство экспоненциального усреднения
^ Выходной сигнал усредняющего фильтра
Рис. 11 .1 4 . Импульсная характеристика устройства экспоненциального усредне­
ния при а = 0.4
Полезной особенностью устройства экспоненциального усреднения является
то, что оно позволяет изменять степень подавления шума путем изменения значе­
ния весового коэффициента. Если а=1, входные отсчеты не ослабляются, преды­
дущие отсчеты среднего не учитываются, и никакого усреднения не происходит.
В этом случае изменения входной последовательности передаются непосредствен­
но на выход. Когда а уменьшается по величине, входные отсчеты ослабляются, пре­
дыдущие выходные отсчеты начинают влиять на значение текущего выходного
отсчета. Эти предыдущие отсчеты представляют собой сумму экспоненциально
взвешенных входных отсчетов, и такое суммирование сглаживает зашумленный
сигнал. Чем меньше а, тем сильнее подавляется шум. С другой стороны, чем меньше
а, тем медленнее устройство реагирует на изменения входного сигнала. Мы можем
увидеть это, посмотрев на переходные характеристики устройства экспоненциаль­
ного усреднения при разных значениях а, приведенные на рисунке 11.151.
Итак, мы должны найти компромисс. Чем больше подавление шума, тем мед­
леннее устройство усреднения будет реагировать на изменения входного сигна­
ла. Мы видим по рисунку 11.15, что при уменьшении а, позволяющем лучше
1 Переходная характеристика представляет собой выходную последовательность устрой­
ства усреднения, когда на его вход подается последовательность, состоящая из нулей, за
которой следует последовательность, состоящая из единиц.
432
Гпава 11. Усреднение сигналов
подавлять шум, для установления выходного сигнала требуется больше времени.
Некоторые производители измерительных приборов используют хитроумный при­
ем для достижения компромисса между подавлением шума и временем установле­
ния выходного сигнала. В начале измерения они используют большое значение «,
так что выходной сигнал сразу принимает ненулевое значение. Затем, с течением
времени, значение а уменьшается для достижения требуемого подавления шума.
А Выходной сигнал усредняющего фильтра
Рис. 1 1 .1 5 .Выходной сигнал устройства экспоненциального усреднения при подаче
на его вход ступенчатого сигнала в момент времени *=0 как функция а
Как было показано в [9,10], уменьшение дисперсии шума на выходе устройст­
ва усреднения, как функции весового коэффициента« описывается выражением
дисперсия выходного шума/дисперсия входного шума =
=
= а/(2 - а) .
(11 -23)
Следовательно, уменьшение мощности шума в децибелах определяется выра­
жением
8Ш ехР(1в = 101о§ю[«/(2 ~ «)] •
(11-24)
На рисунке 11.16 приведен график выражения (11-24), который иллюстри­
рует соотношение между уменьшением шума и временем реакции устройства
усреднения.
Чтобы продемонстрировать способность устройства экспоненциального усред­
нения уменьшать мощность шума, на рисунке 11.17 показан выходной сигнал при
подаче на вход устройства косинусоиды^ смешанной с шумом. Весовой коэффи­
циент « линейно уменьшается, начиная со значения 1.0, до значения 0.1 на 180-м
отсчете входной последовательности. Обратите внимание на уменьшение шума
при уменьшении «. Однако, амплитуда косинусоиды также уменьшается при ма­
леньких значениях а.
11.5. Экспоненциальное усреднение
433
Снижение мощности шума в дБ
II
16................
1412- -
Более быстрая
' реакция
Более медленная
реакция'
10 ■■
8 ■■
6>■■
4 ■■
2
0*
1
—)---1---1—|—|---1—|—|---1—|—|—|—|—|—|—|-- н
1
а
Рис. 11.16. Уменьшение мощности шума на выходе устройства экспоненциально­
го усреднения как функция весового коэффициента а
45
90
135
180
225
Отсчеты
(время)
Рис. 11.17. Уменьшение выходного шума устройства экспоненциального усредне­
ния при уменьшении а
Читатель может обнаружить, что реализация устройства экспоненциального
усреднения на рисунке 11.13 представляет собой БИХ-фильтр с одним ответвле­
нием [12]. Действительно, это так и есть, и мы можем определить его частотную
характеристику.
Для этого вспомним общее выражение для частотной характеристики БИХфильтра (6-28), приведенное в главе 6, которое мы повторяем здесь:
лг
N
[ 2 Ь(к)соъ(ка)) - / £ Ь(к)ът(ка))\/
к=0
к=°
(11-25)
м
м
/\1
а(к)со^(ка)) + /£ я(£)зт(&и)]
к=1
к=1
По сравнению с рисунком 6-18 мы должны модифицировать (11-25), положив
N = ОтлМ = 1, так что
434
Глава 11. Усреднение сигналов
Н ехр((о) = [Ь(0) • соб(0(о ) - М О ) • 8Іп(0<у)]/
/ [ 1 - а(1) • соб(1 оо) +] а ( 1 ) • зіп(7(у)]
(11-26)
Теперь, при Ь(0) = а и а ( 1 ) = 1 - а, частотная характеристика устройства экс­
поненциального усреднения Приобретает вид комплексного выражения
Нехр(°)) ==аЯ 1 - ( 1 - а ) * соб((о) + Х 1 -а ) • біп(со)] .
(Ц-26’)
В настоящий момент нас интересует только АЧХ этого фильтра, которую мы
можем записать как
ІЯ^ ( " ) І = №/[1 - ( 1 - а ) * соь(а)) + ](1-а) • біп^)] | =
= а / у / \ 1 - ( 1 - а ) • со8(а>)]2 + [ ( 1 - а ) • 8Іп(а>)]2 =
(11-27)
= а / \ ] [ 1 - 2 • ( 1 - а ) • соб(су) + ( 1 - а ) 2
Рис. 11.18. Частотная характеристика устройства экспоненциального усреднения
в зависимости от а: (а) нормированная логарифмическая АЧХ в дБ;
(Ь) ФЧХ в градусах
Библиография
435
Вычисляя (11-27) в диапазоне нормированных угловых частот 0 < со < л (ко­
торый соответствует диапазону частот 0 < f < f s/2Yu), мы получаем АЧХ нашего
экспоненциально усредняющего фильтра для разных значений а, приведенные
на рисунке 11.18 (а) с использованием нормированного логарифмического масш­
таба. Обратите внимание, что при уменьшении а устройство экспоненциального
усреднения ведет себя как все более узкополосный фильтр нижних частот.
Мы можем попрактиковаться в работе с комплексными числами, выведя вы­
ражение для ФЧХ устройства экспоненциального усреднения. Мы знаем, что
ФЧХ вычисляется как арктангенс отношения мнимой части Нехр(со) к действите­
льной части Нехр(со), или
Фехр(<°)=
(11-27’)
= tan~1[мнимая часть Нехр(си)/действительная часть Нехр(со)].
Чтобы найти мнимую и действительную части частотной характеристики мы,
зная, что Нехр(со) является отношением комплексных чисел, определяем, какие
переменные в (11-26') соответствуют выражению (А-20) в приложении А. В резу­
льтате получаем:
R1 = а , I у = 0, R2 = 1 - (1 - а) • cos(w) и 12 = (1 - а) • sin(co) .
Подстановка этих переменных в (А-20) дает
Нехр(со) = {а[1 - (1 - о) • cos(co)] -j[ a (1 -a ) • sin(a>)]}/
/{[1 - ( 1 - о ) • cos(w)]2 + [(1 - a ) • sin(ü>)p}
(11-28)
Обозначив знаменатель этого сложного уравнения (11-28) как Den, мы испо­
льзуем (11-27), чтобы представить фазовый угол Нехр(а>) в виде
Фехр
= tan~*([-a(l - а) • sin (со)/Den] /{а[1 - (1 - а) • cos (со)]/Den}') =
= tan~*{-(l - а) • sin(со)/[1 - (1 - а) • cos(co)]}.
(11-29)
Очень нелинейная характеристика фехр(а>), описываемая выражением (11-29),
вычислена в диапазоне нормированных угловых частот 0 < со < л, соответствующем
диапазону частот 0 < / < f s /2 Гц, и показана в виде графика на рисунке 11.18 (Ь).
/
Библиография
1. Miller, I., and Freund, J. Probability and Statistics for Engineers, 2nd Ed., Prentice-Hall, Englewood Cliffs, New Jersey, 1977, p: 118.
2. Beller, J., and Pless, W. «A Modular All-Haul Optical Time-Domain Reflectometer for Characterizing Fiber Links», Hewlett-PackardJournal, February 1993.
3.
Spiegel, M. R. Theory and Problems of Statistics, Shaum's Outline Series, McGraw-Hill
Book Co., New York, 1961, p. 142.
436
Гпава 11. Усреднение сигналов
4. Papoulis, A. Probability, Random Variables, and Stochastic Processes, McGraw-Hill
Book Co., New York, 1984, p. 245.
5. Davenport, W. B., Jr., and Root, W. L. Random Signals and Noise, McGraw-Hill
Book Co., New York, 1958, pp. 81-84 (есть русский перевод Давенпорт В., Рут
В.: «Введение в теорию случайных сигналов и шумов», М., ИИЛ, 1960).
6. Welch, P. D. «The Use of Fast Fourier Transform for the Estimation of Power Spec­
tra: A Method Based on Time Averaging over Short, Modified Periodograms», IEEE
Transactions on Audio and Electroacoust., Vol. AU-15, No. 2, June 1967.
7. Harris, F. J. «On the Use of Windows for Harmonic Analysis with the Discrete Fo­
urier Transform», Proceedings o f the IEEE, Vol. 66, No. 1, January 1978.
8. Booster, D. H., et al. «Design of a Precision Optical Low-Coherence Reflectometer», Hewlett-PackardJournal, February 1993.
9. Witte, R. A. «Averaging Techniques Reduce Test Noise, Improve Accuracy» Mic­
rowaves &RF, February 1988.
10. Oxaal, J. «Temporal Averaging Techniques Reduce Image Noise», EDN, March 17,
1983.
11. Lymer, A. «Digital-Modulation Scheme Processes RF Broadcast Signals», Micro­
waves & RF, April 1994.
12. Hayden, D. «Timer Controls DSP-Filter Frequency Resolution», EDN, April 13,
1995.
Глава 12
Цифровые
форматы данных и
их роль
в обработке
сигналов
В цифровой обработке сигналов существует много способов представления чис­
ловых данных в вычислительном оборудовании. Эти представления, известные
как форматы данных, оказывают значительное влияние на точность и сложность
реализации любого заданного алгоритма обработки сигналов. Более простые фор­
маты данных позволяют реализовать несложное оборудование ценой ограничения
диапазона представляемых чисел и повышения чувствительности к арифмети­
ческим ошибкам. Более сложные форматы данных труднее реализовать аппаратурно, но они позволяют работать с очень большими и с очень маленькими
числами, обеспечивая в то же время разрешение многих проблем, связанных с
цифровой арифметикой. Выбранный для заданного приложения формат данных
может быть причиной успеха или провала всего проекта —здесь требуется полное
соответствие алгоритма и средств его реализации.
В этой главе мы познакомим вас с наиболее распространенными форматами
цифровых данных с фиксированной запятой1 и объясним, почему и когда они
применяются. Далее мы используем операцию аналого-цифрового преобразова­
ния (АЦП), чтобы установить точность и динамический диапазон, присущие
этим форматам с фиксированной запятой, а также чтобы проиллюстрировать
ошибки, возникающие при их использовании. Наконец, мы рассмотрим интерес­
ную тему двоичных форматов с плавающей запятой.
1 В отечественной литературе для обозначения разделителя целой и дробной части чис­
ла используется как термин «запятая», так и термин «точка». В переводе мы отдали
предпочтение первому из упомянутых терминов, хотя дробные десятичные, числа в
примерах используют точку в качестве разделителя (например, 3.1415). Описанная си­
туация отражает различие в национальных системах обозначений —русской и амери­
канской —(прим. ред. перев.).
438________ Гпава 12. Цифровые форматы данных и их роль в обработке сигналов
12.1. Двоичные форматы
с фиксированной запятой
В цифровой аппаратуре числа представляются двоичными разрядами, или би­
тами —термин бит (англ. bit) строится как неординарная аббревиатура слов Bi­
nary digIT \ Один бит может находиться только в одном из двух возможных
состояний: единицы или нуля2. Шестибитовое двоичное число может, например,
принимать значение 101101, где крайний левый бит называется старшим битом
(старшим значащим разрядом — СЗР), а крайний правый бит называется млад­
шим битом (младшим значащим разрядом — МЗР). Количество бит в двоичном
числе называется длиной слова — следовательно, длина слова числа 101101 равна
шести. Как и такая знакомая нам десятичная система, система двоичных чисел
предполагает наличие веса, ассоциированного с каждым разрядом числа. Этот вес
представляет собой основание системы (два для двоичных чисел и десять для де­
сятичных чисел), возведенное в целую степень.
Например, десятичное число 4631 образуется как
(4 • 103) + (6 • 102) + (3 • 101) + (1 • 10°) =
= 4000 +600 + 30 + 1 = 4
6
3
1
(12-1)
Множители 103,102,101и 10° являются весами разрядов в (12-1). Аналогично,
шестибитовое двоичное число 101101 равно десятичному числу 45:
(1
•
25) + (0
•
2 4) + (1 • 23)
+
(1
•
22)
+
(0 • 2 1)
+
(1
= 32 + 8 + 4 + 1-45.
•
2 °)
=
(12-2)
Используя для обозначения основания системы числа нижний индекс, мы мо­
жем записать (12-2) как 1011012 = 4510. Выражение (12-2) показывает нам, что, как
и десятичные числа, двоичные используют позиционную систему, в которой поло­
жение разряда определяет его вес. Если мы используем В для обозначения основа­
ния системы, позиционное четырехразрядное число а3 а2 а 1а0 будет иметь вид
((а3 • В3) + (<а2 • В2) + (а1 • В1) + (а0 • В0) .
(12-3)
В (12-3) Вп представляет собой весовой коэффициент для разряда ап, где 0 <
ап < В - 1. (Позиционная система представления чисел очень стара —настолько
стара, что ее истоки скрываются во тьме веков. Однако, с внутренне присущим ей
позиционированием десятичной или двоичной запятой эта система оказалась та­
кой удобной, что ее значимость для цивилизации сравнивают со значимостью ал­
фавита [1].)
1 Binary digit (англ.) = двоичный разряд —(прим. перев.).
2
Двоичные числа используются, поскольку пионеры электронной вычислительной тех­
ники быстро осознали, что значительно выгоднее и надежнее использовать электрон­
ные приборы (реле, радиолампы, транзисторы и т. д.), которые имеют только два
состояния: включено и выключено. При этом включенное/выключенное состояние
прибора может представляться одним двоичным разрядом.
12.1. Двоичные форматы с фиксированной запятой
439
12.1.1. Восьмеричные числа
С расширением использования миникомпьютеров и микропроцессоров в 1960-е
годы люди быстро устали манипулировать длинными цепочками единиц и нулей
и начали использовать более удобный способ представления двоичных чисел.
Один из способов записи двоичного числа представляет собой восьмеричный
формат, основание системы счисления которого равно восьми. Процедура преоб­
разования двоичного числа в восьмеричное определяется операцией разбиения
двоичного числа на трехбитовые группы, начиная справа. Например, двоичное
число 101010012 можно преобразовать в восьмеричный формат как
101010012
10 11011001=2518
Каждая из трех групп битов легко преобразуется из двоичного представления в
один восьмеричный разряд, потому что для трехбитовых слов восьмеричный и де­
сятичный форматы совпадают. То есть, начиная с левой группы бит, 102 = 210 = 28,
1012 = 510 = 58 и 0012 = 1щ = 18. Восьмеричный формат также является позицион­
ным, так что 2518 = (2 • 8^ + 5 • 81 + 1 • 8°). Восьмеричный формат дает нам воз­
можность представить восьмиразрядное число 101010012 трехразрядным числом
2518. Конечно, в восьмеричном формате допустимы только значения разрядов от
0 до 7 —значения разрядов 8 и 9 в восьмеричном представлении не имеют смысла.
12.1.2. Шестнадцатеричные числа
Другой популярный двоичный формат —формат шестнадцатеричных чисел,
использующий в качестве основания число 16. Преобразование из двоичного в
шестнадцатеричный формат выполняется разбиением двоичного числа на четы­
рехбитовые группы, начиная справа. Двоичное число 101010012 преобразуется в
шестнадцатеричное как
101010012 ■* 1010 11001=А916.
Если вы не сталкивались раньше с использованием шестнадцатеричного форма­
та, пусть запись А9 не смущает вас. В этом формате символы А, В, С, Б, Е и Р пред­
ставляют значения разрядов, которые в десятичной системе представляются как 10,
11,12,13,14 и 15 соответственно. Мы преобразуем две группы битов в два шестнад­
цатеричных разряда, начиная с левой группы: 10102 = 1010 = А16 и 10012 = 910 = 916.
Шестнадцатеричные числа также являются позиционными, а это значит, что А916 =
(А • 161+ 9 • 16°). Следовательно, для удобства мы можем представить восьмибито­
вое число 101010012 двухразрядным числом А916. В таблице 12.1 приведены допус­
тимые значения разрядов для рассмотренных выше систем счисления.
12.1.3. Дробные двоичные числа
Дроби (числа, модуль которых больше нуля и меньше единицы) тоже могут
быть представлены двоичными числами, если мы используем двоичную запятую,
которая выполняет ту же функцию, что и знакомая нам десятичная запятая. В дво­
ичных числах, о которых мы говорили до сих пор, предполагается, что двоичная
440________ Гпава 12. Цифровые форматы данных и их роль в обработке сигналов
запятая находится справа от самого правого разряда. Используя для обозначения
двоичной запятой символ О, мы можем показать, что шестибитовая дробь 110 0101
равна десятичному числу 3.3125:
(1*21) + (1*2°) + (0*2~1) + (1*2-2) + (0*2~3) + (1*2~4) = (1*2) + ( / • 1) + (0 • 1/2) + ( / • 1/4) + (0•1/8) + ( / • 1/16) =
= 2 + 1 + 0 + 0.25 + 0 + 0.0625 = 3.3125.
(12-4)
Таблица 12.1. Допустимые представления разрядов для разных
оснований системы счисления
Двоичная Восьмеричная Десятичная Шестнадцатеричная
Десятичный
эквивалент
0
0
0
0
0
1
1
1
1
1
2
2
2
2
3
3
3
3
4
4
4
4
5
5
5
5
6
6
6
6
7
7
7
7
8
8
8
9
9
9
А
10
В
11
С
12
D
13
Е
14
F
15
В примере (12-4) двоичная запятая поставлена между вторым и третьим стар­
шими разрядами. Из-за такого фиксированного положения двоичной запятой по­
добные двоичные числа часто называют двоичными числами с фиксированной
запятой.
Для некоторых форматов двоичных чисел (наподобие форматов с плавающей
запятой, о которых мы вскоре поговорим), двоичную запятую помещают слева от
старшего бита. Это делает числа принадлежащими диапазону от нуля до едини­
цы. В этом формате наибольшее и наименьшее возможные значения для Ь-битовой дроби составляют 1-2- * и 2~ь соответственно. Для шестибитовой дроби,
например, наибольшее значение составляет 0 1 1 1 1 1 1 2 , или
441
12.1. Двоичные форматы с фиксированной запятой
О(1*2~1) + (1*2~2) + (1*2-3) + (1*2~4) + (1*2-5) + (1*2-6) =
-$(1*1/2) + (1*1/4) + (1*1/8) + (1*1/16) + (1*1/32) + (1*1/64) =
(12-5)
=0,5 + 0.25 + 0.125 + 0.0625 + 0.03125 + 0.015625 = 0.984375,
что и есть 1-2-6 = 1 - 1/64 в десятичной системе. Наименьшее ненулевое число
равно <>0000012, что соответствует десятичному числу 1/64 = 0.01562510.
12.1.4. Двоичный формат «модуль плюс знак»
Чтобы двоичные числа имели какую-то практическую ценность, они должны
быть способны представлять отрицательные величины. В двоичных числах это
достигается выделением одного бита в двоичном слове для индикации знака чис­
ла. Рассмотрим популярный двоичный формат, известный как «модуль плюс
знак». Здесь мы предполагаем, что левый крайний бит есть знаковый бит, а оста­
льные биты представляют модуль числа, который всегда положителен. Напри­
мер, мы можем сказать, что четырехбитовое число 00112 есть +310, а двоичное
число 10112 равно - 3 10, или
Биты модуля
Биты модуля
і і і
0 0 1 12 = —
3-| 0
і і і
10 1 12= -3-ю
Т
нулевой знаковый бит обозначает
положительное число
и
І
единичный знаковый бит
обозначает отрицательное число
Конечно, использование одного из битов в качестве знака уменьшает диапазон
представимых значений модуля чисел. Если длина слова беззнакового числа рав­
на Ьбит, количество разных значений может быть выражено как 2Ь. Например, во­
сьмибитовое число может представлять 28 = 256 различных целых значений.
Поскольку ноль включается в число значений, которые необходимо представить,
6-битовое беззнаковое двоичное слово может представить целые числа от 0 до
2*-1. Наибольшее значение, представляемое беззнаковым восьмибитовым сло­
вом, равно 28-1 = 25510 = 111111112. В двоичном формате «знак плюс модуль»
6-битовое слово может представлять только числа в диапазоне ±2*- 1-1, так что
наибольшее положительное и наименьшее отрицательное числа, которые мы мо­
жем представить восьмибитовым словом, содержащим модуль и знак, равны
±2*-1-1 = ±127.
12.1.5. Двоичный дополнительный формат
Другая распространенная система представления двоичных чисел, известная
как двоичный дополнительный формат, также использует крайний левый (шт как
знаковый. Двоичный дополнительный формат является наиболее удобным с точ­
ки зрения аппаратурной реализации и используется на протяжении десятилетий.
442________ Гпава 12. Цифровые форматы данных и их роль в обработке сигналов
Он делает возможным выполнение в компьютерах как сложения, так и вычита­
ния на одной и той же аппаратуре. Чтобы получить отрицательный эквивалент
положительного двоичного дополнительного числа, мы просто дополняем каж­
дый бит (меняем единицу на ноль и ноль на единицу) и прибавляем к дополнен­
ному слову единицу. Например, если 00112 представляет десятичное число 3 в
двоичном дополнительном формате, мы получаем отрицательное десятичное
число 3 следующим образом:
+3 в двоичном дополнительном формате -*
дополнение +3
0011
-*
1100
прибавление единицы ->
+0001
-3 в двоичном дополнительном формате ->
1101
В двоичном дополнительном формате 6-битовое слово может представлять
положительные числа до 2*-1-1 и отрицательные числа до -2 Ь~У В таблице 12.2
приведены примеры четырехбитовых слов в формате модуля со знаком и двоич­
ном дополнительном формате.
При использовании двоичных дополнительных чисел необходимо быть вни­
мательными при сложении двух чисел разной длины. Рассмотрим случай сложе­
ния четырехбитового числа с восьмибитовым:
+15 в двоичном дополнительном формате -*
00001111
плюс +3 в двоичном дополнительном формате -»
+0011
+18 в двоичном дополнительном формате -»
00010010
Пока никаких проблем. Проблема возникает, когда наше четырехбитовое число
меньше нуля. Давайте попробуем вместо прибавления +3 к +15 прибавить -3 к +15:
+15 в двоичном дополнительном формате -> 00001111
плюс -3 в двоичном дополнительном формате -*
+ 1101
+28 в двоичном дополнительном формате -*• 00011100
«- Ошибка!
Полученной выше ошибки можно избежать, если над четырехбитовым числом
выполнить операцию расширения знака. Эта операция, выполняемая в аппарату­
ре'автоматически, распространяет знак четырехбитовго отрицательного числа
влево, превращая это число в восьмибитовое. Если мы расширим знак числа -3, а
затем выполним сложение, мы получим правильный ответ:
12.1. Двоичные форматы с фиксированной запятой
443
+15 в двоичном дополнительном формате -* 00001111
плюс -3 в двоичном дополнительном формате
с расширенным знаком -* + 11111101
+15 в двоичном дополнительном формате -* 100001100
*- Это уже лучше
t
бит переполнения игнорируется
Таблица! 2.2. Форматы двоичных чисел
Десятичный
эквивалент
Модуль со знаком
Двоичный
дополнительный
формат
Двоичный
со смещением
7
0111
0111
1111
6
0110
0110
1110
5
0101
0101
1101
4
0100
0100
1100
3
0011
0011
1011
2
0010
0010
1010
1
0001
0001
1001
+0
0000
0000
1000
-0
1000
—
—
-1
1001
1111
0111
-2
1010
1110
0110
-3
1011
1101
0101
-4
1100
1100
0100
-5
1101
1011
0011
-6
1110
1010
0010
-7
1111
1001
0001
-8
—
1000
0000
12.1.6. Двоичный формат со смещением
Еще одна популярная схема представления двоичных чисел известна как
двоичный со смещением формат. Хотя этот формат встречается не так часто,
как двоичный дополнительный, он все еще используется в некоторых прибо­
рах. В таблице 12.2 приведены примеры двоичного со смещением формата для
четырехбитовых слов. В этом формате отрицательные числа представляются
разностью беззнакового числа и 2*-1 . Например, во второй строке таблицы 12.2
444________ Гпава 12. Цифровые форматы данных и их роль в обработке сигналов
двоичное число со смещением равно 11102. Когда это число интерпретируется
как беззнаковое двоичное число, оно эквивалентно 1410. Для четырехбитовых
слов Ь = 4 и 2Ь~1 = 8, так что 1410 - 8 ^ = 610, что является десятичным эквивален­
том 11102 в двоичном формате со смещением. Разность между эквивалентом дво­
ичного беззнакового числа и десятичным эквивалентом двоичного числа со
смещением в таблице 12.2 всегда равна 8. (Читателю интересно будет узнать, что
мы можем преобразовывать числа из двоичного дополнительного формата в фор­
мат со смещением и обратно простым инвертированием старшего бита.)
История, правила выполнения арифметических операций и использование
многих известных форматов чисел представляют собой обширное поле для ис­
следования. Подробное и доступное обсуждение этого предмета приводится в
книге Кнута [2].
12.2. Точность и динамический диапазон
двоичных чисел
Как мы предполагали раньше, для любого двоичного формата чисел ключевым
моментом является количество битов в слове. Чем их больше, тем выше разрешаю­
щая способность для дробных чисел и больше максимальное представимое значе­
ние для целых чисел1. Предполагая, что двоичное слово представляет амплитуду
сигнала, специалисты по цифровой обработке сигналов находят полезным харак­
теризовать количественно разные форматы двоичных чисел с помощью динами­
ческого диапазона. Для целого двоичного слова со знаком длиной Ь+1 битов
(один знаковый бит и Ь битов модуля), динамический диапазон в децибелах опре­
деляется как
динамический д и а п а з о н = 20 • \о%^наибольшее возможное значение слова/
/наименьшее возможное значение слова) =
( 12- 6 )
- 20 • 1ов10[<2* - 1)/1] - 20 • 1о810(2 * - О .
Когда 2®намного больше 1, мы можем игнорировать -1 в (12-6) и записать
динамический д и а п а зо н = 20 • к ^ 10(2й) =
= 20 • к ^ 10(2) • Ь = 6.02 • ЪдБ .
( 12- 6 ')
Значение (12-6'), выраженное в децибелах, говорит нам, что динамический диа­
пазон данного формата чисел прямо пропорционален длине слова. Следовательно,
восьмибитовое двоичное дополнительное слово, имеющее семь бит для представ­
ления модуля, имеет динамический диапазон 6.02 • 7 = 42.14 дБ. Большинство
В некоторых компьютерах используются 64-битовые слова. 264 равно примерно
1.8 • 10« —это довольно большое число. Настолько большое, что, если бы мы начали
прибавлять 1 к 64-битовому числу один раз в секунду в момент рождения нашей Все­
ленной ( =20 миллиардов лет тому назад), сегодня четыре старших разряда этого счет­
чика все еще оставались бы нулевыми.
12.3. Эффекты конечной длины слова..
445
людей упрощают (12-6'), используя приблизительное правило, согласно которо­
му динамический диапазон равен «шесть дБ на бит».
12.3. Эффекты конечной длины слова
двоичных чисел с фиксированной
запятой
Эффекты конечной длины двоичного слова затрагивают все аспекты цифро­
вой обработки сигналов. Использование слов конечной длины не позволяет нам
представлять значения с неограниченной точностью, повышает шум при спектра­
льном оценивании, вызывает отклонение характеристик цифровых фильтров от
рассчитанных, вносит шум в результаты АЦП и может (если мы не будем начеку)
привести к очень неточным результатам арифметических операций. Чем меньше
длина слова, тем существеннее эти проблемы. К счастью, эффекты конечной раз­
рядности достаточно хорошо изучены. Мы можем предсказать их последствия и
предпринять определенные шаги для их минимизации. Первый эффект конечной
разрядности, который мы рассмотрим - это ошибки, возникающие в процессе
аналого-цифрового преобразования.
12.3.1. Ошибки квантования в аналого-цифровом
преобразователе
Реальные АЦП выдают на выход слова конечной длины. Коммерческие АЦП
классифицируются по длине выходного слова, которая обычно лежит в пределах
от 8 до 16 бит1. Диапазон входного аналогового напряжения обычно составляет от
-1 до +1 Вольта. Если мы используем такой АЦП, выдающий восьмибитовые
слова, младший бит соответствует
значение МЗР = (диапазон входного напряжения)/2 длина слова =
= 2 вольта/28 = 7.81 милливольт.
(12-7)
Это значит, что мы можем без погрешности представлять только те значения
входного напряжения, которые делятся нацело на 7.81 — для любых других
входных напряжений АЦП выдаст некоторое приближенное цифровое значение.
Погрешность данного процесса называют ошибкой квантования, потому что
значение младшего разряда АЦП является неделимым квантом. Мы иллюстри­
руем эту ситуацию на рисунке 12.1 (а), где показан процесс оцифровки непрерыв­
ного сигнала восьмибитовым АЦП, выходные слова которого представлены в
формате модуля со знаком. В начале процесса дискретизации в момент времени
£ = 0 напряжение непрерывного сигнала имеет значение 31.25 милливольт (мВ), и
значение выходного слова АЦП для отсчета х(0) будет абсолютно точным. В момент
времени Т, когда мы берем второй отсчет х( 1), непрерывное напряжение находится
В настоящее время в повседневную практику вошли АЦП с длиной слова до 24 бит —
{прим. перев.).
446________ Гпава 12. Цифровые форматы данных и их роль в обработке сигналов
между 0 и -7.81 мВ. В этом случае АЦП выдает слово 10000001, представляющее
значение -7.81 мВ, хотя входное напряжение не достигает -7.81 мВ. Выходное
слово АЦП 10000001 содержит некоторую ошибку квантования. Каждый после­
дующий отсчет содержит ошибку квантования, потому что значения выходных
слов АЦП должны лежать на горизонтальных пунктирных линиях, показанных
на рисунке 12.1 (а). Разность между действительным напряжением непрерывного
сигнала и его цифровым представлением показана на рисунке 12.1 (Ь) как ошибка
квантования. Для идеального АЦП ошибка квантования, или шум округления, не
может быть больше ±1/2 МЗР, или ±3.905 мВ.
В ы хо д но е
А Диапазон ошибки квантования АЦП в милливольтах
7.81
...
(Ь )
00006001
ж
0
¥
а
ш
*
. )
ш
>
)
-7.81I
0
_
Т
2Т
37
4 Т5 Т
Д иапазон
о ш и б ки
к в а н то в а н и я
10000001
67 Время —► -
Рис. 1 2 .1 . Ошибки квантования: (а) оцифрованные значения непрерывного сигна­
ла х(л); (Ь) ошибка квантования как разность между реальными значени­
ями аналогового сигнала и оцифрованными отсчетами
Рисунок 12.1 (Ь) показывает шум квантования во временной области, но мы
можем также показать этот шум в частотной области. На рисунке 12.2 (а) пунк­
тирной линией показан один период непрерывной синусоиды, совпадающий с
интервалом наблюдения, а черными точками показана квантованная версия от­
счетов этого сигнала. Заметьте, что квантованные отсчеты сигнала могут прини­
мать только целые значения, что приводит к ступенчатому эффекту отклонения
вверх и вниз от истинной неквантованной кривой. Длина слова здесь равна 4 би­
там, один бит для знака и три бита для модуля. При этом границы представимых
447
12.3. Эффекты конечной длины слова..
значений равны ±7. На рисунке 12.2 (Ь) показан результат ДПФ дискретной вер­
сии этой синусоиды, отсчеты которой не округлялись до целых значений и точ­
ность которых очень высока. Обратите внимание на то, что в этом случае ДПФ
имеет ненулевой отсчет только при ш = 1. С другой стороны, на рисунке 12.2 (с) по­
казан спектр округленных до 4 бит отсчетов, показанных на рисунке 12.2 (а), где
квантование привело к появлению шумовых компонентов на всех частотах. Если
графики шума на рисунках 12.1 (Ь) и 12.2 (с) выглядят случайными, то это потому,
что они такие и есть. Но, несмотря на то, что шум квантования АЦП представляет
собой случайный процесс, мы все же можем количественно оценить его влияние.
Амплитуда синусоиды
8 ..
Непрерывная синусоида
6 ••
/,
мм і
:мм.
/
V
п>
\
2+ Л
I м■мм 33
I
Ом/Н| Н| Н| П| ІЦІІ |Щ1ц
о 3 6 9 12 15 18 21 24 27 30
4 ..
ММ
;ММ
ММ
(а)
ММ
-2
36 39 42 45 48 51 54 57 60 63
І І Н Ц+ІН І НІ НІН ІІ|І
! мм
■■
\Імм!
\
;
ММ > !
-4 ..
■■
Г
г ММ
мм
■»мм
\мим
ХІ
ШШ
-6
г
-8
Д П Ф н е к в а н т о в а н н о й с и н у с о и д ы (д Б )
о■■ж
-20
(Ь)
-40 ■■
-во-■
-80 ж—і—
0
2
4
6
8
10
12
14
16
18
20
22.
24
26
28
30
^ ДПФ квантованной синусоиды (дБ)
*
0
-20 т
(С)
-40 +
і
•
ж
*
ж
*
м
-60 ••
-80-м—ш
1—*—*—
1 1 1—*--- ■-—
1 1*—*-—■
1 , 1—«—*--*-*-»—*—
1 1 I I I —■I—•—
I
0
2
4
6
8
10
12
14
16
18
20
22
24
26
28
30
Рис. 12.2. Влияние шума квантования: (а) входная синусоида, подаваемая на
64-точечное ДПФ; (Ь) теоретический модуль ДПФ для высокоточных от­
счетов; (с) модуль ДПФ синусоиды, округленной до 4 битов
Для оценки качества некоторого процесса или прибора в области телекомму­
никаций часто используется понятие отношения сигнал/шум, которое равно от­
ношению мощности сигнала к мощности шума. Мы можем поступить так же и
получить выражение
для отношения сигнал/шум идеального АЦП, учи-
448________ Гпава 12. Цифровые форматыданных и их роль в обработке сигналов
тывающее эффекты конечной разрядности. Поскольку шум квантования пред­
ставляет собой случайный процесс, мы не можем непосредственно представить
его мощность, но мы можем использовать ее статистический эквивалент, диспер­
сию, чтобы определить
в децибелах следующим образом
ЗМКа/ о =
= 10 • log ^(дисперсия входного сигнала/дисперсия шума квантования АЦП) =
—10 * 1о§ю( ° 2яёпа1/ ° 2А/И поЬе )
(12-8)
Далее, мы определим дисперсию шума квантования АЦП по отношению к
максимальному входному напряжению АЦП Ур . Если полный размах (от - Ур до
+Ур Вольт) непрерывного входного сигнала 6-битового АЦП равен 2Ур, то шаг
квантования q равен этому диапазону, деленному на количество возможных зна­
чений выходного слова АЦП, или q = 2Ур /2 ь. (На рисунке 12.1, например, шаг
квантования q равен цене МЗР в 7.81 мВ.) На рисунке 12.3 показан график фун­
кции, которая характеризует вероятность получения того или иного заданного
значения ошибки квантования и называется функцией плотности вероятности
ошибки квантования р(е).
.Функция плотности вероятности
Л ошибки квантования АЦП р(е)
_1_
Я
-q/2
0
q/2
е (Значение ошибки)
Рис. 12.3. Функция плотности вероятности ошибки (шума) округления аналого-
цифрового преобразования
Простая прямоугольная функция может рассказать нам о многом. Она пока­
зывает, что вероятности появления любых значений ошибки в диапазоне от -q /2
до +<7/2 одинаковы. По определению, т. к. площадь под графиком функции плотно­
сти вероятности равна единице (т. е. вероятность того, что ошибка окажется где-то
в пределах от -q /2 до +q/2, равна 1), максимальное значениер(е) должно быть рав­
но площади, деленной на ширину прямоугольника, илир(е) = 1/q. Согласно рисун­
ку D.4 и (D.12) в приложении D, дисперсия равномерной функции р(е) равна
q/2
q/2
° 2A/D noise = f e 2P(e)de = ( 1/q) • j e 2de = q2/1 2 .
-q/2
-q/2
(12-9)
Теперь мы можем выразить дисперсию ошибки квантования через параметры
АЦП, заменив q в (12-9) на q = 2Vp /2 Ьи получив
° 2A /D n o ise - ( 2 V p ) 2 / [ 1 2
. (2*)2] - ( V p y / 0 ' 2 2 Ь ) .
(12-Ю)
Итак, мы на полпути к цели —формула (12-10) дает нам знаменатель (12-8), нам
остается получить числитель. Чтобы получить общий результат, выразим уровень
входного сигнала через его среднеквадратичное значение (СКЗ), максимальное
входное напряжение АЦП и коэффициент использования LF, определяемый как
12.3. Эффекты конечной длины слова..
449
LF = СКЗ входного cumcuia/Vp = osignai/Vp
(12-11)
Мы возводим (12-11) в квадрат и выполняем его преобразования, чтобы пред­
ставить дисперсию сигнала о 2signai в виде
<'2signal' ( m 2 Vp2.
(12-12)
Подставляя (12-10) и (12-12) в (12-8), получаем
SNRa / d =10 • log 10{(LF)2Vp2/[Vp2/(3 • 22Ь)]} = 10 • log 10[(LF)2-(3 • 2»)] =
= 6.02*6+ 4.77 + 20 -log 10(LF) .
(12-13)
Формула (12-13) выражает SNR A ,Dидеального 6-битового АЦП через коэффи­
циент использования и количество битов 6. На рисунке 12.4 приведены графики
(12-13) для разных длин слова АЦП как функции коэффициента использования.
Обратите внимание на то, что коэффициент использования на рисунке 12.4 ни­
когда не превышает -3 дБ, потому что пиковое значение входного напряжения
АЦП не может превышать Vp Вольт. Таким образом, СКЗ синусоидального вход­
ного сигнала не может быть больше, чем Vp /V2 Вольт (на 3 дБ ниже Vp).
SNR“A/D-max (идеальный)
Быстрое
ухудшение
отношения
сигнал/шум
из-за ограничения
-3 Коэффициент
использования (дБ)
Рис. 12.4. 8ЫЙА/0 идеального АЦП как функция коэффициента использования в дБ
Когда амплитуда входной синусоиды равна максимальному входному напря­
жению АЦП Ур, коэффициент использования н р авен
^пошшшколы - <УРН Ъ /У р - 1И2 .
(12-14)
При этом максимальное отношение сигнал/шум, согласно (12-13), равно
™ЛА/П.тах = 6.02-Ь + 4.77 + 20*1о81О( 1 ^ 2 ) =
(12-15)
= 6.02>Ь + 4.77 + 3.01 = 6.02*6 + 1.76 д Б .
В приведенных выше рассуждениях об отношении сигнал/шум АЦП можно
выделить три важных для нас момента:
1._______ Идеальный АЦП имеет отношение сигнал/шум 5 № Л/,0 , определяемое
выражением (12-13), следовательно, никакой непрерывный сигнал, ко­
торый мы пытаемся оцифровать с помощью 6-битового АЦП, никогда
________ не будет иметь после преобразования отношение сигнал/шум больше,
1 Раздел Б.2 приложения Б напоминает нам, что, если дисперсия а2 связана с мощно­
стью сигнала, то стандартное отклонение связано с СКЗ сигнала.
450________ Гпава 12. Цифровые форматы данных и их роль в обработке сигналов
чем определяется выражением (12-13). Допустим, к примеру, что мы хотим
оцифровать непрерывный сигнал, имеющий отношение сигнал/шум 55
дБ. При использовании идеального восьмибитового АЦП, для которого от­
ношение сигнал/шум для полной шкалы равно 6.02 • 8 + 1.76 = 49.9 дБ со­
гласно (12-15), шум квантования исказит цифровые отсчеты, и
результирующее отношение сигнал/шум для цифрового сигнала не может
быть больше 49.9 дБ. В результате аналого-цифрового преобразования мы
потеряем отношение сигнал/шум. (Для оцифровки непрерывного сигнала,
имеющего отношение сигнал/шум 55 дБ, мы могли бы использовать деся­
тибитовый АЦП с его 5М?4Д| * 62 дБ, при этом ухудшение отношения
сигнал/шум из-за шума квантования было бы незначительным.) Формулы
(12-13) и (12-15) применимы к идеальным АЦП и не учитывают дополни­
тельные источники шума, такие как ошибка апертурного джиттера, ошиб­
ки, связанные с пропуском кодов и другие нелинейности. Таким образом,
реальные АЦП имеют отношение сигнал/шум ниже идеального, предска­
зываемого выражением (12-13). На практике благоразумно предполагать,
что
на 3 —6 дБ ниже того, что дает (12-15).
2. Выражение (12-15) часто приводится в литературе, но оно Иногда мо­
жет приводить к ошибкам, т. к. нельзя подавать на вход АПЦ сигнал с
размахом, равным полной шкале АЦП. Разумно подавать на АЦП сиг­
нал, уровень которого несколько ниже, т. к. неизбежные флуктуации
сигнала могут привести к ограничению сигнала и внесению, таким об­
разом, искажений в него. Следовательно, оценка (12-15) очень оптими­
стична,. и на практике отношение сигнал/шум АЦП будет меньше, чем
показывает (12-15). Для более точной оценки отношения сигнал/шум
АЦП следует брать такое СКЗ сигнала, которое никогда не будет (или
редко будет) приводить к выходу за пределы допустимых входных на­
пряжений АЦП, подставлять это значение в (12-11) для вычисления
значения коэффициента использования, которое затем использовать в
(12-13)'. Здесь тоже увеличение длины слова облегчит эту проблему,
увеличив доступное отношение сигнал/шум.
3. Вспомните теперь, что любой непрерывный сигнал в реальном мире
имеет свое собственное отношение сигал/шум, так что использование
АЦП, БМЯд/р которого намного превышает отношение сигнал/шум
сигнала, не имеет смысла. В этом случае дополнительные биты АЦП бу­
дут использованы для оцифровки шума непрерывного сигнала с боль­
шей точностью.
Здесь необходимо сделать одно предупреждение относительно рассматривае­
мого анализа ошибок квантования АЦП. Вывод выражений (12-13) и (12-15)
основан на трех предположениях:
1. Причиной ошибок квантования является случайный стационарный про­
цесс, т. е. характеристики АЦП не меняются со временем. При заданном
входном напряжении мы всегда ожидаем получить от АЦП один и тот
же двоичный код.
1 Кстати, для описания того, насколько сильно нагружен вход АЦП, некоторые специа­
листы используют пик-фактор. Пик-фактор и коэффициент нагрузки являются взаим­
но обратными величинами, или СР = Ур /(СКЗ сигнала).
12.3. Эффекты конечной длины слова..
451
2.
Функция плотности вероятности ошибки квантования равномерна.
Мы предполагаем, что АЦП идеален, и все значения ошибки в преде­
лах от -q /2 до +q/2 равновероятны. АЦП, у которого имеются пропу­
щенные коды, этому условию не удовлетворяет. Высококачественные
АЦП, на вход которых подается сигнал, пересекающий множество
уровней квантования, даст необходимую нам равномерную функцию
плотности вероятности ошибки квантования.
3. Ошибки квантования не коррелированы с непрерывным входным сиг­
налом. Если бы мы оцифровывали непрерывный синусоидальный сиг­
нал, частота которого кратна частоте дискретизации, мы фактически
оцифровывали бы одно и то же напряжение, и последовательность
ошибок квантования не была бы случайной. Ошибка квантования
была бы в этом случае предсказуемой и повторяющейся, а наша форму­
ла для дисперсии ошибки квантования оказалась бы недействитель­
ной. На практике дЛя таких сложных сигналов, как музыка или речь с
их богатым спектральным составом, эта проблема не возникает.
Чтобы завершить обсуждение АЦП, рассмотрим последний вопрос. В литера­
туре читатель может встретить выражение
b^jf = (SNR - 1.76)/6.02.
(12-16)
Это выражение используется производителями измерительных приборов, что­
бы указать чувствительность приборов, используя параметр b^t, известный как ко­
личество эффективных битое, или эффективное количество битов (ENOB) [3-8].
Выражение (12-16) —это просто (12-15), решенное относительно Ь. Изготовите­
ли измерительных приборов измеряют реальное отношение сигнал/шум их при­
бора, характеризующее его способность воспринимать входные сигналы на фоне
внутреннего шума прибора. Имея это реальное отношение сигнал/шум, они исполь­
зуют (12-16) для вычисления значения Ье^ . Чем больше Ьф тем больше непрерыв­
ное напряжение, которое можно точно оцифровать, по отношению к внутренним
шумам оборудования.
12.3.2. Переполнение данных
Следующее явление, связанное с конечной длиной слова, которое мы рас­
смотрим, называется переполнением. Переполнение — это то, что происходит,
когда результат арифметической операции содержит слишком много битов, или
разрядов, и не может быть представлен в регистрах, предназначенных для его хра­
нения. Мы можем показать такую ситуацию достаточно легко, используя простой
восьмиразрядный калькулятор, реализующий четыре функции. Сумма десяти­
чного 9.9999999 и 1.0 равна 10.9999999, но на восьмиразрядном калькуляторе
сумма равна 10.999999, т. к.
9.9999999
+ 1.0000000
10.9999999.
t
этот разряд отброшен
452________ Гпава 12. Цифровые форматыданных и их роль в обработке сигналов
Регистры, которые содержат результат арифметической операции и управляют
дисплеем, могут хранить только восемь десятичных разрядов, так что младший
разряд отбрасывается. Хотя ошибка в приведенном примере меньше одной милли­
онной, эффект переполнения может быть поражающим, когда мы работаем с боль­
шими числами. Если мы используем наш калькулятор для сложения 99999999 и 1,
вместо правильного результата в 100 миллионов мы получим 1. Теперь это насто­
ящая ошибка переполнения!
Покажем эффекты переполнения на примерах, которые теснее связаны с об­
суждением форматов двоичных чисел. Прежде всего, сложение двух двоичных
беззнаковых чисел так же просто, как и сложение двух десятичных чисел. Сумма
42 и 39 дает 81, или
1 11
+42 в двоичном беззнаковом формате -*
+39 в двоичном беззнаковом формате -*
+81 в двоичном беззнаковом формате -*■
*- биты переносов
10 10 10
+
10 0 111
1 01 0 0 0 1
В этом случае два шестибитовых двоичных числа требуют 7 битов для представ­
ления результата. Общее правило гласит, что сумма m b-битовых чисел может тре­
бовать для представления результата до [b + log2 (w)] битов. Следовательно, для
накопления суммы шестнадцати 20-битовых чисел потребуется 24-битовый ре­
гистр (аккумулятор), т. к. 20 + log2(/6) = 24. Сумма 256 восьмибитовых слов по­
требует аккумулятор длиной в [5 + log2(256)], или 16 бит, для того, чтобы не было
переполнений.
В предыдущем примере, если бы длина слова аккумулятора была равна 6 би­
там, возникла бы ошибка переполнения:
1 11
+42 в двоичном беззнаковом формате -*•
«- биты переносов
10 1 0 1 0
+39 в двоичном беззнаковом формате -*
+
10 0 111
+17 в двоичном беззнаковом формате -*■
1 0 1 0 0 0 1 * - ошибка
f
переполнения
перенос из знакового разряда игнорируется, что приводит
к ошибке переполнения
Здесь старший бит результата вызвал переполнение 6-битового аккумулятора,
и возникла ошибка.
В отношении ошибок переполнения двоичный дополнительный формат обла­
дает двумя интересными свойствами. Во-первых, при определенных условиях пере­
полнение при суммировании двух чисел не приводит к ошибке. Во-вторых, при
выполнении множества сложений промежуточные ошибки переполнения не сказы­
ваются на окончательной сумме, если результирующий модуль суммы 6-битовых
двоичных дополнительных чисел меньше 2Ь~1. Проиллюстрируем эти свойства,
рассмотрев четырехбитовый двоичный дополнительный формат на рисунке 12.5,
двоичные значения которого взяты из таблицы 12.2.
453
12.3. Эффекты конечной длины слова..
Десятичный
эквивалент
+7
+6
+5
—
+4
+3
+2
..... +1
—
_ .
О
-1
-2
-3
-4
1001
Г
1000
Рис. 12.5. Четырехбитовые двоичные дополнительные числа
Первое свойство двоичного дополнительного переполнения, которое иногда
не дает ошибок, можно показать на следующих примерах:
010
-5 в двоичном дополнительном формате -»
1011
+2 в двоичном дополнительном формате ■*
+ 0 010
«- биты переноса
-3 в двоичном дополнительном формате -*0 1 1 0 1«- правильный
|
отрицательный результат
нулевой перенос из знакового бита
110
- 2 в двоичном дополнительном формате-»
1110
+6 в двоичном дополнительном формате-*
+ 0110
+4 в двоичном дополнительном формате-»
«- биты переноса
1 0 1 0 0 «- правильный
|
положительный результат
перенос из знакового бита игнорируется, ошибка не возникает
454________ Гпава 12. Цифровые форматыданных и их роль в обработке сигналов
Следующие примеры показывают, как иногда переполнение двоичных допол­
нительных чисел приводит к ошибкам:
ООО
*- биты переноса
- 7 в двоичном дополнительном формате -»
10 01
-6 в двоичном дополнительном формате -*■
+ 1010
+3 в двоичном дополнительном формате -*•
10 0 1 1 « - неверный
t
положительный результат
перенос из знакового бита игнорируется, что вызывает ошибку
1 11
+7 в двоичном дополнительном формате -*
0 111
+7 в двоичном дополнительном формате -*
+ 0111
-2 в двоичном дополнительном формате -*■
0 1 1 10
t
*- биты переноса
•*- неверный
отрицательный результат
нулевой перенос из знакового бита
Правило, применяемое в случае сложения двоичных дополнительных чисел,
гласит, что, если бит. переноса в знаковый разряд совпадает с битом переноса из
знакового разряда, бит переполнения можно игнорировать без риска вызвать
ошибку; если же бит переноса в знаковый бит отличается от бита переполнения,
результат неверный. Еще более интересно свойство двоичного дополнительного
кода, состоящее в том, что последовательность 6-битовых сложений может при­
водить к ошибкам переполнения промежуточных результатов, но конечная сум­
ма оказывается правильной, если ее модуль меньше 2^~1. Мы покажем это на
следующем примере. Если мы складываем +6 с +7, а затем к сумме прибавляем
-7, мы получим ошибку переполнения промежуточной суммы, но наша конечная
сумма будет правильной:
+7 в двоичном дополнительном формате -»
0111
+6 в двоичном дополнительном формате ->
+0110
- 3 в двоичном дополнительном формате -*>
1 1 0 1 *- ошибка переполнения
- 7 в двоичном дополнительном формате ->
+ 1001
+6 в двоичном дополнительном формате -*
10 1 1 0 <- правильный
t
положительный результат
переполнение игнорируется без последствий
Модуль суммы трех четырехбитовых чисел был меньше 24-1 (<8), следователь­
но, результат оказался правильным. Если мы сложим +6 и +7, а затем прибавим -5,
мы получим переполнение промежуточной суммы, и окончательный результат бу­
дет неверным, потому что его модуль не меньше 8.
12.3. Эффекты конечной длины слова..
455
+7 в двоичном дополнительном формате -*
0111
+6 в двоичном дополнительном формате -»
+ 0110
-3 в двоичном дополнительном формате -*■
- 5 в двоичном дополнительном формате ->
+8 в двоичном дополнительном формате -»
1 1 0 1 <- ошибка переполнения
+ 1011
1 1 0 0 0 *- правильный
положительный результат
Другая ситуация, в которой проявляются проблемы переполнений —вычисле­
ние БПФ. На первых порах трудно себе представить, что умножение комплекс­
ных чисел на синусы и косинусы может привести к чрезмерному росту длины
слова данных —особенно потому, что синусы и косинусы по модулю меньше еди­
ницы. Мы можем показать, как растет длина слова данных, рассмотрев бабочку
БПФ с прореживанием по времени, показанную на рисунке 4.14(с), которую мы
повторяем на рисунке 12.6, и пройдя через некоторые алгебраические преобразо­
вания. Выражение для выходах'этой бабочки, согласно (4-26), имеет вид
х ' = х ^ мк * у .
(12-17)
Рис. 12.6. Бабочка БПФ с прореживанием по времени
Разбив входы бабочки х и,у на действительные и мнимые части и вспомнив,
что \Умк = е~12лЬ/М, мы можем записать (12-17) как
х ~ хгеа1+1хтаё ^(е
* (.УГеа1 +ЗУта^ •
(12-18)
Если мы через а обозначим угол поворачивающего множителя 2я£/М и вспом­
ним, что е~1а = со$(а) -увт(а), мы можем записать (12-18) в более простом виде
х ' = хгеа1 +1 хтаё +[С0 Б(а) - ^ Ч « ) ] • (угеа1 +]у1таё) =
= хгеа1 + С055<а )Угеа1 + ^ п(а )Утаё +Лхшаё + с™(а )Утаё ~
(<*)Угеа{\ •(12-19)
Рассмотрим, например, только действительную часть х'геа[ выхода х Она со­
держит три члена
х 'геа1 = хгеа1 + со$(а )Угеа1 + *™(а)у1таё
(12-20)
Если хгеа1, у геа1 и У{таёимеют на входе в бабочку единичные значения, а угол по­
ворачивающего множителя оказывается равным я /4 = 45°, то х'геа[может оказать­
ся больше 2, т. к.
х'Геа1 = 1 + с0<45°) • 1 + вт(45°) * 1 - 1 + 0.707+ 0.707 = 2.414. .(12-21)
456________ Гпава 12. Цифровые форматыданных и их роль в обработке сигналов
Таким образом, мы видим, что действительная часть комплексного числа мо­
жет более чем удвоиться при выполнении одного каскада БПФ. Мнимая часть
комплексного числа тоже может на одном каскаде БПФ более чем удвоиться. Без
решения этой проблемы, связанной с увеличением длины слова, переполнения
могут сделать алгоритм практически неприменимым.
Проблема переполнений может решаться одним из двух способов —с помо­
щью усечения или округления, каждый из которых, как мы увидим, вносит свои
ошибки квантования.
12.3.3. Усечение
Усечение представляет собой процедуру, в результате которой значение дан­
ных представляется наибольшим уровнем квантования, который не превосходит
это значение. Если уровни квантования обозначены целыми числами, например,
действительное значение 1.2 будет усечено до 1. Пример усечения до целых значе­
ний приведен на рисунке 12.7 (а), где все значения х в диапазоне 0 < х < 1 прирав­
ниваются к 0, значения х в диапазоне 1 < х < 2 приравниваются к 1, значения х в
диапазоне 2 < х < 3 приравниваются к 2 и так далее.
Как и в случае ошибок квантования АЦП, мы можем для описания ошибок,
вносимых усечением, прибегнуть к понятию функции плотности вероятности.
Функция плотности вероятности ошибок усечения в терминах шага квантования
показана на рисунке 12.7 (Ь). На рисунке 12.7 (а) шаг квантования q равен 1, сле­
довательно, в этом случае мы можем иметь ошибки квантования, достигающие
-1. Используя результаты из (Б -11) и (Б-12) приложения Б, мы можем выразить
среднее и дисперсию для равномерной функции плотности вероятности как
( 12-22)
и
усечения
(12-23)
В некотором смысле ошибка усечения —это цена, которую мы платим за при­
вилегию использования целочисленной двоичной арифметики. Одно из ее про­
явлений —ошибка, вносимая при использовании усечения в процессе деления на
целую степень двойки. Мы часто говорим, что быстрый способ деления двоично­
го числа на 2Тсостоит в сдвиге двоичного слова на Тбитов вправо, т. е. мы усекаем
значение данных (но не слово данных), отсекая после сдвига правые Т битов. До­
пустим, например, что мы имеем значение 31, представленное пятибитовым дво­
ичным числом 111112, и мы хотим разделить его на 16, используя сдвиг битов на
Т = 4 позиции вправо и игнорируя (отсекая) сдвинутые биты. После сдвига впра­
во и усечения мы получим двоичное частное 31/16 = 000012. Здесь мы видим зна­
чимость проблемы, потому что быстрое деление дало нам в результате единицу
вместо правильного результата 31/16 = 1.9375. Ошибка деления с усечением со­
ставляет здесь почти 50 % правильного ответа. Если бы исходное делимое было
равно 63 и представлено шестибитовым двоичным числом 1111112, то деление его
на 16 путем сдвига вправо на четыре бита дало бы нам двоичный результат 0000112,
или 310. Правильный результат, конечно же, равен 63/16 = 3.9375. В этом случае от­
носительная ошибка составляет 0.9375/3.9375, или примерно 23.8 %. Следовате­
льно, чем больше делимое, тем меньше относительная ошибка усечения.
457
12.3. Эффекты конечной длины слова..
Квантованный х
Усечение
1!
2
3
•
(а)
-1
0
1
,
3
4
-2
-3
Функция плотности вероятности
1 ощибкй усечения
1
Я
-Я
0
-------------►
Значение ошибки
Рис. 12.7. Усечение: (а) нелинейность квантования; (Ь) функция плотности вероят­
ности ошибки
Если мы займемся изучением этого вида ошибок, то обнаружим, что результи­
рующая ошибка усечения зависит от трех факторов: количества сдвигаемых и
усекаемых битов, значений усекаемых битов (т. е. были эти биты равны нулю или
единице) и модуля двоичного числа, оставшегося после усечения. Хотя полный
анализ ошибок усечения выходит за рамки этой книги, мы можем оценить макси­
мальную ошибку, которая может возникнуть в нашей схеме деления с усечением
при использовании двоичной целочисленной арифметики. Наихудшей будет
ситуация, когда все усекаемые биты равны единице. Для целых двоичных чисел
значение комбинации из Г единичных бит справа от запятой равно 1 - 2 ~ т. Если
полученное частное N мало, значение этих усеченных единиц увеличивает
ошибку. Мы можем нормировать максимальную ошибку деления, используя от­
носительную меру ошибки. Таким образом, максимальная относительная ошиб­
ка двоичного частного N после усечения перед Г-битовым сдвигом вправо в
случае, когда все отбрасываемые биты равны единице, равна
%ошибка усечениятах =
(12-24)
= 100 •(Правильное частное - Частное после у сечения)/(Правильное частное) =
= 100* (Ошибка у сечения)/(Правильное частное) = 100* (1 - 2_Т)/[М + (1 -2~Т) ] .
Чтобы понять значение выражения (12-24), подставим в него некоторые чис­
ла. В первом примере, для деления 31/16, где Т= 4 и частное
1, относительная
ошибка составляет
100 • (1 - 0.0625)/(1 + 1 - 0.0625) = 100 • (0.9375/1.9375) = 48.4 %
458________ Гпава 12. Цифровые форматы данных и их роль в обработке сигналов
Построив график по (12-24) для трех разных значений сдвига как функцию ча­
стного N после усечения, получаем рисунок 12.8.
Рис. 12.8. Максимальная ошибка при использовании сдвига и усечения для реали­
зации деления на 2 Т. 7= 1 означает деление на 2; 7=2 соответствует деле­
нию на 4, а 7= 8 — делению на 256
Таким образом, чтобы минимизировать этот тип ошибок деления, нам нужно,
чтобы значение частного N было как можно больше. Помните, что (12-24) описы­
вает наихудший случай, когда все усекаемые биты равны единице. С другой сто­
роны, если бы все отбрасываемые биты оказались равными нулю, ошибка была
бы равной нулю. На практике ошибки будут где-то между этими крайними значе­
ниями. Практический пример того, как деление с усечением может порождать се­
рьезные численные ошибки, приводится в [9].
12.3.4. Округление данных
Округление —другой способ борьбы с ошибками переполнения, когда значе­
ние данных представляется ближайшим уровнем квантования, или округляется
до него. Если уровни квантования представлены целыми числами, число 1.2 в ре­
зультате квантования даст 1, а квантование числа 1.6 даст результат, равный 2.
Это показано на рисунке 12.9 (д), где все значения х в диапазоне -0.5 < х < 0.5 в
результате округления превращаются в 0, значения х в диапазоне 0.5 < х < 1.5
превращаются в 1, значения х в диапазоне 1.5 < х < 2.5 дают 2, и т. д.
Функция плотности вероятности ошибки, вносимой при округлении, показа­
на на рисунке 12.9 (Ь). На рисунке 12.9 (а) уровень квантования q равен 1, так что
в этом случае мы можем иметь модуль ошибки не более q/2, или 1/2. И снова, ис­
пользуя (0-11) и (0-12) из приложения Э, мы можем выразить среднее и диспер­
сию равномерной функции плотности вероятности как
Рокругления ~ 0,
(12-25)
° 2округления = Я2/ 12 •
(12-26)
Поскольку средняя и максимальная ошибки, вызванные округлением, меньше
соответствующих ошибок усечения, на практике обычно отдают предпочтение
округлению, чтобы минимизировать ошибки переполнения.
12.3. Эффекты конечной длины слова..
459
3
Квантованный х
2
1
Округление
-7/2 -5/2 -3/2 _1/2
I
(а)
I
-1
" її
0—
1/2 3/2 5/2 7/2
X
-2
-3
Функция плотности вероятности
А ошибки округления
_
(Ь)
_______________ _______ ______ ►
<//2
0
<7/2 Значение ошибки
Рис. 12.9. Округление: (а) нелинейная характеристика квантования; (Ь) функция
плотности вероятности ошибки
В цифровой обработке сигналов статистический анализ влияния ошибки
квантования обычно очень сложен. Аналитические результаты зависят от типов
ошибок квантования, амплитуды квантуемого сигнала, от используемого форма­
та данных и от того, какую из множества структур БПФ или цифровых фильтров
мы используем. Как бы то ни было, эксперты цифровой обработки сигналов раз­
работали упрощенные модели ошибки, анализ которых оказался полезным. Об­
суждение этих методов анализа и их результатов выходит за рамки этой вводной
книги, но для активного читателя найдется множество дополнительных источни­
ков информации [10-18]. (В работе [11] приведен обширный библиографический
список по теме анализа ошибок квантования.)
Проблемы переполнения при использовании двоичных форматов с фиксиро­
ванной запятой, последствия которых мы пытаемся облегчить с помощью усечения
и округления, возникают снова и снова, потому что многочисленные алгоритмы
цифровой обработки сигналов включают огромное количество сложений и умно­
жений. Это препятствие, особенно при аппаратурной реализации цифровых филь­
тров и БПФ, разработчикам удается обойти с помощью использования двоичных
форматов с плавающей запятой.
460________ Гпава 12. Цифровые форматы данных и их роль в обработке сигналов
12.4. Двоичные форматы с плавающей
запятой
Двоичные форматы с плавающей запятой позволяют нам преодолеть большин­
ство ограничений точности и динамического диапазона, накладываемых двоичны­
ми форматами с фиксированной запятой, особенно при уменьшении вредоносных
эффектов переполнения [19]. В форматах с плавающей запятой слово данных раз­
бивается на две части: мантиссу т и порядок е. Используя эти части, значение дво­
ичного числа с плавающей запятой п можно вычислить как
п =т • 2 е.
(12-27)
т. е. значение числа представляет собой произведение мантиссы на двойку, возве­
денную в степень, равную порядку. (Мантисса — не очень удачный термин, по­
скольку здесь ее смысл очень сильно отличается от смысла мантиссы
логарифмов. Изначально мантиссой называли дробную часть логарифма1. Одна­
ко вследствие распространенности этого термина в литературе мы будем и даль­
ше использовать его.) Конечно, и мантисса, и порядок в (12-27) могут быть либо
положительными, либо отрицательными числами.
Предположим, что 6-битовое число с плавающей запятой использует Ье битов
для порядка в формате с фиксированной запятой и со знаком и Ьт битов для ман­
тиссы в том же формате. Чем больше количество битов 6е, тем больше динамиче­
ский диапазон числа. Чем больше Ьт, тем выше разрешение, или точность, числа.
Ранние компьютерные модели, использованные разработчиками 6-битовых фор­
матов с плавающей запятой, показали, что компромисс достигается при Ье » Ь/4 и
Ът * ЗЬ/4. Мы увидим, что для типового 32-битового формата с плавающей запя­
той, используемого в наше время, Ье » 8 битов \\Ьт~24 бита. Чтобы использовать
полный динамический диапазон мантиссы, большинство реализаций чисел с пла­
вающей запятой рассматривают мантиссу как дробное двоичное число с фикси­
рованной запятой, сдвигают ее вправо или влево так, чтобы старший бит оказался
равным единице и соответственно корректируют порядок. Это соглашение назы­
вают нормализацией. В нормализованном числе мантиссу обычно называют дроб­
ной частью. Например, десятичное число 3.687510 можно представить в виде
двоичного дробного числа 11.10112- Если мы используем двухбитовую экспонен­
ту и шестибитовую мантиссу, мы можем также представить 11.10112 посредством
сдвига вправо на два бита и установки порядка, равного 2, в виде
порядок дробная часть
11.10112=
ю 0111011
(12-28)
т
двоичная запятая
і
Например, десятичный логарифм числа 256 равен 2.4082. Двойка слева от десятичной
запятой называется характеристикой логарифма, а разряды 4082 называются мантис­
сой. Двойка в 2.4082 не означает умножение .4082 на 102. Она значит, что мы берем ан­
тилогарифм числа .4082, получаем 2.56, затем умножаем это число на 102, получая 256.
461
12.4. Двоичные форматы с плавающей запятой
Это число с плавающей запятой можно преобразовать обратно в десятичное
следующим образом
[$(1*2~1) + (1*2~2) + (1*2-3) + (0*2~4) + (1*2~5) + (1*2~6)\*22 =
=[$(1*1/2)+ (1*1/4)+ (1*1/8)+ (0*1/16) + (1*1/32)+ (1*1/64)]*22=
=[0.5 + 0.25 + 0.125 + 0.0625 + 0.03125 + 0.015625]* 22=
= 0.921875 *4 =3.6875.
(12-29)
Приобретя некоторый опыт нормализации чисел с плавающей запятой, люди
скоро осознали, что хранить старший бит, который всегда равен единице, расто­
чительно. Этот избыточный бит занимает позицию одного бита во всех словах
данных и не приносит никакой пользы. Соответственно в практических реализа­
циях форматов с плавающей запятой этот бит отбрасывается, а его присутствие
подразумевается, при этом количество полезных битов дробной части увеличива­
ется на единицу. Вот почему в описаниях некоторых форматов с плавающей запя­
той используется термин скрытый бит. Одновременно с повышением точности
представления мантиссы эта схема использует меньший объем памяти, потому
что скрытый бит просто учитывается в аппаратуре арифметического устройства.
При использовании скрытого бита дробная часть в (12-28) сдвигается влево на
одну позицию и приобретает вид
порядок дробная часть
і
11.10112=
і
10 0110110
(12-30)
т
двоичная запятая
Вспомним теперь, что порядок и мантисса представляют собой числа со знаком
и с фиксированной запятой, а мы обсуждали несколько форматов представления
таких чисел, а именно модуль со знаком, двоичный дополнительный и двоичный со
смещением. Все три перечисленных формата используются в стандартных форма­
тах с плавающей запятой. Наиболее часто используемые форматы с плавающей за­
пятой, использующие 32-битовые слова, перечислены в таблице 12.3.
Формат 1ЕЕЕ Р754 пользуется наибольшей популярностью, т. к. многие про­
изводители интегральный схем реализуют именно его [8, 20-22]. Его порядок е
представляется в двоичном формате со смещением (смещенный порядок), а дроб­
ная часть представляет собой двоичное число в формате модуля со знаком и со
скрытым битом, значение которого предполагается равным 2°. Десятичное пред­
ставление нормализованного числа с плавающей запятой в формате 1ЕЕЕ Р754
вычисляется как
значение
= ( - У) 5 • 1 $ /* 2 е' 127
т
скрытый бит
(12-31)
462________ Гпава 12. Цифровые форматыданных и их роль в обработке сигналов
Формат чисел с плавающей запятой фирмы ІВМ несколько отличается от дру­
гих форматов, потому что в качестве основания он использует 16, а не 2. Порядок
представляется в двоичном коде со смещением, а дробная часть —в виде Імодуля
со знаком без скрытого бита. Десятичное значение нормализованного числа в
формате ІВМ вычисляется как
значение1ВМ = (-1У • ( ) $ /• 16е~64 .
(12-32)
Таблица 12.3. Форматы чисел с плавающей запятой
Формат стандарта IEEE Р754
27
26
25
24
23
S
27
26
25
24
2^
22
21
2°
Знак (s)
22
21
20
...
«-Порядок (є)-»
2
1
CM
M
C
I
CM
T—
CM
I
CM
28
CO
I
CM
CM
I
CM
29
CM
30
T
Бит 31
0
2-23
«-Дробная часть (f)-*
Формат IBM
28
27
26
25
24
23
S
2б
25
24
23
22
21
2®
2-1
Знак (s)
21
22
20
...
«-Порядок [є)~*
2
1
CM
O
C
I
CM
CM
M
C
I
CM
29
1
ЗО
CM
CO
1
CM
CM
1
CM
Бит 31
0
2~24
«-Дробная часть (f )-*
Формат DEC (Digital Equipment Corp.)
29
28
27
26
25
24
23
S
27
2б
25
24
23
22
21
2°
Знак (s)
22
21
20
...
«-Порядок (е)->
2
1
CM
O
C
I
CM
CM
M
C
1
CM
ЗО
Tf
1
CM
CO
I
CM
CM
I
CM
Бит 31
0
2-24
«-Дробная часть ( f)-*
Формат M IL-STD 1750А
Бит 31
29
2 - 1 2-2
...
11
10
9
8
СM
О
C
I
CM
см
C
M
\
CM
CM
I
CM
оM
C
I
CM
2°
ЗО
7
6
27
5
4
3
2
1
0
2®
24
23
22
21
2°
♦-Порядок {e)~*
«-Дробная часть (f)-»
Формат фирмы DEC использует двоичный порядок со смещением и дробную
часть в виде модуля со знаком и скрытым битом, равным 2-1. Десятичное значе­
ние нормализованного числа в формате DEC вычисляет следующим образом
значениеПгГ = ( -1)s • 0(у1/щ2е~128
t
(12-33)
скрытый бит
MIL-STD 1750А представляет собой стандарт чисел с плавающей запятой военно-воздушных сил США. В этом формате порядок представляется в виде двоично­
го дополнительного кода, расположенного в восьми младших разрядах слова.
Дробная часть в этом формате также представляется двоичным дополнительным
463
12.4. Двоичные форматы с плавающей запятой
кодом (без скрытого бита), по этой причине в таблице 12.3 знаковый бит специально
не отмечен. Десятичное значение числа в формате MIL-STD1750А вычисляется как
значение1750A=f *2е.
(12-34)
Обратите внимание на то, что все слова в таблице 12.3 содержат 32 бита. Это не
случайно. Использование 32-битовых слов облегчает реализацию этих форматов в
8-, 16- и 32-битовых процессорах. Обеспечивая преимущества в обработке данных,
эти форматы, с другой стороны^ требуют достаточно большого объема сравнений и
ветвлений для правильной реализации арифметических операций. В работе [23]
приводятся блок-схемы алгоритмов, показывающие, какие действия необходимо
выполнить при сложении или умножении чисел с плавающей запятой.
12.4.1. Динамический диапазон чисел с плавающей
запятой
Определение динамического диапазона для произвольного формата с плаваю­
щей запятой требует значительных усилий. Мы начнем с повторения выражения
для динамического диапазона заданной системы чисел (12-6):
Динамический диапазон дБ =
= 20 • log ^[(наибольшее возможное значение слова)/
/(;наименьшее возможное значение слова)].
(12-35)
Когда мы пытаемся определить наибольшее и наименьшее возможные значе­
ния слова для заданного формата чисел с плавающей запятой, мы быстро понима­
ем, что они зависят от таких факторов, как
□ позиция двоичной запятой;
а используется скрытый бит или нет (если используется, то важна его по­
зиция относительно двоичной запятой);
□ значение основания формата чисел с плавающей запятой;
□ формат представления двоичных чисел со знаком, используемый для по­
рядка и дробной части (например, вспомните таблицу 12.2, согласно кото­
рой двоичный дополнительный формат позволяет представлять большие
по модулю отрицательные числа, чем формат модуля со знаком);
□ как обрабатываются ненормализованные мантиссы, если таковые воз­
можны (ненормализованные числа — это ненулевые числа, которые
меньше минимального нормализованного, но все еще могут быть представ­
лены, когда и порядок, и скрытый бит равны нулю);
а как обрабатываются порядки, когда их двоичное представление со­
держит только единицы или только нули (например, формат IEEE
Р754 интерпретирует число, порядок которого в двоичном коде состо­
ит только из единиц, а дробная часть отлична от нуля, как недопусти­
мое число, тогда как в формате DEC число, знаковый бит которого
равен единице, а порядок —нулю, является специальной инструкцией,
а недопустимым числом).
464________ Гпава 12. Цифровые форматыданных и их роль в обработке сигналов
Попытка вывести выражение для динамического диапазона с учетом всех воз­
можных комбинаций перечисленных факторов вряд ли привела бы к полезному
результату. Мы можем вывести приблизительное выражение для динамического
диапазона, которое часто используется на практике [8, 22,24].
Предположим следующее: порядок представлен 6е-битовым двоичным чис­
лом со смещением, дробная часть представляет собой нормализованное число в
виде модуля со знаком, имеющее знаковый бит и Ьт значащих битов, а скрытый
бит располагается слева от двоичной запятой. Наше гипотетическое слово имеет
следующую форму:
Ьт+Ьае 1 Ь_+Ьа-2
т е
Э
Знак (в)
2ье-1
2ье~2
...Ьт +2
Ьт - т
1 Ьт-2т ...
“ т Ьт т
...
21
2°
2-1
*- Порядок (е) -*
2~2
1
...
О
2“ьт+1 2~ьт
+- Дробная часть (0 -»•
Сначала мы определим, каким может быть максимальное значение нашего
слова с плавающей запятой. Наибольшее значение дробной части соответствует
случаю, когда скрытый бит и все остальные Ьтбитов дробной части равны единице.
При этом дробная часть равна/ = [ 1+(1-2~ьт)]. Первая единица в этом выражении
представляет скрытый бит слева от запятой, а значение в круглых скобках —значе­
ние дробной части, все Ьтбитов которой равны единице. Наибольшее положитель­
ное значение мы можем тэлучить, когда Ье —битовый порядок в двоичном формате
со смещением равен 2(2 е ~1\ Наконец, наибольшее значение, которое может
быть представлено в этом формате с плавающей запятой, равно наибольшей дроб­
ной части, умноженной на 2 в степени, равной наибольшему порядку, или
наибольшее возможное значение слова = [1 + (1 - 2~°т)\ •2(2 6
1).
(12-36)
Наименьшее значение, которое мы можем представить словом с плавающей
запятой, равно единице в скрытом бите, умноженной на два в наиболее отрицате­
льной степени, или
наименьшее возможное значение слова = 1 •2~^Ье
.
(12-37)
Подставляя (12-36) и (12-37) в (12-35), получаем
динамический диапазон^ =
(12-38)
= 20 • log10{ [1 +(1 -2 ~ ь™)] • 2 ^ Ье~1~1^/[1 •2~(2Ье~*>]}.
И здесь мы можем использовать приближение —когда Ьтвелико, скажем, пре­
вышает семь, значение 2~Ьтприближается к нулю; т. е. при увеличении Ьтзначе­
ние дроби, состоящей из единиц, (1 - 2~Ьт), приближается к 1. При этом (12-38)
превращается в
динамический д и а п а зо н ~
(12-39)
« 20 • к ^ 10 {[1 + 1]* 2 ^ Ъе~1~^/[1 • 2-&Ъе~ \ } =
= 20 •log10 {2 • 2 ^ Ье~1~1) /[2-<2Ье~1Ц }= 20 • к ^ 10 {
Ье~1) /[2~<2*е_У>]} =
= 20 • log10 [2 • 2(2Ье~1)] = 20 • log10 [ 2 ^ ЬеЦ = 6.02 • 2 Ье.
12.5. Двоичный формат с поблочно плавающей запятой
465
Используя (12-39), мы можем оценить, например, динамический диапазон чи­
сел с плавающей запятой в коротком формате IEEE Р754, который содержит во­
семь битов порядка:
динамический диапазон jeeeP754 = 6-^2 • 28 = 1529 д Б .
(12-40)
Мы продемонстрировали только самые главные свойства наиболее употреби­
тельных форматов чисел с плавающей запятой, но в этой области есть еще множе­
ство деталей, требующих изучения. Для заинтересованного читателя ссылки,
приведенные в конце этой главы, могут послужить хорошей отправной точкой.
12.5. Двоичный формат с поблочно
плавающей запятой
Союз двоичных чисел с фиксированной и с плавающей запятой известен как
формат с поблочно плавающей запятой. Эта схема используется, особенно в спе­
циализированных процессорах БПФ, когда обрабатываются большие массивы,
или блоки, данных. При использовании поблочно плавающей запятой сначала
анализируются все слова в блоке данных, затем нормализуется мантисса наиболь­
шего слова и вырабатывается правильный порядок. Эта нормализация позволяет
использовать весь динамический диапазон мантиссы. Затем мантиссы остальных
слов сдвигаются так, что они могут использовать порядок наибольшего слова. Та­
ким образом, все слова данных в блоке используют один и тот же порядок, что по­
зволяет сэкономить память.
В реализациях БПФ арифметические операции выполняются над блочно нор­
мализованными данным, как над числами с фиксированной запятой. Но когда в
результате сложения возникает ситуация переполнения, все слова данных сдви­
гаются на один бит вправо (делятся на два), а порядок увеличивается на единицу.
Как, возможно, читатель уже догадался, форматы с поблочно плавающей запятой
имеют расширенный динамический диапазон и позволяют избежать проблем пере­
полнения, свойственных форматам с фиксированной запятой, но не достигают ха­
рактеристик, характерных для форматов с истинно плавающей запятой [8,25,26].
Библиография
Neugebauer, О. «The History of Ancient Astronomy», Journal of Near Eastern
Studies, Vol. 4,1945, p. 12.
2. Knuth, D. E. The Art of Computer Programming: Seminumerical Methods, том 2, раз­
дел 4.1, Addison-Wesley Publishing, Reading, Massachusetts, 1981, p. 179 (Кнут Д.
«Искусство программирования для ЭВМ» М., Мир 1977; www://lib.ru).
3. Kester, W. «Peripheral Circuits Can Make or Break Sampling-ADC Systems»,
EDNMagazine, October 1,1992.
4. Grove, M. «Measuring Frequency Response and Effective Bits Using Digital Sig­
nal Processing Techniques», Hewlett-PackardJournal, February 1992.
1.
Tektronix. «Effective Bits Testing Evaluates Dynamic Range Performance of Di­
gitizing Instruments», Tektronix Application Note, No. 45W-7527, December 1989.
6. Ushani, R. «Subranging ADCs Operate at High Speed with High Resolution»,
EDN Magazine, April 11,1991.
5.
466________ Гпава 12. Цифровые форматыданных и их роль в обработке сигналов
7. Demler, М. «Time-Domain Techniques Enhance Testing of High-Speed ADCs»,
EDN Magazine, March 30,1992.
8. Hilton, H. «A 10-MHz Analog-to-Digital Converter with 110-dB Linearity»,
Hewlett-PackardJournal, October 1993.
9. Lyons, R. G. «Providing Software Flexibility for Optical Processor Noise Analy­
sis», Computer Design, July 1978, p. 95.
10. Knuth, D. E. The Art of Computer Programming: Seminumerical Methods, том 2, раз­
дел 4.2, Addison-Wesley Publishing, Reading, Massachusetts, 1981, p. 198 (Кнут Д.
«Искусство программирования для ЭВМ» М., Мир 1977; www://lib.ru).
11 . Rabiner, L. R., and Gold, В. Theory and Application of Digital Signal Processing, Chap­
ter 5, Prentice-Hall, Englewood Cliffs, NewJersey, 1975, p. 353 (Рабинер Л., Голд Б.
«Теория и применение цифровой обработки сигналов», М.: Мир, 1978;
http://geogin.narod.ru/arhiv/dsp/dsp3.htm. На сайте http://geogin.narod.ru/rea-*
dall.htm подборка книг по ЦОС.).
12. J ackson, L. В. «Ап Analysis of Limit Cycles Due to Multiplicative Rounding in Recur­
sive Digital Filters», Proc. 7th Allerton Conf Circuit System Theory, 1969, pp. 69-78.
13. Kan, E. P. F, and Aggarwal, J. K. «Error Analysis of Digital Filters Employing Floating
Point Arithmetic», IEEE Trans. Circuit Theory, Vol. CT-18, November 1971, pp. 678-686.
14. Crochiere, R. E. «Digital Ladder Structures and Coefficient Sensitivity», IEEE
Trans. Audio Electroacoustics, Vol. AU-20, October 1972, pp. 240-246.
15. Jackson, L. B. «On the Interaction of Roundoff Noise and Dynamic Range in Digi­
tal Filters», Bell System TechnicalJournal, Vol. 49, February 1970, pp. 159-184.
16. Roberts, R. A., and Mullis, C. T. Digital Signal Processing, Addison-Wesley Publis­
hing, Reading, Massachusetts, 1987, p. 277.
17. Jackson, L. B. «Roundoff Noise Analysis for Fixed-Point Digital Filters Realized in
Cascade or Parallel Form», IEEE Trans. Audio Electroacoustics, Vol. AU-18, June
1970, pp.107-122.
18. Oppenheim, A. V., and Schafer, R. W. Discrete-Time Signal Processing, Sections
6.8 and 9.8, Prentice-Hall, Englewood Cliffs, New Jersey, 1989, p. 335 (Оппенгейм А. В., Шафер Р. В. «Цифровая обработка сигналов», М.: Связь, 1979,
доступен по адресу dsp-book.narod.ru/OpShDSP.djvu).
19. Larimer, J., and D. Chen. «Fixed or Floating? A Pointed Question in DSPs», EDN
Magazine, August 3,1995.
20. Ashton, C. «Floating Point Math Handles Iterative and Recursive Algorithms»,
EDN Magazine, January 9,1986.
2 1 . Windsor, B., and Wilson, J. «Arithmetic Duo Excels in Computing Floating Point
Products», Electronic Design, May 17,1984.
22. Windsor, W. A. «IEEE Floating Point Chips Implement DSP Architectures»,
Computer Design, January 1985.
23. Texas Instruments Inc., Digital Signal Processing Applications with the TMS320 Fa­
mily: Theory, Algorithms, and Implementations, SPRA012A, Texas Instruments,
Dallas, TX, 1986.
24. Strauss, W. I. «Integer or Floating Point? Making the Choice», Computer Design
Magazine, April 1,1990, p. 85.
25. Oppenheim and Weinstein. «Effects of Finite Register Length in Digital Filtering
and the Fast Fourier Transform», Proc. IEEE, August 1972, pp. 957-976.
26. Woods, R. E. «Transform-Based Processing: »How Much Precision Is Needed?»
ESD: The Electronic System Design Magazine, February 1987.
Глава 13
Маленькие
хитрости
цифровой
обработки
сигналов
Изучая литературу, посвященную цифровой обработке сигналов, мы иногда
встречаем некоторые оригинальные приемы, которые используются профессио­
налами, чтобы повысить эффективность алгоритмов. Эти приемы представляют
собой яркие примеры философии, выражаемой девизом «не работай много, рабо­
тай с умом», и их изучение даст нам более глубокое понимание математических
тонкостей ЦОС. В этой главе мы предлагаем вам коллекцию таких приемов, не за­
ботясь о какой-то их сортировке, и подробно исследуем некоторые из них, чтобы
упрочить знания, полученные при изучении предыдущих глав.
13.1. Перенос частоты без умножения
Перенос частоты часто используется в алгоритмах цифровой обработки сигна­
лов. Существуют простые схемы переноса частоты на 1/2 и 1/4 частоты дискрети­
зации. Давайте рассмотрим схемы смесителей.
13.1.1. Перенос частоты на ^ /2
Сначала рассмотрим метод переноса частоты на / 5/2 простым умножением на
последовательность ( - 1)п = 1, -1,1, - 1,... и т. д., где/5—частота дискретизации в
Гц. Этот процесс может поначалу показаться несколько загадочным, но его можно
объяснить очень просто, если мы рассмотри рисунок 13.1 (а). Можно видеть, что
умножение исходной последовательности на опорную последовательность (~1)п
Гпава 13. Маленькие хитрости цифровой обработки сигналов
468
эквивалентно умножению на дискретизированную косинусоиду, на которой точка­
ми отмечены отсчеты опорной последовательности (рисунок 13.1 (а)). Поскольку
косинусоида опорной последовательности повторяется каждые два отсчета, ее час­
тота равна/ 5/2. На рисунках 13.1 (Ь) и (с) показаны модуль и аргумент дискретно­
го преобразования Фурье последовательности ( - 7)” длиной в 32 отсчета. При этом
правая часть этих рисунков представляет отрицательные частоты.
*
(- 1 )"
(а)
ОI
'•<
3
1
5
4
2
0
6
Амплитудный спектр
N
(Ь)
4- последовательности (-1 )п
О ш-ш-:
О
8
12
50
іґ
0
12
-50
-100
16
20
24
28
30
т
20
24
28
30
т
Фазовый спектр
последовательности (-1 )п
100
(с)
X Л/= 32
16
0°
+
Рис. 13.1. Опорная последовательность (-1 )п = 1, - 1, 1 , - 1 и т. д.: (а) во временной
области; (Ь) амплитудный спектр для 32 отсчетов; (с) фазовый спектр
Рассмотрим процесс смешивания с последовательностью (-7 )” на примере.
Рассмотрим действительную последовательность х(п), содержащую 32 отсчета
суммы трех синусоид, амплитудный и фазовый спектры которой, |Х(т) | и ф(т) со­
ответственно, показаны на рисунках 13.2 (а) и (Ь). Если мы умножим эту последо­
вательность на последовательность (-7 )”, результат, последовательность х 1_у(п),
будет иметь амплитудный и фазовый спектры, которые показаны на рисун­
ках 13.2 (с) и (с1). Умножение сигнала на (-7 )” сдвигает половину его спектраль­
ной энергии вверх по частоте на / 5 /2 и половину его спектральной энергии вниз
по частоте на ~/8/2. Заметьте, что при таком нециклическом изображении частот­
ной оси, если мы будем продвигаться вверх или вниз по частоте, то в конечных
точках будет происходить заворот.
Здесь скрыта грандиозная возможность для новичка вычислить свертку спектра
последовательности ( - 7)” на рисунке 13.1 со спектром Х(т), чтобы получить спектр
сдвинутого по частоте сигнала Х 1
Попробуйте, пожалуйста, —это упраж­
нение поможет вам понять природу дискретных последовательностей и их соот­
ношение во временной и частотной областях в соответствии с теоремой о свертке.
13.1. Перенос частоты без умножения
16(а)
8
4
Компоненты
с отрицательной
частотой
\Х(т) |
+
12
16
20
ф(т)
100
50
(Ь)
469
|
24
28 30
т
67.5°
■ ' С - 450
0
8
-50
|
■ \/° °
-■-■-■-■-■-■-а----24
16
20
28 30 т
-100
(с)
16-8-4
| Х 1г 1( т ) |
12
_юо 4И ,Л "»
67.5°
450
50 +
0°
т
■
/
----- шш-\
(Ч) О
-50-100
16
20
24
28 30
т
28
12
16
20
24
30 т
-
Рис. 13.2. Сигнал и его перенос по частоте на fs/2■. (а) исходный амплитудный
спектр сигнала; (Ь) исходный фазовый спектр; (с) амплитудный спектр
преобразованного сигнала; (с!) фазовый спектр преобразованного сиг­
нала
Обратите внимание, мы не выполнили ни одного явного умножения —идея в
том и состоит, чтобы обойтись без умножений —мы просто изменили знак каждо­
го второго отсчета сигнала на противоположный. Амплитудный спектр Х 1 _1(т)
на рисунке 13.2(с) можно рассматривать и так: умножение на опорную последова­
тельность (-1 )” приводит к зеркальному отображению положительных частот
Х(т) [от Х(0) до Х( 16)] относительно частоты/ 5/4 Гци зеркально отображает от­
рицательные частоты Х(т) [от Х(17) %о Х(31)] относительно ~/в/4 Гц. Этот про­
цесс можно использовать для инвертирования спектра действительных сигналов
при полосовой дискретизации, как показано в разделе 2.4. Кстати, в литературе по
ЦОС некоторые достаточно грамотные авторы могут представлять последовате­
льность ( - 1)п эквивалентными выражениями вида
(_
= со 8(лп) = е!лп .
(13-1)
470
Глава 13. Маленькие хитрости цифровой обработки сигналов
13.1.2. Перенос частоты на чГв/4
Две другие простые опорные последовательности образуют действительную и
мнимую части комплексной последовательности с частотой
которая исполь­
зуется при понижающем преобразовании частоты для получения квадратурной
версии (комплексной, с центральной частотой, равной 0) действительного поло­
сового сигнала, центральная частота которого равна / 5/4. Действительная (син­
фазная) опорная последовательность имеет вид сое(лп/2) = 1,0, -1 ,0 и т. д. и
показана на рисунке 13.3 (а). Ее квадратурная компаньонка выглядит как
- в т (лп/2) = 0, -1, 0, 1 и т. д. и показана на рисунке 13.3 (Ь). Модули спектров
этих двух последовательностей идентичны, как показано на рисунке 13.3 (с), но их
фазы сдвинуты на 90° друг относительно друга (что мы и называем квадратурой). ’
(а)
(Ь)
0
о
\ :
-1 4‘'-и
А о,-1 ,0,1 ,...
1 -■
о я—
10
-м— *—V
12
1
-*’■
—Г
:---- М11
о •.
-1 + '■
▲ Амплитудный спектр последовательности 1,0,-1,0, ..., и 0,-1,0,1,...
Компоненты
с отрицательной
частотой
N12 -р
(с)
0
0
4
8
12
16
20
24
28
30
т
24
28
30
т
28
30
т
1 Фазовый спектр последовательности 1,0,-1,0,...
90
«1)
(е)
I
0
0°
0°
/
12
16
20
-90
I
90
^Фазовый спектр последовательности 0,-1,0,1,...
90°
0
т
-90
I
24
12
8
16
20
-90°
Рис. 13.3. Квадратурные опорные последовательности для понижающего преоб­
разования частоты на 3/ 4 : (а) синфазная опорная последовательность;
(Ь) квадратурная опорная последовательность; (с) амплитудный спектр
обеих последовательностей при N = 32 отсчета; (с!) фазовый спектр ко­
синусоидальной последовательности; (е) фазовый спектр синусоидаль­
ной последовательности
13.1. Перенос частоты без умножения
471
Если мы умножим последовательность х(п), спектр которой показан на рисун­
ках 13.2 (а) и (Ь), на синфазную (косинусоидальную) опорную последователь­
ность, произведение будет иметь спектр /(т), показанный на рисунках 13.4 (а) и
(Ь). Здесь тоже энергия спектра Х(т) переносится вверх и вниз по частоте, но на
этот раз величина переноса составляет ±/5/4. Умножение х(п) на квадратурную
(синусоидальную) последовательность дает спектр (2(т), показанный на рисун­
ках 13.4 (а) и (с).
Польза от применения квадратурных последовательностей состоит в том, что
при понижающем преобразовании частоты на/5/4 не нужны умножения, т. к. от­
счеты этих последовательностей принимают только значения +1 и -1, Вот почему
описываемые последовательности вызывают такой интерес: понижающее преобра­
зование входной последовательности выполняется простой пересылкой данных.
Для понижающего переноса частоты на / 5 /4 последовательности общего вида
х(п) = хгеаі(п) +ІХіт^(гі) присвоения значений выполняются следующим образом:
хпетю(@)~хгеа№) +)хтиц£Р)
х пеы>(
~х таё(
~ Іх геаі(1)
Лтгеж>(2)
хгеа№) ~ }хтаё(?)
хпет(3)
хтаё(3) + )хгеа№)
и т. д....
(13-2)
|/(т)| и \0(т)\
8-(а)
4 -2-
0■
О
100 --
--- :---
—
4
8
12
20
16
Ф,(т)
/
24
28
30
т
24
28
30
л»
67.5°
.45»
50 - -
(Ь)
20
0
-50
12
16
-100 +
157.5°
і Ф0(т)
200 -100-(с)
45°
■
0
-100
-200
90°
^
1И
90°
22.5°
I------
12
16
20
24
28
30
т
Рис. 13.4. Спектры после переноса вниз по частоте на ^ / 4 : (а) амплитудные спект­
ры 1(т) и О (т); (Ь) фазовый спектр /(т ); (с) фазовый спектр О (т)
472
Гпава 13. Маленькие хитрости цифровой обработки сигналов
Если преобразование частоты выполняется аппаратурно, эти пересылки реа­
лизуются соответствующим соединением элементов схемы. Хотя до сих пор мы
были сосредоточены на понижающем преобразовании, стоит заметить, что повы­
шающее преобразование последовательности общего вида на/5/ 4 может быть вы­
полнено с помощью следующих присвоений:
хпете>(0) хгеа№)
и т. д ....
(13-3)
13.1.3. Фильтрация и прореживание после переноса по
частоте вниз на ^ / 4
Существует эффективный прием выполнения комплексного понижающего
преобразования и фильтрации действительного сигнала с помощью процесса пере­
носа по частоте на / 5/4, который мы рассматривали для схемы квадратурной диск­
ретизации в разделе 8.9. Для существенного снижения вычислительной сложности
ФНЧ с линейной ФЧХ мы можем использовать новый метод [1-3]. Кроме того,
прореживание комплексной последовательности в два раза внутренне присуще
этому процессу и не требует дополнительных усилий.
Рассматривая рисунок 13.5 (а), мы замечаем, что, если спектр действительной
входной последовательности х(п) имеет центральную частоту / 5/4, то умножение
х(п) на со$(лп/2) = 1,0,-1,0,... в синфазном канале и на - в т (лп/2) = 0,-1,0,1,... в
квадратурном канале с целью перенести спектр х(п) на частоту 0 Гц дает новую
комплексную последовательность хпек)(п) = х^п) + ]Хц(п), или
х п е т (° )^ х (° )
+ 3°
х пеи>(1) = 0
~ М 1)
х Пеге>(2 ) = ~ Х ( 2 ) + $
хпетпО) = 0
+ ІХ(3)
хпею(4) = х (4) + І°
хпем(5) =0
и т. д ....
~ М 5)
(13-4)
Затем мы хотим пропустить обе последовательностной) ихд(п) через ФНЧ и
проредить результат в два раза.
А вОт здесь доступна маленькая хитрость. Представим себе, что мы используем
КИХ-фильтр с пятью ответвлениями, и в момент времени п = 4 данные, хранящи­
еся в элементах памяти двух ФНЧ, показаны на рисунках 13.5 (Ь) и (с). Благодаря
473
13.1. Перенос! частоты без умножения
тому, что каждый второй отсчет последовательностей х^п) и х„(п) равен нулю, в
этот момент времени выполняются только пять умножений. Вычисления, кото­
рые выполняются в момент времени и = 4, показаны в третьей строке крайнего
правого столбца таблицы 13.1. Поскольку мы прореживаем последовательности в
два раза, мы игнорируем результат вычислений в момент п *=5. Необходимые вы­
числения в следующий момент времени (и = 6) приведены в четвертой строке
таблицы 13.1, где снова выполняются только пять умножений.
(а)
Л(л')=/(л')+./с7(л’)
-8іп(ял/2)
Фильтр синфазного канала
в момент времени п = 4
Фильтр квадратурного канала
в момент времени п = 4
(С)
Рис. 13.5. Перенос частоты вниз на 13/4 и фильтрация: (а) блок-схема; (Ь) данные
синфазного фильтра; (с) данные квадратурного фильтра
Изучение таблицы 13.1 подсказывает нам, что мы можем разделить исходную
последовательность х(п) на две, умножить последние на опорную последователь­
ность 1, -1,... и подать полученные в результате умножения последовательности
х£п) и Хд(п) на два фильтра, как показано на рисунке 13.6 (а). Эти два фильтра име­
ют прореженные коэффициенты, т. е. коэффициенты синфазного фильтра равны
четным коэффициентам к(к) исходного ФНЧ, показанного на рисунке 13.5, а коэф­
фициенты квадратурного фильтра равны нечетным коэффициентам /г(&). Новые
фильтры изображены на рисунке 13.6 (Ь), который демонстрирует вычисления,
выполняемые в момент времени п = 4. Используя этот прием, мы уменьшили объ­
ем необходимых вычислений в два раза.
474
Глава 13. Маленькие хитрости цифровой обработки сигналов
Таблица 1 3 .1 . Данные фильтра и необходимые вычисления
после прореживания в два раза
Время
п=0
я =2
п=4
Данные фильтров
-
-
-
К
1ґ12
ь3
К
0
-
-
-
д(0) = 0
і(2) = х (0) іі 2- х (2) іі 0
х(0)
-
-х(2 )
0
х(0)
-
-
Ііо
Н1
И2
к3
к
0
-х(1 )
0
-
-
х(4)
0
-х(2 )
0
х(0)
к2
кз
К
ь0
п=6
я =8
Необходимые вычисления
0
х(3)
0
-х(1 )
0
-х(6 )
0
х(4)
0
-х(2 )
К
0
Н1
к2
^3
К
-х(5 )
0
х(3)
0
х(8)
0
~х(6)
0
х(4)
к0
к1
}%2
к3
К
0
х(Т)
0
~х(5)
0
і(0 )= ж ( 0)/?0
•
<?(2 ) = -х(1)И1
і(4) = х(0)Іі4-х(2)ІІ2+х(4)к0
<7(4 ) = -х(1)Іі3 +х(3)к1
і(6) = -х{2 )к4+х{4)к2-х{6)к0
<7( 6 ) = х(3)Н3-х (5 )їі1
і(8) = х(4)И4 - х (6)И2 +х(8)1г0
д(8) = -х(5)Іг3+х(7)іг1
Имеется еще одна особенность этой эффективной структуры понижающего
преобразования. Если в структуре на рисунке 13.5 (а) используются полуполосные фильтры, то только один из коэффициентов модифицированного квадратур­
ного фильтра отличен от нуля. Это значит, что мы можем реализовать фильтр
квадратурного канала как К элементов задержки, один умножитель на централь­
ный коэффициент исходного полуполосного фильтра, после которого включены
еще К элементов задержки, как показано на рисунке 13.6 (с). Для исходного по­
луполосного фильтра с ЛГответвлениями К равно целой части от N/4. Если цент­
ральный коэффициент исходного полуполосного фильтра А(ЛГ-7)/2 равен 0.5,
что бывает часто, то умножение на него реализуется в виде сдвига задержанного
отсчета Хд(п) на один бит вправо.
Эта схема понижающего преобразования и вправду весьма перспективна. Вот
еще одна возможность. Если исходный фильтр нижних частот на рисунке 13.5 (а)
имеет нечетное количество ответвлений, коэффициенты модифицированных
фильтров на рисунке 13.6 (Ь) будут симметричными, и мы сможем использовать
сложенную структуру КИХ-фильтра (раздел 13.7), чтобы уменьшить количество
умножителей (за счет дополнительных сумматоров) еще почти в два раза!
475
13.2. Быстрое приближенное вычисление длины вектора
Наконец, если необходимо инвертировать спектр выходной последовательно­
сти хс(п'), то мы можем сделать это двумя способами. Мы можем инвертировать
знак отсчетов последовательности 1, - 1,..., подаваемой на смеситель квадратур­
ного канала или поменять местами смеситель и отдельный элемент задержки в
квадратурном канале.
Модифицированный фильтр
синфазного канала
в момент времени п = 4
Модифицированный фильтр
квадратурного канала
в момент времени п = 4
(Ь)
х.(п)
х(п)
Модифицированный
ФНЧ синфазного
канала
11і -11і
(с)
г -1
*кУ
/(л1)
(N-1)/2
* 7-к
у -К
<?('»') і
Рис. 13.6. Эффективная схема понижающего преобразования, фильтрации и
прореживания: (а) блок-схема; (Ь) модифицированные фильтры и их
данные в момент времени п = 4; (с) схема с использованием полуполосного фильтра
13.2. Быстрое приближенное вычисление
длины вектора
Методы квадратурной обработки, используемые в спектральном анализе,
компьютерной графике и цифровой связи обычно требуют быстрого вычисле­
ния модуля комплексного числа (вектора V) по заданным действительной и
мнимой частям, т. е. по синфазной / и квадратурной (2 составляющим. Вычисле­
ние модуля требует выполнения операции извлечения квадратного корня, т. к. по
определению модуль V вычисляется как
476
Гпава 13. Маленькие хитрости цифровой обработки сигналов
\v\ =Vl2 + Q2.
(13-5)
Если сумма I2 + Q2 известна, то проблема сводится к эффективному вычисле­
нию квадратного корня.
Имеется несколько способов вычисления квадратного корня. Оптимальный ме­
тод зависит от используемой аппаратуры и имеющегося программного обеспечения.
Например, при вычислении квадратного корня в программе на языке высокого уров­
ня мы используем процедуру вычисления корня, имеющуюся в библиотеке. Биб­
лиотечные процедуры вычисления корня обеспечивают очень высокую точность,
но работают очень медленно. С другой стороны, если система должна выполнять
вычисление корня за 50 наносекунд, требуются высокоскоростные аппроксима­
ции [4,5]. Рассмотрим экономичную схему аппроксимации модуля, которая осо­
бенно эффективна в аппаратурной реализации.
Существует метод вычисления модуля комплексного числа, который называют
алгоритмом aMax+/3Min (читается как «альфа максимум плюс бета минимум»)1.
Этот метод использует линейную аппроксимацию модуля вектора, которая требу­
ет определения, какая из составляющих вектора, /или Q больше по абсолютной ве­
личине. Если мы обозначим большую абсолютную величину составляющих / или
Q как Мах, а меньшую —как Min, то приближенное значение \V\ с использовани­
ем алгоритма aMax+/?Min вычисляется как
| V\ * аМах + ßM in.
(13-6)
Существует несколько разных пар значений констант а и ß которые дают раз­
ную точность приближения в пределах 0.1 дБ [4,7]. Алгоритмы aMax+ySMin, опи­
санные в [10], определяют длину вектора за время, необходимое для сравнения
модулей чисел, двух умножений и одного сложения. Но эти алгоритмы требуют
для достижения разумной точности как минимум 16-битового умножения. Но
даже если аппаратурный умножитель отсутствует, не все потеряно. Задавая для
констант ,а и ß значения, равные целым отрицательным степеням двойки, мы де­
лаем (13-6) пригодным для реализации в двоичной целочисленной арифметике.
В большинстве случаев в алгоритме aMax+ßMin используются константы а = 1.0
и ß = 0.5 [8 - 10]. Умножение на 0.5 выполняется путем сдвига минимума вправо
на один бит. Мы можем оценить точность того или иного алгоритма вычисления
длины вектора, построив график ошибки, как функции фазового угла вектора.
Попробуем. Оценка aMax+/?Min для вектора единичной длины с использовани­
ем выражения
| V\ ~ Мах + Min/2,
(13-7)
в диапазоне углов от 0° до 90° показана сплошной линией на рисунке 13.7. (Графи­
ки на рисунке 13.7 повторяются с периодом 90°.)
Идеальная оценка в этом случае равна единице. Мы будем использовать это иде­
альное значение как образец при оценке качества разных алгоритмов aMax+^Min. Да­
вайте убедимся в том, что мы действительно понимаем, что означает сплошная
кривая на рисунке 13.7. Она показывает, что для вектора единичной длины,
1 Сначала использовался алгоритм «Max+/?Min», но в 1988 автор предложил расширить
его до aMax+/SMin, где а может принимать отличные От единицы значения [6].
13.2. Быстрое приближенное вычисление длины вектора
477
ориентированного под углом примерно 26°, оценка длины с помощью (13-7) даст
значение 1.118 вместо правильного значения 1. Следовательно, ошибка при 26°
равна 11.8 %, или 0.97 дБ. Анализируя всю сплошную кривую на рисунке 13.7, мы
получаем среднее значение ошибки в диапазоне от 0 до 90°, равное 8.6 % (0.71 дБ).
На рисунке 13.7 приведены также графики для а = 1 и/? = 1/4, а = 1 и/? = 3/8.
Истинный угол вектора (градусы)
Рис. 13.7. Нормированные оценкиaMax+^Min приа = 1 и/3=1/2, 1/4 и 3/8
Хотя значения a uß на рисунке 13.7 дают довольно точные результаты, имеют­
ся другие пары значений а и ß, которые заслуживают нашего внимания, т. к. они
обеспечивают уменьшение стандартного отклонения ошибки. Оцените, напри­
мер, пару значений a = 7/8 n ß = 7/16, для которой кривая оценки приведена на
рисунке 13.8 сплошной линией. Дальнейшее улучшение может быть получена
при а = 15/16 и/? = 15/32, график для этой пары приведен штриховой линией на ри­
сунке 13.8. Пара а = 15/16 и/3 = 15/32 дает довольно хорошие результаты по срав­
нению с оптимальными дробными значениями a = 0.96043387 и ß = 0.397824735,
приведенными в работе [11], график оценки для которых показан пунктирной ли­
нией на рисунке 13.8.
Хотя кажется, что использование значений a = 15/16 n ß = 15/32 требует двух
умножений и одного сложения, цифровая аппаратурная реализация в этом случае
может быть очень простой, как показано на рисунке 13.9. Диагональные штрихи, \1
например, обозначают сдвиг на один бит на соединениях, который реализует опе­
рацию деления на 2 с усечением. Соответственно, символ \4 показывает сдвиг
вправо на четыре бита, который реализует деление на 16. Управляющий сигнал
анализа условия |/| > |Q| принимает значение TRUE, когда модуль/больше модуля
Q, так что Мах = |/| и Min = |Q|. При этом на сумматор подаются значения |/| и lßl/2.
Когда сигнал |/|> |Q| принимает значение FALSE, на вход сумматора подаются зна­
чения |(2| и |/|/2. Заметьте, что выход сумматора, Мах + Min/2, представляет собой
результат вычисления по (13-7). Выражение (13-6) реализуется вычитанием
(Мах + M in /2 )/16 из Мах + Min/2.
478
Гпава 13. Маленькие хитрости цифровой обработки сигналов
Оценка длины вектора
0.96043387 Мах + 0.397824735 Міп
.................................................................
0
10
20
15(Мах + Міп/2)/16
..„ Л .
......
30
40
50
60
70
Истинный угол вектора (градусы)
Рис. 13.8. Оценки аМах+/?Мт при а = 7/8,
0.96043387, р = 0.397824735
= 7/16;
80
90
а = 15/16, /3 = 15/32 и а =
На рисунке 13.9 все умножения выполняются путем проводного сдвига, и общее
время выполнения ограничено только задержками аппаратурных компонентов.
15(Мах + Міп/2)
16
ЮІ
Рис. 13.9. Аппаратурная реализация при а = 15/16 и/3 = 15/32
Обратите внимание на одну особенность. Поскольку оценки |У| могут иметь
размер больше допустимого для нормализованных, их значения могут превышать
единицу. Это значит, что, хотя модуль находится в пределах допустимого диапа­
зона, оценка может выйти за границы слова и вызвать ошибку переполнения. При
использовании алгоритмов аМах+/?Мт пользователь должен быть уверен, что
истинные значения модуля не превышают значений, которые могут дать оценку,
превышающую максимальное представимое значение.
За удобство использования значений а и (5, представляющих собой целые степе­
ни двойки, мы платим ошибками, вносимыми при делении посредством сдвига с
усечением, и до сих пор мы не принимали во внимание эти ошибки. Кривые оценок
на рисунках 13.7 и 13.8 были получены с помощью программной модели, исполь­
зующей вычисления с плавающей запятой, и могут использоваться для оценки
разных пар значения а и /?. Однако действительная ошибка, вносимая алгорит­
мом аМ ах+/Ш т, будет несколько другой из-за ошибок деления при усечении
479
13.3. Взвешивание окном в частотной области
данных с конечной длиной слова. Для схем аМах+/Шіп ошибки усечения явля­
ются функцией длины слова данных, используемого алгоритма, значений |/| и |(2 |
и угла вектора. (Ошибки усечения дополняют ошибки, внутренне присущие алго­
ритмам aMax+/?Min.) Однако моделирование показало, что для 8 -битовой системы
(максимальная длина вектора = 255) ошибка усечения меньше 1 %. При увеличении
длины слова ошибка усечения приближается к 0 %, и это значит, что ошибки усече­
ния вносят очень маленький вклад в общую ошибку алгоритма аМах+/ЗМіп.
Сравнительные характеристики разных алгоритмов приведены в таблице 13.2.
Последний столбец в таблице 13.2 показывает максимально допустимую ис­
тинную длину вектора, при которой не возникает переполнение, по отношению к
максимально допустимому числу.
Итак, алгоритм aMax+/?Min дает возможность быстро вычислять длину
вектора без использования математического сопроцессора или аппаратурного
умножителя. Конечно, при использовании современных микросхем, содержа­
щих высокоскоростные умножители с плавающей точкой, выполняющие ум­
ножение за один или два такта, можно использовать произвольные значения a
и f), а не только целые степени двойки. Следует также заметить, что этот алго­
ритм легко реализуется в интегральных схемах (например, ПЛИС), что позво­
ляет выполнять высокоскоростную обработку.
Таблица 13.2. Сравнение алгоритмов aMax+^Min
Алгоритм
|V |~
Наибольшая Наибольшая Средняя
ошибка
ошибка
ошибка
(dB)
(%)
(%)
Средняя
ошибка
(dB)
Max |V|
(% F.S.)
Мах + Min/2
11 .8 %
0.97 дБ
8.6 %
0.71 дБ
89.4 %
Мах + Min/4
- 11 .6 %
-1.07 дБ
-0.64 %
-0.06 дБ
97.0 %
6.8 %
0.57 дБ
3.97 %
0.34 дБ
93.6 %
7(Мах + Min/2)/8
-12.5%
-1.16 дБ
-4.99 %
-0.45 дБ
100%
15(Мах+ Min/2)/16
-6.25 %
-0.56 дБ
1.79%
0.15 дБ
95.4 %
Мах + ЗМіп/8
----- 1------------
13.3. Взвешивание окном в частотной
области
Существует интересный прием минимизации вычислений, необходимых для
взвешивания с целью уменьшения утечки спектра. В некоторых случаях необхо­
димо вычислить БПФ невзвешенных данных и в то же время мы хотели бы иметь
БПФ тех же данных, взвешенных окном. В этой ситуации нам нет необходимости
выполнять БПФ два раза. Мы можем вычислить БПФ невзвешенных данных, а
затем выполнить сглаживание результата БПФ в частотной области для умень­
шения утечки. Посмотрим, как это делается.
480
Гпава 13. Маленькие хитрости цифровой обработки сигналов
Вспомним приведенные в разделе 3.9 выражения для окон Хэннига и Хэммин­
га: wHan(n) = 0.5 -0.5cos(2mt/N) и wHam(n) =0.54 -0.46cos(2nn/N) соответствен­
но. Оба они имеют общую косинусоидальную форму
w(n) = a -ßcos(2jtn/N)
(13-8)
при n = 0,1,2,..., N-1. Найдем спектр общего косинусоидального окна, вычислив
ДПФ от (13-8):
N-1
W(m) = E i « - ßcos(2jin/N)]e~j2jtnm/N.
(13-9)
n=0
Поскольку cos(2nn/N) = eJ2jin/N/2 + e~i2 nn/N/2, (13-9) можно переписать в
виде
N-1
N-1
N-1
W(m) ^ j x e ~ j 2nnm/ N - (ß/2)2jei2nn/N e-i2nnm/ N - (ß/ 2 ) ^ e - j 2jtn/ N e-J2jinm/ N =
n=0
N-1
•
n=0
N-1
n=0
N-1
=a ^ e - j 2jinm/ N - ( ß /2 )^ e i 2 nn/N e~j2nnm/N - (ß/2)'2Je-i2jtn/ Ne-i2nnm/N . (13-10)
n=0
n=0
n=0
Выражение (13-10) выглядит довольно сложным, но, используя результаты
раздела 3.13 для выражений, подобных суммам в (13-10), мы приходим к выводу,
что искомый спектр представим как суперпозиция трех функций вида sin(x)/x в
частотной области. Их амплитудные спектры показаны на рисунке 13.10.
Рис. 13.10. Амплитудный спектр общего косинусоидального окна
Заметим, что две смещенные функции sin(r)/r имеют боковые лепестки, фазы
которых противоположны фазам боковых лепестков центральной функции sin(x)/x
Это значит, что из ш-го бина, умноженного на а, вычитаются (т-У)-й бин, умно­
женный на Р/ 2 , и (т+1 )-й бин, умноженный на Р/ 2 , что минимизирует,боковые
лепестки m-го бина. Этот процесс вычисления свертки в частотной области экви­
валентен умножению входной последовательности на окно w(ri) длиной N отсче­
тов вида (13-8)[ 12 -14].
Например, предположим, что выход m-го бина равен Х(т) =
+ jbm, и выхо­
ды двух соседних бинов равны Х (т -1) = а _ 1 + jb _ 1 и Х(т+1) = а + 1 + jb+1. Тогда
сглаживание в частотной области для т-го бина несглаженного Х(т) даст следу­
ющий результат:
Х по трем отсчетам^)
= аХ(т) - (ß/ 2 )X(m~ 1 ) - (ß/ 2 )X(m +1 ) =
13.3. Взвешивание окном в частотной области
= a(am +jbm) -
0 5/2)(a_f
481
+jb_1) - (ß/ 2 )(a + 1 +jb+1) =
= aam - ф /2)(ач + a+1) +j[ccbm - < ß / 2 ) ( b + b+1)].
(13-11)
Для вычисления сглаженного N-точечного БПФ, Хпо трем отсчетам( т ) ’ м ы м 0 '
жем применить (13-11), в котором используются 4Nсложений и 3N умножений, к
результату JV-точечного БПФ Х(т) невзвешенной последовательности и избе­
жать таким образом необходимости выполнения N умножений при взвешивании
во временной области и второго БПФ с его N\og2 (N) сложений и 2N\og2 (N) умно­
жений. (В этом случае мы назвали результат сглаживания Хпо трем ornc4emaM(jn)»
потому что мы выполняем свертку трехчленной последовательности W ( m ) с по­
следовательностью Х(т).)
Итак, ситуация благоприятная. Имеются коэффициенты в частотной области
а иß для окна Хэннинга. Они оба равны 0.5, и умножения в (13-11) можно выпол­
нить в аппаратуре с помощью двух двоичных сдвигов вправо: на один бит для а =
0.5 и на два бита для каждого из двух ß / 2 = 0.25, что в сумме дает шесть двоичных
сдвигов. Если допустимо усиление в четыре раза, мы можем ограничиться только
двумя сдвигами влево (одним для действительной и одним для мнимой части
Х(т)), используя выражение
Х Хэнтнга,усиление-4 (т)
= 2Х(т) ~ Х(т-1) - Х(т+1) .
(13-12)
В реализациях на заказных БИС (ASIC) или на ПЛИС типа FPGA, в которых
следует избегать умножений1, двоичные сдвиги выполняются путем соответствую­
щей организации соединений блоков. Таким образом, для реализации сглажива­
ния с использованием окна Хэннинга требуются только сложения. Мы должны
рассмотреть вопрос о том, какое окно наилучшим образом подходит для данного
приложения и какими возможностями обладает имеющаяся аппаратура при реа­
лизации взвешивания в частотной области. Взвешивание окном Хэмминга тоже
можно реализовать в частотной области, но, к сожалению, здесь простых сдвигов
недостаточно.
Наряду с окнами Хэннинга и Хэмминга в [ 14] описано семейство окон, извест­
ное как окна Блэкмана, которое обеспечивает меньшую утечку при реализации
взвешивания в частотной области. (Примечание: в [14] обнаружены две опечатки
в коэффициентах 4-членного (-74 дБ) окна на странице 65. В [15] приведены сле­
дующие значения этих коэффициентов: 0.40217,0.49703,0.09892 и 0.00188.) Окна
Блэкмана имеют пять ненулевых коэффициентов в частотной области, и их ис­
пользование требует следующей пятичленной свертки:
Х по пяти отсчетам(т ) = а Х ( т ) + СУ /2 )х ( т - 2 ) - ( ß / 2 ) X ( m - 1 ) -
- (ß/2)X(m+1) + (у/2)Х(т+2) .
(13-13)
В таблице 13.3 приведены коэффициенты в частотной области для несколь­
ких общеупотребительных окон.
Современные ПЛИС БРСА содержат встроенные аппаратурно-реализованные умно­
жители, так что замена полномасштабного умножения сдвигами в некоторой степени
утратила актуальность —(прим. перев.).
482
Глава 13. Маленькие хитрости цифровой обработки сигналов
Завершим наше обсуждение сглаживания в частотной области, заметив, что
эта схема может быть эффективной, потому что мы не должны взвешивать весь
массив данных, сглаживание выполняется только над теми бинами БПФ, кото­
рые представляют какой-то интерес. Одно из применений сглаживания во вре­
менной области рассматривается в разделе 13.18.
Таблица 13.3. Коэффициенты сглаживания в частотной области
Окно
а
/3
У
Прямоугольное
1.0
—<
—
Хэннинга
0.5
0.5
—
Хэмминга
0.54
0.46
—
Блэкмана
0.42
0.5
0.08
7938/18608
9240/18608
1430/18608
0.42323
0.49755
0.07922
Точное Блэкмана
3-членное Блэкмана-Хэрриса
13.4. Быстрое умножение комплексных
чисел
В цифровой обработке сигналов умножение двух комплексных чисел —одна
из наиболее часто встречающихся операций. Она необходима во всех алгоритмах
дискретного и быстрого преобразования Фурье; в графических преобразованиях
и используется при обработке коммуникационных сигналов. И в аппаратурной, и
в программной реализации необходимо реализовать ее как можно эффективнее.
Если используемая аппаратура может выполнять три сложения быстрее, чем
одно умножение, мы можем ускорить комплексное умножение [16].
Умножение двух комплексных чисел а +уЪ и с +](1 дает комплексное произве­
дение вида
Д+/7 = (а +;'6 )(с
=
= (ас - Ь(1) + Дбс + а(Г)
(13-14)
Мы видим, что (13-14) требует четыре умножения и два сложения. (Мы пред­
полагаем, что с точки зрения времени выполнения вычитание эквивалентно
сложению.) Вместо использования (13-14) мы можем вычислить следующие
промежуточные значения
к 1 = а (с + (I),
к2
= с1(а+Ь)>
к3 - с(Ь - а).
(13-15)
13.5. Эффективное вычисление БПФ действительных последовательностей
483
Затем мы выполняем следующие операции для получения окончательных
значений и /:
к = к 1 ~ к2 >
(13-16)
I = И1 + ку.
Мы предлагаем читателю подставить ^ из (13-15) в (13-16) и убедиться в том, что
выражения в (13-16) эквивалентны (13-14). Промежуточные значения в (13-15) тре­
буют три сложения и три умножения, а результаты в (13-16) требуют еще два сло­
жения. Таким образом, мы обменяли одно умножение в(13-14)на три сложения в
(13-15) и (13-16). Если нашей аппаратуре для выполнения трех сложений требу­
ется меньше тактов, чем для одного умножения, мы можем получить общий выиг­
рыш в скорости обработки при использовании (13-15) и (13-16) вместо (13-14)
для выполнения комплексного умножения.
13.5. Эффективное вычисление БПФ
действительных последовательностей
Осознав свойство линейности и четную/нечетную симметрии быстрого пре­
образования Фурье (БПФ), ранние его исследователи быстро пришли к выводу
о том, что две разные действительные последовательности могут быть преобра­
зованы с помощью одного комплексного БПФ. Они также разработали метод
использования одного Л^-точечного комплексного БПФ для преобразования
действительной последовательности длиной в 2ІУотсчетов. Посмотрим, как ра­
ботают эти методы.
13.5.1. Вычисление БПФ двух Ы-точечных
действительных последовательностей
Стандартные алгоритмы БПФ разработаны для комплексных входных после­
довательностей; т. е. предполагается, что входная последовательность х(п) содер­
жит действительную и мнимую часть, или
х( 0 ) = хг( 0 ) +]хг( 0 ) ,
х ( 1 ) =хг( 1 )
х(2 ) = х ^ 2 ) +;хг(2 ) ,
х(1\Г-1) =х^М-1)+]х^Ы -1) .
(13-17)
В типовых схемах обработки сигналов чаще всего анализируются действите­
льные последовательности. Самый распространенный пример — вычисление
БПФ последовательности, полученной с выхода АЦП, который выдает целые
действительные отсчеты, соответствующие некоторому непрерывному сигналу.
В этом случае мнимые части всех отсчетов последовательности х(п) равны
484
Глава 13. Маленькие хитрости цифровой обработки сигналов
нулю. Следовательно, часть операций, выполняемых на первом этапе БПФ, ока­
зывается бесполезной. Первые исследователи БПФ осознали неэффективность
выполнения такого преобразования, изучили проблему и разработали метод, ко­
торые позволяет с помощью одного JV-точечного комплексного БПФ вычислять
преобразования двух независимых действительных последовательностей, содер­
жащих по JVотсчетов. Мы называем предложенный метод алгоритмом двойного
JV-точечного действительного БПФ. Вывод этого метода не представляет сложно­
сти и изложен в литературе [17 - 19]. Две JV-точечные действительные входные
последовательности а(п) и Ь(п) имеют преобразования Фурье Ха(т) и Хь(т).
Если мы возьмем а(п) в качестве действительной части входной последовательно­
сти БПФ, а Ь(п) в качестве мнимой части входной последовательности БПФ, то
х( 0 ) = a(0 )+jb(0 ) ,
х ( 1 ) = a( 1 )+jb(1 ) ,
х( 2 ) = а(2 ) +jb(2 ) ,
x ( N - 1) = a (N -1) + jb (N -1)
(13-18)
Подставляя x(n) из (13-18) в формулу стандартного ДПФ,
N -1
Х(т) = ^ х (п) e~i2nnm/ N,
(13-19)
п =0
мы получим результат Х(т), при этом т пробегает все целые значения от 0 до
N-1. (Мы, естественно, предполагаем, что ДПФ реализуется в виде БПФ.) Обо­
значая верхним индексом * комплексно-сопряженное число, мы можем извлечь
два искомых ДПФ Ха(т) и Х^(т) из Х(т), используя следующие выражения:
Xa(m) = [X*(N- т ) + Х(т)]/2,
(13-20)
Xb(m) = j[X*(N - т ) - Х(т )]/2.
(13-21)
и
Чтобы сделать выражения для Ха(т) и Х^(т) более понятными и более удобны­
ми для реализации, представим (13-20) и (13-21) в виде действительной и мнимой
частей. Используя запись Х(гп) в алгебраической форме, Х(т) = Х^т) +jXi(m), мы
можем переписать (13-20) в виде
Ха(т) = {Xr(N - т ) + Х^т) +j[Xt(m) - X{(N - m)]}/2 ,
(13-22)
где т = 1,2,3,..., N - 1. Что вы скажете об Ха(т), когда т = 0? Да, здесь мы сталки­
ваемся с непреодолимой трудностью, если попробуем реализовать (13-20) прямо.
Подставив т = 0 в (13-40), мы быстро осознаем, что первый член числителя
X*(N-0) = X*(N), отсутствует, т. к. в результатах JV-точечного БПФ отсчета X(jV)
нет! Мы решаем эту проблему, вспомнив, что последовательность Х(т) перио­
дична с периодом JV, так что X(N) = Х(0)\
1 Это показано в разделе 3.8 при обсуждении утечки спектра в ДПФ.
13.5. Эффективное вычисление БПФ действительных последовательностей
485
Когда m = 0, формула (13-20) превращается в
Xa( 0 ) = [Xt( 0 ) -jX^O) + X r(0 ) +jXi(0)}/2 -
x r(0) .
(13-23)
Далее, упрощая (13-21), получаем
Xb(™) =j[Xr(N - m) - j X ^ N - m) - Xr(m) - j X i(m)\/2 =
= {X{(N - m) + Х{(т) + j[Xr(N - m) - Xr(m)]}/2,
(13-24)
где m = 1,2,3,..., N - 1. Прибегая к тем же рассуждениям, что и при выводе (13-23),
получаем Хь(0) в (13-24) в виде
ХЬ(0) = {Х{0) + Х{(0) +j[Xr(0) - Хг(0)]}/2 = Х{0)
(13-25)
Эти рассуждения выявили один момент, который новичкам следует запомнить.
В литературе формулы (13-20) и (13-21) часто подаются без обсуждения пробле­
мы, связанной с т = 0. Так что каждый раз, разбирая математические выкладки или
столкнувшись с некоторыми уравнениями, сохраняйте здоровую долю скепсиса.
Проверьте уравнения на примере —вы увидите, справедливы ли они. (В конце
концов, и автор книги, и наборщик в типографии тоже человек и иногда делает
ошибки. В Огайо известна старая присказка: «Доверяй всем, но прячь свои кар­
ты.») Следуя этому, совету, давайте докажем, что описанное двойное ^-точечное
действительное БПФ действительно работает, подставив в (13-22) — (13-25)
8 -точечные последовательности из примеров вычисления ДПФ в главе 3. Взяв
8 -точечную последовательность из примера 1 в разделе 3.1, и обозначив ее как
а(п), имеем
а( 0 ) = 0.3535,
я(1) = 0.3535,
а(2) = 0.6464,
я(3) = 1.0607,
я(4) = 0.3535,
а(5) = -1.0607,
а( 6 ) = -1.3535,
а(1) = -0.3535 .
(13-26)
Аналогично, 8 -точечная последовательность из примера 2 в разделе 3.6, обо­
значенная как Ь(п), имеет вид
Ь(0) = 1.0607,
6(2) = -1.0607,
6(1) = 0.3535,
6(3) = -1.3535,
Ь(А) = -0.3535,
Ь(5) = 0.3535,
Ь(6 ) = 0.3535,
Ь(7) = 0.6464 .
(13-27)
Объединяя (13-26) и (13-27) в одну комплексную последовательность х(п),
мы получаем
а(л)
1
х(п)=
Ь(п)
1
0.3535
+у 1.0607
+ 0.3535
+у 0.3535
+ 0.6464
-у 1.0607
486
Глава 13. Маленькие хитрости цифровой обработки сигналов
+ 1.0607
-у 1.3535
+ 0.3535
-1 .0 6 0 7
-У 0.3535
- 1.3535
+У 0.3535
- 0.3535
+У 0.6464.
+У0.3535
(13-28)
Теперь, вычисляя 8 -точечное БПФ комплексной последовательности (13-28),
мы имеем:
Х(т)=
Хг(т)
Xj(m)
1
1
0.0000
- 2.8283
+ 2.8282
+у 0.0000
-у 1.1717
+у 2.8282
+ 0.0000
+ 0.0000
+ 0.0000
+ 0.0000
+ 2.8283
+ У0.0000
+У 0.0000
+У0.0000
+У 0.0000
+у 6.8282
*- т = 0
*- т = 1
*- т = 2
*- т = 3
«- т = 4
* -т = 5
*- т = 6
*- т = 7.
(13-29)
Итак, согласно (13-23),
Ха(0) = Хг(0) = о .
Для получения остальных отсчетов Ха(т) мы должны подставить отсчеты
Х(т) и Х(Ы-т) в (13-22)1. В результате получаем:
Ха(1) = {Хг(7) +ХГ(1) +АХ 1( 1 ) - Х 1(7)]}/2 =
= [2.8283 - 2.8283 +Х-1.1717 - 6.8282)\/2 =
= (0 -]7.9999)/2 = 0 -]4.0 = 4
-9СР,
Ха(2 ) = {Хг( 6 ) +ХГ(2 ) + л а д - х , . ( б ) ] } / 2 =
= [0 .0 + 2.8282 +К2.8282 -
0 .0 ) ] / 2
=
= (2.5252 + ]2.8282)/2 = 14/4 +>1474 = 2 I. 45°,
Ха(3) = {Хг(5) +Х+3) +][Х1( 3 ) - Х 1(5)]}/2 =
= [0.0 + 0.0 +./(0.0 - 0.0)]/2 = 0 /. 0°,
Х„(4) - {ХД4) + ХД4) + Ц Х ,(4 ) - ХД4)]}/2 - [0.0 + 0 .0 + Х 0 . 0 - 0 . 0 ) ] / 2 - О Л ( Г ,
1
Помните, что для комплексной входной последовательности отсчеты ДПФ не облада­
ют сопряженной симметрией; т. е. мы не можем предположить, что F(m) = F*(N-m),
когда и действительная, и мнимая части входных отсчетов отличны от нуля.
13.5. Эффективное вычисление БПФ действительных последовательностей
487
Ха(5) = {Хг(3) + Хг(5) +][Хг(5) ~ Х г(3 ) ] } / 2 =
= [0.0 + 0.0 +Х0.0 - 0.0)]/2 = ОА(Г,
Ха( 6 ) = {Хг(2) +ХГ( 6 ) +ЛХ1( 6 ) - Х 1(2)]}/2 =
= [2.8282 + 0.0 +]( 0.0 - 2.8282)\/2 =
= (2.8282 -]2.8282)/2 = 1.414 +]1.414 = 2 £ ^ 45°,
Ха(7) = {Х+1) + ХГ(7) +ЛХг( 7 ) - Х ((1)]}/2 =
= [ - 2.8282 + 2.8282 +Ц6.8282 - 1.1717)}/2 =
= (0.0 + ]7.9999)/2 = 0 +]4.0 - 4 А 90°.
Следовательно, (13-22) действительно позволяет извлечь Ха(т) из Х(т). Можно
видеть, что нет необходимости выполнять вычисления по (13-22), когда т больше 4
(или N/2), потому что последовательность Ха(т) всегда сопряженно-симметрич­
на. Поскольку Ха( 7) = Ха( 1) *, Х а( 6 ) = Ха(2) * и т. д., только первые N/2 элементов
Ха(т) независимы и должны быть вычислены.
Итак, продолжим наши вычисления и используем (13-24) и (13-25) для извле­
чения Хь(т) из результатов БПФ. Согласно (13-25),
Хь(0) = Х{(0) = о .
Подставляя отсчеты спектра в (13-24) для получения следующих четырех от­
счетов Хь(т), получаем
Хь(1) = {Х{(7) + Х{1) +][Хг( 7 ) - Х г(1)]}/2 =
= [6.8282 -1.1717 +К2.8283 + 2.8283)]/2 =
= (5.656 + ]5.656)/2 = 2.828 + ]2.828 - 4 1 .4 5 ° ,
Хь(2) = {Х{ 6 ) + Х р ) +ЛХГ( 6 ) - Х г(2)]}/2 =
= [0.0 + 2.8282 +]( 0.0 - 2.8282)]/2 =
= (2.8282 -]2.8282)/2 = 1.414 - р . 414 = 2 А -45°,
Хь(3) = {Х,(5) + Х((3) +ЛХА5) - Хг(3)]}/2 =
=
[0.0 + 0.0 + ХО.О - 0.0)]/2 = 0 1 .0 ° ,
Хь(4) = {Х{4) + Х{(4) +ЛХГ(4) - Хг(4)]}/2 =
=
[0.0 + 0.0 + Лр.О - 0.0)]/2 = 0 А 0 ° .
Возникает вопрос: «Увеличивается или уменьшается общее количество опера­
ций с учетом дополнительной обработки в соответствии с (13-22) и (13-24) после
БПФ, и насколько, при использовании алгоритма двойного Л^-точечного действи­
тельного БПФ?» Мы можем оценить эффективность этого алгоритма, рассмотрев
количество необходимых арифметических операций по отношению к двум отдель­
ным Л^-точечным БПФ по основанию 2. Сначала мы должны оценить количество
арифметических операций для двух отдельных ЛГ-точечных комплексных БПФ.
488
Гпава 13. Маленькие хитрости цифровой обработки сигналов
Из раздела 4.2 мы знаем, что стандартное ^-точечное комплексное БПФ по
основанию 2 требует выполнения (N/ 2 )\og2 N бабочек. Если мы используем опти­
мизированную структуру бабочки, каждая бабочка требует одного комплексного
умножения и двух комплексных сложений. Каждое комплексное умножение со­
стоит из двух действительных сложений и четырех действительных умножений, а
одно комплексное сложение содержит два действительных сложения1. Следова­
тельно, одна бабочка БПФ содержит четыре действительных умножения и шесть
действительных сложений. Это значит, что ^-точечное комплексное БПФ требу­
ет ( 4 N / 2 )\og2N действительных умножений и ( 6 Лy2 )log2Лгдействительных сло­
жений. Наконец, мы можем сказать, что два отдельных ^-точечных комплексных
БПФ по основанию 2 требуют
Два Доточенных
комплексных БПФ -*
4Ы * 1
с действительных умножений и
6 N•\og 2 N действительных
сложений.
(13-30)
(13-30')
Далее нам необходимо определить объем вычислений для двойного А^-точечно­
го действительного БПФ. Если мы сложим количество действительных операций
сложения и умножения, необходимых для реализации ^-точечного комплексного
БПФ, и количество соответствующих операций, необходимых для вычислений
по (13-22) и (13-24) для получения Ха(т) и Хь(т) соответственно, то получим
следующую картину:
Двойное ЛГ-точечное
действительное БПФ -*
2Ы* \0 g2 N + N действительных умножений и
(13-31)
ЗМ* \0 g2 N + ^действительных сложений.
(13-31')
В (13-31) и (13-3 Г) предполагается, что мы вычисляем только первые N/2 не­
зависимых отсчетов Ха(т) и Хь(т). Член N в (13-31) учитывает N/2 операций де­
ления на 2 в (13-22) и N/2 делений на 2 в (13-24).
Итак, теперь мы можем установить, какова эффективность алгоритма двойного
Л^-точечного действительного БПФ по сравнению с двумя отдельными комплекс­
ными Л/-точечными БПФ по основанию 2. Результат этого сравнения, однако, зави­
сит от используемого для вычислений оборудования. Если наше арифметическое
устройство затрачивает на умножение намного больше тактов, чем на сложение, то
наибольшее значение имеет разность количества операций умножения. В этом слу­
чае процент уменьшения объема вычислений при двойном ТУ-точечном действите­
льном БПФ по сравнению с двумя отдельными Л^-точечными комплексными БПФ
вычисляется как разность количества умножений, деленная на количество умно­
жений, необходимое для вычисления двух отдельных БПФ, или
Комплексное сложение (а+]Ь) + (с+/</) = (а+с) + ХЬ+сГ) требует двух действительных
сложений. Комплексное умножение (а +/6) (с+/й?) = ас Ь(1 + ](а<1+Ьс) требует двух дей­
ствительных сложений и четырех действительных умножений.
13.5. Эффективное вычисление БПФ действительных последовательностей
489
{[4М • \0 g2 N - (2Л^ • \ 0 g2 N + ЛГ)]/(4Л Г• \0 g2 N)} • 100% =
= [(2 • 1(^2ЛГ - У)/(4 • log2 ЛO] *100%.
(13-32)
Экономия количества операций, вычисленная только по умножениям, при ис­
пользовании (13-32) показана в виде верхнего графика на рисунке 13.11. По коли­
честву умножений при N>32 двойное Л^-точечное действительное БПФ оказывается
более чем на 45 % экономичнее по сравнению с двумя отдельными Л^-точечными
комплексными БПФ.
В аппаратуре, в которой используются высокоскоростные специализирован­
ные умножители, умножения и сложения могут выполняться за практически оди­
наковое количество тактов. В этом случае операции сложения так же важны, как и
операции умножения. Следовательно, для правильного сравнения необходимо
брать разность суммарного количества операций в (13-30) и (13-30') и суммарного
количества операций в (13-31) и (13-31'). В этом случае относительное уменьше­
ние количества операций вычисляется как разность общего количества операций,
деленная на общее количество операций для двух отдельных ^-точечных комп­
лексных БПФ, или
{[(4ЛГ • log2ЛГ+ 6 ЛГ• log2 Л0 - (Ж • 1оя2ЛГ+ ЛГ+ ЗЛГ • 1оя2ЛГ+2Щ /
/(4Ы • log2ЛГ+ 6 ЛГ•
= [(5 • 1сщ2 М ~3)/(10 •
•
10 0 %
=
•100 %.
(13-33)
Рис. 13.11. Уменьшение количества операций при использовании алгоритма
двойного Л/-точечного действительного БПФ по сравнению с двумя от­
дельными Л/-точечными комплексными БПФ. Верхняя кривая показы­
вает экономию по умножениям. Нижняя кривая показывает экономию
по сумме сложений и умножений
490
Глава 13. Маленькие хитрости цифровой обработки сигналов
Полный выигрыш в объеме вычислений (по сумме умножений и сложений) в
соответствии с (13-33) приведен в виде нижнего графика на рисунке 13.11. Этим
мы завершаем обсуждение использования одного ^-точечного комплексного
БПФ для преобразования двух независимых ЛГ-точечных действительных по­
следовательностей.
13.5.2. Вычисление 2Ы-точечного действительного БПФ
Подобно описанному выше алгоритму вычисления БПФ двух разных дейст­
вительных последовательностей с помощью одного комплексного БПФ, сущест­
вует метод вычисления БПФ 2Л^-точечной действительной последовательности с
помощью одного ^-точечного комплексного БПФ. Этот алгоритм Ж-точечного
действительного БПФ, вывод которого также описан в литературе, основан на
разбиении действительной последовательности длиной в Ж отсчетов на две час­
ти [ 19, 20]. Не просто на разбиении, а на разбиении, подобном разъединению двух
частей замка-молнии —разделении четных и нечетных отсчетов. N. входных от­
счетов с четными индексами загружаются на место действительных частей комп­
лексной Л^-точечной входной последовательности х(п). Аналогично, N отсчетов с
нечетными индексами загружаются на место мнимых частей последовательности
х(п). Для иллюстрации этого процесса предположим, что мы имеем входную дей­
ствительную последовательность длиной в Ж отсчетов а(п) при 0 < п < Ж - 1.
Мы хотим получить преобразование последовательности а(п), содержащее Ж от­
счетов Ха(т). Загружая четные и нечетные отсчеты а(п) соответствующим обра­
зом в М-точечную последовательность х(п), получаем
х( 0 ) = а( 0 ) +]а(1 ),
х(1) = а(2) +]а(3),
х(2) = а(4) +>а(5),
х(АГ-1) = а(Ж -2 ) + 7'а(Ж-У).
(13-34)
Подавая N комплексных значений вида (13-34) на ^-точечное комплексное
БПФ, мы получим результат Х(т) = Х г(т) +Д ’Дга), где т меняется от 0 до N-1.
Чтобы извлечь требуемое Ж-точечное БПФ действительной последовательно­
сти Ха(т) = Ха геа[(т) + ]Ха>1таё(т) из Х(т), зададим следующие соотношения
Хг+(т) = [Хг(т)+ ХГ(М - т )\/2 ,
(13-35)
Хг~(т) = [Хг(т)- ХГ(Ы - т)]/2,
(13-36)
Х(+(т) = [Х^т) + Х{(Ы - т)]/2,
(13-37)
Х(-(т)
(13-38)
= [Х{(т) - Хг(ЛГ - т)}/2,
Значения, полученные с помощью (13-35) —(13-38), используются затем как
коэффициенты в следующих выражениях для получения действительных и мни­
мых частей Ха(т):
13.5. Эффективное вычисление БПФ действительных последовательностей
491
х а,геа^т) = х г+(т ) + соКлт/Ы) • Х ^ т ) - ьЩжт/Щ • Х - ( т ) , (13-39)
и
х а,таё(т) = х г~(т) ~ ^т(жт/М) • Х{+(т) - со^жт/Ы) • Х ~ (т ) , (13-40)
Вспомните теперь, что индекс исходной последовательности а(п) меняется в
пределах от 0 до 2ЛГ-1, а индекс результата ^-точечного БПФ т меняется от 0 до
Ы -1. Мы подаем на вход преобразования 2ЛГдействительных отсчетов и получаем
на выходе N комплексных отсчетов в частотной области, представляющих пер­
вую половину эквивалентного Ж-точечного БПФ, от Ха(0) до Ха(М-1). Посколь­
ку входная последовательность этого алгоритма а(п) действительна, отсчеты от
Ха(Ы) до Ха(2М-1) являются комплексно-сопряженными отсчетам Ха(0) Ха(Ы -1), и их вычислять не нужно.. Для более полного понимания всего процесса
на рисунке 13.12 показаны шаги алгоритмаЖ-точечного действительного БПФ.
Чтобы продемонстрировать этот алгоритм на примере, подадим 8 -точечную
последовательность из (13-26) на вход алгоритма Ж-точечного действительного
БПФ. Разбивая отсчеты (13-26) в соответствии с (13-34), мы получаем новую
входную последовательность БПФ:
х( 0 ) = 0.3535 +10.3535,
х(1) = 0.6464 +]1.0607,
х( 2 ) = 0.3535 -]1.0607,
х(3) = -1.3535 -10.3535.
(13-41)
Рис. 13.12. Последовательность вычислений в алгоритме 2Л/-точечного действи­
тельного БПФ
В данном примере N= 4, поэтому, вычислив 4-точечное БПФ комплексной по­
следовательности (13-41), мы получаем
Х (т)=
х г(т)
Чт)
і
1
0 .0 0 0 0
+ 1 0 .0 0 0 0
*- т = 0
+ 1.4142
- 1 0.5857
«- т =
+ 1.4141
1.4141
*-т = 2
- 1.4142
+13.4141
*- т= 3
1
(13-42)
492
Гпава 13. Маленькие хитрости цифровой обработки сигналов
Используя эти значения, мы получаем промежуточные коэффициенты соглас­
но (13-35) —(13-38). Вычисление первого значения Х г+(0) снова напоминает нам
о том, что последовательность Х(т ) периодична с периодом Ы, так что Х(4) =
Х(0), и Х г+(0) = [Хг(0) + Х г(0 ) \/2 = 0. Продолжая использовать. (13-35) —
(13-38), получаем
Хг+(0) = О,
Х-(О) - О,
Х г+(1 ) = О,
Хг“(7) = 1.4142, Хг+(7)= 1.4142,
Х г+(2) = 1.4141, Х ~ ( 2 ) = 0,
Х Д З ) = О,
Х^(0)= О,
Хг+(2)= -1.4144,
* г~(3) = -1.4142, Хг+(3)= 1.4142,
Х{~(0)
- О,
Хг"(7)
= -1.9999,
Х-~(2)
= О,
Х~(3)
= 1.9999 .(13-43)
Используя промежуточные значения из (13-43) в (13-39) и (13-40), получаем
Ха,геа^°) = (°) + со<71* 0/4) • (0) - Бш(л*0/4) • (0)
х а,таё(°) = (°) ~ ^п(л»0/4) • (0) - со?,(л*0/4) • (0)
Х а,гесА1') = ( ° ) +
соб ( л
* 1/4) • (1.4142) - бЩ
л
* 1/4) • ( 1.4142)
Ха,таё( 1) = (~ 1-9999) - 8ш(л* 1/4) • ( 1.4142) - соз(я* 1/4) • (14742)
х а,геа№ = (1-4141) +'соб(л *2/4) • (-1.4144) - бЩ л -2/4) • (0)
Ха,таё(2) = (°) “ 8Ш(л*2/4) • (-1.4144) - СОЪ(Л*2/4) • (0)
Х а,геа1(3) = (0) + соз(я*^/4) • (1.4142) - бш(л*3 / 4 ) • (-1.4142)
х а,таё(3) = (1-9999) - *ш(п*3/4) • (14742) - соъ(л*3/4) • (-1.4142)
(13-44)
Вычисляя значения синусоидальных и косинусоидальных членов в (13-44),
получаем
Х а,геа№ = (<0 + (1) * (0 ) ~ (0) - ( 0 ) - 0 ,
Х а,гтаё(0) = (0) ~ (0) • (0) - (1) • (0) = 0,
х а,геы(1) = (0) + (0.7077) • (1.4142) - (0.7071) • (14742) = 0 ,
х а,таё(1) = (-1-9999) - (0.7071) • (7.4742) - (0.7077) • (7.4742) =
= ( * ^ 7 ) + (^) * (-*.4744) - (7) • (0) = 7.4747,
**,ш^(2) = (0 )~ (1 ) • (-7.4744) - ( 0 ) • ( 0 ) = 7.4744,
гея/С*) =
+ ("0-707*) * (14*42) - (0.7071) • (-7.4742) = 0,
* а, т ^ ) = (1-9999) - (0.7071) • (7.4742) - (-0.7071) • (-7.4742) = 0. (13-45)
13.5. Эффективное вычисление БПФ действительных последовательностей
493
И, наконец, получаем окончательный правильный результат
( 0) - х о>геа,(0 ) + Д а ™чг(0) -
О+Р-0 г. 0 -,
* « .(* )-Х а,геа,( 1) +)Ха,т щ (П - 0 -13.999 - 4 I .-90',
Ха (2) - Ха/еа1 (2) +]Ха^ ( 2 ) - 1.4141 +11.4144 - 2 /. 45%
К О ) - ^ , гео,(5) +}Ха,1тае О ) - 0 + 1 0 - 0 1 . О'
(13-46)
После выполнения всех операций согласно (13-35) —(13-40), читатель может
задуматься об эффективности алгоритма 2М-точечного действительного БПФ.
Используя тот же подход, который мы применили в случае двойного К-точечного
действительного БПФ, покажем, что алгоритм Ж-точечного действительного
БПФ на самом деле обеспечивает некоторый выигрыш. Прежде всего, мы знаем,
что отдельное 2№точечное БПФ по основанию 2 содержит (2А^/2) • \og2 2 N =
Щ\о%2М+ 1 ) бабочек и требует
2Д-точечное
комплексное БПФ -*
Ш • (log2Лг+ l)
действительных умножений
(13-47)
6 А^ •
действительных сложений
(13-47')
( ^ 2^ + 1 )
Если мы сложим количество действительных умножений и действительных
сложений, необходимое для вычисления ДОточечного комплексного БПФ, плюс
операции, необходимы для (13-35) —(13-38) плюс операции в (13-39) и (13-40),
то получится, что полное 2 точечное действительное БПФ требует
2тУ-точечное
действительное БП Ф -*•
2М •
+ Ш действительных умножений (13-48)
ЗД”• \0 g2N + 8 АГ действительных сложений
(13-48')
Итак, используя те же соображения, которые привели нас к (13-32), мы получа­
ем относительное уменьшение количества умножений в алгоритме 2 А/-точечного
действительного БПФ по отношению к 2ЛГ-точечному комплексному БПФ в виде
[4Ы • ( 1о&^ + 1 ) - (2 ЛГ• log2ІV+ &У)]/[4ЛГ • ( к ^ +*)] •
= [2ЛГ • log2A/r+ 2А^ -
• log^
10 0 %
=
- 4 Щ / [ 2 К • log2ІV + 2Ы] • 100% =
= [\og2N - 2\/[2 •
+ 2]* 100%.
(13-49)
Выигрыш согласно (13-49) (с учетом только умножений) показан как нижний
график на рисунке 13.13. Относительно умножений алгоритм 2Аг-точечного дей­
ствительного БПФ обеспечивает экономию больше 30 % при N > 128, или при об­
работке действительных последовательностей, длина которых не меньше 256.
Для аппаратуры, использующей высокоскоростные умножители, мы должны
учитывать как умножения, так и сложения. Подходящее сравнение обеспечивается
494
Глава 13. Маленькие хитрости цифровой обработки сигналов
разностью общего количества операций в (13-47) и (13-47') и общего количества
операций в (13-48) и (13-48'). В этом случае относительная экономия вычисле­
ний в процентах вычисляется как
[4Ы• ( к ^ ^ + 1) + 6ЛГ • ( Х о ^ Ч ) - (2И • \og2N + 8Ы + ЗЫ*
+ 8Щ /
/[4Ы • (\о%2Ы+1) + 6 ЛГ* (\о&2 Ы+1)] •100% =
[10 • (1с^ + 1 ) - 5 • log2ІV - 16\/[10 • (
1
о
•100 % =
= [5 • log^ - 6 ] / [ 1 0 • (1сЩ^+1)] •100 %.
(13-50)
Экономия вычислений при использовании
Рис. 13.13. Экономия объема вычислений при использовании алгоритма 2Ы-то­
чечного действительного БПФ по сравнению с отдельным 2Ы-точеч­
ным комплексным БПФ. Верхний график показывает экономию с
учетом и сложений, и умножений. Нижний график показывает эконо­
мию с учетом только умножений
Экономия полного количества операций (умножений и сложений) согласно
(13-50) в зависимости от N показана в виде верхнего графика на рисунке 13.13.
13.6. Вычисление обратного БПФ
с помощью прямого БПФ
Часто в системах цифровой обработки сигналов требуется вычислять обратное
БПФ. Это может создавать проблемы, если имеющаяся аппаратура или библиотеч­
ная процедура могут выполнять только прямое БПФ. К счастью, существуют два
простых способа вычисления обратного БПФ, используя прямое БПФ.
13.6.1. Первый метод вычисления обратного БПФ
Первый метод выполнения обратного БПФ реализуется в соответствии со схе­
мой, показанной на рисунке 13.14.
13.6. Вычисление обратного БПФ с помощью прямого БПФ
495
Чтобы понять, как она работает, рассмотрим выражения для прямого и обрат­
ного ДПФ:
N-1
(13-51)
Прямое ДПФ
Х(тп) = ^х(п)е~}2лпт/ м
п=0
N-1
х(п) = (1/Ы)^Х(т)е12лпт/ м.
Обратное ДПФ
(13-52)
тп=0
-1
-1
Рис. 13.14. Последовательность обработки при использовании первого метода
вычисления обратного БПФ
Повторим: нашей целью является использование преобразования, описываемо­
го выражением (13-51), для реализации (13-52). На первом шаге мы используем
операцию комплексного сопряжения. Напомним, что эта операция (обозначаемая
надстрочным индексом *) состоит в инверсии знака показателя степени комплекс­
ной экспоненты —если х = е&, то х* = е~}Ф. Итак, на первом шаге мы заменяем обе
части (13-52) комплексно-сопряженными величинами, а именно
N-1
(13-53)
х*(п) = ( 1 /Щ [^ Х (т )е 1 2лпт/ М]
т=0
Одно из свойств комплексных чисел, обсуждаемое в приложении А, состоит в
том, что сопряженное произведения равно произведению сопряженных: если с = аЬ,
то с* = (аЬ)* = а*Ъ*. Используя это свойство, мы можем показать, что правая
часть (13-53) имеет вид
N-1
х*(п) = (1/Ы)^Х(т)*(е) 2 лпт /и у =
т=0
N-1
= ( 1 /Ю ^ Х (т ) *е~1 2лпт/м .
(13-54)
т=0
Потерпите еще немного, мы почти у цели. Обратите внимание на сходство вы­
ражения (13-54) и выражения для прямого ДПФ (13-51). Если мы выполним
прямое ДПФ последовательности, сопряженной исходной последовательности
Х(т) в (13-54), и разделим результат на Ы, мы получим последовательность, со­
пряженную нашей искомой последовательности х(п). Построив сопряжение для
обеих частей (13-54), мы получаем более прямое выражение для х(п):
N-1
х(п) = (1 /ю [ ^ Х (т )* е -]2лпт/АГ] *
(13-55)
т=0
496
Глава 13. Маленькие хитрости цифровой обработки сигналов
13.6.2. Второй метод вычисления обратного БПФ
Второй метод реализуется в соответствии с интересной схемой, показанной на
рисунке 13.15.
В этой остроумной схеме нам не нужно возиться с сопряженными последова­
тельностями. Вместо этого мы просто меняем местами действительные и мнимые
части последовательностей комплексных отсчетов [21]. Чтобы понять, как рабо­
тает эта схема, рассмотрим еще раз выражение для обратного ДПФ, представив
входную последовательность Х(т) в виде действительной и мнимой части и по­
мня, ЧТО е $ = С 0 Б ( Ф ) + 7 5 Н 1 (0 ).
Х,тад(т )
Рис. 13.15. Обработка данных вторым методом вычисления обратного БПФ
N-1
х(п) = (1/Щ ^Х (т )е]2лптп/1^ =
Обратное
171=0
ДПФ -
N-1
= ( 1/Ю£[Хгеа1(т) +1Х 1таё(т)] [со^(2ятп/Ы)
т=0
+_/5т( 2 л т п / Щ
(13-56)
\.
Перемножение комплексных членов (13-56) дает нам
N-1
=(
[Хгеа1(т)со8(2лтп/М) - Х1таё(т)^\п(2лтп/М)] +
т=0
+ЦХгеа1(т)$т(2 лтп/Щ + Х{таё(т)со8(2лтп/Щ .
(13-57)
Формула (13-57) представляет общее выражение для обратного ДПФ, и мы ско­
ро покажем, что процесс, представленный на рисунке 13.15, реализует это выраже­
ние. Поскольку Х(т) = Хгеа{т) + ]Х^та^гп), перестановка этих членов приводит к
(13-58)
Прямое ДПФ последовательности Хшар(т) имеет вид
+1Хгеа№)][со$(2лтп/Щ
ДПФ-
(2лтп/Ы)\ .
(13-59)
т=0
Перемножение комплексных множителей в (13-59) дает
Прямое N-1
2 [Х{тпаё(т)со?,(2лтп/М) + Хгеа^гп)^т(2лтп/К)] +
ДПФт=0
+][ Хгеа^т)со^(2лтп/К) - Х1таё(т)^\п(2лтп/М)].
(13-60)
13.7. Упрощенная структура КИХ-фильтра
497
Поменяв местами действительную и мнимую части результата этого ДПФ, мы
получаем то, к чему стремились:
Прямое
N -1
2 [Xrea!(m)cos(2jimn/N) - Xima^m)sm(2nmn/N)\ +
т=0
+Л Xima^m)cos(2nmn/N) +Xreal(m)sm(2jimn/N)].
(13-61)
Если мы разделим (13-61) на Ы, то получим в точности выражение для обрат­
ного ДПФ (13-57), и это как раз то, что мы хотели показать.
13.7. Упрощенная структура КИХ-фильтра
Если мы реализуем цифровой КИХ-фильтр с лйнейной ФЧХ, используя стан­
дартную структуру, показанную на рисунке 13.16 (а), то мы можем уменьшить ко­
личество умножителей в случае, когда длина фильтра нечетна. Посмотрим на
верхнюю часть рисунка 13.16 (а), где коэффициенты КИХ-фильтра с пятью ответ­
влениями обозначены как h(0) - h(4), а выходной сигнал у(п) вычисляется как
y(n) = h(4) x(n-4) + h(3)x(n-3) + h(2)x(n-2) + h(1)x(n-1) + h(0)x(n)
(13-62)
Если коэффициенты КИХ-фильтра симметричны, мы можем уменьшить ко­
личество умножений: если h(4) = h(0) и h(3) = h(1), мы можем реализовать
(13-62) как
y(n) = h(4)[x(n-4)+x(n)] + h(3)[x(n-3)+x(n-1) ] + h(2)x(n-2)
(13-63)
которое требует всего трех умножений, как показано в нижней части рисунка
13.16 (а). В данном примере фильтра с пятью ответвлениями мы убрали два умно­
жителя за счет добавления двух сумматоров. Эта структура с минимальным коли­
чеством умножителей называется сложенной структурой КИХ-фильтра.
В общем случае КИХ-фильтров с симметричными коэффициентами, имею­
щих 5 ответвлений, мы можем обменять (Я -1)/2умножителей на (51- 1)/2 сумма­
торов, когда Б является нечетным числом. Таким образом, в случае нечетного
количества ответвлений нам необходимо выполнить только ( 5 - 1)/2 + 1 умноже­
ний на каждый выходной отсчет фильтра. В случае четного количества симмет­
ричных ответвлений, как показано на рисунке 13.16 (Ь), этот метод позволяет нам
уменьшить количество необходимых умножений до 5/2. В настоящее время про­
граммируемые ЦПОС не могут использовать преимущества сложенной структу­
ры КИХ-фильтров, потому что она требует выполнения сложения перед каждой
командой умножения с накоплением.
13.8. Уменьшение шума квантования АЦП
В разделе 12.3 мы обсуждали математические детали и вредные эффекты шума
квантования аналого-цифровых преобразователей (АЦП). Для уменьшения шума
квантования практикующие специалисты по ЦОС обычно используют два приема.
Это сверхдискретизация (oversampling) и рандомизация, или размывание (dithering).
498
Гпава 13. Маленькие хитрости цифровой обработки сигналов
Рис. 13.16. Обычная и упрощенная структуры КИХ-фильтра: (а) с нечетным коли­
чеством ответвлений; (Ь) с четным количеством ответвлений
13.8.1, Сверхдискретизация
Сущность процесса сверхдискретизации с точки зрения уменьшения шума
квантования АЦП очевидна. Мы просто увеличиваем частоту дискретизации / 5
до значения, превышающего минимально необходимое согласно критерию Найквиста (вдвое большее, чем ширина спектра сигнала), а затем пропускаем дискре-
499
13.8. Уменьшение шума квантования АЦП
газированный сигнал через цифровой ФНЧ. Что может быть проще? В основе
теории процесса сверхдискретизации лежит предположение о том, что погреш­
ность квантования является случайной величиной с равномерным распределени­
ем, и мощность (дисперсия) шума квантования равна квадрату значения МЗР
преобразователя, деленному на 1 2 , или
Общая мощность шума квантования =
= о 2 = (значение МЗР)2/12.
(13-64)
Мы вывели это выражение в разделе 12.3. Еще одно предположение состоит в
том, что отсчеты шума квантования являются совершенно случайными, и в час­
тотной области шум квантования имеет равномерный спектр. (Эти предположе­
ния верны, когда диапазон изменения входного сигнала АЦП составляет
значительную часть допустимого диапазона входных сигналов преобразователя и
входной сигнал не является периодическим или его период превышает интервал
наблюдения.) Далее мы рассмотрим понятие спектральной плотности мощности
(СПМ) шума квантования, описывающей шум квантования в частотной области
и измеряемой в единицах мощности шума на один Герц, как показано на рисун­
ке 13.17. Таким образом, мы можем описать шум квантования мощностью (при
желании, в Ваттах), приходящейся на единицу полосы частот.
В мире дискретных систем наше предположение о равномерности спектра
означает, что полная мощность шума квантования (фиксированное значение,
определяемое напряжением, соответствующим одному МЗР) распределяется
равномерно в полосе частот от ~/5/2 до + / 5 /2, как показано на рисунке 13.17. Вы­
сота прямоугольной СПМ равна площади прямоугольника (общей мощности
шума квантования), деленной на ширину прямоугольника (/5), или
СПМщума = [(значениеМЗР)2/12] (7/Л ) =
= (значение МЗР)2/(12/Л
(13-65)
и измеряется в Вт/Гц.
СПМ
. . . С П М .ш у м а
Общий шум
квантования
-У2
т
Частота
Рис. 13 .1 7 . Спектральная плотность мощности шума идеального АЦП
Далее возникает следующий вопрос: «Как можно уменьшить уровень СПМ
шума, определяемый выражением (13-65)?» Мы можем уменьшить значение
МЗР (в Вольтах), находящееся в числителе, используя АЦП с дополнительны­
ми битами. Такой прием, конечно же, понизит СПМ шума, но это дорогостоящее
решение. Дополнительные биты АЦП стоят денег. Будет лучше, если мы увели­
чим знаменатель (13-65), повысив частоту дискретизации/5.
Рассмотрим интересующий нас сигнал низкого уровня, спектр которого изоб­
ражен на рисунке 13.18 (а). Повысив частоту дискретизации Д 0у до некоторого
500
Гпава 13. Маленькие хитрости цифровой обработки сигналов
значения / 5 пете) (сверхдискретизация), мы распределяем полную мощность шума
(фиксированное значение) по более широкой полосе частот, как показано на ри­
сунке 13.18 (Ь). Площади затененных прямоугольников на рисунках 13.18 (а) и
13.18 (Ь) равны. Затем мы пропускаем выходные отсчеты АЦП через ФНЧ. На
выходе фильтра уровень шума квантования, искажающего сигнал, будет ниже,
чем на входе.
Улучшение отношения сигнал/шум квантования в децибелах, получаемое за
счет сверхдискретизации, вычисляется в соответствии с выражением:
улучшение 8 Ж АЦП= 1 0 ^ ю( / 8Пеа)/ / $оШ).
(13-66)
Рис. 13.18. Пример сверхдискретизации: (а) СПМ шума при частоте дискретизации ^ 01ф (Ь) СПМ шума на более высокой частоте дискретизации
^ пе^, (с) стадии обработки
Например, если
= 100 кГц, а / 5Пет = 400 кГц, улучшение ^ЫКАцП =
Юк^ 10 (4) = 6.02 дБ. Следовательно, используя сверхискретизацию с коэффициен­
том 4 (с последующей фильтрацией), мы выигрываем в отношении сигнал/шум
квантования столько же, сколько при увеличении разрядности АЦП на один бит.
В результате мы можем получить характеристики, соответствующие длине сло­
ва ЛГ+1 бит, используя ^-разрядный АЦП, т. к. мы улучшаем разрешение сигна­
ла за счет увеличения частоты дискретизации.
После цифровой фильтрации мы можем выполнить прореживание, вернув­
шись к частоте дискретизации / 5 без ухудшения отношения сигнал/шум. Ко­
нечно, количество бит, используемое для представления коэффициентов и
13.8. Уменьшение шума квантования АЦП
501
регистров ФНЧ, должно превышать разрядность АЦП, иначе эта схема работать
не будет.
Повышение частоты дискретизации в большинстве случаев позволяет также
использовать более простой аналоговый антиэлайзинговый фильтр, чем при бо­
лее низких частотах дискретизации.
13.8.2. Рандомизация
Рандомизация, другой метод уменьшения влияния шума квантования, пред­
ставляет собой добавление шума к аналоговому сигналу до его преобразования.
Эта схема, которая на первый взгляд не производит впечатления разумной, дейст­
вительно может быть полезной, что легко показать на примере. Рассмотрим преоб­
разование аналоговой синусоиды низкого уровня, показанной на рисунке 13.19 (а),
с амплитудой, едва превышающей значение МЗР АЦП, в результате которого полу­
чаются отсчеты хДга), показанные на рисунке 13.19 (Ь). Выходная последова­
тельность х 1(п) получается клиппированной. В результате в спектре сигнала по­
являются самые разнообразные гармоники. По-другому объяснить наличие этих
гармоник можно, заметив периодичность шума квантования на рисунке 13.19 (с).
На рисунке 13.20 (а) мы показываем спектр х ^ п ) с хорошо заметными гармо­
никами шума квантования. Стоит заметить, что усреднение спектров в данном
случае не позволит нам выделить некоторый спектральный компонент на фоне
этих гармоник. Поскольку шум квантования сильно коррелирован с входным
сигналом, —шум квантования имеет тот же период, что и входной синусоидаль­
ный сигнал —усреднение спектров будет усиливать также и гармоники. Здесь на
помощь может прийти рандомизация.
Рандомизация —это добавление случайного аналогового шума к синусоидаль­
ному сигналу перед его оцифровкой. Этот метод дает зашумленный аналоговый
сигнал, который более часто пересекает границы уровня квантования, соответст­
вующего МЗР, в результате чего шум квантования получается значительно более
случайным, с пониженным уровнем нежелательных гармоник, как показано на
рисунке 13.20 (Ь). Рандомизация повышает средний уровень шума в частотной
области, но улучшает отношение сигнал/шум
Рандомизация разрушает
корреляцию шума квантования с входным сигналом, и мы можем выполнять тре­
буемое усреднение.
Рандомизация оказывается полезной, когда мы оцифровываем:
□ аналоговые сигналы низкого уровня;
□ периодические аналоговые сигналы (как, например, синусоида с чет­
ным количеством периодов на интервале накопления);
□ медленно меняющиеся (очень низкой частоты, включая постоянные)
аналоговые сигналы.
Стандартная реализация рандомизации показана на рисунке-13.21 (а). Типо­
вое СКЗ широкополосного аналогового шума, генерируемого шумовым диодом
или микросхемой шумового генератора, составляет от 1/3 до 1 МЗР.
502
Гпава 13. Маленькие хитрости цифровой обработки сигналов
Ошибка квантования
преобразователя
1 мзр •
0.5 мзр- -
(с)
*
-*-М-
шЖИж
0
'ШЩМ*
-0.5 мзр- —И............................Я
ж
гмд —і
;*
и
I-І
*
*****
ІО.
Время
-1 мзрі-...................................
Рис. 13.19. Рандомизация: (а) аналоговый сигнал низкого уровня; (Ь) выходная по­
следовательность АЦП; (с) ошибка квантования на выходе преобразо­
вателя
Л Х 2(ш )\
Исследуемый
сигнал
I 0 --1 0 --2 0 --
і 1
.... Т.....
...... 1 ......;3.°
Повышение
уровня шума
f
Частота
" Г
і
:ф т
-50-1-
(Ь)
Частота
Рис. 13 .2 0 . Спектр дискретной синусоиды низкого уровня: (а) без рандомизации;
(Ь) с рандомизацией
Как установили инженеры, в высококачественных аудиосистемах добавление
случайного шума от двух отдельных генераторов шума улучшает подавление зву­
кового фонового шума низкого уровня. Функция плотности вероятности (ФПВ)
суммы двух источников шума (имеющих прямоугольные ФПВ) является сверт­
кой индивидуальных ФПВ. Поскольку свертка двух прямоугольных функций
13.9. МетЬды испытаний аналого-цифровых преобразователей
503
дает треугольник, эту схему с использованием двух источников шума называют
триангулярной рандомизацией. Типовой шум при триангулярной рандомизации
имеет СКЗ, эквивалентное двум МЗР.
В ситуации, когда интересующий нас сигнал занимает некоторую хорошо
определенную часть полного диапазона частот, более полезным может оказаться
введение узкополосного шума, спектр которого лежит за пределами частотного
диапазона полезного сигнала, а СКЗ эквивалентно 4 —6 МЗР. (Помните, однако:
размывающий сигнал не может быть слишком узкополосным, как синусоида.
Шум квантования синусоидального сигнала приведет к появлению еще большего
количества случайных гармоник!) Этот узкополосный шум можно затем удалить
с помощью цифровой фильтрации.
И последнее замечание относительно рандомизации: для улучшения способ­
ности обнаруживать сигналы низкого уровня можно добавить аналоговый шум,
а затем вычесть его из оцифрованных данных, как показано на рисунке 13.21 (Ь).
В этом случае мы рандомизируем шум квантования, но минимизируем общую
мощность шума, добавляемого к аналоговому сигналу. Эта схема используется в.
коммерческом аналоговом тестовом оборудовании [22, 23].
(а)
(Ь)
Рис. 13.21. Реализации рандомизации: (а) стандартная схема рандомизации;
(Ь) улучшенная схема рандомизации с вычитанием шума
13.9. Методы испытаний аналогоцифровых преобразователей
Можно упростить испытания АЦП, используя преимущества цифровой обра­
ботки сигналов. В этом разделе мы познакомим вас с двумя схемами измерения
параметров преобразователей: во-первых, с методом, использующим БПФ для
оценки общего уровня шума преобразователя, и, во-вторых, с методом анализа ги­
стограмм для обнаружения пропущенных кодов.
13.9.1. Оценка шума квантования АЦП с помощью БПФ
Совокупность шума квантования, пропущенных бит, гармонических искаже­
ний и других нелинейностей может быть оценена путем анализа спектрального
состава выходных последовательностей АЦП. Ухудшение качества преобразова­
теля, вызванное этими нелинейностями, нетрудно распознать, т. к. они проявля­
ются как нежелательные спектральные компоненты и повышенный уровень
504
Гпава 13. Маленькие хитрости цифровой обработки сигналов
шума в выходной последовательности АЦП. Традиционный метод тестирования
состоит в подаче на вход АЦП синусоидального аналогового напряжения и изуче­
нии спектра выходной последовательности оцифрованных отсчетов. Для вычис­
ления спектра выходной последовательности мы можем использовать БПФ, но
для повышения чувствительности измерений необходимо минимизировать утеч­
ку спектра БПФ. Традиционное взвешивание окнами во временной области, од­
нако, обеспечивает недостаточное для тестирования высококачественных АЦП
снижение утечки.
Прием, который позволяет решить проблему утечки, состоит в том, что на вход
АЦП подается синусоидальное напряжение с частотой, отношение которой к час­
тоте дискретизации представимо отношением целых чисел, как показано на ри­
сунке 13.22 (а). Здесь частота равна т/5 /ЛГ, где т — целое число, / 5 — частота
дискретизации, аЛГ—размер БПФ. На рисунке 13.22 (а) показана выходная по­
следовательность идеального АЦП х(п) при подаче на его вход аналоговой сину­
соиды, имеющей ровно восемь периодов на интервале времени, соответствующем
N = 128 выходным отсчетам. В этом случае частота входного сигнала, нормиро­
ванная относительно частоты дискретизации/5, равна 8/$/1 2 8 Гц. Вспомним гла­
ву 3, в которой указывалось, что выражение т/8/ЛГ определяет частоты анализа,
или центральные частоты бинов, ДПФ, а входная синусоидальная последовате­
льность, частота которой совпадает с центральной частотой бина, не вызывает
проблем утечки.
Первая половина отсчетов 128-точечного БПФ последовательности х(п) пока­
зана в логарифмическом масштабе на рисунке 13.22 (Ь), при этом частота входно­
го тона попадает точно на центр бина т = 8, и утечка БПФ сильно ослаблена. Если
бы частота дискретизации была равна 1 МГц, то входной тон должен был бы
иметь частоту 8 ( 106/128) = 62.5 кГц. Чтобы реализовать эту схему, мы должны
обеспечить точную синхронизацию тестового генератора аналогового сигнала с
тактовой частотой АЦП / 5Гц. Благодаря такой синхронизации эту схему тестиро­
вания АЦП называют когерентной дискретизацией [24 - 26]. При этом генератор
аналогового сигнала и генератор синхросигнала АЦП, обеспечивающий / 5, не
должны «плыть» друг относительно друга —они должны оставаться когерентны­
ми. (Здесь следует быть осторожным относительно терминологии, т. к. схемы
квадратурной дискретизации, описанные в главе 8 , также называют когерентной
дискретизацией, но они не имеют никакого отношения к рассматриваемой здесь
процедуре тестирования АЦП.)
Как оказывается, некоторые значения т имеют преимущества перед другими
значениями. Обратите внимание на то, что на рисунке 13.22 (а), при т = 8, АЦП
выдает на выход только девять различных значений. Эти значения повторяются
снова и снова. Как показано на рисунке 13.23, при т=7 мы получаем намного бо­
льше разных значений выходных отсчетов.
Поскольку необходимо проверить как можно больше выходных слов АЦП, со­
храняя в то же время случайность шума квантования, пользователи этой схемы
тестирования АЦП придумали другой прием. Они обнаружили, что использова­
ние простых чисел (3,5,7 , 1 1 и т. д.) в качестве значений т минимизирует количе­
ство избыточных значений выходных слов АЦП.
На рисунке 13.24 (а) показан утрированный пример нелинейности АЦП, когда
несколько выходных отсчетов искажены вследствие пропуска битов, при т = 8
Результат БПФ этой искаженной последовательности х(п) показан на рисунке
13.24 (Ь), где налицо повышенный уровень шума по сравнению с рисунком 13.22 (Ь).
505
( *(л)
4
1 -- А
■ ■
0.5 ■ р
А
А
ЯЛ
А
■
Щ:\\Я
0 I ^ Р т г т -р— *ит
А
■
■>
13.9. Методы испытаний аналого-цифровых преобразователей
А
А
■
■ !■
-Я ^Ш -т т т Р ^ И -
■
ТТТтР^Итгт;■ П
-0.5 +
А
|Х (т )|в д Б
0-
■
-2 0 -(Ь)
-40 --60-0
3
6
9 12 15 18 21 24 2.7 30 33 36 39 42 45 48 51 54 57 60 63
т
Рис. 13.22. Выходной сигнал идеального АЦП при подаче на вход аналоговой си­
нусоиды частотой 81 128 Гц: (а) выходная последовательность во вре­
мени; (Ь) амплитудный спектр в дБ
А х(п)'
I»
,т г .
■
0.5
■
■
и■
0.5-1 -
■ :М:::
: ■
■ _
■
V
яЫя
■
■
ЧР
Л
Л
■ Гр
■
Я]' ■
■
А
■ р
■ !■
■ !!:::
1 :! :!■" ..... !;;!
■
■ '■'■Я
ЛИ
(1
ТГ
.... .
Р;:::р
0
1
я
■
■
Г#
■
№
Рис. 13.23. Выходные отсчеты АЦП при подаче на вход семи периодов синусоиды
Реальный уровень шума квантования АЦП относительно уровня полезного
сигнала будет выше, чем показанный на рисунке 13.24 (Ь). Это объясняется внут­
ренним усилением БПФ (обсуждавшимся в разделе 3.12.1), которое поднимает
высокоуровневый спектральный компонент т = 8 над уровнем шума. Следовате­
льно, если мы используем этот метод тестирования АЦП, то мы должны учиты­
вать усиление БПФ 1 0 к ^ 1 о(ЛГ/2 ), как показано на рисунке 13.24 (Ь).
Для полного описания динамических характеристик АЦП мы должны выпол­
нить такое тестирование для разных значений частоты и амплитуды сигнала1.
Главное здесь то, что мы можем в полной мере использовать преимущества БПФ,
Аналоговая синусоида, подаваемая на вход АЦП, конечно, должна быть как можно
чище. Любое искажение аналогового сигнала проявится в результатах БПФ и может
быть принято за нелинейность АЦП.
506
Глава 13. Маленькие хитрости цифровой обработки сигналов
сведя к минимуму утечку спектра, если частота входного сигнала равна т/8/ЛГ, где
т меньше N/2 в соответствий с критерием Найквиста.
А *(/?)
1
+ 1?
А
А
%
■!■
I?
А
А
о.5 +.;
(а)
■
-0.5 +
а
■
■
■
■
I"
-1
■
I»
Отброшенные
биты
к х(т ) в дБ
0 --
--2 0 --
Истинный
уровень шума
квантования
-10
(Ь)
Коэффициент
щ усиления БПФ
-30 ■
-40
]_I_|_I_I_|_I_1_|_I_1_1_1_I 1*4
| I_I_|_I_1_|_I
-50
0
3
6
9
12
15
18
21
Измененный
уровень шума
квантования
т
Рис. 13.24. Выходной сигнал неидеального АЦП с пропуском битов: (а) отсчеты во
временной области; (Ь) амплитудный спектр в дБ
Рис. 13.25. Конфигурация аппаратуры для тестирования АЦП
И, наконец, часто на вход АЦП подают сумму двух аналоговых тонов для
оценки уровня интермодуляционных искажений АЦП, который в свою очередь
характеризует динамический диапазон преобразователя. При этом частоты обо­
их тонов должны определяться по формуле т/8 /ЛГ. На рисунке 13.25 показана
конфигурация испытательного стенда. Разумно будет использовать полосовые
фильтры (ПФ) для улучшения спектральной чистоты выходных сигналов гене­
раторов, а также включить аттенюаторы с небольшим фиксированным коэффи­
циентом передачи, чтобы исключить влияние генераторов друг на друга. (Я
рекомендую использовать для этого аттенюаторы с ослаблением в 3 дБ.) Сумма­
тор мощности обычно представляет собой аналоговый расщепитель в инверсном
13.10. Быстрая реализация КИХ-фильтров с помощью БПФ
507
включении, а генератор синхросигнала АЦП выдает последовательность прямо­
угольных импульсов. Штриховые линии на рисунке 13.25 показывают, что все
три генератора синхронизируются от одного источника опорной частоты.
13.9.2. Обнаружение пропущенных кодов
Пропущенные коды представляют собой одну из проблем, стоящих перед разра- *
ботчиками АЦП. Этот дефект возникает, когда преобразователь не способен выда­
вать определенные двоичные слова (коды). Представим себе 8 -битовый АЦП, на
вход которого подается аналоговая синусоида, и ситуацию, когда на выходе должно
быть двоичное слово 00100001 (десятичное 33), а в действительности на выходе по­
является слово.00100000 (десятичное 32), как показано на рисунке 13.26. Двоичное
слово, представляющее десятичное число 33, и есть пропущенный код. Эту неболь­
шую нелинейность очень трудно обнаружить, рассматривая отсчеты АЦП или вы­
полняя спектральный анализ. К счастью, существует простой и надежный способ
обнаружить пропуск кода 33 с помощью анализа гистограмм.
Рис. 13.26. График выходных отсчетов 8-битового АЦП с пропуском кода 0010001
(десятичного 33) во времени
Метод тестирования с помощью гистограмм заключается в накоплении боль­
шого количества выходных отсчетов АЦП и построении графика зависимости ко­
личества появлений каждого значения кода в зависимости от этого значения, как
показано на рисунке 13.27. Любой пропущенный код (вроде упомянутого кода
33) проявится в гистограмме как нулевое значение. Это значит, что код, представ­
ляющий десятичное число 33, не будет зафиксирован.
13.10. Быстрая реализация КИХ-фильтров
с помощью БПФ
Созерцая соотношения свертки (5-31) и на рисунке 5.41, специалисты-практики
осознали, что свертку можно выполнять более эффективно, используя алгоритм
БПФ. Этот метод вычисления свертки с помощью БПФ называется быстрой сверт­
кой, а его схема приведена на рисунке 13.28.
508
Глава 13. Маленькие хитрости цифровой обработки сигналов
Рис. 13.27. Гистограмма для 8-битового преобразователя
Мы повторяем здесь стандартное уравнение свертки для нерекурсивного КИХфильтра с М ответвлениями (5-6):
М -1
у(п) =
h(k)x(n-k) = h(k)*x(n) ,
k=0
(13-67)
где h(k) —импульсная характеристика (коэффициенты) КИХ-фильтра, а символ
* обозначает свертку. Было показано, что, если длина выходной последовательно­
сти у(п) превышает 30, то процесс, показанный на рисунке 13.28, требует меньше
умножений, чем прямая реализация выражения (13-67). Следовательно, быстрая
свертка является очень мощным инструментом обработки сигналов, особенно в
области цифровой фильтрации. Использование этого метода позволяет проекти­
ровать очень эффективные КИХ-фильтры, потому что, если их импульсная ха­
рактеристика не меняется, нам не нужно пересчитывать Н(т) для каждой новой
последовательности х(п). В этом случае последовательность Н(т) можно вычис­
лить заранее и хранить в памяти.
Рис. 13.28. Структура быстрой свертки
Длины прямого и обратного БПФ, конечно, должны быть одинаковыми и за­
висят от длины последовательностей к(к) и х(п). Вспомним (5-29), согласно кото­
рому, если Ь(к) имеет длину Р, а х(п) имеет длину (), то длина результирующей
последовательности у(п) будет равна (Р+0,-1). Чтобы метод быстрой свертки
давал правильный результат, длины прямого и обратного БПФ должны быть не
меньше (Р+0~1). Это значит, что к(к) и х(п) необходимо дополнить нулями в
конце до одинаковой длины, равной или превышающей (Р+{2~ 1)- Это дополне­
ние нулями не исказит результат свертки. Таким образом, для использования
13.11. Генерация нормально распределенных случайных сигналов
509
быстрой свертки мы должны выбрать размер БПФ, удовлетворяющий условию
N > (Р+0,-1) и дополнить к(к) и х(п) нулями до длины N.
Интересной особенностью быстрой свертки с точки зрения аппаратурной реа­
лизации является то, что проблема бит-реверсивной перестановки отсчетов БПФ,
обсуждавшаяся в разделах 4.5 и 4.6, здесь отсутствует. Если на рисунке 13.28
идентичные структуры БПФ используются для получения Х(т) и Н(т) в бит-реверсивном порядке, перемножать можно перемешанные последовательности
Н(т) и Х(т). Затем можно использовать подходящую структуру БПФ, которая
принимает на вход последовательности в бит-реверсивном порядке. Это обратное
БПФ выдает на выход последовательность у(п) в естественном порядке!
13.11. Генерация нормально
распределенных случайных сигналов
В разделе Б.4 приложения Э обсуждается нормальное распределение случай­
ных данных. Мы можем столкнуться с задачей генерации данных с нормальным
(Гауссовым) распределением. Существует прямой путь решения этой проблемы с
использованием программного генератора равномерно распределенных случай­
ных чисел [27]. На рисунке 13.29 наша задача представлена графически. Нам не­
обходимо получить данные, распределенные по нормальному закону со средним
(математическим ожиданием) ц ' и стандартным отклонением о\ как на рисун­
ке 13.29 (а), и при этом в нашем распоряжении есть только программа, генериру­
ющая случайные числа, которые распределены равномерно на отрезке от нуля до
единицы, как на рисунке 13.29 (Ь).
Нормальное
распределение
^ вероятностей
Равномерное
. распределение
А вероятностей
(а)
(Ь)
Рис. 13.29. Функции плотности вероятностей (ФПВ): (а) Нормальное распределе­
ние со средним = ц' и стандартным отклонением ст'; (Ь) Равномерное
распределение на интервале от нуля до единицы
К счастью, в теории вероятностей доказана Центральная Предельная Теорема,
которая говорит о том, что при суммировании М случайных чисел с произволь­
ным распределением вероятностей с ростом М распределение суммы приближа­
ется к нормальному [28 - 30]. Другими словами, если мы генерируем набор N
случайных отсчетов, которые распределены равномерно на отрезке от нуля до
единицы, мы можем прибавлять к первому набору отсчетов последующие наборы
из N отсчетов. По мере увеличения количества суммированных наборов распреде­
ление суммарной последовательности из N отсчетов все больше приближается к
510
Глава 13. Маленькие хитрости цифровой обработки сигналов
нормальному. Чтобы произвести впечатление, мы можем сказать: «Сумма стано­
вится асимптотически нормальной».' Как показал опыт, в практических задачах
распределение суммы при М > 30 достаточно близко к нормальному. Запомнив это
правило, мы прошли половину пути к решению проблемы.
После суммирования М наборов равномерно распределенных отсчетов сум­
марный набор уштп будет иметь распределение, показанное на рисунке 13.30.
^Распределение вероятностей множества узит
Предполагается,
что расстояние равно 6 о
Рис. 13.30. Распределение вероятностей набора данных, полученного суммиро­
ванием данных с равномерным распределением
Поскольку мы просуммировали М наборов, среднее узит равно р = М/2. Что­
бы определить стандартное отклонение о последовательности уэит, мы предпо­
ложим, что шести стандартным отклонениям соответствует точка М-р:
6о = М - р .
(13-68)
Это предположение оправданно, т. к. мы знаем, что вероятность появления в
уштпзначений, больших М, равна нулю, а при нормальном распределении вероят­
ность получения отсчета, равного шести стандартным отклонениям составляет
одну шестимиллионную, т. е. практически равна нулю. Поскольку р. = М/2, из
(13-68) следует, что стандартное отклонение уштправно
о = (М - р)/6 = ( М - М/2)/6 = М /1 2.
(13-69)
Для преобразования у5итпв требуемый набор данных со среднимр 'и стандарт
ным отклонением о', мы:
□ вычитаем М/2 из каждого элемента, чтобы сделать среднее равным нулю;
□ обеспечиваем равенство 6а' значению М/2 путем умножения каждого
элемента в последовательности с нулевым средним на 12о’/М;
□ переносим новый набор данных на новое среднее р \ прибавляя р 'к
каждому элементу нового набора данных.
Если мы обозначим требуемую нормально распределенную случайную после­
довательность У^еягеЖт 0
отсчет этой последовательности математически опи­
сывается как
У Л а т М = <120 / м ){ [Ё * * (я)] - м / 2} + V '■
(13-70
к=1
Наши рассуждения до сих пор явно относились к программной реализации ге­
нератора случайных чисел, но разработчикам аппаратуры тоже иногда необходимо
13.12. Фильтрация с нулевым сдвигом фаз
511
генерировать нормально распределенные данные с высокой скоростью. Для вас,
разработчики аппаратуры, в работе [30] описывается эффективный метод генера­
ции нормально распределенных данных с использованием ИС, реализующих
арифметику с фиксированной запятой.
Описанный выше метод генерации нормально распределенных случайных чи­
сел работает достаточно хорошо, но его результаты несовершенны, потому что
хвосты распределения вероятностей, показанного на рисунке 13.30, не приближа­
ются к Гауссовым1. Более совершенный и более корректный статистически (с
улучшенной случайностью) метод, который, возможно, вы захотите исследовать,
называется методом зиккурата (Ziggurat) [31 - 33].
13.12. Фильтрация с нулевым сдвигом фаз
Вы можете устранить нелинейность ФЧХ ÇHX-фильтра, используя схему, по­
казанную на 13.31 (а). Выходная последовательность у(п) будет представлять со­
бой отфильтрованную версию входной последовательности х(п) без фазовых
искажений, вносимых фильтром. В этой схеме один и тот же БИХ-фильтр использу­
ется дважды, а инверсия времени представляет собой простое изменение порядка
следования отсчетов последовательности на обратный. Рассмотрим следующую
ситуацию. Если некоторая спектральная составляющая х(п) имеет произвольную
начальную фазу a градусов, а первый фильтр вносит фазовый сдвиг -fi градусов,
то начальная фаза этой спектральной составляющей в узле А будет« - fi градусов.
Первая инверсия времени приведет к изменению знака начальной фазы и внесет
дополнительный сдвиг - в градусов. (Этот эффект‘объясняется в приложении С.)
Следовательно, начальная фаза составляющей в узле В будет равна - a + f i - 6 гра­
дусов. Вносимый вторым фильтром сдвиг фаз -fi градусов дает в узле С началь­
ную фазу - a - в градусов. Окончательная инверсия времени (часто опускаемая
при описании этого метода фильтрации с нулевым сдвигом фаз) приведет к изме­
нению знака начальной фазы и внесет дополнительный сдвиг фаз - в градусов.
Начальная фаза рассматриваемой спектральной составляющей в у{п) будет равна
a + в - в = a градусов, т. е. будет такой же, как и у х(п). Это свойство приводит к
тому, что полная ФЧХ такого фильтра оказывается равной нулю градусов во всем
диапазоне частот.
Эквивалентный фильтр с нулевым сдвигом фаз показан на рисунке 13.31 (Ь).
Конечно, эти методы нельзя применять в реальном масштабе времени, т. к. мы не
можем обратить ход времени (по крайней мере, в нашей вселенной). Такая филь­
трация представляет собой блочную обработку, или отложенную обработку, та­
кую как фильтрация аудиозаписи в компьютере. Мы должны иметь в наличии все
отсчеты сигнала до начала обработки. Начальная инверсия времени на рисун­
ке 13.31 (Ь) подчеркивает это ограничение.
В начале и в конце фильтрованной последовательности будут присутствовать
переходные процессы. Если в каком-то приложении эти переходные процессы яв­
ляются проблемой, следует рассмотреть возможность отбрасывания L отсчетов в
начале и в конце последовательности у(п), где L в 4—5 раз превосходит порядок
БИХ-фильтра.
1 Я благодарю моего коллегу по ЦОС доктора Питера Куцукоса (Peter Kootsookos) из
университета в Квинсленде, Австралия, за его замечание по этому поводу.
Глава 13. Маленькие хитрости цифровой обработки сигналов
512
(Ь)
Инверсия
времени
БИХ
фильтр
Инверсия
времени
БИХ
фильтр
у(п )
Рис. 13.31. Два эквивалентных метода фильтрации с нулевым фазовым сдвигом
Кстати, общая неравномерность АЧХ в полосе пропускания (в дБ) такого фи­
льтра будет в два раза больше неравномерности одного БИХ-фильтра. Результи­
рующее подавление в полосе задерживания также будет в два раза больше.
13.13. Повышение крутизны АЧХ
КИХ-фильтров
Рассмотрим интересный метод улучшения подавления в полосе задерживания
цифровых фильтров в ситуации, когда мы не можем по каким-либо причинам мо­
дифицировать коэффициенты фильтра. Мы можем удвоить подавление, просто
включив последовательно два одинаковых фильтра. Этот прием работает, как по­
казано на рисунке 13.32 (а), где АЧХ одного фильтра \Н(тп)\ показана штриховой
линией, а АЧХ двух одинаковых фильтров, включенных последовательно,
\Н2(тп) |, показана сплошной линией. Недостаток такого простого приема в том,
что одновременно с увеличением подавления удваивается и неравномерность
АЧХ в полосе пропускания, как показано на рисунке 13.32 (Ь). Частотная ось на
рисунке 13.32 нормирована так, что значение нормированной частоты 0.5 соот­
ветствует половине частоты дискретизации.
Частота
(а)
Частота
(Ь)
Рис. 13.32. АЧХ одного фильтра и последовательно соединенных двух фильтров:
(а) полная характеристика; (Ь) полоса пропускания
Есть лучший метод повышения подавления в полосе задерживания без ухуд­
шения неравномерности в полосе пропускания, который не требует изменения
коэффициентов фильтра. Этот метод называется повышением крутизны А ЧХ фи­
льтра [34], а его блок-схема обозначена Н8на рисунке 13.33.
513
13.13. Повышение крутизны АЧХ КИХ-фильтров
Рис. 13.33. Повышение крутизны АЧХ фильтра
Элемент задержки на рисунке 13.33 обеспечивает задержку на (Л1-1)/2 отсче­
тов, где ЛГ—количество коэффициентов /?(&), или длина импульсной характеристи­
ки, исходного КИХ-фильтра. Процесс повышения крутизны дает улучшенные
характеристики фильтра \Н$(тп)\, показанные на рисунке 13.34 сплошными линия­
ми, на котором хорошо видно повышение подавления и уменьшение неравномер­
ности АЧХ в полосе пропускания по сравнению с исходным фильтром Н(т).
Из-за необходимости выравнивания задержек повышение крутизны непримени­
мо к фильтрам, групповая задержка которых непостоянна, таким как минималь­
но-фазовые КИХ-фильтры или БИХ-фильтры.
ш
о:
■ \Н(т)\ ;
\. .V .
%
11
%
к
і \Н,{т)\
-1
---1-- ---і ---- ----- і------ ____
Частота
Частота
(а)
(Ь).
Рис. 13.34. Характеристики | Н(т) \ и | Н5(т) \: (а) полная АЧХ; (Ь) полоса пропуска­
ния
Рис. 13.35. Улучшенная схема повышения крутизны АЧХ
Если требуется еще большее подавление, то можно использовать схему, приве­
денную на рисунке 13.35, для которой элемент задержки тоже обеспечивает за­
держку на (Ы-1)/2 отсчетов.
Процедура повышения крутизны АЧХ применима к ФНЧ, ФВЧ и полосо­
вым фильтрам, имеющим симметричные коэффициенты и нечетное количество
514
Глава 13. Маленькие хитрости цифровой обработки сигналов
ответвлений. Ее можно использовать везде, где имеющиеся характеристики филь­
тра изменить нельзя, и можно даже использовать с каскадными интеграторамигребенчатыми фильтрами для уменьшения неравномерности их АЧХ в полосе про­
пускания, а также с КИХ-фильтрами без умножителей, в которых коэффициенты
принимают значения, равные целым степеням двух [35, 36]-.
13.14. Интерполяция полосовых сигналов
Существует множество приложения цифровой связи, в которых центральная
частота спектра действительного сигнала равна четверти частоты дискретизации,
или f s /4. В этом случае квадратурное понижающее преобразование частоты ста­
новится особенно простым (см. разделы 8.9 и 13.1). Если необходимо получить
интерполированный (с повышенной частотой дискретизации) полосовой сигнал,
сохранив центральную частоту равной f s /4, можно воспользоваться следующим
эффективным методом [37]. Предположим, что мы хотим интерполировать с ко­
эффициентом два, так что частота дискретизации на выходе в два раза превышает
частоту дискретизации на входе: f s out = 2fs in. В это^ случае последовательность
преобразований выглядит так: квадратурное понижающее преобразование наf s in/4,
интерполяция с коэффициентом два, квадратурное повышающее преобразование
на f s out/4, и использование в дальнейшем только действительной части комплек­
сной преобразованной последовательности. Реализация этого процесса показана
в верхней части рисунка 13.36.
На первый умножитель в верхнем канале подаются входная действительная
последовательность х(п) и повторяющаяся опорная последовательность 1 , 0 , - 1 ,
0. Эта опорная последовательность представляет собой действительную (синфаз­
ную) часть комплексной экспоненты
e -j2n<Js,in/4)ts,m = e -j2n(fs,in/4)( 1/fs,in) = е ~2я( 1/4) >
( 13- 71)
необходимой для понижающего преобразования на f s/4. Аналогично, повторяю­
щаяся последовательность 0 , - 1 , 0 , 1 , подаваемая на первый умножитель нижнего
канала, есть мнимая (квадратурная) часть комплексной экспоненты для понижа­
ющего преобразования е~]2л^ ^ 4^ п. Символ f 2 обозначает введение одного ну­
левого отсчета между парой исходный отсчетов в узлах А. Последнее вычитание
выполняется для извлечения действительной части из комплексной последователь­
ности в узле D и получения выходной последовательности у(п) (т. е. мы выделяем
действительную часть произведения комплексного сигнала узла С на ei271^1/ 4))
Спектры сигналов в различных узлах этой схемы приведены в нижней части ри­
сунка 13.35. Затушеванные спектры показывают истинные спектральные компо­
ненты, а белые спектры представляют собой изображения. Конечно, в обоих
каналах обработки должны использоваться одинаковые фильтры нижних частот
чтобы сохранялись временные соотношения и ортогональность фаз.
Имеются и другие особенности этого процесса интерполяции, заслуживаю­
щие нашего внимания [38]. Если уменьшение амплитуды в два раза в результате
интерполяции недопустимо, мы можем для компенсации потерь использовать
опорные последовательности вида 2,0, -2,0 и 0,2,0, -2. Поскольку сигнал в узле
13.15. Алгоритм локализации спектральных пиков
515
В содержит много нулевых отсчетов (три четверти от общего количества отсче­
тов), мы можем использовать эффективные полифазные фильтры. Наконец, если
это необходимо, можно подумать о замене конечного сумматора мультиплексо­
ром (потому что каждый второй отсчет последовательностей в узле Б равен
нулю). В этом случае опорную последовательность в нижнем канале следует за­
менить последовательностью 0 , - 1 , 0 , 1 .
и
х(п)
В
ФНЧ
1 , 0 , -1 , 0 ,...
А
—
Х(т)
В
Т1 2 і—- »
Ї - 0, -1 . 0 , 1 ,...
-г.Ї-ІП
Ї-ІП
Узлы А
Л п» л
ЛШ
_2 #І » І '
я-іп
Узлы В
-гЇ-ОШ
Узлы С
Л
ї-о и і
Ї-ОІЙ
У(я»)
,1 !
в-іп
— іШШїті , Іиї«..,
Т і "
\
І
■С /2
1---- 1---- 1 , 1 /о І---- 1---- 1
-0 2
л
і л
І
71
Лі і П|
і :,і Л
2Л,„
Частота
І
І
ГГТГ
0 2 1
1
Г7'з-оиі
Г Частота
.. -
5-іп
0 2
І
\
• ■ 1‘
І........
І І---- 1---- 1 , І
І / І « І---- 1-----1-----1-----1
■'8-ои/2
■
о
Л
7і5-ОіД 1 г І-,0І2
0
9
ФНЧ
П I ЛI I ПГ Л ЛI I Ї Д Ь
-2Л
У(л)
1 , 0 , -1 , 0 ,
2^п
Частота
Л
1---- 1---- ГТТ
О
Частота
І , І /9 1-----1-----1-71-----Г8-ои/2
О
Частота
Г І--- 1--- 1 ""І.. І , І І г т т 0 2
в-оиі
Частота
Рис. 13.36. Схема интерполяции полосового сигнала и соответствующие спектры
13.15. Алгоритм локализации
спектральных пиков
На практике при анализе дискретных спектров мы часто сталкиваемся с необхо­
димостью оценки частоты синусоиды (или центральной частоты очень узкополос­
ного сигнала). При использовании БПФ по основанию 2 частота интересующего
нас сигнала редко совпадает с центром одного из бинов БПФ, частота которого
известна точно. В этом случае вследствие утечки спектра дискретный спектр си­
нусоиды, содержащей N отсчетов, может выглядеть так, как на рисунке 13.37 (а).
Гпава 13. Маленькие хитрости цифровой обработки сигналов
516
Мы видим, что максимум спектра синусоиды лежит между центрами бинов с ин­
дексами т=5итп = 6. (Переменная т представляет собой индекс отсчетов /^-точеч­
ного БПФ в частотной области. Расстояние между бинами по частоте составляет
/ 5 /Ы, где , как и всегда, / 3 — частота дискретизации.) Внимательное изучение ри­
сунка 13.37 (а) позволяет нам сказать, что частота синусоиды лежит где-то между
т = 5ит =5.5, потому что отсчет БПФ бина т =5 больше отсчета бина т = 6. Дей­
ствительный синусоидальный сигнал в данном случае имеет частоту 5.25/ 5/ЛГГц.
В этой ситуации погрешность измерения частоты равна половине расстояния
между соседними бинами. Нам часто необходимо получить более точную оценку
частоты, и, действительно, существует несколько методов ее улучшения.
„ А |Х(ш)|
1 11
5
1
(а)
О
Л/-точечное БПФ
(от N отсчетов)
5+
О
О
1
т
2 3 4 5 6 7 8 9
0
1 2
3
Пик спектра синусоиды находится
где-то в этом диапазоне частот
№ )|
Теперь пик находится
на т = 21
15-
(Ь)
4А/-точечное БПФ
- (к N отсчетам сигнала
добавлены ЗЛ/ нулей)
10 -5-
0 н-м-Т'7 +-і-Т"+++у і Мі і н
5
9
13
17
21
т
■9
25
29
тутт
33
т
Рис. 13.37. Амплитудные спектры: (а) для Л/-точечного БПФ; (Ь) для 4Л/-точечного
БПФ
Мы можем накопить, скажем,
отсчетов сигнала и выполнить ^-точечное
БПФ, в результате чего разность частот соседних бинов уменьшится до / 5 /4 К
Или можно дополнить исходную последовательность из N отсчетов
нулевыми
отсчетами и выполнить ^-точечное БПФ расширенной последовательности.
Это также уменьшит расстояние между бинами до / 5 /4Ы, как показано на рисун­
ке 13.37 (Ь). Если максимум спектра совпадает с бином треак =21, то оценка цент­
ральной частоты имеет вид
треак Л
/РРТ^е
треак I в / 4 № .
(13-72)
Обе схемы, увеличение выборки сигнала и дополнение нулями, требуют суще­
ственного увеличения объема вычислений. В научной литературе —от призем­
ленной геофизики до возвышенной астрофизики — описаны другие методы
повышения точности измерения частоты, но большинство из них направлены на
13.15. Алгоритм локализации спектральных пиков
517
повышение точности без учета вычислительных затрат. Здесь мы опишем про­
стую с точки зрения вычислений схему оценки частоты [3].
Предположим, что мы имеем отсчеты БПФ Х(тп) действительного узкополос­
ного сигнала, модули которых представлены на рисунке 13.38. Вертикальная ось
здесь имеет линейный, а не логарифмический масштаб.
Центральная частота сигнала в единицах индекса тпреак может быть оценена как
треак = тк~ г е а Щ ,
(13-73)
где геа1(д) обозначает действительную часть корректирующею члена д, который
определяется как
д = [Х(тк+1) - Х(тк_1)]/[2Х(тк) - Х(тк^ ) - Х(тк+1)],
(13-74)
где тк — целочисленный индекс наибольшего по модулю отсчета \Х(тк)\. Значе­
ния Х(тк_1) и Х(тк+1) представляют собой комплексные отсчеты спектра по обе
стороны наибольшего отсчета, как показано на рисунке 13.38.
Рис. 1 3 .3 8 . Модули отсчетов БПФ узкополосного сигнала
На основе комплексных отсчетов спектра мы выражаем частоту сигнала через
частотный индекс т (который может быть нецелым), и подставляем это значение в
fpeak
™реак/5
(13-75)
для получения оценки частоты в Гц. Оценки (13-73) и (13-74) применимы только
в случае, когда большая часть энергии сигнала сосредоточена в пределах одного
бина шириной (/5/И).
Этот алгоритм оценки пика спектра достаточно точен при его простоте. Ошиб­
ка оценки частоты пика составляет примерно 0.06, 0.04 и 0.03 ширины бина при
отношениях сигнал/шум 3, 6 и 9 дБ соответственно. Это совсем не плохо! При­
влекательной особенностью этого алгоритма является то, что он не требует ис­
пользования окон, в отличие от других алгоритмов локализации пиков спектра, и
использует отсчеты БПФ, не требуя вычисления их модулей.
518_______________ Гпава 13. Маленькие хитрости цифровой обработки сигналов
13.16. Вычисление поворачивающих
множителей БПФ
В типовых приложениях с использованием ТУ-точечного БПФ по основанию 2
по N входным отсчетам х(п) вычисляются N отсчетов в частотной области Х(т).
Однако существуют нестандартные приложения БПФ (например, гармонический
анализ или использование БПФ для реализации банка фильтров), в которых требу­
ется только подмножество результатов Х(т). Рассмотрим рисунок 13.39, на котором
изображен граф 16-точечного БПФ по основанию 2 с прореживанием по времени, и
предположим, что нам необходимо вычислить только выходные отсчеты Х( 1), Х(5),
Х(9) и Х( 13). В этом случае вместо выполнения полного БПФ мы можем выполнить
только вычисления, показанные на графе жирными линиями. БПФ с уменьшенным
объемом вычислений часто называют обрезанным БПФ [39 - 42]. (Как и в главе 4,
для простоты в бабочках на рисунке 13.39 показаны только множители аргументов
поворачивающих множителей, а не полные аргументы.) Для реализации обрезан­
ных БПФ мы должны знать аргументы поворачивающих множителей, связанных с
вычислением всех необходимых бабочек, форма которых приведена на рисун­
ке 13.40 (а). Здесь мы предлагаем вашему вниманию интересный алгоритм вы­
числения аргументов поворачивающих множителей 2жА1/М и 2лА2/ N для БПФ
произвольного размера [43].
каскад 1
каскад 2
каскад 3
каскад 4
х(0
г=^»Х(0)
х(1
х(2
х(3
х(4
х(5
х(6
х(7
х(8
х(9
х(10
х(11
х(12
х(13
х(14
х(15
Рис. 13.39. Сигнальный граф 16-точечного БПФ по основанию 2
*Х(7)
15—=^Х(15)
13.16. Вычисление поворачивающих множителей БПФ
519
Алгоритм основан на следующих особенностях БПФ с прореживанием по вре­
мени по основанию 2 :
□ бабочка имеет вид, показанный на рисунке 13.40 (а);
□
множители аргумента А 1 и А2 являются целыми числами, показанны­
ми на рисунке 13.39;
□
^-точечное БПФ по основанию 2 имеет М каскадов (обозначенных в
верхней части рисунка 13.39), причем М = log2 (ІV);
□ каждый каскад содержит N/ 2 бабочек.
Множитель аргумента произвольной бабочки вычисляется как
А 1 - В га[ \ 2 Н В - 1 ) ^ \ \
(13-76)
где 5 —индекс каскада преобразования, принимающий значения в диапазоне
1 < 5 < М. Значение В представляет собой индекс одной из N/2 бабочек в каждом
каскаде, при этом 1 < В < N/2. Величина В = 1 соответствует верхней бабочке в
каскаде. Операция [д\ возвращает наибольшее целое, которое не превосходит q.
Выражение ВгеХ) [2 ] представляет собой трехступенчатую операцию: преобразо­
вание десятичного целого 2 в двоичное число длиной М - 1 бит, выполнение ре­
верса битов двоичного представления числа (см. раздел 4.5), и преобразование
реверсированного двоичного числа обратно в десятичное целое, в результате кото­
рой получается коэффициент А у. Множитель аргумента А2 на рисунке 13.40 (а) вы­
числяется затем как
А2 = А1+Щ 2.
(13-76')
Рис. 1 3 .4 0 . Две формы бабочек БПФ по основанию 2
Этот алгоритм можно также использовать для вычисления единственного по­
ворачивающего множителя оптимизированной бабочки, показанной на рисун­
ке 13.40 (Ь). Ниже приведен исходный текст программы для МATLAB, реализую­
щей описанный алгоритм вычисления множителей аргумента поворачивающих
множителей.
clear
N = 16; %размер БПФ
М = 1од2(N); %Количество каскадов
Sstart = 1 ;
%Первый обрабатываемый каскад
Sstop = М; %Последний обрабатываемый каскад
Bstart = 1; %Первая вычисляемая бабочка
Bstop — N/2; %Последняя вычисляемая бабочка
Pointer = 0; %Инициализация указателя результатов
520
Глава 13. Маленькие хитрости цифровой обработки сигналов
for S = SstartrSstop
for В = BstartrBstop
Z = floor((2AS * (В-1))/N); %Вычислить целое z
% Вычислить бит-реверсивное представление Z
Zbr = 0;
for I = М-2:-1:0
if Z>=2AI
Zbr = Zbr + 2A (M-I-2);
Z = Z - 2 AI ;
end
end %Конец вычисления бит-реверс, представления
A1 = Zbr; %Множитель аргумента A1
А2 = Zbr + N/2; % Множитель аргумента A2
Pointer = Pointer +1;
Results(Pointer,:) = [S,B,A1,A2];
end
end
Results, disp('
Stage B-fly, A 1 , A2'), disp(' ')
Переменные в тексте программы, в имени которых содержатся строки start и
stop, позволяют вычислять подмножество поворачивающих множителей N-то­
чечного БПФ. Например, для вычисления множителей аргумента пятой и шестой
бабочки третьего каскада 32-точечного БПФ мы можем задать N =32, Sstart =
3, Sstop = 3, Bstart = 5 и Bstop = б и выполнить эту программу.
13.17. Обнаружение отдельного тона
В этом разделе мы рассмотрим структуру БИХ-фильтра, используемого для
выполнения спектрального анализа при обнаружении и измерении параметров
отдельных синусоидальных тонов. Стандартным методом вычисления спектра
сигнала является дискретное преобразование Фурье (ДПФ), обычно реализуе­
мое в форме быстрого преобразования Фурье (БПФ). Однако имеются приложе­
ния, в которых необходимо вычислять спектр на подмножестве N центральных
частот бинов iV-точечного ДПФ. Популярным и эффективным методом вычисле­
ния прореженных отсчетов БПФ является алгоритм Герцеля, использующий не­
которую реализацию БИХ-фильтра для вычисления одного отсчета ДПФ по N
входным отсчетам сигнала. Самым распространенным применением этого алго­
ритмы является обнаружение присутствия отдельного непрерывного синусоида­
льного тона. Учитывая это, давайте коротко рассмотрим задачу обнаружения тона.
Конечно, для обнаружения присутствия отдельного синусоидального тона в
последовательности^«) можно использовать БПФ. Например, если бы мы хоте­
ли обнаружить тон частотой 30 кГц при частоте дискретизации f s = 128 кГц, мы
могли бы начать с выполнения 64-точечного БПФ, как показано на рисунке 13.41.
Затем мы проанализировали бы модуль комплексного отсчета Х( 15) и проверили
бы, превышает ли он некоторый заданный порог.
Такое использование БПФ крайне неэф
Download