Guest
Hi,
I have just published a simple, parametrized synthesizable FFT engine, which
allows the user to define the length of FFT (as power of two), define the format of the numbers and adjust the engine to the latency of the "butterfly block".
I couldn't find similar open source solution, so I decided to publish mine.
Of course it is the user's responsibility to implement the "butterfly block" working with the appropriate numbers representation.
The sources are published under BSD license both on OpenCores ( http://opencores.org/project,versatile_fft ) and - the initial version on alt.sources ( subject: "Parametrized synthesizable FFT engine in VHDL",
link to google archive: https://groups.google.com/forum/message/raw?msg=alt.sources/CTsFcaE8fD8/3lqMd_EiQ4MJ )
I hope, that this design may be useful for someone, even though it is optimized rather for moderate resources usage, then for performance.
Sources provide the Octave script allowing to verify operation of the core.
(Just run "octave test_fft.m" in Linux, with ghdl installed).
--
Regards,
Wojtek
I have just published a simple, parametrized synthesizable FFT engine, which
allows the user to define the length of FFT (as power of two), define the format of the numbers and adjust the engine to the latency of the "butterfly block".
I couldn't find similar open source solution, so I decided to publish mine.
Of course it is the user's responsibility to implement the "butterfly block" working with the appropriate numbers representation.
The sources are published under BSD license both on OpenCores ( http://opencores.org/project,versatile_fft ) and - the initial version on alt.sources ( subject: "Parametrized synthesizable FFT engine in VHDL",
link to google archive: https://groups.google.com/forum/message/raw?msg=alt.sources/CTsFcaE8fD8/3lqMd_EiQ4MJ )
I hope, that this design may be useful for someone, even though it is optimized rather for moderate resources usage, then for performance.
Sources provide the Octave script allowing to verify operation of the core.
(Just run "octave test_fft.m" in Linux, with ghdl installed).
--
Regards,
Wojtek