Memory Layout

2 views
Skip to first unread message

James

unread,
May 3, 2008, 3:45:50 AM5/3/08
to Virtual Cogs
Hi,

I am expanding on the camera demo project. In the demo the camera
buffer is located as a 'magic' number as opposed as being allocated in
some way.

IMAGE_BUFFER 0xc0201000

Now I assume that this is somewhere in application space a safe known
difference from interfering with other elements.

My question is, if I declare some large buffers in my application can
they overlap with the IMAGE_BUFFER and if so how do I calculate a safe
magic number. Basically how do I figure out the memory layout that
uMON will allocate my application.

Regards,
James

Dan Foisy

unread,
May 3, 2008, 8:31:53 PM5/3/08
to virtu...@googlegroups.com
James,

uMon performs no memory management at all. If your program never
returns to uMon, you can use all of SDRAM for your purposes 0xc0000000 -
0xc3ffffff. A map file showing the memory locations occupied by your
program and variables can be generated using the command arm-elf-nm.
When starting a program from umon however, it is prudent to link it to
start at 0xc0200000 - this ensures that your program does not stomp on
umon data space. Once your program is started, the space from
0xc0000000-0xc01fffff is available for use as well.

If you aren't using the image buffer, you can reuse that space for your
own purposes.

Dan

--
Daniel Foisy
Virtual Cogs Embedded Systems Inc.
Unit 4, 5694 Highway 7 East, Suite 311
Markham, Ontario, Canada L3P 1B4
www.virtualcogs.com
416-238-2231

"Your future is modular"

Reply all
Reply to author
Forward
0 new messages