F

Goertzel Algorithm

Goertzel’s algorithm performs a DFT using an IIR filter calculation. Compared to a direct N-point DFT calculation, this algorithm uses half the number of real multiplications, the same number of real additions, and requires approximately 1/N the number of trigonometric evaluations. The biggest advantage of the Goertzel algorithm over the direct DFT is the reduction of the trigonometric evaluations. Both the direct method and the Goertzel method are more efficient than the FFT when a “small” number of spectrum points is required rather than the entire spectrum. However, for the entire spectrum, the Goertzel algorithm is anN2 effort, just as is the direct DFT.

F.1 DESIGN CONSIDERATIONS

Both the first order and the second order Goertzel algorithms are explained in several books [1–3] and in Ref. 4. A discussion of them follows. Since

img

both sides of the DFT in (6.1) can be multiplied by it, giving

(F.1)

img

which can be written

(F.2)

img

Define a discrete-time function as

(F.3)

img

The discrete transform is then

(F.4)

Equation (F.3) is a discrete convolution of a finite-duration ...

Get Digital Signal Processing and Applications with the TMS320C6713 and TMS320C6416 DSK, 2nd Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.