Efficient radix-4 FFT on StarCore SC3000 DSPs
By Eliezer Ben Zeev, Yaron Zolar, Avi Gal, Erez Steinberg, Kazuhiko Enosawa, and Ed Martinez, Freescale
December 03, 2007 -- dspdesignline.com
Here's how to implement an efficient radix-4 FFT, using the StarCore SC3000 as an example.
The Fast Fourier Transform (FFT) is a widely used algorithm that computes the Discrete Fourier Transform (DFT) using much fewer operations than a direct implementation of the DFT. FFTs are of great importance to a wide variety of applications. One of the most important application areas is telecommunications. FFTs are used in communications standards such as 3GPP-LTE, WiMAX, and many others. In fact, the ubiquitous OFDM (Orthogonal Frequency Division Multiplexing) signals are generated using the FFT.
In this article we present an implementation of the FFT on the StarCore SC3000 DSP core. We use a radix-4 decimation in frequency (DIF) variant of the FFT and optimize our code to take advantage of the SC3000's parallel architecture, resulting in a highly efficient implementation. We discuss the implementation in detail, including code structure and optimizations. The FFT output is verified against a floating-point MATLAB model, and actual implementation performance results are given for the MSC8144, the first device to utilize Freescale's StarCore SC3000 core architecture.
December 03, 2007 -- dspdesignline.com
Here's how to implement an efficient radix-4 FFT, using the StarCore SC3000 as an example.
The Fast Fourier Transform (FFT) is a widely used algorithm that computes the Discrete Fourier Transform (DFT) using much fewer operations than a direct implementation of the DFT. FFTs are of great importance to a wide variety of applications. One of the most important application areas is telecommunications. FFTs are used in communications standards such as 3GPP-LTE, WiMAX, and many others. In fact, the ubiquitous OFDM (Orthogonal Frequency Division Multiplexing) signals are generated using the FFT.
In this article we present an implementation of the FFT on the StarCore SC3000 DSP core. We use a radix-4 decimation in frequency (DIF) variant of the FFT and optimize our code to take advantage of the SC3000's parallel architecture, resulting in a highly efficient implementation. We discuss the implementation in detail, including code structure and optimizations. The FFT output is verified against a floating-point MATLAB model, and actual implementation performance results are given for the MSC8144, the first device to utilize Freescale's StarCore SC3000 core architecture.
To read the full article, click here
Related Semiconductor IP
- ReRAM NVM in DB HiTek 130nm BCD
- UFS 5.0 Host Controller IP
- PDM Receiver/PDM-to-PCM Converter
- Voltage and Temperature Sensor with integrated ADC - GlobalFoundries® 22FDX®
- 8MHz / 40MHz Pierce Oscillator - X-FAB XT018-0.18µm
Related Articles
- High-Performance DSPs -> Software-defined radio infrastructure taps DSP
- High-Performance DSPs -> DSP performance: Useful work per clock tick
- High-Performance DSPs -> Reconfigurable coprocessors create flexibility in DSP apps
- Market Focus: DSP makers' forward spin on the market
Latest Articles
- An FPGA-Based SoC Architecture with a RISC-V Controller for Energy-Efficient Temporal-Coding Spiking Neural Networks
- Enabling RISC-V Vector Code Generation in MLIR through Custom xDSL Lowerings
- A Scalable Open-Source QEC System with Sub-Microsecond Decoding-Feedback Latency
- SNAP-V: A RISC-V SoC with Configurable Neuromorphic Acceleration for Small-Scale Spiking Neural Networks
- An FPGA Implementation of Displacement Vector Search for Intra Pattern Copy in JPEG XS