Hi Edguardo

If I recall right, the tutorial is a 2048 point real PFB + FFT (1024 channels), a 1024x1024 corner turn, and then a 1024 point complex FFT to give 1M channels. You are right that this isn't exactly the same as a 1M point FFT. The main difference you'll see is scalloping on the edge channels, a tooth-like pattern repeating every 1024 channels that arises due to the filter response of the first FFT.

To explain, this is essentially a clever implementation of a "zoom FFT", where you select a single channel, form a time series from it, and then compute another FFT on the time series. Zoom FFTs work as each channel of an FFT can be thought of as a critically-sampled filter (with complex output).

If you think of a single channel, the first FFT filters and downsamples by a factor of 1/1024. We then buffer up 1024 channels, and feed it to a second FFT, and get very fine channel resolution. The sneaky part is that as this is implemented on an FPGA, the second FFT is free for 1023/1024 clock cycles. So, we can use the second FFT multiple times for free -- the corner turn arranges data so that we can continually pump in more data, getting 1024x1024 channels in total.

Hope that makes sense!

- Danny
Edgardo Huaracán Durán <mailto:[email protected]>
October 10, 2014 at 10:25 AM
Hi all,

I’m trying to understand the approach you use in the 1 M channel tutorial situated in the old tutorial link (https://casper.berkeley.edu/wiki/Old_Tutorials) called high resolution spectrometer.

I've take a look at other similar implementations like ''A 6*320-MHz 1024-Channel FFT Cross-Spectrum Analyzer for Radio Astronomy'' (http://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber=1458140), where they use the corner turner technique. Basically they implement the Cooley-Tukey FFT algorithm to have a large DFT coming from two smaller DFT. They use a first stage of corner turner previous to the first DFT and acumulate time samples column wise, to then enter to the First DFT row wise. There is another corner turner stage at the output of the First DFT and after twiddle factor multiplications the data is input again to another DFT.

I understand the mathematics behind the above text, but seems to me that the approach used on your 1 MChannel Spectrometer is a little different from that treatment. I can't find the twiddle factors in your model and also you use just one corner turner stage instead of two. So i'm not able to understand how your tutorial works in a mathematical or theoretical sense.

Could you give me an advice? where can i find a document to have more details?


 Thanks in advance.

--
/Edgardo Huaracán Durán/
/
/
/Observatorio Astronómico Nacional
/
/
Universidad de Chile/


Reply via email to