Intel® FPGA RTE for OpenCL™ Pro Edition: Getting Started Guide

ID 683173
Date 9/26/2022
Public

A newer version of this document is available. Customers should click here to go to the newest version.

Document Table of Contents

3.4. Installing an FPGA Board

Before creating an OpenCL™ application for an FPGA board on Linux, you must first download and install the Intel Reference Platform or the Custom Platform from your board vendor. Most Custom Platform installers require administrator privileges. Visit the FPGA Software Download Center site for downloading the Intel Reference Platform. To install your board into a Linux host system, invoke the install utility command.
The steps below outline the board installation procedure. Some Custom Platforms require additional installation tasks. Consult your board vendor's documentation for further information on board installation.
  1. Follow your board vendor's instructions to connect the FPGA board to your system.
  2. Download the Custom Platform for your FPGA board from your board vendor's website.
    Note: Starting from the 20.3 release, Intel® has removed the support for Linux OpenCL BSPs. Use 20.2 or older OpenCL BSPs available at FPGA Software Download Center as a reference. If you want to migrate your OpenCL BSP to a newer version, follow the recommended steps provided in the Reference Platform Porting Guides available under Intel FPGA SDK for OpenCL documentation.
  3. Install the Custom Platform in a directory that you own (that is, not a system directory).

    You can install multiple Custom Platforms simultaneously on the same system. Use the RTE utilities, such as aocl install with multiple Custom Platforms. The Custom Platform subdirectory contains the board_env.xml file.

    In a system with multiple Custom Platforms, ensure that the host program uses the FPGA Client Drivers (FCD) to discover the boards rather than linking to the Custom Platforms' memory-mapped device (MMD) libraries directly. If you have set up FCD correctly for Custom Platform, FCD finds all the installed boards at runtime.

  4. Add the paths to the Custom Platform libraries (for example, the path to the MMD library resembles <path_to_customplatform>/linux64/lib) to the LD_LIBRARY_PATH environment variable setting.

    For information on setting Linux user environment variables and running the init_opencl script, refer to the Setting the Intel® FPGA RTE for OpenCL™ Pro Edition User Environment Variables section.

  5. Invoke the command aocl install <path_to_customplatform> at a command prompt.
    Remember: You need sudo or root privileges to install a board.

    Invoking aocl install <path_to_customplatform> installs both the FCD and a board driver that allows communication between host applications and hardware kernel programs.

    If the system already has the drivers installed, and you need to install FCD without the root privilege, you can perform the following:

    1. Export the ACL_BOARD_VENDOR_PATH=<path_to_install_fcd> environment variable to specify the installation directory of FCD other than the default location.
      Note: If you set the ACL_BOARD_VENDOR_PATH environmental variable, set it every time after you enter the OpenCL development environment via the source init_opencl.sh file.
    2. Invoke the aocl install command with the flag -fcd-only as shown below and follow the prompt for FCD installation:
      aocl install <path_to_customplatform> -fcd-only
  6. To query a list of FPGA devices installed in your machine, invoke the aocl diagnose command.

    The software generates an output that includes the <device_name>, which is an acl number that ranges from acl0 to acl127.

    Attention: For possible errors after implementing the aocl diagnose utility, refer to Possible Errors After Running the diagnose Utility section. For more information on querying the <device_name> of your accelerator board, refer to the Querying the Device Name of Your FPGA Board section.
  7. To verify the successful installation of the FPGA board, invoke the command aocl diagnose <device_name> to run any board vendor-recommended diagnostic test.