The Vitis unified software platform supports typical software debugging for the host code at all times, the kernel code when running in software emulation mode, and at points during hardware emulation mode. This is a standard software debug flow using breakpoints, stepping through code, analyzing variables, and forcing the code into specific states.
The following figure shows the debug flow during software emulation for
the host and kernel code (written in C/C++ or
OpenCL™
) using the GNU debugging (GDB) tool. Notice the two instances of GDB to separately
debug the host and kernel processes, and the use of the debug server (xrt_server
).
Xilinx recommends iterating the design as much as possible in Software Emulation, which takes little compile time and executes quickly. For more detailed information on software emulation, see Software Emulation.