Intel® High Level Synthesis Compiler Standard Edition: User Guide

ID 683306
Date 12/18/2019
Public
Document Table of Contents

4. Verifying the Functionality of Your Design

Verify the functionality of your design by compiling your component and testbench to an x86-64 executable that you can debug with a native C++ debugger.

Compiling your design to an x86-64 executable is faster than compiling your component to RTL. This faster compilation time lets you debug and refine your component algorithms quickly before you move on to see how your component is implemented in hardware.

You can compile your component and testbench to an x86-64 executable for functional verification with any of the following methods:
  • Use the i++ -march=x86-64 command.
  • On Linux systems, use the g++ command.
  • On Windows systems, use Microsoft Visual Studio.

Ensure that you set your compiler command to include debug information. The i++ command generates debug information by default.

On Linux systems, you can use GDB to debug your component and testbench if you use the g++ compiler or the i++ -march=x86-64 command to compile your code for functional verification.

On Windows systems, you can use the Visual Studio debugger only if you compile your component and testbench with the Visual Studio compiler. You must specify the /Zi flag to enable debug information.

Using the g++ command or Microsoft Visual Studio might require additional configuration to compile your Intel® HLS Compiler Standard Edition code. For details, see Compiler Interoperability in the Intel® High Level Synthesis Compiler Standard Edition Reference Manual.

You can automate the process by using a makefile or a batch script. Use the makefiles and scripts provided in the Intel® HLS Compiler Standard Edition example designs and tutorials as guides for creating your own makefiles or batch scripts.