Discussion:
[avr-libc-dev] [bug #50501] eeprom_update_byte() can reduce wear more
Eric Tang
2017-03-09 05:04:54 UTC
Permalink
URL:
<http://savannah.nongnu.org/bugs/?50501>

Summary: eeprom_update_byte() can reduce wear more
Project: AVR C Runtime Library
Submitted by: e_l_tang
Submitted on: Thu 09 Mar 2017 05:04:53 AM UTC
Category: None
Severity: 3 - Normal
Priority: 5 - Normal
Item Group: None
Status: None
Percent Complete: 0%
Assigned to: None
Originator Email:
Open/Closed: Open
Discussion Lock: Any
Release: 2.0.0
Fixed Release: None

_______________________________________________________

Details:

If the new value does not contain any 1 bits where the old value contains a 0
bit (ANDing the new value with the old value yields the new value), the cell
does not have to be erased and can simply be overwritten with the new value.




_______________________________________________________

Reply to this item at:

<http://savannah.nongnu.org/bugs/?50501>

_______________________________________________
Message sent via/by Savannah
http://savannah.nongnu.org/
Eric Tang
2017-03-09 05:12:53 UTC
Permalink
Follow-up Comment #1, bug #50501 (project avr-libc):

This test should be performed in addition to the current test for equality,
not in lieu of it.

_______________________________________________________

Reply to this item at:

<http://savannah.nongnu.org/bugs/?50501>

_______________________________________________
Message sent via/by Savannah
http://savannah.nongnu.org/
Jan Waclawek
2017-03-09 08:12:19 UTC
Permalink
Follow-up Comment #2, bug #50501 (project avr-libc):

I wouldn't recommend to do this unless explicitly allowed by datasheet or an
Atmel insider approves it. Depending on the particular implementation of
EEPROM, write distrubs may decrease read reliability. This is not something
which can be qualified by "I tried and it worked for me".

_______________________________________________________

Reply to this item at:

<http://savannah.nongnu.org/bugs/?50501>

_______________________________________________
Message sent via/by Savannah
http://savannah.nongnu.org/

Loading...