FPGA Central - World's 1st FPGA / CPLD Portal

FPGA Central

World's 1st FPGA Portal

 

Go Back   FPGA Groups > NewsGroup > DSP

DSP comp.dsp newsgroup, mailing list

Reply
 
LinkBack Thread Tools Display Modes
  #1 (permalink)  
Old 11-23-2005, 11:50 PM
[email protected]
Guest
 
Posts: n/a
Default Is the usual Goertzel algorithm wrong?

Hi,
I"ve been trying to figure the Goertzel algorithm out and I am at a
point where the maths just doesn't seem to work out right:

For example, referring to

http://cnx.rice.edu/content/m12024/latest/

There is the following claim:

X(k) = y(N) (1)

However, this is obviously FALSE because from the definition of X(k)
there is NO x(N) term while the difference equation:
y(N) = W*y(N-1) + x(N) where W = Exp[-2 Pi k/N]

clearly has this term. I believe the correct statement is:

X(k) = (y(N-2)*W + x(N-1))*W

This is not the only place that makes the claim that (1) is true. Other

literature like Proakis (Digital Signal Processing page 480) makes the
same claim too. It cannot be that I'm the only person who sees this ;-)

and so I bet that I'm missing something. Can some one please help
enlighten me?

Thanks your help!


Cheng-Yang Tan

Reply With Quote
  #2 (permalink)  
Old 11-24-2005, 10:50 AM
Junior
Guest
 
Posts: n/a
Default Re: Is the usual Goertzel algorithm wrong?

x(N) is the (N+1)th sample (starting from x(0), x(1), ...), you when
you run the iteration (N+1)st time, you will have the DFT coefficient
in y. DFT coefficient will not be obtained if iteration runs for only N
times.

When you have only x(0), x(1), ....x(N-1), you assume x(N) = 0.

Reply With Quote
  #3 (permalink)  
Old 11-25-2005, 06:50 PM
[email protected]
Guest
 
Posts: n/a
Default Re: Is the usual Goertzel algorithm wrong?


Junior wrote:
> x(N) is the (N+1)th sample (starting from x(0), x(1), ...), you when
> you run the iteration (N+1)st time, you will have the DFT coefficient
> in y. DFT coefficient will not be obtained if iteration runs for only N
> times.
>
> When you have only x(0), x(1), ....x(N-1), you assume x(N) = 0.


Hi Junior,
Thanks for the info above about assuming that x(N) = 0. The formula
which I wrote earlier

X(k) = (y(N-2)*W + x(N-1))*W
= y(N-1)*W + x(N) = y(N-1)*W + 0 if x(N) = 0

is exactly what you said. Is what you say a univeral assumption for all
cases that x(N) = 0 if it is outside the sampling set? This is rather
unusual since we always assume a stream of continuous data going into
the filter.

Thanks!

Cheng-Yang Tan

Reply With Quote
Reply

Bookmarks

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
Goertzel Algorithm [email protected] DSP 7 03-19-2008 06:36 PM
Goertzel algorithm elwiz DSP 2 10-25-2005 11:50 PM
Goertzel algorithm doubth...... sergiohdezm DSP 1 11-27-2003 10:06 PM
Re: Goertzel Algorithm in Hardware Jon Harris DSP 0 07-21-2003 08:45 PM
Re: Goertzel Algorithm in Hardware Mike Rosing DSP 1 07-19-2003 08:10 PM


All times are GMT +1. The time now is 02:34 AM.


Powered by vBulletin® Version 3.8.0
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 3.2.0
Copyright 2008 @ FPGA Central. All rights reserved