3.6.8.2.6 Step 6 - Programming the FPGA bitstream with FPExpress

After programming the Linux image for the first time, in order to boot the board, you’ll also have to program a matching bitstream to the FPGA. SmartHLS comes with a default bitstream that can be used to boot the board, which can be programmed using the following steps:
  1. Open FPExpress:
    • On Windows, the program can be found by opening the Start Menu, then scrolling down the list of programs until you see the Microchip Libero SoC v2024.1 folder (under the M letter) -> FPExpress.
    • On Linux, you can navigate to the bin directory in your Libero installation, and then sudo ./fp6_env_install, then open FPExpress with the command ./FPExpress.
  2. Click New, select Import FlashPro Express job file, and navigate to your SmartHLS installation to select the job file: <SMARTHLS_INSTALLATION_DIR>\SmartHLS\boards\iciclekit\MPFS_ICICLE_BASE_DESIGN_<version>.job. For example: C:\Microchip\SmartHLS-2024.1\SmartHLS\boards\iciclekit\MPFS_ICICLE_BASE_DESIGN_<version>.job. Then choose a temporary path for the FPExpress project location.
    Important: Ensure that the version is updated in the path.
  3. Select which programmer you wish to use (if you have multiple), and note down the programmer ID (highlighted in a red box in the picture below). From the drop-down box above the RUN button make sure that PROGRAM is selected.
  4. Now press the RUN button, and you should see a confirmation that the programming passed:

    This will program a default bitstream to the FPGA fabric, as well as a compatible bootloader (HSS), which will allow the board to boot up with the newly added Linux image.

  5. Programming the bitstream will automatically reset the board. Do NOT power cycle.