cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
msaenger
Visitor
Visitor
7,983 Views
Registered: ‎01-29-2015

FFTW on Zynq possible?

I'm trying to use the FFTW library on a bare-metal application on Zynq.  Is this possible?  I've managed to cross-compile everything correctly, but I get a ton of errors in the SDK since FFTW relies on linux libraries and functions like gettimeofday() which are not available in the standard BSP.

 

So, am I out of luck doing this on bare-metal?

0 Kudos
Reply
10 Replies
muzaffer
Teacher
Teacher
7,970 Views
Registered: ‎03-31-2012

one direction you can do is to add dummy implementations for the missing functions. gettimeofday is not needed for the basic fft functionality; only for the case when you are asking fftw to time the system on which it's running and generate optimized c code. Depends on what else is missing but probably nothing an fft needs.

- Please mark the Answer as "Accept as solution" if information provided is helpful.
Give Kudos to a post which you think is helpful and reply oriented.
0 Kudos
Reply
sampatd
Scholar
Scholar
7,943 Views
Registered: ‎09-05-2011

I have really not tried fftw on bare-metal; however, the following document should of some help:
http://china.xilinx.com/support/documentation/application_notes/xapp1206-boost-sw-performance-zynq7soc-w-neon.pdf
0 Kudos
Reply
pabausson-cea
Visitor
Visitor
7,356 Views
Registered: ‎06-23-2015

Hey,

 

Did you finally manage a way to compile the FFTW lib on a Zynq ?


Thanks.

0 Kudos
Reply
pabausson-cea
Visitor
Visitor
7,304 Views
Registered: ‎06-23-2015

May i call for a "up" ? =/

0 Kudos
Reply
guillaumebres
Scholar
Scholar
7,277 Views
Registered: ‎03-27-2014


@pabausson-cea wrote:

May i call for a "up" ? =/


Well I could give you instructions for an embedded Linux environment but he was talking about a baremetal context

gw.
Embedded Systems, DSP, cyber
0 Kudos
Reply
pabausson-cea
Visitor
Visitor
7,268 Views
Registered: ‎06-23-2015

Hi and thank you for your answer.

 

I am actually searching a way to compile the FFTW library in a baremetal context too, but some informations on the way to get it compiled in a OS context might be helpful no?


Does the embedded linux environment need a host PC running a Linux OS to develop a linux application or a Windows host with Xilinx Design Tools is capable too?

0 Kudos
Reply
joemast
Visitor
Visitor
7,251 Views
Registered: ‎03-27-2014

If you're just looking for an FFT and not specifically determined to use FFTW have a look at ne10 fft  http://projectne10.github.io/Ne10/ it has less dependencies than fftw and is easy to compile bare metal. I've found that using the hand assembled complex fft in ne10 is faster than fftw on zynq, for at least sizes in the range of 1024 - 4096.

 

0 Kudos
Reply
pabausson-cea
Visitor
Visitor
7,190 Views
Registered: ‎06-23-2015

Ok thanks joemast!

It seems to be a nice alternative to FFTW but yes in fact, well spotted, I need a way to port an algorithm which is already written and is using the FFTW library!

 

Anyone with another idea?

0 Kudos
Reply
pabausson-cea
Visitor
Visitor
7,161 Views
Registered: ‎06-23-2015

Hey,

 

Just a little up message to say to people passing through, that i am still searching for a way to compile and use the FFTW library with Xilinx SDK 2015.1, with no success...

 

If any of you did it or something similar (any other not pre-compiled third party library used in a Zynq PS application) please let me know how. Thank you!

0 Kudos
Reply
muzaffer
Teacher
Teacher
4,758 Views
Registered: ‎03-31-2012

Let me repeat my original suggestion: start adding dummy implementations for the missing functions. Once the library compiles with them, look at the list and decide if any of the functions are really needed for the functionality you need. It's entirely possible that the answer is no. If yes, copy the actual behavior from an existing implementation. Anyway even if you think you need a function, run the test code and see if the basic fft function works without real implementations.

- Please mark the Answer as "Accept as solution" if information provided is helpful.
Give Kudos to a post which you think is helpful and reply oriented.
0 Kudos
Reply