- •7.2. БАЗОВАЯ СТРУКТУРА АНАЛИЗАТОРА СПЕКТРА НА ОСНОВЕ ДПФ
- •7.3. ЧАСТОТНЫЕ ХАРАКТЕРИСТИКИ МНОГОКАНАЛЬНОГО АНАЛИЗАТОРА СПЕКТРА НА ОСНОВЕ ДПФ
- •7.4. РОЛЬ ВЕСОВЫХ ФУНКЦИЙ ПРИ ГАРМОНИЧЕСКОМ СПЕКТРАЛЬНОМ АНАЛИЗЕ
- •7.5. ОСНОВНЫЕ ПАРАМЕТРЫ ВЕСОВЫХ ФУНКЦИЙ ПРИ СПЕКТРАЛЬНОМ АНАЛИЗЕ
- •7.6. ПРИМЕРЫ РЕШЕНИЯ ЗАДАЧ ГАРМОНИЧЕСКОГО СПЕКТРАЛЬНОГО АНАЛИЗА СИГНАЛОВ
- •7.8. КОРРЕЛЯЦИОННЫЕ И СПЕКТРАЛЬНЫЕ ХАРАКТЕРИСТИКИ ДИСКРЕТНЫХ СЛУЧАЙНЫХ СИГНАЛОВ
- •7.10. СТАТИСТИЧЕСКИЕ ОЦЕНКИ КОРРЕЛЯЦИОННЫХ ХАРАКТЕРИСТИК ДИСКРЕТНЫХ СЛУЧАЙНЫХ СИГНАЛОВ
- •7.11. СТАТИСТИЧЕСКИЕ ОЦЕНКИ СПЕКТРАЛЬНОЙ ПЛОТНОСТИ МОЩНОСТИ ДИСКРЕТНЫХ СЛУЧАЙНЫХ СИГНАЛОВ
- •7.12. КОРРЕЛОГРАММНЫЙ МЕТОД ВЫЧИСЛЕНИЯ СПЕКТРАЛЬНОЙ ПЛОТНОСТИ МОЩНОСТИ ДИСКРЕТНЫХ СЛУЧАЙНЫХ СИГНАЛОВ
- •7.13. ВЫЧИСЛЕНИЕ СПЕКТРАЛЬНОЙ ПЛОТНОСТИ МОЩНОСТИ МЕТОДОМ ПЕРИОДОГРАММ
- •7.14. ВЫЧИСЛЕНИЕ ОЦЕНОК АВТОКОРРЕЛЯЦИИ И ВЗАИМНОЙ КОРРЕЛЯЦИИ С ПОМОЩЬЮ ДПФ
- •7.15. ВЫЧИСЛЕНИЕ ОЦЕНОК АВТОКОРРЕЛЯЦИИ И ВЗАИМНОЙ КОРРЕЛЯЦИИ С ПОМОЩЬЮ ПЕРИОДОГРАММ
- •КОНТРОЛЬНЫЕ ВОПРОСЫ
- •8. АЛГОРИТМЫ БЫСТРОГО ПРЕОБРАЗОВАНИЯ ФУРЬЕ
- •8.1. ОПРЕДЕЛЕНИЕ И КЛАССИФИКАЦИЯ АЛГОРИТМОВ БПФ
- •8.2. АЛГОРИТМ БПФ С ПРОРЕЖИВАНИЕМ ПО ВРЕМЕНИ ПО ОСНОВАНИЮ 2
- •8.4. АЛГОРИТМ БПФ ПО ОСНОВАНИЮ 2 С ПРОРЕЖИВАНИЕМ ПО ЧАСТОТЕ И ГРАФ-СХЕМА ЕГО ПРОГРАММНОЙ РЕАЛИЗАЦИИ
- •8.5. МАСШТАБИРОВАНИЕ И ОЦЕНКА ТОЧНОСТИ ПРИ ВЫЧИСЛЕНИИ БПФ
- •8.6. ДОПОЛНИТЕЛЬНЫЕ ВОЗМОЖНОСТИ АЛГОРИТМОВ БПФ
- •КОНТРОЛЬНЫЕ ВОПРОСЫ
- •9. ПЕРЕНОС И ПРЕОБРАЗОВАНИЕ СПЕКТРОВ ДИСКРЕТНЫХ СИГНАЛОВ
- •9.1. ЗАДАЧИ ПРЕОБРАЗОВАНИЯ СПЕКТРОВ ДИСКРЕТНЫХ СИГНАЛОВ В СИСТЕМАХ ЦОС
- •9.3. ПЕРЕНОС СПЕКТРОВ И КВАДРАТУРНАЯ ОБРАБОТКА УЗКОПОЛОСНЫХ РАДИОСИГНАЛОВ
- •9.4. ФОРМИРОВАНИЕ ОДНОПОЛОСНЫХ ДИСКРЕТНЫХ СИГНАЛОВ
- •9.4.1. ФИЛЬТРОВОЙ СПОСОБ ФОРМИРОВАНИЯ ОДНОПОЛОСНЫХ ДИСКРЕТНЫХ СИГНАЛОВ
- •9.4.2. ФОРМИРОВАНИЕ ОДНОПОЛОСНОГО ДИСКРЕТНОГО СИГНАЛА С ПОМОЩЬЮ ПРЕОБРАЗОВАТЕЛЯ ГИЛЬБЕРТА
- •КОНТРОЛЬНЫЕ ВОПРОСЫ
- •КОНТРОЛЬНЫЕ ВОПРОСЫ
- •12.2. АППАРАТНАЯ РЕАЛИЗАЦИЯ ЦОС
- •12.2.1. ЗАДАЧИ И СПОСОБЫ АППАРАТНОЙ РЕАЛИЗАЦИИ ЦОС
- •12.2.4. ЦИФРОВЫЕ ФИЛЬТРЫ С РАСПАРАЛЛЕЛИВАНИЕМ АРИФМЕТИЧЕСКИХ ОПЕРАЦИЙ
- •12.2.6. ЦИФРОВЫЕ ФИЛЬТРЫ С ВРЕМЕННЫМ РАЗДЕЛЕНИЕМ СИГНАЛОВ
- •12.3.2. СИНХРОНИЗАЦИЯ И АЛГОРИТМЫ РАБОТЫ МИКРОПРОЦЕССОРНЫХ СИСТЕМ ЦОС
- •12.3.3. СПОСОБЫ И ЗАДАЧИ РАЗРАБОТКИ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ МИКРОПРОЦЕССОРНЫХ СИСТЕМ ЦОС
- •12.4. ОБЩАЯ ХАРАКТЕРИСТИКА ЦИФРОВЫХ СИГНАЛЬНЫХ ПРОЦЕССОРОВ
- •КОНТРОЛЬНЫЕ ВОПРОСЫ
- •ЛИТЕРАТУРА
41
8.4. АЛГОРИТМ БПФ ПО ОСНОВАНИЮ 2 С ПРОРЕЖИВАНИЕМ ПО ЧАСТОТЕ И ГРАФ-СХЕМА ЕГО ПРОГРАММНОЙ РЕАЛИЗАЦИИ
Рассмотрим кратко, как осуществляют прореживание в данном алгоритме БПФ и определяют его базовую операцию. Для этого входную последовательность x(n) представляют в виде двух подпоследовательностей:
x1(n) = x(n) и x2(n) = x(n + (N/2)), n = 0, 1, …(N/2) – 1,
т. е. в виде ее первой x1(n) и второй x2(n) половин и выражают через них ДПФ исходной последовательности:
X ( jk ) = |
( N/∑2 ) − 1x1( n )WNkn + |
( N/∑2 ) − 1x2( n )WNk( n + ( N/2 )) , |
|
n= 0 |
n= 0 |
k = 0, 1, …N – 1.
Далее выполняют прореживание ДПФ-последовательности X(jk) путем разбиения ее на две (N/2)-точечные ДПФ-подпоследовательности X(j2k), X[j(2k + 1), соответствующие частотным выборкам с четными и нечетными номерами k:
|
( N/2 )− 1 |
( N/2 )− 1 |
|||||
X ( j2k ) = |
∑ |
x1( n )WNkn/2 |
+ |
∑ |
0 |
x2( n )WNkn/2 = |
|
|
|
n= |
0 |
|
n= |
|
|
( N/2 )− 1 |
|
|
( N/2 )− 1 |
f1( n )WNkn/2 , |
|||
∑ |
[x1( n ) + x2( n )]WNkn/2 = |
|
∑ |
|
|||
n= |
0 |
|
|
|
n= 0 |
|
|
( N/2 )− 1 |
|
( N/2 )− 1 |
x2( n )WNkn/2WNnWN( 2k + 1)N/2 = |
||||
X ( j( 2k + 1)) = |
∑ |
x1( n )WNkn/2WNn + |
∑ |
0 |
|||
|
n= 0 |
|
|
n= |
|
|
|
( N/2 )− 1 |
|
|
|
( N/2 )− 1 |
|||
= ∑ |
[x1( n ) − x2( n )]WNn WNkn/2 = |
∑ |
g1( n )WNkn/2 , |
||||
n= |
0 |
|
|
|
|
n= |
0 |
k= 0, 1, …(N/2) – 1.
Врезультате ДПФ исходной последовательности выражается через ДПФ
некоторых N/2-точечных последовательностей f1(n), g1(n), определяемых следующим образом:
f1( n ) = x1( n ) + x2( n ) ,
(8.5)
g1( n ) = [x1( n ) − x2( n )]WNn , n = 0, 1, …(N/2) – 1.
42
Выражения (8.5) и соответствуют базовой операции данного алгоритма, представляемой графически зеркально отраженным сигнальным графом БПФ с прореживанием по времени (рис. 8.2).
Из последовательностей f1(n) и g1(n) по тому же правилу можно снова сформировать по две (N/4)-точечные последовательности, ДПФ которых также в совокупности образуют ДПФ исходной последовательности x(n). В результате на L-м этапе прореживания получается (N/2) двухточечных последовательностей, ДПФ которых вычисляется в соответствии с базовой операцией (8.5) и образуют вместе ДПФ исходной последовательности X(jk). Однако из-за прореживаний в частотной области порядок следования частотных выборок ДПФ оказывается при этом неестественным – двоичноинверсным, требующим по завершении вычисления дополнительных перестановок. Они выполняются также, как и перестановки входной последовательности x(n) перед вычислением БПФ с прореживанием по времени. Входная же последовательность здесь имеет естественный порядок следования. Это является полезной в ряде случаев отличительной особенностью данного алгоритма.
Полный сигнальный граф БПФ с прореживанием по частоте является зеркальным отображением сигнального графа БПФ с прореживанием по времени (рис. 8.3 для N = 8).
Оба алгоритм БПФ имеют одинаковую вычислительную эффективность, определяемую (8.4). Присущие им особенности позволяют совместно и эффективно использовать их при реализации описанных в главе 5 нерекурсивных цифровых фильтров на основе ДПФ (БПФ) (рис. 8. 7).
X(jkдв.инв) Y(jkдв.инв)
x(n)N |
БПФ |
БПФ |
y(n)N |
|
с прореживанием |
с прореживанием |
|
|
по частоте |
по времени |
|
h(n)N |
H(jkдв.инв) |
|
|
||
|
|||||
|
|
|
|
||
|
БПФ |
||||
|
|
|
с прореживанием |
||
|
|
|
|||
|
|
|
по частоте |
||
|
|
|
|
|
|
Рис. 8.7. Структура нерекурсивного фильтра на основе БПФ
спрореживанием по времени и по частоте
Спомощью БПФ с прореживанием по частоте, не требующего перестановок на входе, вычисляются ДПФ входной последовательности x(n) и импульсной характеристики h(n), а с помощью БПФ с прореживанием по времени вычисляется ОДПФ их произведения Y(jk), имеющего необходимый для данного алгоритма двоично-инверсный порядок отсчетов. Выходные отсчеты
43
ОДПФ при этом получаются в естественном порядке, в результате чего полностью исключается необходимость перестановок отсчетов и частотных выборок в процессе обработки.
Граф-схема алгоритма программной реализации БПФ с прореживанием по частоте получается с учетом свойственных ему закономерностей и представлена на рис. 8.8. При необходимости выполнения перестановок выходной последовательности X(jk) можно воспользоваться граф-схемой алгоритма перестановок рис. 8.6.
44
НАЧАЛО
Описание переменных: X(n), W, T, P1, P2, P3, i, l, m и др.
Ввод массива X(n), n = 0, 1, …N – 1
i = l = m =1
Вычисление адресов операндов и
поворачивающего множителя: P1 = (m – 1) + (l – 1) 2 L –i
P2 = P1 + 2 L –i
P3 = (m – 1)2 i –1; W = e –j (2π /N)P3
Базовая операция: T = X(P1) + X(P2)
X(P2) = [X(P1) − X(P2)] W
X(P1) = T
|
|
L – i |
0 |
|
|
|
|
||
m =2 |
m = m + 1 |
|
|||||||
|
|
|
|
|
|
||||
1 |
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
m =1 |
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
i – 1 |
0 |
|
|
|
|
||
l =2 |
|
l = l + 1 |
|
||||||
|
|
|
|
|
|
||||
|
|
|
|
|
|
||||
1 |
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
l = 1 1 |
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
0 |
|
|
|
|
||
|
|
|
|
|
|
||||
i = L |
|
|
|
|
|
i = i + 1 |
|
||
|
|
|
|
|
|
||||
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
1
Перестановки: X(k) = X(n)| n = k (дв.инв), k = 0, 1,…N – 1
Вывод массива X(p), p = 0, 1, …N – 1
КОНЕЦ
Рис. 8.8. Граф-схема алгоритма программной реализации БПФ с прореживанием по частоте