The Vitis Unified IDE provides a common tool for
creating the different components of a heterogeneous system design, or a Data Center
acceleration application. These components include the HLS component generated from
C/C++ source code. It includes the v++
and vitis-run
common command-line for compiling and linking
the system design. Vitis Unified IDE provides multiple
ways to migrate an existing Vitis HLS classic project
into the new tool. These include the following:
- Create an HLS Component from an existing Vitis HLS classic project
- Continue using an existing Tcl script
- Convert to using Python script
1. Create an HLS Component from an Exisiting Vitis HLS Project
As described in Creating an HLS Component you can specify the hls.app file from an existing Vitis HLS classic project to generate a new HLS config file. The tool lets you identify the hls.app file inside the project, and enter a New configuration file name for the config file generated from the hls.app file.
2. Continue Using an Existing Tcl Script
To continue to use the existing Tcl script, replace open_project
with open_component
and
specify -flow_target vivado|vitis
. Remove open_solution
Tcl command as it is not required in Vitis Unified IDE as shown below.
By using open_component
the output
structure created is compatible with the Vitis Unified IDE and the directory from where the Tcl script is run is
the workspace that can be opened in the Vitis Unified IDE. The hls reports and generated RTL files are now
under the component directory. Tcl script can be run using vitis-run
as shown below.
vitis-run --mode hls --tcl <tcl_script>.tcl
3. Convert to Using Python Script
Vitis Unified IDE supports Python APIs to
create and manage various components including HLS component. A python script can be
used containing these APIs for HLS component development and execution. HLS
component configuration can be specified either in a config file (generated using
write_ini
as described above) or inside the python script as
key-value pairs. The python script can be run using vitis
as shown
below.
vitis -s <python_script>.py
Use write_ini to Create an HLS Config File
The vitis-run
executable has the ability to create a config file from an existing Tcl script using
the write_ini command. This can be done by
either including the write_ini
command in the Tcl
script or by
launching
HLS interactive Tcl shell using
vitis-run
(shown below) and specifying the write_ini
command
to export the Tcl commands used to create a project, or a specific solution. After
creating the HLS config files from the existing project or solutions, HLS components
can be created in the Vitis Unified IDE using these
config files along with the specified source files.
$ vitis-run --mode hls --itcl
HLS> open_project <project_name>
HLS> write_ini <config_file_name>
Additionally, for users who prefer scripted flows for HLS development with the Vitis Unified IDE , examples in the Migration directory of the Vitis-HLS-Introductory-Examples repository show a couple of ways to do it.