Prelim rev. October 19, 2003 - BL  Rev. 1.0 - added real inputs case - перевод - Prelim rev. October 19, 2003 - BL  Rev. 1.0 - added real inputs case - русский как сказать

Prelim rev. October 19, 2003 - BL

Prelim rev. October 19, 2003 - BL
Rev. 1.0 - added real inputs case - PM

This is assembly routine for the Complex radix-2 C-callable FFT on TigerSHARC
family of DSPs.

I. Description of Calling.

1. Inputs:
j4 -> input (ping-pong buffer 1)
j5 -> ping-pong buffer 1
j6 -> ping-pong buffer 2
j7 -> output
j27+0x18 -> N = Number of points
j27+0x19 -> REAL or COMPLEX

2. C-Calling Example:
fft32(&(input), &(ping_pong_buffer1), &(ping_pong_buffer2), &(output), N, COMPLEX);

3. Limitations:
a. All buffers must be aligned on memory boundary which is a multiple of 4.
b. N must be between 32 and MAX_FFT_SIZE.
c. If memory space savings are required and input does not have to be
preserved, ping_pong_buffer1 can be the same buffer as input.
d. If memory space savings are required, output can be the same buffer
as ping_pong_buffer2 if the number of FFT stages is even (i.e.
Log2(N) is even) or the same as ping_pong_buffer1 if the number of
FFT stages is odd (i.e. Log2(N) is odd).

4. MAX_FFT_SIZE can be selected via #define. Larger values allow for more choices
of N, but its twiddles will occupy more memory.
5. This C - callable function can process up to 64K blocks of data on TS201
(16K blocks on TS101) because C environment itself necessitates memory.
Therefore, if more input points are necessary, assembly language development
may become a must. On TS201, a block of memory is 128K words long, so
maximum N is 128K real points or 64K complex points. TS101 contains
only 2 blocks of data memory of 64K words and 4 buffers must be
accommodated. Therefore, maximum N is 32K real words or 16K complex words.


II. Description of the FFT algorithm.

1. The input data is treated as complex interleaved N-point.
2. Due to re-ordering, no stage can be done in-place.
3. The bit reversal and the first two stages are combined into
a single loop. This loop takes data from input and stores it
in the ping-pong buffer1.
4. Each subsequent stage ping-pongs the data between the two ping-pong
buffers. The last stage uses FFT output buffer for its output.
5. Although the FFT is designed to be called with any point size
N ------------------------>--------> F(n)
+/ +/
/ /
/ /
conj / - exp(-2*pi*i*n)*i / - conj
G(N/2-n) -----> conj(G(N/2-n))------>------------------------>--------> F(N/2-n)

This is very efficient on the TigerSHARC architecture due to the add/subtract
instruction.


