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

ID 683188
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

B. Document Revision History of the Intel® FPGA SDK for OpenCL™ Pro Edition Getting Started Guide

Document Version Intel® Quartus® Prime Version Changes
2022.09.26 22.3
  • Maintenance release.
2022.06.21 22.2
  • Maintenance release.
2022.03.28 22.1
  • Updated the instructions to access memory recommendations details in Prerequisites for the Intel FPGA SDK for OpenCL Pro Edition.
  • Updated instructions for downloading the software in Downloading the Intel FPGA SDK for OpenCL Pro Edition.
2021.12.13 21.4
  • Maintenance release.
2021.10.04 21.3
  • Maintenance release.
2021.06.21 21.2
  • Maintenance release.
2021.03.29 21.1
  • Added a note about running the script with sudo privileges in step 2 of Installing the Intel® FPGA SDK for OpenCL™ Pro Edition.
  • Updated the BSP and SDK versions throughout the guide.
  • Changed all occurrences of BSP to OpenCL BSP for clarity.
2020.12.14 20.4
  • Maintenance release.
2020.09.28 20.3
  • Added instructions for installing GCC from the source for CentOS, Red Hat Enterprise Linux, and SUSE Enterprise Linux.
  • Updated the SDK versions throughout the guide.
  • Added a note about the Microsoft Visual Studio and Eclipse plug-ins in Prerequisites for the Intel® FPGA SDK for OpenCL™ Pro Edition.
  • Added Microsoft Visual Studio and Eclipse plug-ins install instructions in Installing the Intel® FPGA SDK for OpenCL™ Pro Edition topics for Windows and Linux.
  • In multiple topics, added or updated a note about the lack of support for Windows and Linux BSPs.
  • Updated the backward compatibility options in Enabling Backwards Compatibility for an FPGA Board and Intel® FPGA SDK for OpenCL™ Pro Edition and BSP Backwards Compatibility topics.
2020.06.22 20.2
  • Updated the SDK versions throughout the guide.
  • Updated the Intel Acceleration Stack version in Intel® FPGA SDK for OpenCL™ Pro Edition and BSP Backwards Compatibility.
  • Added reference to the Intel® Stratix® 10 bring-up guide in the introduction.
  • RAM details and GCC version updated in Prerequisites for the Intel® FPGA SDK for OpenCL™ Pro Edition.
  • Updated the board directory details in Contents of the Intel® FPGA SDK for OpenCL™ Pro Edition.
  • Modified the Intel® FPGA SDK for OpenCL™ Pro Edition Installation Process Overview figure to include downloading both Intel and Custom Platforms in Overview of the Intel® FPGA SDK for OpenCL™ Pro Edition Setup Process..
  • Modified the FPGA Programming Overview figure to include -board-package=<board_package_path> in Overview of the Intel® FPGA SDK for OpenCL™ Pro Edition Setup Process..
  • Since the BSPs are no longer part of the SDK, updated all occurrences of the path to BSP.
  • Modified the title and instructions in the Downloading an OpenCL Design Example topic.
  • Removed references to downloading OpenCL design examples from Intel website and replaced them with instructions to access examples from the SDK.
  • Added a new topic GCC Requirement.
2019.12.16 19.4
  • Made minor updates in steps 1 and 4 in Building the Host Application.
  • Added more information in step 6 of Installing an FPGA Board.
  • Updated the backward compatibility details in Intel® FPGA SDK for OpenCL™ Pro Edition and BSP Backwards Compatibility.
  • Changed the BSP path to INTELFPGAOCLSDKROOT/board in Installing an FPGA Board.
  • Updated the backwards compatibility version details in Enabling Backwards Compatibility for an FPGA Board.
  • Made the following changes in Creating the FPGA Hardware Configuration File of an OpenCL Kernel:
    • Added more information to the description.
    • Added more information to Step 2.
    • In Step 4, removed a task about .aoco file.
  • Added more information about ICD and FCD in Building the Host Application.
  • Updated the details about environment variables in Setting the Intel® FPGA SDK for OpenCL™ Pro Edition User Environment Variables
  • Included GCC 6.3.0 requirement in Prerequisites for the Intel® FPGA SDK for OpenCL™ Pro Edition
