Extract this archive and copy the files to a directory. Then double-click FftFixed.sln. You
need Visual Studio 2008 Standard Edition, if you don't have it, double-click
on Exe file in Debug directory.

Microsoft Visual Studio starts. Choose "Solution" tab in the
left window, then double-click FftFixedView.cpp.

Please look for FftCal function and find that all variables are switched
from "double" to "int" or "long long".

And see that 19-bit shift is executed after the multiplication.

This is the input wave (FixedIn.txt). They are quantized by 16-bit but
the magnitude is five-bit-range (32).

The following is trigonometric function (FixedTri.txt) They are quantized
by 20-bit and the magnitude is 19-bit-range (524,288). Therefore after
the multiplication, truncation is needed to remove redundant bits.

|