2. Concept to achieve 32kB retention RAM¶
2.1. Objective¶
- Create an example project where your application is executed using the 32kB RAM (Block 4).
- Only the Block 4 (32kB RAM) is retained.
- How we will do it:
- Load at 0x7FC0000
- Execute at 0x7FD0000
- Rebase 0x7FD0000 at zero.
Note
- The 32kB RAM retained is very useful for small applications with very limited functionalities such as BLE barebone application
- The block 4 (32kB RAM) will be used to store the code, patch table, interrupt handler & ROM code.
- The Default boot-rom will directly jumps to SysRAM1 Block 1 (start from 0x07FC0000) that’s why the Reset handler and SystemInit are kept in SysRAM1 Block 1.
- The Code for the reset Handler does not need to be retained because during Hardware Reset it is restored from OTP or Flash
Note
- The Size of the section that contains the HW IP and ROM Data is calculated based on
__SCT_BLE_BASE
macro definition located insdk\common_project_files\da1458x_scatter_config.h
- During application development the HW IP and ROM Data section in block 4 cannot be used in any way. The total application size which is the maximum size that can be fitted in Block 4 for program execution is given by:
User Application size = Size of Block 4 - HW IP and ROM Data