Discrete Fourier Transform — Study Notes

View on GitHub →

Summary

Reviewed the discrete Fourier transform (DFT) and how windowing reduces spectral leakage when analyzing non-periodic signals.


Main ideas

  • The DFT maps a finite time-domain sequence into frequency bins spaced by fs/Nf_s / N.
  • Multiplying by a window before the FFT trades main-lobe width for lower side lobes.
  • For embedded DSP, radix-2 FFT implementations favor lengths that are powers of two.

Key equation

The DFT of a sequence x[n]x[n] of length NN:

X[k]=n=0N1x[n]ej2πkn/N,k=0,1,,N1X[k] = \sum_{n=0}^{N-1} x[n]\, e^{-j 2\pi kn / N}, \quad k = 0, 1, \ldots, N-1

Parseval's relation (energy in time equals energy in frequency):

n=0N1x[n]2=1Nk=0N1X[k]2\sum_{n=0}^{N-1} |x[n]|^2 = \frac{1}{N} \sum_{k=0}^{N-1} |X[k]|^2


Figure

Add your own plot or diagram to study-log/images/ and update the path below:

Replace the comment above with a real image when ready.


Code & repository

Example code and experiments: GitHub — mookwonseo


Takeaways

  1. Window choice (Hann, Hamming, Blackman) directly affects leakage and frequency resolution.
  2. Next: implement a fixed-point radix-2 FFT and compare with CMSIS-DSP benchmarks.
Discrete Fourier Transform — Study Notes | Laramie Community Hub