The Vitis Unified IDE uses x86 simulation for software emulation of both Data Center accelerator cards, and Embedded Processor platforms. For embedded systems, simulating on x86 processors is known as the PS on X86 method (see Compiling an Embedded Application for PS on x86). This requires all the elements of the system to be compiled for x86 targets.
This means the libadf.a file that is
included in the v++ --link
command line must be
compiled for the x86sim target as explained in Simulating an AI Engine Graph
Application of described in the
AI
Engine Tools and Flows User Guide (UG1076).
Because C synthesis for HLS components creates a Vitis kernel (.xo
) file for hardware
emulation and hardware design flows, the Vitis IDE
must separately compile each HLS component for use in software emulation using the
v++ -c -k
command as described in Compiling PL Kernels for Software Emulation. This extra compilation step for HLS components is
specifically for software emulation builds.