Vivado® HLS was the older generation HLS solution that has its last official release in 2020.1. Vitis™ HLS represents the next-generation HLS solution from AMD® and has several improvements over the older Vivado HLS technology. First and foremost, Vitis™ HLS has a new compiler that uses an updated version of the LLVM compiler standard and supports C/C++ 11/14 for compilation/simulation. When migrating a kernel module or IP implemented with one version of Vivado HLS, it is essential to understand the difference between the versions of HLS, and the impact that these differences have on the design.
The key differences between these version of HLS versions can be categorized as follows:
- Key Behavioral Differences
- Deprecated Commands
- Unsupported Features
In addition, Vitis HLS now supports the following new and stricter syntax checking for both source code and pragma usage:
- Syntax Checker: Vitis HLS will error out on unconnected ports (either in dataflow regions or during RTL generation).
- Pragma Conflict Checker: New warnings and errors are reported for pragma conflicts and/or typos in pragma options.
- New and Improved Messages when user-specified pragmas are ignored by the tool.