Visible to Intel only — GUID: GUID-73A4FD9A-A6FE-498B-A780-9C8CFB56794F
Visible to Intel only — GUID: GUID-73A4FD9A-A6FE-498B-A780-9C8CFB56794F
Emulate and Debug Your Design
The Intel FPGA Emulation Platform for OpenCL software (also referred to as the emulator or the FPGA emulator) is installed as part of the Intel® oneAPI Base Toolkit. It assesses the functionality of your kernel. The emulator supports 64-bit Windows and Linux operating systems. On Linux systems, the GNU C Library (glibc) version 2.15 or later is required.
- You cannot use the execution time of an emulated design to estimate its execution time on an FPGA. Furthermore, running an emulated design is not a substitute for natively running a functionally equivalent C/C++ implementation on an x86-64 host.
Emulation does not support cross-compilation to ARM® processor. To run emulation on a design that targets an ARM SoC device, emulate on a non-SoC board (for example, intel_a10gx_pac or intel_s10sx_pac). When satisfied with the emulation results, you can target your design on an SoC board for subsequent optimization steps.
To enable debugging of kernel code, optimizations are disabled by default for the FPGA emulator. This can lead to sub-optimal execution speed when emulating kernel code. You can pass the -g0 flag to the icpx compile command to disable debugging and enable optimizations. This enables faster emulator execution.
When targeting the FPGA emulator device, use the -O2 compiler flag to turn on optimizations and speed up the emulation. To turn off optimizations (for example, to facilitate debugging), pass -O0. With Windows Visual C++ debugger, specify /Od.
For information about debugging with Intel® Distribution for GDB*, refer to the following:
Refer to the following topics for additional information: