The --hls.XXX
options described
below are used to specify options for the Vitis HLS
synthesis process invoked during kernel compilation.
--hls.clock
--hls.clock <arg>
Specifies a frequency in Hertz at which the listed kernel(s) should be compiled by Vitis HLS.
Where <arg>
is specified
as: <frequency_in_Hz>:<cu_name1>,<cu_name2>,..,<cu_nameN>
-
<frequency_in_Hz>
: Defines the kernel frequency specified in Hz. -
<cu_name1>,<cu_name2>,...
: Defines a list of kernels or kernel instances (CUs) to be compiled at the specified target frequency.
For example:
v++ -c --hls.clock 300000000:mmult,mmadd --hls.clock 100000000:fifo_1
[hls]
section head using the following format:
[hls]
clock=300000000:mmult,mmadd
clock=100000000:fifo_1
--hls.export_mode
--hls.export_mode <file_type>:<file_path>
Specifies the RTL export mode for Vitis HLS and the path and name of the exported file. As a v++
compiler option, the only supported <file_type>
is XO.
For example:
v++ --hls.export_mode xo:./kernel.xo
[hls]
section head using the following format:
[hls]
export_mode=xo:./kernel.xo
--hls.export_project
--hls.export_project <arg>
Specifies a directory where the Vitis HLS project setup script is exported.
For example:
v++ --hls.export_project ./hls_export
[hls]
section head using the following format:
[hls]
export_project=./hls_export
--hls.jobs
--hls.jobs <arg>
Specifies the number of jobs for launching HLS runs.
This option specifies the number of parallel jobs Vitis HLS uses to synthesize the RTL kernel code. Increasing the number of jobs allows the tool to spawn more parallel processes and complete faster.
For example:
v++ --hls.jobs 4
[hls]
section head using the following format:
[hls]
jobs=4
--hls.lsf
--hls.lsf <arg>
Specifies a bsub
command to
submit a job to LSF for HLS runs.
Specifies the bsub
command line
as a string to pass to an LSF cluster. This option is required to use the IBM
Platform Load Sharing Facility (LSF) for Vitis HLS synthesis.
For example:
v++ --compile --hls.lsf '{bsub -R \"select[type=X86_64]\" -N -q medium}'
[hls]
section head using the following format:
[hls]
lsf='{bsub...
--hls.post_tcl
--hls.post_tcl <arg>
Specifies a Tcl file containing Tcl commands for vitis_hls
to source after csynth_design
.
For example:
v++ --hls.post_tcl ./runPost.tcl
[hls]
section head using the following format:
[hls]
post_tcl=./runPost.tcl
--hls.pre_tcl
--hls.pre_tcl <arg>
Specifies a Tcl file containing Tcl commands for vitis_hls
to source before running csynth_design
.
For example:
v++ --hls.pre_tcl ./runPre.tcl
m_axi
interfaces in Vitis HLS:
config_interface -m_axi_auto_max_ports=1
config_interface -m_axi_max_bitwidth 512
[hls]
section head using the following format:
[hls]
pre_tcl=./runPre.tcl