Keil Logo

ARM: MEMORY SPACE OVERLAP WITH AT91SAM7 EXAMPLE


Information in this article applies to:

  • Keil CARM Compiler Version 2.20 and earlier

QUESTION

I am using the Keil CARM Compiler with the Atmel Evaluation Board AT91SAM7S. When I build the program HELLO for debugging in RAM (target AT91SAM7S RAM) then I get the following linker warning:

*** WARNING L30: MEMORY SPACE OVERLAP
    FROM:    00200000H
    TO:      00200040H

What is wrong here?

ANSWER

You are correct, the project is not correctly configured for the RAM target. However, you can easily correct this mistake by changing the selections as described below:

  • Right click in the Project Workspace - Files tab on the startup code SAM7S.s and open the dialog Options for File - ASM.
  • Delete , RAM_INTVEC and click OK.

Now the project compiles without warnings.

The startup file SAM7S.S has several configuration options that are specified with the Assembler directive SET.

  • RAM_INTVEC: when set the startup code copies exception vectors from on-chip Flash to on-chip RAM and remaps RAM to address 0.
  • RAM_MODE: when set the device is configured for code execution from on-chip RAM starting at address 0x00100000. The startup vectors are located to 0x00100000.

When both RAM_MODE and RAM_INTVEC are specified, the interrupt vectors are overlapping the startup code which gives the linker warning. You may also review the linker map file for analysis.

MORE INFORMATION

  • Refer to CPU Startup Code in the Getting Started for ARM User's Guide.
  • Refer to SET in the AARM User's Guide.

Last Reviewed: Friday, July 15, 2005


Did this article provide the answer you needed?
 
Yes
No
Not Sure
 
  Arm logo
Important information

This site uses cookies to store information on your computer. By continuing to use our site, you consent to our cookies.

Change Settings

Privacy Policy Update

Arm’s Privacy Policy has been updated. By continuing to use our site, you consent to Arm’s Privacy Policy. Please review our Privacy Policy to learn more about our collection, use and transfers
of your data.