cancel
Showing results for 
Search instead for 
Did you mean: 

STM32H743ZIT6 RAM regions

heyo
Senior

I've noticed that STM32H743ZIT6 is divided in to three RAM regions (RAM_D1,RAM_D2,RAM_D3).

heyo_0-1688020708189.png

So I want to expand one map region for example RAM_D1 and make it one. Like this:

heyo_1-1688020745853.png

Can I do that? How can I achieve it because in console I get :

heyo_2-1688020789341.png

 

 

4 REPLIES 4
Pavel A.
Evangelist III

Only Chuck Norris could do that, and he has retired long ago.

For a large solid RAM block use external memory on FMC.

Or maybe can be doable when RAM_D1 is full it goes to RAM_D2?

Pavel A.
Evangelist III

AFAIK the GNU ARM linker from ST toolchain does not move to other memories automatically. And developers usually do not want this, rather they want tight control over what goes where. These RAMs have different properties.

The linker file describes where the RAM is in the memory map, not where you want it to be.

For you to get a contiguous block of RAM, each of the RAM_Dx regions have to be contiguous to begin with. But RAM_D1 goes from 0x2400 0000 for 512k to 0x2408 0000, not 0x3000 0000. So you have a gap of 191MB in between.

That's like saying that you'd like to have Canada butted next to England because it would be more convenient to get Jelly Babies. Just redrawing the map isn't going to move the continents.