What is the maximum size FFT that can be used on a dsPIC®?

The FFT size is only limited by the size of the Y-memory region on the device. Refer to the datasheet for the device you are using to determine the available Y-memory.

The FFT library function requires the array holding the input data to be in Y-memory and to be aligned in memory to an address which is a multiple of its size in bytes. For example, a 1024-point FFT would have an input array of 1024 fractcomplex elements. Each fractcomplex element contains a real and imaginary component, both are one word (two bytes) each. That means the size of the array in bytes would be 1024 * 4 = 4096. The address in Y-memory must be a multiple of this.

The MPLAB® XC16 C Compiler has attributes to specify with variables to place them in Y-memory and to align them to a specific byte boundary (space(ymemory) and aligned() attributes). Also, refer to "Technical Brief TB3141 "Implementing the Fast Fourier Transform (FFT) on dsPIC® Digital Signal Controllers"" for additional information.

© 2024 Microchip Technology, Inc.
Notice: ARM and Cortex are the registered trademarks of ARM Limited in the EU and other countries.
Information contained on this site regarding device applications and the like is provided only for your convenience and may be superseded by updates. It is your responsibility to ensure that your application meets with your specifications. MICROCHIP MAKES NO REPRESENTATIONS OR WARRANTIES OF ANY KIND WHETHER EXPRESS OR IMPLIED, WRITTEN OR ORAL, STATUTORY OR OTHERWISE, RELATED TO THE INFORMATION, INCLUDING BUT NOT LIMITED TO ITS CONDITION, QUALITY, PERFORMANCE, MERCHANTABILITY OR FITNESS FOR PURPOSE. Microchip disclaims all liability arising from this information and its use. Use of Microchip devices in life support and/or safety applications is entirely at the buyer's risk, and the buyer agrees to defend, indemnify and hold harmless Microchip from any and all damages, claims, suits, or expenses resulting from such use. No licenses are conveyed, implicitly or otherwise, under any Microchip intellectual property rights.