2019.09.30 19.3
  • In Creating the FPGA Hardware Configuration File of an OpenCL Kernel, updated two commands.
  • In Overview of the Intel® FPGA SDK for OpenCL™ Pro Edition Setup Process, updated few commands in the "FPGA Programming Overview" image.
  • In Verifying Host Runtime Functionality via Emulation, removed steps about installing a custom or reference platform and verifying the QUARTUS_ROOTDIR_OVERRIDE environment variable.
  • In Compiling a Kernel for Emulation, removed -fast-emulator option.
  • In Creating the FPGA Hardware Configuration File of an OpenCL Kernel, updated the commands.
  • In Emulating Your OpenCL Kernel, made the following updates:
    • Removed a steps about running aocl linkflags, linking host application, and moving the hello_world.aocx file.
    • Changed CL_CONTEXT_EMULATOR_DEVICE_INTELFPGA to CL_CONFIG_CPU_EMULATE_DEVICES.
    • Added more information in the step about running the host application for emulation.
    • Removed information about shared library copy.
    • Only in Emulating Your OpenCL Kernel topic for Linux, added a note about the version of libstdc++.so that must be at least that of GCC 6.3.0.
  • In Getting Started with the SDK on Windows chapter, swapped topics Uninstalling an FPGA Board and Uninstalling the Software.
  • In Uninstalling the Software, added a note about uninstalling the FPGA board.
  • In Building the Host Application, completely updated this topic by adding new steps and modifying existing steps.
2019.04.01 19.1
2018.01.14 18.1
2018.12.24 18.1
  • Removed references to passing channels by reference since it is no longer supported.
2018.12.10 18.1
2018.09.24 18.1
  • In Intel® FPGA SDK for OpenCL™ Pro Edition, the Intel® FPGA SDK for OpenCL™ Offline Compiler has a new front end. For a summary of changes introduced by this new front end, see Improved Intel® FPGA SDK for OpenCL™ Compiler Front End in the Intel® FPGA SDK for OpenCL™ Pro Edition Release Notes.
  • Replaced altera.com links with intel.com links. For example, http://dl.altera.com/opencl/ is now http://fpgasoftware.intel.com/opencl/.
2018.05.04 18.0
  • Removed Intel® Quartus® Prime Standard Edition software-related information.
  • In Overview of the Intel FPGA SDK for OpenCL Pro Edition Setup Process, updated the figure FPGA Programming Overview to include the .aocr file as an output and changed the -c flag to -rtl flag in the Attention note.
  • For Windows and Linux, updated the maximum number of devices (that is, acl number) from 32 to 128 in the following topics:
    • Querying the Device Name of Your FPGA Board
    • Programming the Flash Memory of an FPGA
Date Version Changes
December 2017 2017.12.08
November 2017 2017.11.06
May 2017 2017.05.05
  • Rebranded the Altera Client Driver (ACD) to the FPGA Client Driver (FCD).
  • Updated the download instructions in Downloading the Intel® FPGA SDK for OpenCL™ for Windows and Linux.
  • Added reminders that folder names where you uncompress downloaded OpenCL design examples must not contain spaces.
October 2016 2016.10.31
  • Rebranded the Altera SDK for OpenCL to Intel® FPGA SDK for OpenCL™ .
  • Rebranded the Altera Offline Compiler to Intel® FPGA SDK for OpenCL™ Offline Compiler.
  • In Installing an FPGA Board for Windows and Linux, provided the following updates:
    • Noted that the SDK supports multi-Custom Platform installation. To use the SDK utilities on each board in a multi-Custom Platform installation, the AOCL_BOARD_PACKAGE_ROOT environment variable setting must correspond to the Custom Platform subdirectory of the associated board.

    • Noted that in a multi-Custom Platform system, the host program should use ACD to discover the boards instead of directly linking to the MMD libraries.

  • In Building the Host Application for Windows, outlined the prerequisite tasks for setting up ACD and ICD for use with Microsoft Visual Studio 2015 prior to building the host application.
May 2016 2016.05.02
  • Replaced the lists of supported Windows and Linux versions to a link to the Operating System Support page on the Altera website.
  • Added the %ALTERAOCLSDKROOT%\windows64\bin setting to the list of Windows environment variables.
  • Corrected the Windows instructions for setting the CL_CONTEXT_EMULATOR_DEVICE_ALTERA variable for emulating multiple devices.
November 2015 2015.11.02
  • Changed instances of Quartus II to Quartus Prime.
  • Added Windows 8.1 to supported Windows versions.
  • Modified download and installation instructions for the tar file that includes the AOCL, Quartus Prime software, and device support.
  • Deprecated and removed AOCL-only installation instructions because they are invalid for the current version.
  • Added instructions to verify host runtime functionality by emulating the hello_world example design.
  • Modified the figure FPGA Programming Overview to include emulation in the programming flow.
  • Updated uninstallation instructions.
