The syn.compile
commands specify
the default behavior for compilation of the HLS component.
- syn.compile.design_size_max_warning
- Specifies the design size that triggers a warning related
to slow compilation or poor QoR.
syn.compile.design_size_maximum_warning=300000
- syn.compile.enable_auto_rewind
-
When true enables an alternative HLS implementation for pipelined loops which uses automatic loop rewind as described in Rewinding Pipelined Loops for Performance for additional information.
syn.compile.enable_auto_rewind=1
- syn.compile.ignore_long_run_time
-
Disable long run time warning.
syn.compile.ignore_long_run_time=1
- syn.compile.name_max_length <arg>
-
The
name_max_length
option will specify the maximum length of function names. If the length is over the threshold, the last part of the name will be truncated.syn.compile.name_max_length=13
- syn.compile.no_signed_zeros
-
The
no_signed_zeros
option will ignore the signedness of floating point zero so that compiler can do aggressive optimizations on floating point operations.syn.compile.no_signed_zeros=1
- syn.compile.pipeline_flush_in_task arg
-
Enable non-rewind pipelines in a dataflow process to be flushing by default. The options are:
-
always
: Always flush the pipeline in task -
ii1
: Only flush the pipeline in task when II=1. This is the default setting -
never
: Disable pipeline flush in task
syn.compile.pipeline_flush_in_task=always
-
- syn.compile.pipeline_loops arg
-
Loops with a tripcount equal to or greater than the specified value will be pipelined automatically.
syn.compile.pipeline_loops=20
- syn.compile.pipeline_style arg
-
Set default pipeline style, this is a preference not a hard constraint. Refer to Flushing Pipelines and Pipeline Types for more information. The three styles are: stallable (
stp
), flushable (flp
), and free-running (frp
). The default is free-running.syn.compile.pipeline_style=flp
- syn.compile.pragma_strict_mode
-
Enable errors instead of warnings for unrecognized and improper pragma syntax.
syn.compile.pragma_strict_mode=1
- syn.compile.unsafe_math_optimizations
-
The
unsafe_math_optimizations
option will ignore the signedness of floating point zero and enable associative floating point operations so that compiler can do aggressive optimizations on floating point operations.syn.compile.unsafe_math_optimizations=1
Important: Using this option might change the result of any floating point calculations and result in a mismatch in C/RTL co-simulation. Please ensure your test bench is tolerant of differences and checks for a margin of difference, not exact values.