Лайонс Р. Цифровая обработка сигналов. Второе издание. Пер. с англ. (2006) (1095938), страница 76
Текст из файла (страница 76)
Так что блок-схема процесса генерации комплексного сигнала х (и) с помощью КИХ-фильтра приобретает вид, показанный на рисунке 9.12 (а). Мы задерживаем х„(и) на 6 = (7-1) / 2 = 3 отсчета, получая при этом задержанную последовательность х'т(и). Эта задержанная последовательность теперь корректно выровнена по времени с х;(и). Если вы реализуете КИХ-преобразователь Гильберта с нечетным количеством ответвлений в аппаратуре, простейший способ получения х'„(и) состоит в том, чтобы взять копию задержанной исходной последовательности х„(и) со среднего ответвления лийии задержки КИХ-преобразователя Гильберта, как 374 Глава 9.
иск етноеп еоб азованиеГильбе та показано на р)(сунке 9.12 (Ь). Если вы моделируете схему, приведенную на рисунке 9.12 (а), программно, то последовательность х'„(и) можно получить, введя С = 3 нулевых отсчета в начало исходной последовательности х,(п). «',(и) х,(п) = «',(и) +/х,(п) (а) — Ф х,(п) х,(п) (ь) ь(о) Рис. 9.12. Генерация последовательности х (и) с помощью КИХ-фильтра Гильберта, имеющего 7 ответвлений: (а) схема обработки; (Ь) структура фильтра Мы можем, например, реализовать КИХ-преобразователь Гильберта, используя структуру!'т/ типа с четным количеством ответвлений.
На рисунке 9.13 изображен этот случай, причем коэффициенты обозначены как /)2(к). Обратите внимание нато, что АЧХ отлична от нуля на частотах +/х/2 Гц. Следовательно, этот фильтр четной длины аппроксимирует идеальный преобразователь Гильберта несколько лучше, чем фильтр нечетной длины. -1 о 2 4 5 „ 8 10 12 14 о -5 -10 хх -15 -20 -25 -/,/2 -/,/4 /,/2 /,/4 Рис.
9.13. Частотная характеристика Н2(ги) преобразователя Гильберта с 14 ответвлениями и коэффициентами //2(/г) 375 9,4. П оекги ованиедис егного и еоб азовагеля Гульбе га Одна из проблем, связанных с этой традиционной реализацией преобразователя Гильберта состоит в том, что коэффициент передачи в полосе пропускания ~Н~(гз) ~ равен единице не на всех частотах, в отличие от коэффициента передачи канала х ',(п) на рисунке 9.12. Поэтому для минимизации ошибок мы вынуждены увеличивать количество коэффициентов Ьз(/г) (или использовать взвешивание с помощью окон), чтобы сделать Щ(гз) ( в полосе пропускания как можно более гладкой.
Хотя на рисунке это не показано, отрицательный наклон ФЧХ Нз(го) соответствует групповой задержке С = ( 14-1)/2 = 6.5 отсчетов. Это заставляет нас задерживать исходную последовательность х,(п) на нецелое (дробное) количество отсчетов, чтобы достичь выравнивания по времени с х;(и). Фильтры с дробными задержками выходят за рамки данной книги, но вы можете получить дополнительную информацию по этой теме, прочитав статью 14~.
Давайте вспомним теперь, что каждый второй коэффициент в структуре типа П1 равен нулю. Таким образом, преобразователь Гильберта с нечетным количеством ответвлений более привлекателен с точки зрения объема вычислений, чем преобразователь четной длины. Почти половина умножений, показанных на рисунке 9.10, для структуры преобразователя Гильберта типа П1 может быть отброшена. Разработчики могут уменьшить количество умножений еще в два раза, применив сложенную структуру КИХ-фильтра (которая обсуждается в разделе 13.7). Это возможно благодаря тому, что коэффициенты симметричны (с учетом того, что половина из них отрицательны).
Краткое предупреждение: здесь возможна ошибка, которую иногда допускают даже профессионалы. Когда мы рассчитываем стандартные КИХ-фильтры с линейной ФЧХ, мы вычисляем коэффициенты, а затем используем их в программной или аппаратурной реализации. Иногда мы забываем изменить порядок следования коэффициентов на обратный перед использованием их в КИХ-фильтре. Эта забывчивость обычно не приводит к тяжелым последствиям, т. к. коэффициенты большинства обычных КИХ-фильтров обладают зеркальной симметрией. В случае КИХ-фильтров Гильберта это не так, поэтому, пожалуйста, не забывайте изменить порядок следования коэффициентов перед использованием их для фильтрации.
Если вы этого не сделаете, фазо-частотная характеристика вашего ПГ будет искажена. Между прочим, преобразователи Гильберта могут сроиться также на основе БИХ-фильтров, и в некоторых случаях такая реализация оказывается более эффективной с точки зрения объема вычислений, чем КИХ реализация, за счет некоторого отклонения сдвига фаз между х„(п) и х;(и) от 90' [5, 6]. 9.4.2. Преобразование Гильберта в частотной области Существует также схема вычисления преобразования Гильберта в частотной области, заслуживающая упоминания потому, что ПГ х (и) и аналитический сигнал х,(п) генерируются одновременно, Мы просто берем У-точечное ДПФ действительной последовательности х,(н) четной длины М, получая дискретный спектр Х,(т), показанный на рисунке 9.14 (а). Затем мы создаем новый спектр Х,(т) = 2Х„(т).
Приравниваем отсчеты Х (т), соответствующие отрицательным частотам, т. е. отсчеты с номерами (У/2) +1 < т <У-1, нулю, в результате чего у нас остается односторонний спектр Х,(т), показанный на рисунке 9.14 (Ъ). Затем 379 Глава 9. иск етноеп еоб азоввннеГильбе та Л,/2 но О и, //2 (а) .()з о и. (р -в, О е, Г (ь) (с) Рис. 9.14. Спектр исходной последовательности х,(п) и односторонний спектр аналитической последовательности хс(п) 1.
Если возможно, выбирайте длину входной последовательности х„(п) равной степени двойки, чтобы для эффективного вычисления ДПФ можно было использовать алгоритм БПФ по основанию 2. 2. Длина последовательности Хс(т) должна быть равна длине исходной последовательности Х,(т). Помните, что обнуление составляющих Х (т) с отрицательными частотами не означает их выбрасывание из массива. 3. Множитель 2 в присвоении Х (т) = 2Х,(т) компенсирует снижение амплитуды в 2 раза„связанное с потерями энергии спектра на отрицательных частотах.
4. Если ваше применение ПГ ориентировано на блочную обработку данных в том смысле, что вам необходимо генерировать аналитическую последовательность для действительной последовательности фиксированной длины, стоит подумать об использовании этого метода, т. к. он избавляет от головной боли, связанной с необходимостью выравнивания задержек при КИХ реализации во временной области.
С появлением быстрых микросхем ЦОС и конвейерных методов БПФ эта схема генерации аналитических сигналов может оказаться жизнеспособной в целом ряде применений. Одна из возможностей, которые следует рассмотреть, состоит в использовании для вычисления прямого ДПФ действительного сигнала х,(п) эффективного метода 2Ж-точечного действительного БПФ, описанного в разделе 13.5.2. Конечно, вдумчивый инженер проведет также поиск в литературе, чтобы выяснить, какие алгоритмы эффективного вычисления обратного БПФ есть для случая, когда многие отсчеты в частотной области равны нулю. Допустим, вам необходимо получить прореженную в два раза аналитическую последовательность х',(и), основанную пах (п).
Это легко сделать благодаря (7). делим отсчеты спектра Х,(0) (постоянную составляющую) и Х (й(/2) на два. Наконец, выполняем У-точечное обратное ДПФ нового спектра Х (т), результатом которого является требуемая аналитическая последовательность х (и) во временной области. Действительная часть х (и) представляет собой исходный сигнал х„(п), а мнимая часть х,(п) представляет собой ПГ х„(п). Готово! Есть несколько моментов, касающихся описанной схемы прямой генерации аналитического сигнала в частотной области, о которых необходимо помнить: 9.5.
Гене ция аналитического сигнала во в еменной области 377 Во-первых, вычисляем М-точечную последовательность Хт(т). Затем создаем новую спектральную последовательность Х' (() = 2Хг(Й) для 1 ( )т < (У/2) — 1. Положим Х'о(0) Равным Х,(0) + Хг(А(/2). Наконец, вычислЯем (АГ/2)-точечное обратное ДПФ от Х',(т), которое дает прореженную в два раза аналитическую последовательность х ',(и). Частота дискретизации последовательности х ' (и) составляет /',=/ /2, а спектр показан на рисунке 9.14 (с). В разделе 13.28.2 мы обсудим схему генерации интерполированного аналитического сигнала по хт(п). 9.5.
Генерация аналитического сигнала во временной области В цифровых системах связи КИХ-реализация ПГ (подобная показанной н» рисунке 9.12 ()т)) используется для генерации комплексного аналитического сигнала хо(п). Некоторые практики при обработке полосовых сигналов для получения аналитического сигнала сейчас используют метод комплексной фильтрации во временной области (8].