Keil Logo

C166: LOCATE VARIABLES TO XC16X ON-CHIP ERAM


Information in this article applies to:

  • C166 Version 5

QUESTION

The Infineon XC161, XC164, and XC167 provides an on-chip Program SRAM or ERAM that is typically used for program execution. Is it possible to use this memory also for variables? If yes, how can I locate variables to this memory area?

ANSWER

Yes, it is possible to use the ERAM for variables. There are several ways possible to make this memory available for C programs.

  1. When you are using only on-chip RAM of the device, you may simply re-direct the NDATA memory class to the ERAM address space. Open the dialog Project - Options for Target - L166 Locate and disable Use Memory Layout from Target Dialog. In this dialog copy the Target Classes string to the User Classes field and change the memory area for NDATA and NDATA0 as shown below:
    ICODE (0xC00000-0xC1FFFF), NCODE (0xC00000-0xC0FFFF),
    FCONST (0xC00000-0xC1FFFF), HCONST (0xC00000-0xC1FFFF),
    XCONST (0xC00000-0xC1FFFF), NCONST (0xC04000-0xC07FFF),
    NDATA (0xE00000-0xE007FF), NDATA0 (0xE00000-0xE007FF),
    SDATA (0xC000-0xCFFF, 0xF600-0xFDFF), SDATA0 (0xC000-0xCFFF, 0xF600-0xFDFF),
    IDATA (0xF600-0xFDFF), IDATA0 (0xF600-0xFDFF),
    FDATA (0xC000-0xCFFF, 0xF600-0xFDFF), FDATA0 (0xC000-0xCFFF, 0xF600-0xFDFF),
    HDATA (0xC000-0xCFFF, 0xF600-0xFDFF), HDATA0 (0xC000-0xCFFF, 0xF600-0xFDFF),
    XDATA (0xC000-0xCFFF, 0xF600-0xFDFF), XDATA0 (0xC000-0xCFFF, 0xF600-0xFDFF)
    

    Now all variables that are defined with the near memory type are located into the memory area 0xE00000 - 0xE007FF which represents the ERAM space.

  2. Refer to RENAMECLASS in the C166 User's Guide.

MORE INFORMATION

SEE ALSO

FORUM THREADS

The following Discussion Forum threads may provide information related to this topic.

Last Reviewed: Thursday, September 22, 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.