cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
Newbie
Newbie
177 Views
Registered: ‎09-17-2020

Incorrect bit file generated by updatemem

I am using Vivado 2020.1. I instantiate a XPM_SRAM in my design as shown in xpm_sram.v with initialization file. The generated bit file runs correctly. Everything is good so far. 

However, when I try to use 'updatemem' to change the initialization value of the XPM_SRAM, it completes without any error. But the generated bit file doesn't work. I check the debug file generated by updatemem and find that only the first RAMB36 are with initialization value. All other RAMB36 are all 0s.   

^^^ Bitlane with BRAM Location: RAMB36_X2Y10
INIT_00:00000000000000000000000000000000000000000000004F693AC729CD807FC3
^^^ Bitlane with BRAM Location: RAMB36_X2Y18
INIT_00:0000000000000000000000000000000000000000000000000000000000000000
^^^ Bitlane with BRAM Location: RAMB36_X1Y19
INIT_00:0000000000000000000000000000000000000000000000000000000000000000
^^^ Bitlane with BRAM Location: RAMB36_X2Y12
INIT_00:0000000000000000000000000000000000000000000000000000000000000000

 

While in original bit file, all of them are with valid initial values.

get_property INIT_00 [get_cell cmsdk_fpga_sram_A/fileimage_reg_0_0_0]
256'h00000000000000000000000000000000000000000000001E8067C729CD807FC3
get_property INIT_00 [get_cell cmsdk_fpga_sram_A/fileimage_reg_0_0_1]
256'h00000000000000000000000000000000000000000000000C01640C208DA02850
get_property INIT_00 [get_cell cmsdk_fpga_sram_A/fileimage_reg_0_0_2]
256'h000000000000000000000000000000000000000000000C0D7C7639200D018800
get_property INIT_00 [get_cell cmsdk_fpga_sram_A/fileimage_reg_0_0_3]
256'h000000000000000000000000000000000000000000000059447605280D902C12

 

The command line I run updatemem is as follows and the mmi file is generated by Vivado:

C:\Xilinx\Vivado\2020.1\bin\updatemem -debug -force --meminfo cortexm3_soc.mmi --data D:\wrk\fw\Objects\uart1.mem --bit cortexm3_soc.bit --proc cmsdk_fpga_sram_A/xpm_memory_base_inst --out cortexm3_soc_modified.bit > memupdate.txt

(The attached file uart1.mem.txt and cortexm3_soc.mmi.xml are actually uart1.mem and cortexm3_soc.mmi. They are renamed because of the file upload error to this forum)

Is this a tool bug?

0 Kudos
Reply
0 Replies