A Vitis Subsystem (VSS) is a platform-independent reusable design component with customizable AI Engine and PL content. The VSS is integrated into a larger system through Vitis tools.
To integrate the various PL and AIE components, a configuration file is
used to declare what components to use and which interfaces to connect. The syntax is
similar to how Vitis connects components to an
extensible platform, except for declaring what needs to be added to a vss archive. Specifying the VSS component archive
requires the following syntax:
vss=amd.com:<vss_library_name>:<vss_component_name>:<version_number>:<list_of_instances>
| Item | Example | Description |
|---|---|---|
| vss_library_name | my_vss_lib | Identifier name to associate the VSS to a library |
| vss_component_name | vss_top | Will be used as VSS archive name and concatenated with instance names to provide unique name when integrating VSS component to an extensible platform |
| version_number | 1.0 | To keep track of library/component version |
| list_of_instance | counter_0,ai_engine_0 | Comma separated list of instance names. The names
need to match kernel names declared with "nk" in the config file. Note: The ai_engine_0 instance
name need to match the default instance name in Vivado HW platform
|
The VSS archive is generated using the linker with --mode vss. An example command is shown below:
v++ --link --mode vss --save-temps --part <part_name> --config ./src/vss_conn.cfg <list_of_xo> <libadf.a> --out_dir <build_folder>