Code Execution In Ram - Renesas FSL-T06 User Manual

Flash self-programming library
Table of Contents

Advertisement

Flash Self-Programming Library

4.3 Code execution in RAM

Note
R01US0046ED Rev. 1.01
User Manual
Two methods are implemented in the Library to swap the boot cluster.
1. Swap the boot cluster only temporary. The boot cluster will be
unswapped again after a device reset. For details, please refer to
FSL_ChangeSwapState.
2. Invert the boot flag. The boot cluster will remain changed after a reset.
An additional parameter forces the device to swap the boot cluster
immediately in addition to changing the swap flag. Please refer to
FSL_ChangeSwapFlag.
The application, including the control program and the FSL are usually located in
the internal flash. As the memory location of the application is not permanently
available during Self-Programming, parts of the program need to be copied to a
"save" location, where they can be executed. This may be the internal RAM, but
also external RAM, if available, is acceptable.
To copy necessary code parts into available RAM, three different methods are
possible:
C-Startup
FSL_CopySections
User specific
C-Startup
The code is linked to the destination address. The compiler start-up routines copy
the code from a ROM image to the RAM. Please refer to the compiler
documentation for details.
FSL_CopySections
By calling the function FSL_CopySections all specified sections are copied to the
destination address.
User specific
In case of a user specific implementation, the user is responsible for the correct
location of the sections.
During RAM execution as well as during ROM execution, the device tries to
speed up execution time by a code prefetch mechanism. This prefetch
mechanism is responsible for ECC errors in case of uninitialized RAM areas.
Therefore the user has to initialize 32 Bytes behind the RAM placed code in case
of a user specific implementation.
Depending on the configured mode (see section 5.1 Pre-compile configuration)
following linker sections need to be copied to RAM:
User mode
FSL_CODE_RAM_USRINT
FSL_CODE_RAM_USR
FSL_CODE_RAM
FSL_CODE_ROMRAM
FSL_CODE_EX_PROT
FSL Usage
21

Advertisement

Table of Contents
loading

Table of Contents