MPC5748G Question about Data Flash

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

MPC5748G Question about Data Flash

Jump to solution
1,044 Views
kmh48301
Contributor IV

Hi, I just started MPC5748G.

And I have been studying Flash in this Chip.

 

I'm confused with memory map.

 

According to Reference Manual 126p, It seems that there is no Data Flash Block.

(if except HSM Data Block.)

 

But at 116p, 0x00F9_0000~0x00_FFFF address is Data Flash Block.

 

and in this page,

"1. Flexible patitions for boot and EEPROM"

Maybe 'patitions' should be 'partitions'.

Anyway, what does it mean?

for EEPROM -> I think it is related to EEE.

for Boot -> I need more explanation for this.

Because I will make boot-loader.

 

 

So Brief

 

1. I need exact and detail Flash Memory Map.

2. In Reference Manual, What does the "Partitions for boot" mean?

+3. Is there any register or place to save the "reset reason"?

 

Thanks

Best Regards

Phillip

0 Kudos
Reply
1 Solution
1,015 Views
lukaszadrapa
NXP TechSupport
NXP TechSupport

Yes, you can use any flash block as data flash or for EEE. Of course, small blocks are preferred due to higher number of program/erase cycles.

And yes, any block listed in Table 57-3 can be used for boot header.

By the way, I do not recommend to use flash block at 0x00F8_C000. It's better to skip this one. In case of non-correctable ECC errors in this blocks the device can stuck in reset. More details can be found in this engineering bulletin:

https://www.nxp.com/docs/en/engineering-bulletin/EB00875.pdf

S32K1xx are very different parts when talking about boot options and EEPROM / data flash.

Regards,

Lukas

 

View solution in original post

3 Replies
1,031 Views
lukaszadrapa
NXP TechSupport
NXP TechSupport

Hi Phillip,

small flash blocks can be used as code flash or data flash. The difference is that we guarantee more program/erase cycles for small blocks. From the datasheet:

lukaszadrapa_0-1610355888625.png

 You can use the blocks for Emulated EEPROM (EEE) or you can erase/program the flash directly by yourself.

Drivers for EEE can be found in SDK in S32 Design Studio. If you don't use SDK, there's also standalone driver:

https://www.nxp.com/webapp/Download?colCode=MPC5XXX_EEE_DRIVER

These blocks are used also for boot header:

lukaszadrapa_1-1610356098396.png

See that section in the RM for more details.

The source of reset can be found in these registers:

MC_RGM_DES (destructive resets)

MC_RGM_FES (functional resets)

 

Regards,

Lukas

 

 

0 Kudos
Reply
1,022 Views
kmh48301
Contributor IV

Thanks for explanation.

 

So Every Flash blocks can be used for EEE and Data flash and code flash and boot. (BAF is independent)

 

Because when I used s32k144, it was a bit different.

 

Thanks

Best Regards

Phillip

 

0 Kudos
Reply
1,016 Views
lukaszadrapa
NXP TechSupport
NXP TechSupport

Yes, you can use any flash block as data flash or for EEE. Of course, small blocks are preferred due to higher number of program/erase cycles.

And yes, any block listed in Table 57-3 can be used for boot header.

By the way, I do not recommend to use flash block at 0x00F8_C000. It's better to skip this one. In case of non-correctable ECC errors in this blocks the device can stuck in reset. More details can be found in this engineering bulletin:

https://www.nxp.com/docs/en/engineering-bulletin/EB00875.pdf

S32K1xx are very different parts when talking about boot options and EEPROM / data flash.

Regards,

Lukas