Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

 Flash programming support for tools and devices as of Xilinx tools version 2015.4.1

 

Flash Programming, Zynq

SPI Boot Flash on Zynq is connected to PS only and is not directly accessible from PL or over JTAG. Whenever SPI Flash is programmed on Zynq following actions take place:

  1. OCM RAM is re-mapped as single linear memory at high address range, giving 256KByte continuous memory
  2. mini-version of u-boot.elf is loaded to this OCM RAM and executed
  3. data for programming is copied to Zynq OCM RAM
  4. flash tool communicates with u-boot over JTAG using ARM DCC channel

The same process takes place no matter what method is used to flash the SPI on Zynq.

program_flash

 

program_flash

This is command line tool to program the Flash on Zynq and FPGA devices.

Usage:  program_flash   <FLASH OPTIONS>   <CABLE & DEVICE OPTIONS>
 [FLASH OPTIONS]:
    -f <image file>       : Image to be written onto the flash memory
    -offset <address>     : Offset within the flash memory at which the image should be written
    -no_erase             : Do not erase the flash memory before programming
    -erase_only           : Only erases the flash as per size of the image file
    -blank_check          : Check if the flash memory is erased
    -verify               : Check if the flash memory is programmed correctly
    -fsbl <fsbl file>     : For NAND & NOR flash types only (Zynq only)
    -erase_sector <size>  : For flashes whose erase sector is other than 64KB (size in bytes)
   -flash_type <type>    : Supported flash memory types
For Zynq Devices
                                   1. qspi_single
                                   2. qspi_dual_parallel

                                   3. qspi_dual_stacked

                                   4. nand_8

                                   5. nand_16

                                   6. nor

...

                            For Non-Zynq Devices

...

                                   Please use the command line option -partlist to list all

...

 the flash types
    -partlist <bpi|spi> <micron|spansion> : List all the flash parts for Non-Zynq devices
                                List all flashes          - program_flash -partlist
                               

...

 List Spansion SPI flashes - program_flash -partlist spi spansion

...

 [CABLE & DEVICE OPTIONS]:
    -cable type xilinx_tcf esn <cable_esn> url <URL of the TCF agent>
    -debugdevice deviceNr <jtag chain no>

...

 

...


 EXAMPLE:
  1. Zynq (QSPI Single)
    program_flash -f BOOT.bin -flash_type qspi_single -blank_check -verify -cable type xilinx_tcf url tcp:localhost:3121

 

 

Flash Programming, Zynq

SPI Boot Flash on Zynq is connected to PS only and is not directly accessible from PL or over JTAG. Whenever SPI Flash is programmed on Zynq following actions take place:

  1. OCM RAM is re-mapped as single linear memory at high address range, giving 256KByte continuous memory
  2. mini-version of u-boot.elf is loaded to this OCM RAM and executed
  3. data for programming is copied to Zynq OCM RAM
  4. flash tool communicates with u-boot over JTAG using ARM DCC channel

The same process takes place no matter what method is used to flash the SPI on Zynq.

 

 

Flash Programming, Zynq UltraScale+

...