0
$\begingroup$

I'm currently studying FFT. We had one exercise, where we had to expand a 3-point DFT with inputs x(0),x(1), x(2) into a 6-point DFT

The literature states to apply bit-reversal $\begin{array}{|c|c|c|c|c|c|c|} \hline t & 0&1&2&3&4&5\\ \hline Binary&000&001&010&011&100&101\\ \hline ReverseBinary&000&100&010&110&001&101\\ \hline ReverseInteger&0&4&2&6&1&5\\ \hline \end{array}$

Thus

$Inputs(DFT_1)=x(0), x(4), x(2)$

$Inputs(DFT_2)= x(1), x(5), x(3)$

Now the solution ordered them

$Inputs(DFT_1)=x(0), x(2), x(4)$

$Inputs(DFT_2)= x(1), x(3), x(5)$

So we can reorder them as we like. Do we order them because X(0) has to be used in the butterly with X(3)? So we order them to improve the readibility of the corresponding diagram?

$\endgroup$

1 Answer 1

2
$\begingroup$

The ordering is an artifact of the decimation operation of the algorithm. "Decimation", which is selecting every other sample consecutively as we go through the stages of the algorithm, has the interesting effect of reversing the binary representations of the time index of the waveform (for the Decimation-in-Time variant of the algorithm) or the frequency index of the waveform (for the Decimation-in-Frequency variant).

I demonstrate this for the DIT variant in the graphic below:

DIT FFT algorithm

The decimation comes from the foundational insight that breaking a longer DFT into two components (by taking every other sample for each) and doing 2 DFT's is more efficient than doing the one big one. So the algorithm keeps doing this (keeps decimating) until there is just a bunch of two point DFT's (in the nice case that the length of original is a power of 2), and this ordering is the grouping necessary for those two point DFT's. This leads to the implementation flowgraphs we see such as depicted here.

$\endgroup$
2
  • $\begingroup$ this bit-reversal trick only works when your smallest FFTs process 2 points each, right? $\endgroup$
    – user253751
    Mar 21, 2022 at 12:10
  • $\begingroup$ @user253751 it is specific to the "Radix 2 FFT" which assumes the length is a power of 2 and results in all FFT's being 2 point FFT's. $\endgroup$ Mar 21, 2022 at 12:11

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.