Procedures - 2021.1 English

Xilinx Standalone Library Documentation OS and Libraries Document Collection (UG643)

Document ID
UG643
Release Date
2021-06-16
Version
2021.1 English

This section provides detailed descriptions of the various procedures.

Zynq eFUSE Writing Procedure Running from DDR as an Application

This sequence is same as the existing flow described below.
  1. Provide the required inputs in xilskey_input.h, then compile the platform project.
  2. Take the latest FSBL (ELF), stitch the <output>.elf generated to it (using the bootgen utility), and generate a bootable image.
  3. Write the generated binary image into the flash device (for example: QSPI, NAND).
  4. To burn the eFUSE key bits, execute the image.

Zynq eFUSE Driver Compilation Procedure for OCM

The procedure is as follows:
  1. Open the linker script (lscript.ld) in the platform project.
  2. Map all the sections to point to ps7_ram_0_S_AXI_BASEADDR instead of ps7_ddr_0_S_AXI_BASEADDR. For example, Click the Memory Region tab for the .text section and select ps7_ram_0_S_AXI_BASEADDR from the drop-down list.
  3. Copy the ps7_init.c and ps7_init.h files from the hw_platform folder into the example folder.
  4. In xilskey_efuse_example.c, un-comment the code that calls the ps7_init() routine.
  5. Compile the project.

    The <Project name>.elf file is generated and is executed out of OCM.
When executed, this example displays the success/failure of the eFUSE application in a display message via UART (if UART is present and initialized) or the reboot status register.

UltraScale eFUSE Access Procedure

The procedure is as follows:
  1. After providing the required inputs in xilskey_input.h, compile the project.
  2. Generate a memory mapped interface file using TCL command write_mem_info
  3. Update memory has to be done using the tcl command updatemem.
  4. Program the board using $Final.bit bitstream.
  5. Output can be seen in UART terminal.

UltraScale BBRAM Access Procedure

The procedure is as follows:
  1. After providing the required inputs in the xilskey_bbram_ultrascale_input.h` file, compile the project.
  2. Generate a memory mapped interface file using TCL command
  3. Update memory has to be done using the tcl command updatemem:
  4. Program the board using $Final.bit bitstream.
  5. Output can be seen in UART terminal.