AR# 63605


SDK - How to Create an MCS Boot Image using SPI SREC BootLoader


How can I use SPI SREC Bootloader application?


Below is the procedure to boot a 'Hello World' application from a serial flash using the SPI SREC bootloader based MCS image.

  1. Create an SPI SREC bootloader application
  2. In SREC bootloader application source (blconfig.h), change the flash image base address
    #define FLASH_IMAGE_BASEADDR <offset of the SREC image to be programmed to flash>
  3. Check the BSP settings of the application to ensure Xilisf (Xilinx In-system and Serial Flash Library) library is enabled and the serial_flash_familiy property is set to the appropriate value according to the board

  4. Rebuild the application
  5. Create helloworld application and link to DDR (in the linker script make sure that this application is executing from DDR)
  6. Convert the application elf into SREC format (mb-objcopy -O srec application.elf application.srec)
  7. Use the SDK Flash Program utility to program the SREC file in the serial flash (ensure that the offset corresponds to the one selected in the Bootloader source file)

    Note: Alternatively, the Program Flash application can convert the ELF file into SREC format using the corresponding checkbox
  8. Program the FPGA using the design bitstream and the bootloader ELF file to initialize BRAM

  9. Once the FPGA is configured, the SREC bootloader runs, copies the image from flash to DDR, and executes the application.
SREC SPI Bootloader
Loading SREC image from flash @ address: 00c00000
Bootloader: Processed (0x)000000c1 S-records
Executing program starting at address: 00000000
Hello World

Linked Answer Records

Master Answer Records

Answer Number Answer Title Version Found Version Resolved
66297 SDK - Design Assistant N/A N/A
AR# 63605
Date 08/17/2018
Status Active
Type Solution Center
People Also Viewed