Intel® FPGA SDK for OpenCL™ Standard Edition: Custom Platform Toolkit User Guide

ID 683398
Date 5/04/2018
Public

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

Document Table of Contents

1.5. Applying for the Intel® FPGA SDK for OpenCL™ Standard Edition Preferred Board Status

Registering your Custom Platform and the supported FPGA boards in the Intel® FPGA SDK for OpenCL™ Standard Edition Preferred Board Partner Program allows them to benefit from ongoing internal testing across versions of the Intel® Quartus® Prime Design Suite. Intel® -tested Custom Platforms and boards are more likely to be forward compatible with future Intel® Quartus® Prime Design Suite versions.

For your Custom Platform and the supported FPGA boards to achieve the Intel® FPGA SDK for OpenCL™ Preferred Board status, you must generate the following data and submit it to Intel® :

  1. The output from invoking the aocl board-xml-test command.
  2. The output from invoking the aoc -list-boards command.
  3. The outputs from the host compilation, host execution, and all Intel® Quartus® Prime report files (.rpt). Also, for each board in your Custom Platform, the acl_quartus_report.txt file from the following tests:
    1. All tests included in the INTELFPGAOCLSDKROOT/board/custom_platform_toolkit/tests directory, where INTELFPGAOCLSDKROOT points to location of the Intel® FPGA SDK for OpenCL™ Standard Edition installation.
    2. Compilations of the following examples on the OpenCL Design Examples page of the Intel FPGA website:
      1. Vector Addition
      2. Matrix Multiplication
      3. FFT (1D)
      4. FFT (2D)
      5. Sobel Filter
      6. Finite Difference Computation (3D)
  4. For each board in the Custom Platform, a summary of the following:
    1. HOST-TO-MEMORY BANDWIDTH as reported by the boardtest test in the Custom Platform Toolkit (/tests/boardtest).
    2. KERNEL-TO-MEMORY BANDWIDTH as reported by the boardtest test.
    3. Throughput in swap-and-execute(s) reported by the swapper test in the Custom Platform Toolkit (/tests/swapper).
    4. Actual clock freq as reported in the acl_quartus_report.txt file from the blank test in the Custom Platform Toolkit ( INTELFPGAOCLSDKROOT/board/custom_platform_toolkit/tests/blank).
    Important: Use global routing to reduce consumption of local routing resources. Using global routing is necessary because it helps meet timing and improve kernel performance (Fmax). Use global or regional routing for any net with fan-out greater than 5000, and for kernel clock, 2x clock and reset. Check the Non-Global High Fan-Out Signals report in the Resource subsection, which is under the Fitter section of the Compilation Report.
  5. Submit the necessary number of boards to Intel® for in-house regression testing. Regression testing tests the out-of-the-box experience for each board variant on each operating system that your Custom Platform supports. Ensure that you test the procedure outlined below before you submit your boards:
    1. Install the board into the physical machine.
    2. Boot the machine and invoke the aocl install <path_to_customplatform> utility command.
    3. Invoke the aocl diagnose command.
    4. Run the SDK's test programs. The tester can also invoke the aocl program <device_name> <kernel_filename>.cl command to verify the functionality of the program utility.