Бабочка (БПФ)

Материал из testwiki
Версия от 15:20, 4 июня 2022; imported>InternetArchiveBot (Спасено источников — 2, отмечено мёртвыми — 0. Сообщить об ошибке. См. FAQ.) #IABot (v2.0.8.8)
(разн.) ← Предыдущая версия | Текущая версия (разн.) | Следующая версия → (разн.)
Перейти к навигации Перейти к поиску

Шаблон:Otheruses

Диаграмма потока данных соединяет входы x (слева) с выходами y (справа) для «бабочки» алгоритма БПФ. Диаграмма напоминает бабочку (на рисунке приводится бабочка Морфо)
БПФ по основанию 2 с прореживанием по времени разбивает ДПФ размерности N на два ДПФ размерности N/2 c последующим объединяющим шагом, состоящим из множественных операций "бабочка".

Бабочка — элементарный шаг в алгоритме Кули-Тюки (англ. Cooley–Tukey FFT) вычисления быстрого преобразования Фурье.

Время работы шага Бабочка определяет длительность вычисления преобразования Фурье.[1]

В простейшем варианте (Radix-2 butterfly) является двухточечным преобразованием.

Формула для вычисления «Бабочки»:[1]

Y1=X1+X2W

Y2=X1X2W

Обозначения: X1, X2 – исходные точки; Y1, Y2 – точки результата, W – комплексный коэффициент.

Для БПФ данных размером 2k=N, требуется произвести Nlog2N вычислений операции 2-Radix «Бабочка».[1][2][3]

Иногда используются операции бабочка более высокого порядка: Radix-4, Radix-8. Radix-4 является примерно на 20% более эффективным для преобразования Фурье большого количества данных. Операция большего порядка чем 8 практически не используется из-за незначительных приростов производительности и трудностей в реализации (ресурсоемкости).[4][5]

Сходная структура может применяться в реализациях алгоритма Витерби (операция ACS - Add-Compare-Select)[6].

Примечания

Шаблон:Примечания

Ссылки

Шаблон:Math-stub

  1. 1,0 1,1 1,2 Реализация целочисленного БПФ на процессорах с архитектурой ARM // Схемотехника №3 март 2001
  2. Л. Рабинер и Б. Гоулд "Теория и применение цифровой обработки сигналов".
  3. Шаблон:Cite web
  4. http://www.ece.ucdavis.edu/~bbaas/281/slides/Handout.fft2.pdf Шаблон:Wayback Higher Radices
  5. http://www.cmlab.csie.ntu.edu.tw/cml/dsp/training/coding/transform/fft.html Шаблон:Wayback Radix-4 FFT Algorithm; Figure TC.3.9 Basic butterfly computation in a radix-4 FFT algorithm
  6. Implementing the Viterbi Algorithm in Today's Digital Communications Systems Шаблон:Wayback // Design And Reuse (EETimes): "Viterbi ACS instructions are based on the Viterbi butterfly structure and symmetry. The structure is called “butterfly” due to its physical resemblance to the animal.", Figures 8-10