Intel® FPGA AI Suite: Getting Started Guide

ID 768970
Date 4/05/2023
Public

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

Visible to Intel only — GUID: qfj1656011656362

Ixiasoft

Document Table of Contents

6.8. Building an FPGA Bitstream for the PCIe Example Design

To complete this portion of the tutorial, you must meet the following prerequisites:
  • You must have a license for bitstream generation of the Intel® FPGA AI Suite IP.
  • You must have a specific version of Intel® Quartus® Prime Pro Edition installed:
    • The PCIe-based design example for Intel® Arria® 10 requires Intel® Quartus® Prime Pro Edition Version 19.2.
    • The PCIe-based design example for Intel Agilex® 7 devices requires Intel® Quartus® Prime Pro Edition Version 22.4.
  • You must have the following paths included in your $PATH environment variable:
    • quartus/bin
    • qsys/bin

If you do not have a license for Intel® FPGA AI Suite, the generated IP has a built-in inference-count limitation. Any inference operations that occur after the limit is reached generate an error message that indicates that a license is required. To reset the inference count limit, you must reprogram the bitstream onto the FPGA device.

Building an FPGA Bitstream for the PCIe-Based Design Example for Intel® Arria® 10 Devices

Run the following command for the PCIe-Based Design Example for Intel® Arria® 10 devices:
cd $COREDLA_WORK/demo
dla_build_example_design.py \
  -a $COREDLA_ROOT/example_architectures/A10_Performance.arch \
  --build -ed 1 \
  --build-dir build_A10_Performance \
  --output-dir $COREDLA_WORK/demo/my_bitstreams

You must include the -n 1 option when you build the A10_FP16_Example.arch architecture because the FPGA device on the Intel® PAC with Intel® Arria® 10 GX FPGA has enough DSPs only to build a single instance of this architecture.

If you want to vary the Intel® Quartus® Prime random seed, specify the --seed option as part of the dla_build_example_design.py command.

If you want to see the full set of supported options, run the following command:
dla_build_example_design.py --help

This commands places the bitstreams into the my_bitstreams directory. The bitstream is named A10_Performance.gbs.

After the bitstream is built, you must program it onto the FPGA following the instructions in section Programming the FPGA Device.

Building an FPGA Bitstream for the PCIe-Based Design Example for Intel Agilex® 7 Devices

Run the following command for the PCIe-Based Design Example for Intel Agilex® 7 devices:
cd $COREDLA_WORK/demo
dla_build_example_design.py \  
  -a $COREDLA_ROOT/example_architectures/AGX7_Performance.arch \
  --build -ed 3 -n 4 \
  --build-dir build_AGX7_Performance \
  --output-dir $COREDLA_WORK/demo/my_bitstreams

If the AOCL_BOARD_PACKAGE_ROOT environment variable is not set, the dla_build_example_design.py command returns an error message. To set this environment variable, review the instructions in Additional Software Prerequisites for the PCIe-based Design Example for Intel Agilex 7 Devices.

If you want to see the full set of supported options, run the following command:
dla_build_example_design.py --help
The dla_build_example_design.py command provides a --seed option that you can use to vary the Intel® Quartus® Prime random seed.

This commands places the bitstreams into the my_bitstreams directory. The bitstream is named AGX7_Performance.sof.

After the bitstream is built, you must program it onto the FPGA following the instructions in section Programming the FPGA Device.