goertzel algorithm

ZXNet echo conference «code.zx»

From Kirill Frolov To All 20 October 2002

Press RESET immediately, All! I don’t understand why they love him so much. There's some kind of recursive filter there (y(k)=y(k-1)*...), requires one multiplication and several additions for every count. Among other things, you need registers of considerable capacity or FPU. In the classical DFT algorithm there are two multiplications per sample, BUT THE BIT registers can often be limited to 16 or even 8 bits. This is according to the table You can quickly calculate it, on any processor and very quickly. :-/

From Dmitry Lomov To Kirill Frolov 21 October 2002

Hello, Kirill! Once, Sun Oct 20 2002 04:07, Kirill Frolov wrote to All: KF> I don’t understand why they love him so much. There's something like recursive KF> filter (y(k)=y(k-1)*...), requires one multiplication and several KF> additions for each count. Among other things, you need a lot of registers KF> bit capacity or FPU. KF> In the classical DFT algorithm for count two KF> multiplication, BUT THE WIDTH of registers can often be limited by KF> 16 or even 8 bits. You can quickly calculate this from the table, on any KF> processor and very fast. :-/ At work there was a question of choice, and they chose Goertzel ;) the task was to scan DTMF. The frequency deviation is less than a percent, and at the same time it is necessary to very clearly determine the moment the signal appears. DPF on a small bunch of points does not roll on the first according to the second criterion, and for a large pile - according to the second one ;) All the best. Dmitry. [ZX] [Quake] np: Red Elvises and Brian Tyler - Boogie On The Beach

From Kirill Frolov To Dmitry Lomov 22 October 2002

Press RESET immediately, Dmitry! 21 Oct 02 00:49, Dmitry Lomov wrote to Kirill Frolov: KF>> is limited to 16 or even 8 bits. It’s quick to calculate from the table KF>> is possible, on any processor and very fast. :-/ DL> At work there was a question of choice, and Goertzel was chosen;) the task is to scan DL> DTMF. The frequency deviation is less than a percent, and at the same time it is very necessary DL> clearly determine the moment the signal appears. DPF on a small bunch of points DL> does not roll according to the first sign, but on a large heap - according to the second ;) Where is it going??? The output is the same for both. As I understand it, the difference here is whether to do two multiplications from the table on counting in the first case, and one multiplication by a constant in the second case. Only in the second case (Goertzel is) the capacity and accuracy of calculations immeasurable is needed compared to the first case, but sinuses are not needed. For FPU of course Goertzel is better, but I mean an 8/16-bit computer.

From Dmitry Lomov To Kirill Frolov 23 October 2002

Hello, Kirill! One day, Tue Oct 22 2002 06:28, Kirill Frolov wrote to Dmitry Lomov: KF>>> is limited to 16 or even 8 bits. It’s quick to calculate from the table KF>>> is possible, on any processor and very quickly. :-/ DL>> At work there was a question of choice, and Goertzel was chosen ;) task - DL>> scan DTMF. The frequency deviation is less than a percent, and at the same time DL>> it is necessary to very clearly determine the moment the signal appears. DPF on DL>> a small pile of dots does not roll according to the first sign, but onto a large one DL>> a bunch - the second one ;) KF> Where is it going??? The output result is the same for both. who knows. chose ;) and at first they tried to adapt the DPF - no it worked. for some reason it is impossible to say that “this signal has appeared now.” we can say that it appeared in the last 100 ms ;) I don’t do DSP myself, so I’m saying what I know. Best wishes. Dmitry. [ZX] [Quake] np: Time Machine - Morning angel of empty bottles