MPC5604 does not clear RAM in hot boot!

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

MPC5604 does not clear RAM in hot boot!

688 Views
崔亚飞
Contributor II

How can I modify the start file so that the chip does not clear the RAM when it's hot?

5 Replies

551 Views
petervlna
NXP TechSupport
NXP TechSupport

Hi,

Hmm,  are you initializing RAM in your startup code?

What do you mean by hot? (hight temperature?)

You have to initialize RAM after reset, so you wont have ECC faults in RAM.

Could you specify it more closely?

Peter

551 Views
崔亚飞
Contributor II

Yes, it is the RAM that initializes the startup code. After the MCU is reset, some of the RAM does not need to be initialized. How can I modify startup code?

0 Kudos

551 Views
petervlna
NXP TechSupport
NXP TechSupport

Hi,

If you don't want to initialize some parts of RAM, you just simply modify the RAM init range in your linker file.

Then startup will do only defined RAM array size initialization.

Peter

551 Views
崔亚飞
Contributor II

Thank you for your help! Peter!

Can you be more specific?Is it to modify the code below?


MEMORY
{
       resetvector:                      org = 0x00000000, len = 0x00000008
      init:                                     org = 0x00000020, len = 0x00000FE0
      exception_handlers:          org = 0x00001000, len = 0x00001000
      internal_flash:                    org = 0x00002000, len = 0x0007E000

      internal_ram:                     org = 0x40000000, len = 0x00006000
      heap :                                 org = 0x40006000, len = 0x00001000
      stack :                                org = 0x40007000, len = 0x00001000

}

MEMORY
{
      pseudo_rom:                        org = 0x40000000, len = 0x00003000
      init:                                        org = 0x40004000, len = 0x00001000
      exception_handlers:             org = 0x40005000, len = 0x00001000
      internal_ram:                        org = 0x40006000, len = 0x00001800
      heap :                                   org = 0x40007800, len = 0x00000400 /* Heap start */
      stack :                                  org = 0x40007C00, len = 0x00000400 /* Stack Start */
}

0 Kudos

551 Views
petervlna
NXP TechSupport
NXP TechSupport

Hi,

You can modify your internal_ram length.

Or the ram initialization loop in startup or its range in linker.

Peter