May 2015 15.0.0
  • Reorganized instructions into the following sections:December 2014
    • Getting Started with the AOCL on Windows
    • Getting Started with the AOCL on Linux
  14.1.0
  • Reorganized information flow.
  • Updated Red Hat Enterprise Linux (RHEL) version support.
  • Included the Contents of the AOCL section.
  • Updated licensing instructions for the new Altera Software Development Kit (SDK) for OpenCL (AOCL) single license.
  • Updated board uninstallation instructions to include the aocl uninstall utility command.
  • Included information on the init_opencl script for setting environment variables.
  • Grouped software and board uninstallation instructions under Uninstalling the Software and the FPGA Board.
June 2014 14.0.0
  • Updated the Prerequisites section.
  • Updated the figure AOCL Installation Process Overview.
  • Updated software download instructions.
  • Updated AOCL installation and uninstallation instructions for Windows.
  • For Linux systems:
    • Added the sections Installing the AOCL on Linux Using RPM and Uninstalling the AOCL on Linux Using RPM.
    • Updated the section Installing the AOCL on Linux Using the GUI Installer.
  • Added the section Licensing the Software.
  • Updated the section Installing an FPGA Board with updated instructions on querying your devices and running diagnostic tests.
  • Updated the section Creating the FPGA Hardware Configuration File of an OpenCL Kernel:
    • Updated path that you have to set for AOCL_BOARD_PACKAGE_ROOT.
    • Updated example AOC output for compiling hello_world.cl with the -v option.
    • Updated AOC output.
  • Added the section Identifying the Device Name of Your FPGA Board.
  • Modified instructions for building and running the host application with updated hello_world directory and file names.
  • Added the section Uninstalling an FPGA Board.
December 2013 13.1.1
  • Updated the Prerequisites section to include a reminder to install Linux kernel source, headers, and GCC.
November 2013 13.1.0
  • Reorganized information flow.
  • Updated the Prerequisites section.
  • Updated board installation instructions.
  • Updated software download instructions.
  • Inserted the section Installing the AOCL and the Quartus II Software Together.
  • Updated software installation and uninstallation instructions.
  • Inserted the following figures:
    • AOCL Installation Process Overview
    • FPGA Programming Overview
  • Removed the Licensing section.
  • Removed all board-specific installation and configuration instructions.
  • Changed example OpenCL application used to demonstrate kernel configuration and FPGA programming from moving_average to hello_world.
  • Inserted the section Updating the Hardware Image on the FPGA, which contained the updated flash programming instructions.
  • Removed the section Installing the USB-Blaster Driver on Windows.
  • Updated output from successful execution of hello_world kernel on FPGA for Windows and Linux systems.
  • Removed the figure Contents of the Moving Average Example.
  • Removed the figure Opening host.sln in Visual Studio.
June 2013 13.0 SP1.0
  • Updated requisite Quartus II and AOCL software versions from 13.0 to 13.0 SP1.
  • Inserted the figure A Correct Windows Device Manager After Complete Board Driver Installation for a BittWare Board.
  • Updated the vendor and device IDs in the Verifying the Functionality of the BittWare Board section for Windows.
  • Updated the AOCL installation instructions for Linux systems that do not contain a .cshrc or a .bashrc file in the directory.
  • Updated path to the AOCL design examples.
  • Updated the figure Contents of the Moving Average Example.
  • Updated flash programming instructions.
May 2013 13.0.1
  • Renamed the OpenCL_SDK folder or directory to AOCL.
  • Inserted warning about the AOCL installation dependency on .cshrc and .bashrc files for Linux systems.
  • Included reminder to BittWare board users about installing the BittWare development software.
  • Inserted warning about potential Jungo WinDriver installation failure for systems running on Windows 7. Included reinstallation instructions.
  • Inserted warnings about error messages displayed for aocl commands that have not been implemented for the BittWare FPGA board.
  • Inserted caution message about setting the environment variable AOCL_BOARD_PACKAGE_ROOT .
  • Updated board driver installation procedures for Windows and Linux systems.
  • Modified the path to the default location of the AOCL for Windows and Linux systems.
  • Modified the path name added to the PATH environment variable when installing the AOCL on Linux systems. The path name should be $QUARTUS_ROOTDIR/bin instead of $QUARTUS_ROOTDIR/bin64 .
May 2013 13.0.0
  • Updated installation and compilation procedures.
  • Incorporated licensing procedure.
  • Updated flash programming procedure and moved it to Appendix A.
  • Updated links to software and documentation download pages.
November 2012 12.1.0 Initial release.
1 The Intel® FPGA SDK for OpenCL™ is based on a published Khronos Specification, and has passed the Khronos Conformance Testing Process. Current conformance status can be found at www.khronos.org/conformance.