<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>S32 SDK中的主题 Re: EEEWrite functions</title>
    <link>https://community.nxp.com/t5/S32-SDK/EEEWrite-functions/m-p/1506602#M2642</link>
    <description>&lt;P&gt;Hi Daniel,&lt;/P&gt;&lt;P&gt;Thank you for your answer, we understand better now.&lt;/P&gt;&lt;P&gt;Best regards,&lt;/P&gt;&lt;P&gt;Brice&lt;/P&gt;</description>
    <pubDate>Tue, 16 Aug 2022 07:05:15 GMT</pubDate>
    <dc:creator>BriceC</dc:creator>
    <dc:date>2022-08-16T07:05:15Z</dc:date>
    <item>
      <title>EEEWrite functions</title>
      <link>https://community.nxp.com/t5/S32-SDK/EEEWrite-functions/m-p/1501904#M2607</link>
      <description>&lt;P&gt;Hello,&lt;/P&gt;&lt;P&gt;We are a bit confused about the EEE system to flash in a back-up memory.&lt;/P&gt;&lt;P&gt;What we understood so far, is that we can configure on S32K146 a FlexRAM of 0kB or 4kB, if the EEE_ENABLE flag is set, we will use this EEE memory of 4kB as a buffer to read and write to E-Flash.&lt;/P&gt;&lt;P&gt;We would like to have the best endurance, so we configured a E-Flash of 64kB.&lt;/P&gt;&lt;P&gt;Let's say we have some Monitoring data, like version of the software or some values, all in a structure. And some default data, open load, shorted low etc.. in another structure.&lt;/P&gt;&lt;P&gt;And we want to write the monitoring data every 10 min, and default data everytime something happend.&lt;/P&gt;&lt;P&gt;How does the EEE state machine will proceed ? How does he know which data i am passing, either the monitoring structure or the defaults structure ?&lt;/P&gt;&lt;P&gt;If we have theses structures in our program, we will have twice the data ? Once in the FlexRAM and once in the code somewhere ?&lt;/P&gt;&lt;P&gt;Can we partition the EEE memory to write several structures ? And then have only one structure in RAM ?&lt;/P&gt;&lt;P&gt;In the flash_partitionning example, we can write some data from a base address, and then try to update from that address + 1u a byte. What will happen in the E-Flash backup ? He will write another structure after with the first one with the modification ? Or he will modify the first already written ?&lt;/P&gt;&lt;P&gt;We have seen the FME calculator, to compute the maximum life time of the E-Flash backup. But how can we compute the life time with asynchronous interrupts ? Like for the defaults, we will write them as soon as they appears.&lt;/P&gt;&lt;P&gt;I know it is a lot of questions, but i'll be very thankfull if you can answer them &lt;LI-EMOJI id="lia_grinning-face-with-big-eyes" title=":grinning_face_with_big_eyes:"&gt;&lt;/LI-EMOJI&gt;&lt;/P&gt;&lt;P&gt;Best regards,&lt;/P&gt;&lt;P&gt;Brice&lt;/P&gt;</description>
      <pubDate>Fri, 05 Aug 2022 15:32:05 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32-SDK/EEEWrite-functions/m-p/1501904#M2607</guid>
      <dc:creator>BriceC</dc:creator>
      <dc:date>2022-08-05T15:32:05Z</dc:date>
    </item>
    <item>
      <title>Re: EEEWrite functions</title>
      <link>https://community.nxp.com/t5/S32-SDK/EEEWrite-functions/m-p/1504050#M2624</link>
      <description>&lt;P&gt;Hello &lt;a href="https://community.nxp.com/t5/user/viewprofilepage/user-id/204530"&gt;@BriceC&lt;/a&gt;,&lt;/P&gt;
&lt;P&gt;When a record is written to a specific address in FlexRAM, the EEPROM state machine creates a backup in FlexNVM that includes the data and the address of the data in FlexRAM.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;You can create a new section in the linker file for the FlexRAM variables.&lt;/P&gt;
&lt;P&gt;Please refer to Example: S32K144 EEEPROM usage&lt;/P&gt;
&lt;P&gt;&lt;A href="https://community.nxp.com/t5/S32-Design-Studio-Knowledge-Base/Example-S32K144-EEEPROM-usage/ta-p/1109405" target="_blank" rel="noopener"&gt;https://community.nxp.com/t5/S32-Design-Studio-Knowledge-Base/Example-S32K144-EEEPROM-usage/ta-p/1109405&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Default EEPROM data has been discussed in the thread below already:&lt;/P&gt;
&lt;P&gt;&lt;A href="https://community.nxp.com/t5/S32K/S32K144-FlexRAM-as-Emulated-EEPROM-Initial-Values/m-p/808582" target="_blank" rel="noopener"&gt;https://community.nxp.com/t5/S32K/S32K144-FlexRAM-as-Emulated-EEPROM-Initial-Values/m-p/808582&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Not sure what you mean by the partitioning of the EEEPROM, there is 4KB of EEEPROM, the records can be 8bit, 16bit or 32bit long.&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;BLOCKQUOTE&gt;
&lt;P&gt;We can write some data from a base address, and then try to update from that address + 1u a byte. What will happen in the E-Flash backup?&lt;/P&gt;
&lt;/BLOCKQUOTE&gt;
&lt;P&gt;The EEPROM will create two records, one for each byte, each byte is stored together with the address of the byte in FlexRAM, that is the base_address and base_address + 1.&lt;/P&gt;
&lt;BLOCKQUOTE&gt;
&lt;P&gt;We have seen the FME calculator, to compute the maximum life time of the E-Flash backup. But how can we compute the life time with asynchronous interrupts? Like for the defaults, we will write them as soon as they appears.&lt;/P&gt;
&lt;/BLOCKQUOTE&gt;
&lt;P&gt;If the number of updates is unknown, it can't be estimated.&lt;/P&gt;
&lt;P&gt;But the Set FlexRAM Function (FTFC command) with 0x77 Control code, returns the number of Sector Erase Count.&lt;/P&gt;
&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="danielmartynek_0-1660139910410.png" style="width: 769px;"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/189822iEA14A4057AD25A05/image-dimensions/769x921?v=v2" width="769" height="921" role="button" title="danielmartynek_0-1660139910410.png" alt="danielmartynek_0-1660139910410.png" /&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Regards,&lt;/P&gt;
&lt;P&gt;Daniel&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 10 Aug 2022 14:03:38 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32-SDK/EEEWrite-functions/m-p/1504050#M2624</guid>
      <dc:creator>danielmartynek</dc:creator>
      <dc:date>2022-08-10T14:03:38Z</dc:date>
    </item>
    <item>
      <title>Re: EEEWrite functions</title>
      <link>https://community.nxp.com/t5/S32-SDK/EEEWrite-functions/m-p/1506602#M2642</link>
      <description>&lt;P&gt;Hi Daniel,&lt;/P&gt;&lt;P&gt;Thank you for your answer, we understand better now.&lt;/P&gt;&lt;P&gt;Best regards,&lt;/P&gt;&lt;P&gt;Brice&lt;/P&gt;</description>
      <pubDate>Tue, 16 Aug 2022 07:05:15 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32-SDK/EEEWrite-functions/m-p/1506602#M2642</guid>
      <dc:creator>BriceC</dc:creator>
      <dc:date>2022-08-16T07:05:15Z</dc:date>
    </item>
  </channel>
</rss>

