We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

AR# 62778

Vivado Partial Reconfiguration - How to update BRAM with ELF file for Partial Reconfiguration when MicroBlaze is inside of the reconfigurable module.


How can I update block RAM with an ELF file for Partial Reconfiguration (PR) when MicroBlaze is inside of the reconfigurable module?


Currently, "updatemem" is not supported for partial bit files.

If a PR design has a MicroBlaze instance inside of Static, "updatemem" can still be used to update full bit files.

Note: 'data2mem' will not support partial bit files, but "updatemem" will support the partial bit files in the future.

However, to update the block RAM contents inside of the reconfigurable region, the elf association flow must be used.

Using Vivado in Tcl mode, follow the steps below:

1) Load the post-route_design DCP with the Reconfigurable Module (RM) that needs to be updated.

open_checkpoint config_1_routed.dcp

2) Add the ELF file:

 add_files <elf_file>

3) Set the file properties SCOPED_TO_REF and SCOPED_TO_CELLS to associate the ELF file to the MicroBlaze instance:

set_property SCOPED_TO_REF   {base_microblaze_design}  [get_files <elf_file>]
 set_property SCOPED_TO_CELLS {microblaze_0}            [get_files <elf_file>]

4) Run "write_bistream "and you should receive the message below:

  write_bitstream config_1_updated.bit

INFO: [Memdata 28-144] Successfully populated the BRAM INIT strings from the following elf files:

Note: This will generate both a full and partial bit file, both of which will have the updated BRAM contents.

To generate just an update partial bit file, use the write_bitstream cell command.

AR# 62778
Date Created 11/09/2014
Last Updated 05/16/2016
Status Active
Type General Article
  • Vivado Design Suite - 2014.3
  • Vivado Design Suite - 2014.4
  • Vivado Design Suite - 2015.1
  • More
  • Vivado Design Suite - 2015.2
  • Vivado Design Suite - 2015.3
  • Vivado Design Suite - 2015.4
  • Vivado Design Suite - 2015.4.1
  • Vivado Design Suite - 2015.4.2
  • Vivado Design Suite - 2016.1
  • Less