cancel
Showing results for 
Search instead for 
Did you mean: 

Questions regarding the RAM self-test in X-CUBE-STL

Ryan_Lee
Associate

When using the RAM self-test feature in X-CUBE-STL, I enabled the RAM backup buffer in the application by not defining STL_DISABLE_RAM_BCKUP_BUF. I also allocated a section in the scatter file:

; 128KB DTCM
RW_STL_TM_RAM 0x20000000 0x20 {  ; Place STL RAM TM backup buffer outside tested subsets (i.e., beginning of RAM)
  *(backup_buffer_section)
}

 This section is explicitly excluded from the self-test region. My question is: ​How is the integrity of the RAM backup buffer itself ensured? If it is not tested, could errors in this buffer compromise the self-test process or data recovery? Do I need additional measures to guarantee its reliability?

2 REPLIES 2
CMYL
ST Employee

Hi @Ryan_Lee 

The integrity of the RAM backup buffer is ensured by the March C- algorithm, which tests the backup buffer area each time a RAM run test is called. This means that the backup buffer itself is included in the testing process to ensure its reliability. Specifically, the backup process is enabled by default during RAM tests to preserve the RAM content, and the RAM backup buffer area is tested by the March C- algorithm each time a RAM run test is called, prior to any subset defined by the user being tested.

Therefore, you do not need additional measures to guarantee the reliability of the RAM backup buffer, as it is inherently tested as part of the self-test process.

Refer to UM3167 "STM32G4 series UL/CSA/IEC 60730-1/60335-1 self-test library user guide" section 4 for more details.

 

Best regards

Thanks