cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
simchask
Explorer
Explorer
1,176 Views
Registered: ‎11-23-2017

Microblaze programming with DDR addressing fails

I am trying to program my AC701 design with microblaze, with data in DDR.

When I generate a linker scrript to place data in DDR, I fail to program the device.

 

Console output:

cmd /C updatemem -force -meminfo \
C:/Users/Owner/Documents/project_16/project_16.sdk/design_1_wrapper_hw_platform_0/design_1_wrapper.mmi \
-bit \
C:/Users/Owner/Documents/project_16/project_16.sdk/design_1_wrapper_hw_platform_0/design_1_wrapper.bit \
-data C:\Users\Owner\Documents\project_16\project_16.sdk\IO_test\Debug\IO_test.elf -proc \
design_1_i/microblaze_0 -out \
C:/Users/Owner/Documents/project_16/project_16.sdk/design_1_wrapper_hw_platform_0/download.bit 

****** updatemem v2018.1 (64-bit)
  **** SW Build 2188600 on Wed Apr  4 18:40:38 MDT 2018

** Copyright 1986-2018 Xilinx, Inc. All Rights Reserved. source C:/Xilinx/SDK/2018.1/scripts/updatemem/main.tcl -notrace CRITICAL WARNING: [memdata-28-246] ERROR: [Updatemem 57-153] Fa ERROR: [Common 17-39] 'update_mem' failed due to earlier errors. iled to update the BRAM INIT strings for C:\Users\Owner\Documents\project_16\project_16.sdk\IO_test\Debug\IO_test.elf and C:/Users/Owner/Documents/project_16/project_16.sdk/design_1_wrapper_hw_platform_0/design_1_wrapper.mmi. INFO: [Common 17-206] Exiting updatemem at Thu Apr 26 13:05:40 2018...

Linker :

linker.jpg
0 Kudos
Reply
5 Replies
arpansur
Moderator
Moderator
1,116 Views
Registered: ‎07-01-2015

Hi @simchask,

 

Is there any specific reason for using local BRAM?

If not please try modifying the sections to DDR.

Thanks,
Arpan
----------------------------------------------------------------------------------------------
Kindly note- Please mark the Answer as "Accept as solution" if information provided is helpful.

Give Kudos to a post which you think is helpful and reply oriented.
----------------------------------------------------------------------------------------------
0 Kudos
Reply
stephenm
Moderator
Moderator
1,110 Views
Registered: ‎09-12-2007

Looks like you are trying to run updatemem using an ELF with its sections located in DDR.

This is the issue. The updatemem is used to update BRAM in the programmable logic, not in DDR.

 

If you want to place you application in DDR, then you can use the SDK debugger to debug your application.

simchask
Explorer
Explorer
1,094 Views
Registered: ‎11-23-2017

I was trying to make the microblaze allocate the memory for variables in DDR, not place any components of the program in the DDR. Is there a way to do this?

0 Kudos
Reply
stephenm
Moderator
Moderator
1,090 Views
Registered: ‎09-12-2007

Then you would use malloc in your application.

updatemem, is used for placing mem/elf file into BRAM

simchask
Explorer
Explorer
1,080 Views
Registered: ‎11-23-2017

So why is the linker script generator giving me the option of placing these sections of the program in the DDR?

Also, how do I direct malloc to use DDR instead of BRAM?

0 Kudos
Reply