S32K144之FlexNVM详解

时间:2024-04-07 18:49:13

S32K144之FlexNVM详解

关于S32K144的使用,最近客户提出了几个关于FlexNVM的问题:
1、使用RAM模拟EEPROM,在NVM里面备份,最大模拟4K EEPROM,NVM使用32K和使用64K备份,有什么区别
2、如果NVM使用了32K备份,那么剩下的32K拿来干嘛?
之前也一直没有细看过,于是仔细地去看了看,总结记录如下,首先先去看看RM手册中怎么介绍的:
S32K144之FlexNVM详解
所以FlexMemory = FlexNVM(非易失性闪存) + FlexRAM
FlexNVM的用处:
1、执行程序代码
2、储存数据
3、备份EEPROM数据

来看下S32K1xx系列MCU的FlexNVM的大小,从下面的表格可以看出,116与118有32kb,142、144与146有64kb,148最多有512kb。
S32K144之FlexNVM详解
在参考手册中,给出了E flash和D flash的分配大小配置,如下图,客户在不同的程序中看到了EEPROM backup size配置成32kb和64kb两个版本,于是他们提出为什么这样配置以及有什么区别。
S32K144之FlexNVM详解
这个疑问的答案在RM手册中没有讲到,但是NXP在AN11983文档Using the S32K1xx EEPROM Functionality中有讲到:
S32K144之FlexNVM详解
所以NVM使用32K还是使用64K备份,主要取决于模拟EEPROM的大小,为了达到S32K1xx数据表中规定的w/e循环持久性,仿真EEPROM备份大小必须至少是FlexRAM (EEERAM)中仿真EEPROM分区大小的16倍。
另外有几分文档对于这块的使用讲解的还是比较透彻的,后面会在做个分析学习。