This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

RTOS/TM4C1294NCPDT: TM4C1294KCPDT

Part Number: TM4C1294NCPDT

Tool/software: TI-RTOS

Hi,

what is the maximum life cycle of internal eerprom ?..

Regards

Nikhil

  • Hello Nikhil,

    Table 27.13 for EEPROM Characteristics specifics the minimum. We do not have a specified maximum as with a specification like Memory Life Cycles, you want to be sure you are not going to exceed the minimum amount. The maximum is not a useful value for EEPROM life cycles as once the minimum is exceeded it could fail at any point.
  • Endurance
    Endurance is per meta-block which is 8 blocks. Endurance is measured in two ways:
    1. To the application, it is the number of writes that can be performed.
    2. To the microcontroller, it is the number of erases that can be performed on the meta-block.
    Because of the second measure, the number of writes depends on how the writes are performed.
    For example:
    ■ One word can be written more than 500K times, but, these writes impact the meta-block that the
    word is within. As a result, writing one word 500K times, then trying to write a nearby word 500K
    times is not assured to work. To ensure success, the words should be written more in parallel.
    ■ All words can be written in a sweep with a total of more than 500K sweeps which updates all
    words more than 500K times.
    ■ Different words can be written such that any or all words can be written more than 500K times
    when write counts per word stay about the same. For example, offset 0 could be written 3 times,
    then offset 1 could be written 2 times, then offset 2 is written 4 times, then offset 1 is written
    twice, then offset 0 is written again. As a result, all 3 offsets would have 4 writes at the end of
    the sequence. This kind of balancing within 7 writes maximizes the endurance of different words
    within the same meta-block.



    Considering this how can we calculate eeprom life cycle?..


    Regards
    Nikhil
  • Hello Nikhil,

    The last bullet there is the most important one:

    "Different words can be written such that any or all words can be written more than 500K times
    when write counts per word stay about the same. For example, offset 0 could be written 3 times,
    then offset 1 could be written 2 times, then offset 2 is written 4 times, then offset 1 is written
    twice, then offset 0 is written again. As a result, all 3 offsets would have 4 writes at the end of
    the sequence. This kind of balancing within 7 writes maximizes the endurance of different words
    within the same meta-block."

    The offsets are for each meta-block, so the idea there is that you would use offsets to target writing words (ideally every word, not just one word) within specific meta-blocks to maximum the EEPROM life cycle.

    So to calculate your life cycle, you would need to assess how your code is writing to EEPROM, which offsets are being written to, and see if there are instances where a specific offset, offset X, is written to by multiple processes. The offset that is written to the most - Offset X - would be the limiting factor for your life cycle.

    This analysis may also help you better write code so you can ensure the EEPROM writes are spread across as many meta-blocks as possible.

    Ultimately that calculation is application specific, but the key to it lays in understand what meta-blocks are being written to and how often those writes occur so you can identify your worst case usage and from there estimate the life cycle of that location.