Shop OBEX P1 Docs P2 Docs Learn Events
float32 application: FFT — Parallax Forums

float32 application: FFT

reimayreimay Posts: 5
edited 2006-11-22 14:02 in Propeller 1
Hello all,
I use the float32 library to perform a Fast Fourier Transform on Propeller.
To take a step forward, i implement the algo in spin.
In next step i want to alter to native assembler.
Also I would like to process real world input signal.
Currently the program calculate several input signals, run the fft and display
the result on vga screen.
The input signals from left to right are a linear ramp, a dirac impuls, a sine
and a sin/cos mix.
Under the inputs the corresponding fft results are displayed.
My roadmap is:
·change to assembler
·use real signals ( e.g. microphone sample )
·very interesting experiments:
··make it sense split the fft in several cogs
··e.g. one cog run the sin multiplication, another run the cos multiplication ... ( like a vector processor )
· ...
· ...
·· HAVE FUN WITH THE PROPELLER

Best Regards
p.s.: please excuse for my broken english

Comments

  • alex2alex2 Posts: 10
    edited 2006-11-11 18:32
    Has anyone benchmarked fft on propeller using assembly vs. spin ?

    I would love to see someone from parallax get involved and produce
    code objects for real and complex ffts for different fft algorithms.

    Can you parallax guys do that ?
  • M. K. BorriM. K. Borri Posts: 279
    edited 2006-11-11 23:37
    That's really cookies! I've been using a PICAXE-08 as a slave ADC for the Prop, basically I have it do analog voltages to NMEA-like strings. Not the best ADC in the world, but very cheap.
  • BTXBTX Posts: 674
    edited 2006-11-11 23:54
    Hi reimay.
    Reimay said...
    My roadmap is:
    ·change to assembler
    ·use real signals ( e.g. microphone sample )
    ·very interesting experiments:
    ··make it sense split the fft in several cogs
    ··e.g. one cog run the sin multiplication, another run the cos multiplication ... ( like a vector processor )

    Good job !!

    Really could be great, get a reverb effect in real time....would be possible in assembler with the PChip ?

    Regards.

    Alberto.
  • Jim CJim C Posts: 76
    edited 2006-11-15 21:55
    Reimay:

    This is excellent. A great way to learn about FFT's.

    Is there any chance you have done a similar program to calculate the inverse FFT?

    Thanks,

    Jim C
  • reimayreimay Posts: 5
    edited 2006-11-16 09:36
    Hi Jim C,

    I will do the IFFT in next time.

    Here is a link for a intuitive FFT entry:

    http://sepwww.stanford.edu/oldsep/hale/FftLab.html

    This was very helpfull for myself.

    Best Regard, reimay
  • DaveFDaveF Posts: 62
    edited 2006-11-20 02:00
    Reimay,

    I am trying to do something very similar.· I would like the prop to be able to read the levels of certain frequencies within an audio signal.· Do you think your work is capable of doing this?· If so, do you think you could help me make it work?

    Thanks!

    Dave
  • DaveFDaveF Posts: 62
    edited 2006-11-20 21:09
    I forgot to say please!-- PLEASE!

    [noparse]:)[/noparse]
  • Robert  HumistonRobert Humiston Posts: 8
    edited 2006-11-21 19:02
    I wonder if FFT could be used for frequency counting application. I am working on Frequency generator / Frequency counter and this FFT looks interesting because I could use it as a test suite for audio. The one pronlem with frequency counter it almost always uses square waves to count which means I need to have a waveshpaer for an input if i could do this with FFT I would not need and could detect hopefulle fairly low level signals
  • reimayreimay Posts: 5
    edited 2006-11-22 09:03
    Hi DaveF,
    Since I work on this application only after my work, this is very slow in progress.

    I found several items:
    The Floating point engine is too slow for real time application.
    I measured 160 ms for this 64 point FFT. (fast enough to analyse earthquakes, but not audio wink.gif
    Off Course this algo is not optimized, but I think the better way is to use a fixed point calculation,
    instead the floating point.

    So I have to learn about fixed point stuff, and I can not guess when finished.

    Best Regards, reimay
  • reimayreimay Posts: 5
    edited 2006-11-22 09:21
    Post scriptum:

    If I say : this algo is not optimized

    I mean my FFT- Algorithm, not the Float32- Object !!!!!!!!!

    Best Regards, reimay
  • DaveFDaveF Posts: 62
    edited 2006-11-22 14:02
    Thanks Reimay. Please let me know what you end up with. I am very interested!
Sign In or Register to comment.