Nios® V Embedded Processor Design Handbook

ID 726952
Date 4/04/2022
Public

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

Document Table of Contents

5.5.2.2. SDM Bootloader Example Design

You can generate the SDM Bootloader Example Design from the IP Catalog. The example design is based on the Intel Stratix 10 SX SoC L-Tile development kit. Using the provided scripts, the hardware and software design are generated, and programmed respectively as SRAM Object Files (.sof) and JTAG Indirect Configuration Files (.jic) into the device.

For more information about booting the Nios V processor-based system from SDM based FPGA devices, refer to Nios V Processor Application Copied from Configuration QSPI Flash to RAM Using Boot Copier (SDM Bootloader)

To generate the SDM Bootloader Example Design using Platform Designer,

  1. In the Intel® Quartus® Prime software, go to Tools > Platform Designer.
  2. In the Platform Designer, select IP Variant.
  3. For Quartus project, select None.
  4. In the IP Variant dialog box, specify any name for your IP.
    Note: Saving the IP is not required.
  5. Click Select in the Component type.
    1. The IP Catalog opens.
    2. Search for Nios V/m Processor Intel FPGA IP.
    3. Create the IP design.
    Figure 66. IP Parameter Editor for Nios® V/m Processor Intel® FPGA IP
  6. Click Example Design: “SDM Bootloader Example Design and select your project folder.
  7. Close the IP Parameter Editor. When prompted with Save changes?, you do not need to save the IP. Click Don’t Save.
  8. Unzip the example design to your project folder. Refer to table below for the example design files and the description.
    To generate the SDM Bootloader Example Design using CLI,
    <Intel Quartus Prime installation directory>/niosv/bin/niosv-shell 
    Note: Disregard this command if you are already using Nios V command Shell.
    ip-deploy --component-name=intel_niosv_m --output-name=niosv_m.ip
    qsys-generate niosv_m.ip \
        --example_design=niosv_m.sdm_bootloader_example_design
    unzip s10soc_niosv_m_sdm_bootloader_example_design.zip
Table 12.  File Description (SDM Bootloader Example Design)
File Description
software/mailbox_bootloader/app Folder containing source code for SDM bootloader.
software/user_application/app Folder containing source code for user application.
create_design.py Python script to build the example design and program the device.
flash_settings.pfg Provide information to generate the JIC file using Programming File Generator tool.
mailbox_bootloader_bsp_script.tcl TCL script to configure the BSP Editor for SDM bootloader.
qsys_system_script.tcl TCL script to generate the example design .qsys file.
readme.txt Description and steps to build the example design.
toggle_issp.tcl TCL script to reset the design via In-System Sources and Probes (ISSP).
top.sdc Example design Synopsys* Design Constraints (.sdc) file.
top.tcl TCL script to generate the example design .qpf file and .qsf file.
top.v Top-level Verilog design.
user_application_bsp_script.tcl TCL script to configure the BSP Editor for user application.

Running the SDM Bootloader Example Design

  1. Setup the PATH variables, refer to Setting Up Open-Source Tools.
  2. Launch the Nios V Command Shell.
  3. Run create_design.py to build the example design and program the Intel Stratix 10 SX SoC L-Tile development kit.

    quartus_py create_design.py

  4. Reset the Nios V processor.

    quartus_stp -t toggle_issp.tcl

  5. Run JUART terminal to view the outputs.

    juart-terminal

    Figure 67. SDM Bootloader Example Design
Figure 68. JUART Terminal Output
  1. In the beginning, the window displays the following message

  2. Reaching the end, the window displays the following message: