Clarification on EEE Data Handling in S32K146 as per Application Note 11983

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

Clarification on EEE Data Handling in S32K146 as per Application Note 11983

Jump to solution
1,079 Views
Ojav
Contributor II

 

I am seeking clarification regarding the EEE data handling process. The note states: "Any reads and writes of the EEE data use this 4 kB memory space because the E-flash is not directly accessible. The EEE state machine automatically manages all of the writes to the EEE memory space, and generates flash program and erase operations as needed into the E-flash."

My setup includes 16Kb Data and 48Kb EEPROM Backup, configured as follows:

  1. uint8_t EEPROM_4K = 0x02u;
  2. uint8_t DATA_16K_EEPROM_BACKUP_48K = 0b1010;
  3. FLASH_DRV_DEFlashPartition(&flashSSDConfig, EEPROM_4K, DATA_16K_EEPROM_BACKUP_48K, 0x00u, false, true);

 

Given this configuration, I have several questions:

  1. Does the 4 kB EEE memory space limit imply that I can only perform read and write operations up to 4 kB at a time?
  2. When performing a write/read, it will first use the 4Kb EERAM but then save everything inside the EEPROM Backup Flash area. Is my understanding correct?
  3. Do I have access to the full 48Kbytes as EEPROM data, or am I limited to only 4Kb?
  4. For data interaction, I am using the ret = FLASH_DRV_EEEWrite(&flashSSDConfig, address, eeprom_data->dataSize, data); function and not directly writing into the E-Flash using ret = FLASH_DRV_Program(&flashSSDConfig, address, size, blabla);. Is this the correct approach?
  5. What is the Adress Range I can write my data to is it 0-4096 (starting from FlexRAM 0x1400000) or is it 0-48Kb (Starting from E-Flash 0x10004000) since I am using 48kb EEPROM Backup

 

I guess I just want a confirmation that I understood everything correctly.

 

0 Kudos
Reply
1 Solution
1,048 Views
Senlent
NXP TechSupport
NXP TechSupport

Hi@Ojav

The memory used for E-Flash is not directly accessible to the user and can only be accessed through FlexRAM.

1.yes, the max eeprom size is only 4kb for S32K14x

2.yes, users can only access E-Flash data through FlexRAM, when the data in FlexRAM changes, the state mechine will automatically synchronize to E-Flash.

3.yes, use "ret = FLASH_DRV_EEEWrite(&flashSSDConfig, address, eeprom_data->dataSize, data)" to update E-Flash data.

4.data can only be read and write from the FlexRAM, which is 0x1400000.

View solution in original post

1 Reply
1,049 Views
Senlent
NXP TechSupport
NXP TechSupport

Hi@Ojav

The memory used for E-Flash is not directly accessible to the user and can only be accessed through FlexRAM.

1.yes, the max eeprom size is only 4kb for S32K14x

2.yes, users can only access E-Flash data through FlexRAM, when the data in FlexRAM changes, the state mechine will automatically synchronize to E-Flash.

3.yes, use "ret = FLASH_DRV_EEEWrite(&flashSSDConfig, address, eeprom_data->dataSize, data)" to update E-Flash data.

4.data can only be read and write from the FlexRAM, which is 0x1400000.