Here you can find the reason why it is necessary to initialize the SRAM:

It's necessary to initialize SRAM in startup files before you read or write the SRAM. Easiest way: search for MPC55xx_init_debug.c file and change
#define INIT_DERIVATIVE_INTERNAL_SETUP 0
to
#define INIT_DERIVATIVE_INTERNAL_SETUP 1
Then function INIT_Derivative will be called in startup files.
It is necessary to change the base address and size. In the original code, base address is 0x4000_0000. You need to change it to end of your RAM image. Align the address to 128 bytes. And then change also the size.
stmw instruction is used for initialization - it writes all 32 general purpose core registers to SRAM.
When reading the description, I guess that it's really caused by the ECC.
And also be aware that core watchdog is enabled:

It's necessary to refresh it or disable it.
Regards,
Lukas