• Not Answered

FFT hardware accelerator; C5535 USB eZdsp

Hey all,

I’m currently stumped on how to run an fft ( N = 1024) using the C5535 ezDSP from Spectrum Digital. I’ve been trying to use the built in fft co-processor for this. The code was built from information found in the C5535 Technical Reference Manual (spruh87b) and in the TMS320C55x DSP Library Programmers Guide (spru422j).   

The fft is being performed on some real world data declared as a Uint16 array in the code. The code then goes through the motions of setting everything up , then the fft is executed. After this the results are stored to the SD card using 2 functions found in the CSL examples (Init and mmcConfigFs).


Everything compiles and data is written to the SD card in a file called “data.txt”. Problem is that the data in the file consists of 1024 entries of the same constant value! (This constant value changes on each run of the program).  

There is also a warning that appears on every compilation 

"creating output section "data_br_buf" a SECTIONS specification" 

The lnkx.cmd file was modified to include the following, as per the Tech Ref Manual.

/* HWAFFT Routines ROM Addresses */

_hwafft_br = 0x00fefe9c;

_hwafft_8pts = 0x00fefeb0;

_hwafft_16pts = 0x00feff9f;

_hwafft_32pts = 0x00ff00f5;

_hwafft_64pts = 0x00ff03fe;

_hwafft_128pts = 0x00ff0593;

_hwafft_256pts = 0x00ff07a4;

_hwafft_512pts = 0x00ff09a2;

_hwafft_1024pts = 0x00ff0c1c;


The SD functions have been removed (they have worked in previous projects) , the array with the 1024 data  points has also been removed .

I’ve placed the data here:


sdInit() is here:

mmcConfigFs is here:



The main code is attached to this post

Any help is greatly appreciated!


8 Replies