The type of the interfaces that are created by interface synthesis depends on
the data type of C argument, the default interface mode, and the interface
directives. In Vitis HLS, the default interface
changes depending on the data types used on the C arguments and configurations. The
user selection of the open_solution -flow_target [vitis |
vivado]
will dictate the default interface settings.
The following figures shows the changes when the default interface protocol is enabled.
Argument type definitions (used in below tables):
- I: Input only (can only read from arg)
- O: Output only (can only write to arg)
- IO: Input & output (can read and write to arg)
- Return: Return data output
- Block: Block-level control
- D: Default mode for each typed.
Note: If an
illegal interface is specified, Vitis HLS issues
a warning message and implements the default interface mode.