cancel
Showing results for 
Search instead for 
Did you mean: 

STM32H7S78-DK examples exceed external RAM chip APS256XXN-OBR-BG max speed

rk_iot
Associate II

Hello,

in all examples for the STM32H7S78-DK - including the TouchGFX applications - the frequency for the external APS256XXN-OBR-BG PSRAM is set to 200 MHz:

extmem_list_config[1].PsramObject.psram_public.FreqMax = 200 * 1000000u;

 

But in the datasheet for the APS256XXN-OBR-BG, see

https://www.mouser.at/datasheet/2/1127/APM_PSRAM_OPI_Xccela_APS256XXN_OBRx_v1_0_PKG-1954780.pdf

it says that the default maximum read and write clock is 133Mhz, see page 16 and 18:

rk_iot_2-1741260144048.png

It also says:

"Write latency, WLC, is default to 5 after power up. Use MR Write to set write latencies according to write
latency table. When operating frequency exceeding Fmax listed in the table will result in write data corruption."

 

Could the be a potential bug in the memory configuration of the STM32H7S78-DK board, which could lead to RAM corruption?

 

Thank you and best regards

rk_iot

 

2 REPLIES 2
Dor_RH
ST Employee

Hello @rk_iot,

Could you please provide the names of the examples you are currently working on within STM32CubeH7RS?

Thank you for your collaboration.

Dor_RH

rk_iot
Associate II

Hello @Dor_RH

All examples using external RAM are using the same settings, see:

1) STM32Cube_FW_H7RS_V1.1.0\Projects\STM32H7S78-DK\Applications\USB_Host\MSC_RTOS\Boot\Src\ extmem_manager.c:

extmem_list_config[1].PsramObject.psram_public.FreqMax = 200 * 1000000u;

 

2) STM32Cube_FW_H7RS_V1.1.0\Projects\STM32H7S78-DK\ Templates\Template_LRUN\Boot\Src\ extmem_manager.c:

extmem_list_config[1].PsramObject.psram_public.FreqMax = 200 * 1000000u;

 

3) Also when creating an Project in TouchGFX 4.24.2 Designer for the STM32H7S78-DK in the created file:

PROJECT_DIR\Boot\Core\Src\extmem_manager.c:

extmem_list_config[1].PsramObject.psram_public.FreqMax = 200 * 1000000u;

 

Best regards,

rk_iot