01-08-2019 08:56 PM
It may sound silly, but I am very curious if there is any tool (or a list of tools) to automatically insert HLS pragmas in a functional C code, and re-structure it (if required) to make it synthesisable and efficient for FPGAs.
01-08-2019 09:15 PM
Every user has a different requirement from their design. Some could want lesser resource utilization, some could want better latency, or some would want a balance of both. Again, the designs are very different and the effect of directives on the designs will be different. So it is better if the user can apply the directives as per his requirement.
Hence, we do not have any such "automatic" pragma/directive insertion technique as of now.
01-09-2019 03:41 AM
No, not yet. We might see some automatic pragma insertion before too long (eg. having HLS just automatically pipeline any bottom-level loop would probably be a good idea), but code restructuring is a massive project that probably won't happen for 10+ years.
In any case, the primary purpose of this would be to feed HLS "normal" C programs, but often those are simply not implementable by HLS because they rely on features that HLS cannot support (OS functions like printf and fprintf, pointers to pointers to pointers, multithreading, dynamic memory allocation).