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# 21501

7.1/6.3 EDK - Stack/Heap Size Allocation for MicroBlaze


Keywords: stack, heap, MicroBlaze, allocation, size, gcc

Urgency: Standard

General Description:
The memory space allocated for stack + heap in a MicroBlaze system is 2x the requested amount. i.e., when 0x400 of stack and 0x500 of heap are allocated in the linker script, the generated ELF allocates x1208 for stack + heap which is slightly > 2x the requested amount.

With EDK 6.3.2, use BSB to create a basic MicroBlaze system with a test app. Use Generate Linker Script to set the heap to 0x500 and the stack to x400. Execute Build All User Applications. In a Xygwin shell execute mb-objdump -h executable.elf in the TestApp directory. Note that the size reported for the bss_stack section is x1208.


Remove the linker script and set the stack and heap size in the Compiler Settings, instead.
AR# 21501
Date Created 05/23/2005
Last Updated 04/13/2007
Status Archive
Type General Article