HI,
I've been studying a proposed dataflow for an FFT solution and noticed the use of back-to-back FFTs separated by matrix transpose operations. I've not encountered this before so was hoping for some pointers on how this is possible.
The requirement is for a very large FFT, 2097152 point (1024 x 2048)
This is achieved using the following dataflow:
matrix transpose
1024 pt FFT
matrix transpose
2048 pt FFT
matrix transpose
Has anyone encountered this type of dataflow before; how does the use of the matrix transpose allow FFTs to be placed back-to-back.
Appreciate any comments
Hi Amlangford,
it is a little more complex than that.
There are some weights before the second FFT
I attached a pdf file that explains the method and 2 matlab files that implements it.
I had to zip the pdf file to fit within the 1MB limit!
Here it talks about Super Sampling FFT because it was a study on how to implement 1D FFT using multiple parallel FFT (typically data arriving at 4GS/s, processed by an FPGA running at 500MHz using 8 parallel FFT cores, + a parallel FFT8 plugged at the output).
Have fun!
Olivier
Thanks for the replies.
[Oliver] "There are some weights before the second FFT" .... yes that makes sense, I forgot to mention that the dataflow diagram Im looking has twiddle factor multiplies between the successive FFTs, as well as the matrix transposes, which fits with your comment.
Thanks for the pdf, that should help me to get my head around this method. I wasn't even sure where to start with a google search!
Cheers,
Adrian
On the face of it, don't these operations just perform a 2-dimensional FFT with different frequency resolutions in each dimension?