IV. For all additional details regarding this algorithm and code, see EE-218
application note, available from the ADI web site.
0/5000
Источник: -
Цель: -
Результаты (русский) 1: [копия]
Скопировано!
Prelim Преподобный 19 октября 2003 года - BL Rev. 1.0 - добавлен реальный вклад случай - пп Это Ассамблея для сложных radix-2 C-вызываемой FFT на TigerSHARC семья из ЦСП. I. Описание вызова. 1. материалы: J4 -> вход (буфер 1 Настольный теннис) J5 -> Настольный теннис буфера 1 J6 -> буфер Настольный теннис 2 Контакт J7 -> выход J27 + 0x18 -> N = количество очков J27 + 0x19 -> REAL или комплекс 2. C-вызова пример: fft32 (& (входные), & (ping_pong_buffer1), & (ping_pong_buffer2) & (выход), N, комплекс); 3. ограничения: a. все буферы должны быть выровнен по границе памяти которых кратна 4. b. N должно быть между 32 и MAX_FFT_SIZE. c. Если требуются экономия пространства памяти и ввода не должны быть сохранились, ping_pong_buffer1 может быть тот же буфер в качестве входных данных. d. Если экономия пространства памяти требуются, вывод может быть тот же буфер как ping_pong_buffer2 если даже это количество этапов БПФ (т.е. Log2(N) это даже) или же, как ping_pong_buffer1, если число в БПФ этапов является нечетным (то есть нечетная Log2(N)). 4. MAX_FFT_SIZE может быть выбран через #define. Большие значения позволяют больше выбора n но его трелями будет занимать больше памяти. 5. C - вызываемая функция может обрабатывать до 64K блоков данных на TS201 (16K блоков на TS101) потому, что сама среда C требует памяти. Таким образом, при необходимости, более точек ввода языка ассемблера развития может стать обязательным. На TS201 блок памяти — 128K слов, так что Максимальная N — 128 K реальных точек или 64 K сложных очков. TS101 содержит только 2 блоки данных памяти 64K слов и 4 буферы должны быть размещение. Таким образом максимальная N — 32K реальные слова или 16K сложных слов. II. Описание алгоритма БПФ. 1 входных данных рассматривается как комплекс с чередованием N-точки. 2. за счет повторного заказа, не может быть сделано на месте. 3 бит разворота и первые два этапа объединяются в один цикл. Этот цикл принимает данные из входных данных и сохраняет его в buffer1 Настольный теннис. 4. каждой последующей стадии отфутболивает данных между двумя Настольный теннис буферы. Последний этап использует FFT выходной буфер для его вывода. 5. Хотя FFT предназначен для вызова с любым размером точки N < = MAX_FFT_SIZE, подвыборка вертеть факторов, для ADSP-TS20x Процессоры, Лучшая Оптимизация цикла это достигнуто когда MAX_FFT_SIZE = N. ADSP-TS101 все варианты MAX_FFT_SIZE являются одинаково оптимальное. III. Описание алгоритма реального БПФ. 1 входных данных рассматривается как комплекс с чередованием N/2-точки. Точка N/2 комплекс Сначала будет вычисляться БПФ. Таким образом, N сокращается вдвое, в настоящее время число очков = N/2. 2. детали и исходный код комплекс FFT N/2 точки находятся в II выше. 3. Настоящий вновь объединить: Здесь комплекс FFT N/2-точка вычисляется в предыдущих шагах полноцветного в производят N-точка реального БПФ. Если G комплекса БПФ и F является реальной БПФ, Формула F задаётся формулой: F(n) = 0.5*(G(n)+conj(G(N/2-n))-0.5*i*exp(-2*pi*i*n/N)*(G(n)-conj(G(N/2-n)). От этого могут быть получены: conj(F(N/2-n)) = 0.5*(G(n)+conj(G(N/2-n))+0.5*i*exp(-2*pi*i*n/N)*(G(n)-conj(G(N/2-n)). Таким образом это может быть вычисляемым (n, N/2-n) пар, следующим образом (снижается коэффициент 2): G(n) ------------------------------->------------------------>--------> F(n) +/ +/ / / / / conj / - exp (-2 * Пи * я * n) * я / - conj G(N/2-n)---> conj(G(N/2-n))--->--->---> F(N/2-n) Это очень эффективно на архитектуре TigerSHARC благодаря добавить/вычесть Инструкция. IV. все дополнительные детали относительно этого алгоритма и кода, см. EE-218 Применение Примечание, доступны на веб-сайте Ади.
переводится, пожалуйста, подождите..
Результаты (русский) 2:[копия]
Скопировано!
Prelim перераб. 19 октября 2003 - BL
Rev. 1,0 - добавил реальные входы случай - PM Это сборка процедура для комплекса Radix-2 C-вызываемая FFT на TigerSHARC семейства ЦСП. I. Описание Вызов. 1. Входы: J4 -> вход (пинг-понг буфер 1) J5 -> пинг-понг буфер 1 j6 -> пинг-понг буфер 2 J7 -> выход J27 + 0x18 -> N = Кол - во пунктов J27 + 0x19 -> РЕАЛ или КОМПЛЕКС 2. C-вызова Пример: fft32 (& (вход), & (ping_pong_buffer1), & (ping_pong_buffer2), & (выход), N, комплекс); 3. Ограничения: а. Все буферы должны быть выровнены по границе памяти , которая является кратным 4. б. N должно быть между 32 и MAX_FFT_SIZE. С. Если экономия пространства памяти необходимы и входные данные не должны быть сохранены, ping_pong_buffer1 может быть тот же буфер в качестве входного сигнала. Д. Если экономия пространства памяти требуется, выход может быть тот же буфер , как ping_pong_buffer2 если количество FFT этапов даже (т.е. log2 (N) даже) или такой же , как ping_pong_buffer1 если число FFT ступеней нечетное (то есть log2 (N ) нечетная). 4. MAX_FFT_SIZE может быть выбран с помощью #define. Большие значения позволяют более широкий выбор из N, но его крутит будет занимать больше памяти. 5. Это C - вызываемая функция может обрабатывать до 64К блоков данных на TS201 (16K блоков на TS101) , так как C среда сама по себе требует памяти. Поэтому, если больше входные точки необходимы, развитие языка ассемблера может стать обязательным. На TS201, блок памяти 128К слов долго, так что максимальное N является 128K вещественные точки или 64K комплексных точек. TS101 содержит только 2 блоки памяти данных 64К слов и 4 буферов должны быть размещены. Таким образом, максимальное N является 32K реальные слова или 16K сложные слова. II. Описание алгоритма FFT. 1. Входные данные рассматриваются как сложный с чередованием N-точка. 2. Из - за повторного заказа, никакой стадии не может быть сделано на месте. 3. Реверсирование бит и первые два этапа объединены в единый контур. Этот цикл принимает данные из входных и сохраняет его в пинг-понга buffer1. 4. Каждый последующий этап пинг-PONGS данных между двумя пинг-понга буферов. Последний этап использует выходной буфер быстрого преобразования Фурье для его выхода. 5. Хотя FFT предназначен называться с любым размером точки N <= MAX_FFT_SIZE от подвыборки факторы Twiddle, для ADSP-TS20x процессоров, лучшая оптимизация цикла достигается при MAX_FFT_SIZE = N. Для ADSP-TS101 все выборы MAX_FFT_SIZE одинаково оптимальным . III. Описание алгоритма РЕАЛЬНОГО FFT. 1. Входные данные рассматриваются как сложный чередуемой N / 2-точка. / 2 пункт комплекс N FFT будет вычисляться первым. Таким образом, N уменьшается в два раза, в настоящее время число точек = N / 2. 2. Подробности и исходный код / 2 точки комплекса FFT N находятся в II выше. 3. Real вновь объединить: Здесь комплекс N / 2-точечное БПФ вычисляется на предыдущих этапах , объединяется , чтобы произвести N-точка реального FFT. Если G является комплекс FFT и F является реальным FFT, формула F определяется по формуле: F (п) = 0,5 * (G (п) + Conj (G (N / 2-п)) - 0,5 * я * ехр (-2 * пи * I * N / N) * (G (п) -conj (G (N / 2-п)). Из этого можно сделать следующие получены: Conj (F (N / 2-п) ) = 0,5 * (G (п) + Conj (G (N / 2-п)) + 0,5 * I * ехр (-2 * пи * I * N / N) * (G (п) -conj (G ( . N / 2-п)) Таким образом, это может быть вычислена в (N, N / 2-п) пар, следующим образом (снижается в 2 раза): G (п) ----------- --------------------> ------------------------> ---- ----> F (п) + / + / / / / / Призывание / - ехр (-2 * пи * я * п) * я / - Призывание G (N / 2- п) -----> Conj (G (N / 2-п)) ------> ------------------------ > --------> F (N / 2-п) Это очень эффективно на архитектуре TigerSHARC из - за добавления / вычитания инструкции. IV. для всех дополнительных деталей относительно этого алгоритма и кода, см EE-218 приложение к сведению, можно найти на веб - сайте ADI.






















































































