www.piclist.com/techref/logic/dsps.htm?key=fft

On Tue, 20 Apr 2004, Mark Jordan wrote:

> On 20 Apr 2004 at 8:43, spamBeGoneRichard.ProsserEraseMEPOWERWARE.COM wrote:

>

> > I don't have a tutorial, but may be able to assist with sample code. (and

> > other help if required)

<snip>

> Well, what I'm trying to design is an 8 or 16 tone AFSK modem.

> Based on what I have read, it seems Goertzel is just one form

> of calculating the FFT. But will it give me the best results?

The Goertzel algorithm and an FFT will produce identical results assuming

of course that the Goertzel algorithm is generating all the frequencies.

The difference is efficiency. If there are N frequencies, then the fft

will take N*log2(N) units of time where as the Goertzel algorithm will

take roughly N*N units. However, as mentioned in other portions of this

thread, the Goertzel algorithm has the advantage that the individual

frequencies can be tuned.

In some sense, you can view the Goertzel algorithm as a narrow band pass

filter. I strongly suspect that if you use this concept as guide that it

would be possible to design an extremely optimal filter bank for filtering

the 8-DTMF frequencies. For example, the first stage can split the signal

into highs and lows. Each of these streams are then split again. Finally,

those four streams are split. You may wish to look up info on multirate

filtering.

> Do you know of some page describing the FFT process like that

> one on the Goertzel algorithm?

I guess that depends on what you mean by 'like', but you could look at:

http://www.dattalo.com/technical/theory/dtmf.html

Scott

--

http://www.piclist.com hint: The list server can filter out subtopics

(like ads or off topics) for you. See http://www.piclist.com/#topics

In reply to: <408507A7.20652.92D804B@localhost>

See also: www.piclist.com/techref/logic/dsps.htm?key=fft