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.

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.