01-01-2017 04:37 AM
I have problems when I use vivado HLS to synthesize the C code, In the code I use gmp library function. There are many errors in synthesizing these gmp library funciton, because the unsynthesized type error. I want to now does vivado HLS have an supporting on the gmp library? Thankyou.
01-01-2017 08:53 AM
Supporting any c code library functions is not the intent of HLS, as you have discovered. Rather it is a tool to quickly create and optimize a solution to a single task. Collecting individual converted blocks together remains the task of Vivado, at the RTL level.
Generally speaking, arithmetic libraries optimized for the FPGA device fabric already exist in the RTL IP core libraries. One approach is to debug your c code using the gmp, replacing these functions with RTL blocks from the IP cores library.
HLS is a great new tool. But, it isn't the best tool for every job just yet. It took more than 30 years to get even this far ("c to gates" has been a dream for a long long time).
(Happy New Year)
01-01-2017 09:58 PM
Thank you for your reply.Another question, does Xilinx has the IP core of gmp library functions. Maybe gmp library is not applied extensively in FPGA developer. If exist, could you give me some information about this.
Happy new year, thanks for your help.
01-01-2017 10:19 PM
HLS doesn't support GMP directly. It has its own variable-precision integer and fixed-point libraries, but the range of supported functions is far more limited than what GMP provides.
01-03-2017 08:30 PM
Voyager, thanks for your reply. I know this library HLS support, but it is not suitable for my application.
01-04-2017 02:42 AM
Unfortunately I think you're out of luck. You can probably rewrite most of the GMP functions fairly easily in HLS, but they won't be particularly efficient in terms of speed or resource usage.
01-04-2017 06:10 AM
yeah, HLS tools give us convenience but you know ...maybe the optimization could do this better.