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:
<path_to_elf>/executable.elf
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.