This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

simulating fft program on windows

Other Parts Discussed in Thread: TMS320C5535

Hii im a beginner in dsp programming.

i'm using a C5535 ezdsp kit , i wanted to simulate an fft output on my computer without using the kit. the document "TMS320C5535 Technical Manual", suggested me to use the 'hwafft.asm' file but i cannot find it anywhere in the software given in the package of my ezdsp kit.

is there anyother way to simulate the fft output on my computer without the hardware, and can u please direct me to find the 'hwafft.asm' file.

I'm using Code composer studio V4, and C55xx cpu functional simulator.

thanks and regards 

Srivatsa.Y

  • The hwafft.asm is embeddd in ROM to save RAM space as descripted in the User's Guide. You need the hardware and point to the ROM address as stated in the User's Guide.
    Regards.
  • hii steve,

    i got my hardware working and i gt the output.

    i gave the input as an 8 bit array, but after the bit reversal function ,i tried to print my data and i'm getting almost the same values for any data i give.

    can u pls guide me to access the bit reversed data array.

    the code i used is as follows

    #include"stdio.h"
    #include"ezdsp5535.h"
    #define FFT_FLAG ( 0 ) /* HWAFFT to perform FFT */
    #define IFFT_FLAG ( 1 ) /* HWAFFT to perform IFFT */
    #define SCALE_FLAG ( 0 ) /* HWAFFT to scale butterfly output */
    #define NOSCALE_FLAG ( 1 ) /* HWAFFT not to scale butterfly output */
    #define OUT_SEL_DATA ( 0 ) /* Indicates HWAFFT output located in input data vector */
    #define OUT_SEL_SCRATCH ( 1 ) /* Indicates HWAFFT output located in scratch vector */
    Int32 *data;
    Int32 data1[8]= {1,2,3,4,5,6,7,8};
    Int32 *data_br;
    Uint16 fft_flag;
    Uint32 *DATA_LEN_8;
    Uint16 scale_flag;
    Int32 *scratch;
    Uint16 out_sel;
    Int32 *result;
    void main()
    {
    int i;
    fft_flag = FFT_FLAG;
    scale_flag = SCALE_FLAG;
    printf("fft program\n");
    data = data1;
    printf("input data \n");
    for (i=0;i<8;i++)
    printf("%ld \n",data[i]);
    hwafft_br(data, data_br, DATA_LEN_8);
    data = data_br;
    printf ("bit reversed data \n");
    for (i=0;i<8;i++)
    printf("%ld \t",data[i]);
    printf(" \n");

    /* Compute 1024-point FFT, scaling enabled. */
    out_sel = hwafft_8pts(data, scratch, fft_flag, scale_flag);
    if (out_sel == OUT_SEL_DATA)
    {
    result = data;
    }
    else
    {
    result = scratch;
    }
    printf("fft output \n");
    for (i=0;i<8;i++)
    printf("%ld \n",result[i]);
    //printf("%d /n",result);
    while(1);
    }

    i have highlighted the part of the code i have the problem

  • Double check your data and scratch buffer locations follows the erratarequirement.
    Regards.
  • i commented the functions and tried to print the output, i got the same values with no change when the functions were not commented.

    it seems that i am not able to call the functions or i am not able to pass the data to the functions.

    i am a beginner so i dont know much about this.

    can u please tell me how to solve this problem??

    and the scratch buffer locations remain the same wether the functions are commented or not

  • dear steve,

    i found out that the function is being called but i cannot exchange the data with it.

    can u pls tell me how to solve this problem.

    thanks and regards 

    Srivatsa.y

  • Ok. Let's step back to establish a ground understanding.
    Do you using the C5535 ezDSP hardware? If yes, can you load and execute some of the CCS4 examples provided in Spectrum Digital's C5535 ezDSP support site? This site is for RevC of C5535 ezDSP.
    http://support.spectrumdigital.com/boards/ezdsp5535/revc/Regards.
  • dear steve,

    yes i am using the C5535 ezDSP hardware kit, i have loaded and executed all the example programs which came with the ccs software.