"f1 fan" <fake@nospam.net> wrote in message
news:5aRyh.9406$xu4.2859@trndny04...

> >My design is 4096-point FFT, which splits into 4 stages of radix-8 FFT.
> >The system twiddle factor is 15-bits and gives acceptable quantization
> >error.
> >However the design is bogged down by the trivial twiddle factor within
> >radix-8,
> >W81 = 2 * pi * 1/8 = 0.707, which can be reasonably done with 181/256.
>
> >However the quantization of 181/256 causes system quantization error from
> >80dB
> >.to 30+dB, and this error absorbed quantization error variations with
> > system
> >twiddle
> >factors varying between 13~20bits.
>
>
> >Consideration is the system memory (4096 point, 13b) won't be widdened to
> >accomodate this 0.707.
>
>
> >Are there any means to fix this problem?
>
> pi/4 = 0.785 or 201/256
>
> Try that.
>
> John Oxton
>

My mistake, it's W81 = cos(2 * pi * 1/8) + i*sin(2 * pi * 1/8) = 0.707 +
0.707i.
In hardware it's done with (181+181i)/256. However the quantization noise is
very
high comparing to floating point, signal to quantization noise ratio is
expected to be
worse than 20*log10(181/(181.0193-181)) = 79.4dB.
However in some IEEE papers, the author claimed SQNR of 100dB and higher
with
radix-8 implementation.

Reply by f1 fan●February 8, 20072007-02-08

>My design is 4096-point FFT, which splits into 4 stages of radix-8 FFT.
>The system twiddle factor is 15-bits and gives acceptable quantization
>error.
>However the design is bogged down by the trivial twiddle factor within
>radix-8,
>W81 = 2 * pi * 1/8 = 0.707, which can be reasonably done with 181/256.

>However the quantization of 181/256 causes system quantization error from
>80dB
>.to 30+dB, and this error absorbed quantization error variations with
> system
>twiddle
>factors varying between 13~20bits.

>Consideration is the system memory (4096 point, 13b) won't be widdened to
>accomodate this 0.707.