Thanks everyone for the discussion, and thanks @thierry for bringing up the 
topic of language/framework choice for the VTA core. I wish to share some of my 
thoughts on this topic.

As a FPGA engineer, I mostly wrote VHDL/verilog codes for my past projects. I 
must admit that I am not very familiar with chisel. But as far as I know, 
Chisel is still a Hardware Description Language (like VHDL/verilog) designed to 
describe digital circuits. On the other hand, Xilinx HLS/Accel/Intel HLS/OpenCL 
are high level synthesis frameworks which converting algorithms written in 
software codes into hardware design.

The differences between HDL and SW languages are quite substantial. In my 
opinion, HDL languages are not programming languages, they are tools helping to 
describe low-level hardware circuits. We should always design the circuits 
first before we describing them in HDLs.

Code re-usability is always an interesting topic in the HDL world. As HDLs are 
usually dealing with low-level hardware libraries, it is very much dependent on 
the low-level hardware components/IPs available on the hardware devices. In 
practice, it is always much more difficult to re-use HDL codes than SW codes, 
especially when performance/efficiency is a concern. Regarding to FPGA devices, 
that is mainly because different devices have different kind of resources / IPs 
/ interconnect interfaces, even different CLB structures.

On the other hand, high-level SW codes are focused to describe algorithms. It 
is mainly the compiler's job to map/translate it efficiently into the hardware 
circuits. In theory, as I see it, they are better candidates to minimize the 
number of design sources as low level hardware details are hidden into the 
toolkits themselves. However, the current state of HLS is not very mature, and 
a lot of design ideas could not be realized via HLS, and many #pragmas have to 
be introduced to aid the compiler optimizations.





---
[Visit 
Topic](https://discuss.tvm.ai/t/rfc-vta-support-for-cloud-devices-opencl-compatible/6676/15)
 to respond.

You are receiving this because you enabled mailing list mode.

To unsubscribe from these emails, [click 
here](https://discuss.tvm.ai/email/unsubscribe/87e98c1e08a559a6072957ce24fd08ed0e24b5808fa23f351e28401e676642e8).

Reply via email to