cancel
Showing results for 
Search instead for 
Did you mean: 
Newbie
Newbie
236 Views
Registered: ‎03-25-2020

programing language

Hello

Were can I find docs on Vivado HLS programming language ?

Thanks

0 Kudos
4 Replies
Highlighted
Scholar
Scholar
129 Views
Registered: ‎04-26-2015

Re: programing language

Have a look here. The main document you need is UG902.

 

However, to use HLS well, it would make sense to be very familiar with C/C++ (HLS code is C/C++) plus a good knowledge of FPGAs an either Verilog or VHDL (because you need to understand what hardware HLS is going to produce).

Highlighted
Newbie
Newbie
71 Views
Registered: ‎03-25-2020

Re: programing language

Thanks

I started with ug998-vivado-intro-fpga-design-hls, and it does cover some of the differences between programming for processor and FPGA's.

Next will be ug902-vivado-high-level-synthesis.

I do use C / C++ a lot, it should help.

 

Highlighted
Scholar
Scholar
40 Views
Registered: ‎04-26-2015

Re: programing language

Knowing C will definitely help.

 

Programming for FPGAs requires a decent understanding of what the underlying hardware will do, but there are a few simple rules:

- No dynamic memory allocation (because it has to actually dedicated memory hardware on the chip, so it needs to know how much is needed).

- No system calls (because there is no OS to manage them).

- Often a brute-force solution works better than a "smart" one. If you've made HLS create the hardware to do an operation once, there's no harm in doing the same operation (on the same hardware) on every clock cycle. Whereas a "smart" solution often requires a lot of different operations.

- Floating-point is slow, fixed-point is fast.

- RAM has fixed sizes, and is always in very limited supply.

- Multiplers also have fixed sizes and are in limited supply.

 

Tags (1)
Highlighted
36 Views
Registered: ‎07-23-2019

Re: programing language

Is not 'programming' language ffs, it's hardware description

 

0 Kudos