nmpp
Функции

Функции

void FFT_Inv256Set6bit ()
 Устанавливает 6-битную точность вычислений Подробнее...
 
void FFT_Inv256Set7bit ()
 Устанавливает 7-битную точность вычислений
 
void FFT_Inv256 (nm32sc *GSrcBuffer, nm32sc *GDstBuffer, void *LBuffer, void *GBuffer, int ShiftR1=8, int ShiftR2=-1)
 Обратное быстрое преобразование Фурье. ОБПФ-256. Подробнее...
 

Подробное описание

Функции

◆ FFT_Inv256()

void FFT_Inv256 ( nm32sc GSrcBuffer,
nm32sc GDstBuffer,
void *  LBuffer,
void *  GBuffer,
int  ShiftR1 = 8,
int  ShiftR2 = -1 
)

Обратное быстрое преобразование Фурье. ОБПФ-256.

Функция выполняет обратное дискретное комплексное 256-точечное быстрое преобразование Фурье на базе алгоритма ОБПФ по онованию 16-16.

Аргументы
[in]GSrcBufferВходной массив размером 256 64-р. слов
[out]GDstBufferРезультирующий массив размером 256 64-р. слов
[in]LBufferВременный массив на локальной шине (Local Bus) размером 256*3 64-р. слов
[in]GBufferВременный массив на глобальной шине (Global Bus) размером 256*2 64-р. слов
[in]ShiftR1Промежуточный сдвиг результатов на ShiftR1 бит вправо (первая нормализация). Неоходимо для предовтращения переполнения. По умолчанию равен 8
[in]ShiftR2Заключительный сдвиг результатов на ShiftR2 бит вправо (вторая нормализация) в конце вычисления обратного БПФ. По умолчанию ShiftR2 принимается равным 14 при установленной точности 7-бит с помощью функции FFT_Inv256Set7bit() и 12 - при точности 6-бит, установленной с помощью функции FFT_Inv256Set6bit().
Возвращает
void
Заметки
Использование inplace параметров не допускается ( все указатели должны быть разными)

\perf

   GSrcBuffer| GDstBuffer| LBuffer   |  GBuffer  |  ShiftR1  |  ShiftR2  |     clocks
   ----------------------------------------------------------------------------------
       L     |     L     |     L     |     L     |     8     |     -1    |     26.76
       L     |     L     |     L     |     L     |     0     |     -1    |     26.76
       L     |     L     |     L     |     G     |     8     |     -1    |     19.07
       L     |     L     |     L     |     G     |     0     |     -1    |     19.07
       L     |     L     |     G     |     L     |     8     |     -1    |     22.87
       L     |     L     |     G     |     L     |     0     |     -1    |     22.87
       L     |     L     |     G     |     G     |     8     |     -1    |     20.77
       L     |     L     |     G     |     G     |     0     |     -1    |     20.77
       L     |     G     |     L     |     L     |     8     |     -1    |     25.75
       L     |     G     |     L     |     L     |     0     |     -1    |     25.75
       L     |     G     |     L     |     G     |     8     |     -1    |     18.06
       L     |     G     |     L     |     G     |     0     |     -1    |     18.06
       L     |     G     |     G     |     L     |     8     |     -1    |     23.82
       L     |     G     |     G     |     L     |     0     |     -1    |     23.82
       L     |     G     |     G     |     G     |     8     |     -1    |     21.72
       L     |     G     |     G     |     G     |     0     |     -1    |     21.72
       G     |     L     |     L     |     L     |     8     |     -1    |     25.80
       G     |     L     |     L     |     L     |     0     |     -1    |     25.80
       G     |     L     |     L     |     G     |     8     |     -1    |     18.10
       G     |     L     |     L     |     G     |     0     |     -1    |     18.10
       G     |     L     |     G     |     L     |     8     |     -1    |     21.91
       G     |     L     |     G     |     L     |     0     |     -1    |     21.91
       G     |     L     |     G     |     G     |     8     |     -1    |     19.80
       G     |     L     |     G     |     G     |     0     |     -1    |     19.80
       G     |     G     |     L     |     L     |     8     |     -1    |     24.79
       G     |     G     |     L     |     L     |     0     |     -1    |     24.79
       G     |     G     |     L     |     G     |     8     |     -1    |     17.09
       G     |     G     |     L     |     G     |     0     |     -1    |     17.09
       G     |     G     |     G     |     L     |     8     |     -1    |     22.86
       G     |     G     |     G     |     L     |     0     |     -1    |     22.86
       G     |     G     |     G     |     G     |     8     |     -1    |     20.76
       G     |     G     |     G     |     G     |     0     |     -1    |     20.76
       L     |     L     |     L     |     L     |     8     |     0     |     26.74
       L     |     L     |     L     |     L     |     0     |     0     |     26.74
       L     |     L     |     L     |     G     |     8     |     0     |     19.04
       L     |     L     |     L     |     G     |     0     |     0     |     19.04
       L     |     L     |     G     |     L     |     8     |     0     |     22.85
       L     |     L     |     G     |     L     |     0     |     0     |     22.85
       L     |     L     |     G     |     G     |     8     |     0     |     20.75
       L     |     L     |     G     |     G     |     0     |     0     |     20.75
       L     |     G     |     L     |     L     |     8     |     0     |     25.73
       L     |     G     |     L     |     L     |     0     |     0     |     25.73
       L     |     G     |     L     |     G     |     8     |     0     |     18.03
       L     |     G     |     L     |     G     |     0     |     0     |     18.03
       L     |     G     |     G     |     L     |     8     |     0     |     23.80
       L     |     G     |     G     |     L     |     0     |     0     |     23.80
       L     |     G     |     G     |     G     |     8     |     0     |     21.70
       L     |     G     |     G     |     G     |     0     |     0     |     21.70
       G     |     L     |     L     |     L     |     8     |     0     |     25.77
       G     |     L     |     L     |     L     |     0     |     0     |     25.77
       G     |     L     |     L     |     G     |     8     |     0     |     18.08
       G     |     L     |     L     |     G     |     0     |     0     |     18.08
       G     |     L     |     G     |     L     |     8     |     0     |     21.88
       G     |     L     |     G     |     L     |     0     |     0     |     21.88
       G     |     L     |     G     |     G     |     8     |     0     |     19.78
       G     |     L     |     G     |     G     |     0     |     0     |     19.78
       G     |     G     |     L     |     L     |     8     |     0     |     24.76
       G     |     G     |     L     |     L     |     0     |     0     |     24.76
       G     |     G     |     L     |     G     |     8     |     0     |     17.07
       G     |     G     |     L     |     G     |     0     |     0     |     17.07
       G     |     G     |     G     |     L     |     8     |     0     |     22.83
       G     |     G     |     G     |     L     |     0     |     0     |     22.83
       G     |     G     |     G     |     G     |     8     |     0     |     20.73
       G     |     G     |     G     |     G     |     0     |     0     |     20.73

◆ FFT_Inv256Set6bit()

void FFT_Inv256Set6bit ( )

Устанавливает 6-битную точность вычислений