Though High Level Synthesis (HLS) is like using a more software way to realize hardware design needs, there are multiple fundamentals which are common in software development are not exist in HLS.

  • HLS usually can’t handle random software programs. It needs additional info added by hardware designers which provides hints to the synthesis tool about how to generate the efficient circuits.
  • It’s common that synthesis tool does not support dynamic memory allocations.
  • It’s common that synthesis tool does not support many standard libraries
  • It’s very limited to use recursion in HLS.
  • Usually, system calls like abort(), exit(), printf(), etc are not supported in HLS.
  • Designers have to define interfaces precisely.

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.