Skip to content

STM32H743 cannot use all the available RAM #15439

Open
@pmancele

Description

@pmancele

Description of defect

Hello,
The STM32H743 is supposed to have 1 MB of RAM, but it is separated in different sections that does not seems to be continuous.
When compiling and running an Mbed OS application we only have access to 512k of RAM.

The sections are defined like this in the linker script:

MEMORY
{ 
 FLASH (rx)     : ORIGIN = MBED_APP_START, LENGTH = MBED_APP_SIZE
 DTCMRAM (rwx)  : ORIGIN = NVIC_RAM_VECTOR_ADDRESS + VECTORS_SIZE, LENGTH = 128K - VECTORS_SIZE
 RAM (xrw)      : ORIGIN = MBED_RAM_START, LENGTH = MBED_RAM_SIZE
 RAM_D2 (xrw)   : ORIGIN = 0x30000000, LENGTH = 288K
 RAM_D3 (xrw)   : ORIGIN = 0x38000000, LENGTH = 64K
 ITCMRAM (xrw)  : ORIGIN = 0x00000000, LENGTH = 64K
}

whith:

#define MBED_RAM_START  0x24000000
#define MBED_RAM_SIZE  0x80000  // 512 KB

Do you know a way to have access to other area than the RAM, like the RAM_D2 and RAM_D3 ? We need more than 512k for our project.
Maybe we can specify a RAM area when instantiating a new variable ?

Target(s) affected by this defect ?

NUCLEO_H743ZI2

Toolchain(s) (name and version) displaying this defect ?

arm-none-eabi-gcc (GNU Tools for Arm Embedded Processors 9-2019-q4-major) 9.2.1 20191025

What version of Mbed-os are you using (tag or sha) ?

mbed-os-6.17.0

What version(s) of tools are you using. List all that apply (E.g. mbed-cli)

1.10.5

How is this defect reproduced ?

Trying to use more than 512k of RAM on STM32h7x3 targets

Thank you !

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions