AnsweredAssumed Answered

MPC560xB - Bad RAM initialization at startup

Question asked by Romain BENET on Jul 5, 2017
Latest reply on Jul 12, 2017 by Romain BENET

Hi,

 

in a previous post I ask why in the following startup code

"

   /* SRAM initialization code*/
   lis r11,L2SRAM_LOCATION@h
   ori r11,r11,L2SRAM_LOCATION@l

   /* Loops to cover L2SRAM, stmw allows 128 bytes (32 GPRS x 4 bytes) writes */
   lis r12,L2SRAM_CNT@h
   ori r12,r12,L2SRAM_CNT@l
   mtctr r12

   init_l2sram_loop:
   stmw r0, 0(r11) /* Write 32 GPRs to SRAM*/
   addi r11,r11,128 /* Inc the ram ptr; 32 GPRs * 4 bytes = 128B */
   bdnz init_l2sram_loop /* Loop for 48k of SRAM */

"

SRAM data is not initialized to value 0x00 in all bytes and you answer me that 

" There in no need to have ram initialized with 0x0000 0000 patern.

  And it is also not recommended to have all 0 in SRAM.

  Your RAM will be initialed with R0 to R31 GPRs in 128bytes loops. And the address on R11 will be incremented by 128B. "

 

What is the reason to avoid SRAM initialization to pattern 0x0000 0000 ?

 

Best regards,

Romain

Outcomes