UPGRADE YOUR BROWSER

We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

cancel
Showing results for 
Search instead for 
Did you mean: 
302 Views
Registered: ‎09-13-2018

caller or callee of HW functions cannot be implemented in HW

Hi everyone,

I wonder why Xilinx SDx applies this constraint that "caller or callee of HW functions cannot be implemented in HW", when selecting functions for hardware acceleration! I am sure this isn't an inherent limitation of FPGAs since you can implement parent and child functions manually on any FPGA easily. However, this might relate to the data types of inputs and outputs, and data transfers between parent and cild functions? Or that could be because the functions memory access (like DMA (interfacing with DDR) or FIFOs) should be monitored//supervised/controlled by the program's main which runs in SW (if the synchronization is left to HW only, the cost and overhead would increase)? Or its just Xilinx's special way of HW function call that imposes such limitation?

Any comments and ideas will be appreciated.

Regards

Hooman

0 Kudos
2 Replies
200 Views
Registered: ‎10-17-2017

Re: caller or callee of HW functions cannot be implemented in HW

nikmehr@gmail.com Where did you find such a constraint ? 

 

You can definitely call a hardware function from within another hardware function. Although you'll have to write them in a certain way.

 

 

0 Kudos
Contributor
Contributor
113 Views
Registered: ‎06-20-2019

Re: caller or callee of HW functions cannot be implemented in HW

This error appers on the screen when you try to add one more hardware function. It might be related to the arguments of the hw function. I got this error before. Yet, interestingly, I was able to add one more hw_func later on but that hw func was totally irrelevant and was doing just a dummy addition. The picture illustrates the error.

Selection_051.png
0 Kudos