переводится, пожалуйста, подождите..
 
Другие языки
Поддержка инструмент перевода: Клингонский (pIqaD), Определить язык, азербайджанский, албанский, амхарский, английский, арабский, армянский, африкаанс, баскский, белорусский, бенгальский, бирманский, болгарский, боснийский, валлийский, венгерский, вьетнамский, гавайский, галисийский, греческий, грузинский, гуджарати, датский, зулу, иврит, игбо, идиш, индонезийский, ирландский, исландский, испанский, итальянский, йоруба, казахский, каннада, каталанский, киргизский, китайский, китайский традиционный, корейский, корсиканский, креольский (Гаити), курманджи, кхмерский, кхоса, лаосский, латинский, латышский, литовский, люксембургский, македонский, малагасийский, малайский, малаялам, мальтийский, маори, маратхи, монгольский, немецкий, непальский, нидерландский, норвежский, ория, панджаби, персидский, польский, португальский, пушту, руанда, румынский, русский, самоанский, себуанский, сербский, сесото, сингальский, синдхи, словацкий, словенский, сомалийский, суахили, суданский, таджикский, тайский, тамильский, татарский, телугу, турецкий, туркменский, узбекский, уйгурский, украинский, урду, филиппинский, финский, французский, фризский, хауса, хинди, хмонг, хорватский, чева, чешский, шведский, шона, шотландский (гэльский), эсперанто, эстонский, яванский, японский, Язык перевода.

Copyright ©2024 I Love Translation. All reserved.

E-mail: