In dem Datenblatt zum I2C EEPROM 24LC1025 von Microchip ist mir folgende Bemerkung aufgefallen, die ich z.B. in dem Datenblatt zum 24LC256 nicht gefunden habe: "When doing a write of less than 128 bytes the data in the rest of the page is refreshed along with the data bytes being written. This will force the entire page to endure a write cycle, for this reason endurance is specified per page." Trifft diese Eigenart auch auf kleinere Bausteine zu (z.B. 24LC128, 24LC256)? Dann würde es ja zum Schutz der Speicherzellen auch dort Sinn machen die Daten im MCU zu sammeln, bis eine Seite voll beschrieben werden kann, um sie dann über den entsprechenden Page-Write Befehl zu speichern. Für fachkundige Hinweise wäre ich sehr dankbar. Schöne Weihnachten!
Oliver D. schrieb: > Trifft diese Eigenart auch auf kleinere Bausteine zu (z.B. 24LC128, > 24LC256)? Schau doch ins Datenblatt. Die Page-Size variiert je nach Chip. > Dann würde es ja zum Schutz der Speicherzellen auch dort Sinn machen die > Daten im MCU zu sammeln, bis eine Seite voll beschrieben werden kann, um > sie dann über den entsprechenden Page-Write Befehl zu speichern. Ja
Oliver D. schrieb: > "When doing a write of less than 128 bytes the data in the rest of the > page is > refreshed along with the data bytes being written. This will force the > entire page to endure a write cycle, for this reason endurance is > specified per page." Bei manchen steht das drin, bei anderen aber auch nicht. Es hängt vom Hersteller ab, auf was sich die "write endurance" bezieht. Ich hatte mal EEPROMs, die vergaßen beim Byte schreiben Daten aus der selben Page, d.h. es wurde nicht refresht.
Faktisch sind große EEProms Flash mit kleinen Sektoren/Pages und ein bisschen Komfort drumherum damit es sich wie EEProm anfühlt. Details (wie immer) im Datenblatt.
:
Bearbeitet durch User
Oliver D. schrieb: > Dann würde es ja zum Schutz der Speicherzellen auch dort Sinn machen die > Daten im MCU zu sammeln, bis eine Seite voll beschrieben werden kann, um > sie dann über den entsprechenden Page-Write Befehl zu speichern. Wenn die Anwendungs-Logik dies zuläßt, dann ja. Wenn aber z.B. irgendwelche Settings, die der Anwender an dem Gerät gelegentlich macht, bei plötzlichem Stromausfall nicht verloren gehen sollen, dann ist dieses Vorhaben eher schlecht. Da muß man jede Änderung möglichst gleich speichern.
Bruno V. schrieb: > Faktisch sind große EEProms Flash mit kleinen Sektoren/Pages und ein > bisschen Komfort drumherum damit es sich wie EEProm anfühlt. Naja, die Grenze ist sicher fließend, aber es gibt doch ziemliche Unterschiede: Beim M95M04 (immerhin 512 kByte, das fällt sicher in die Kategorie "groß") ist die Mindestzahl Schreibzyklen 4 Millionen auf 4-Byte-Blöcke bezogen. Das hat mit der Page-Größe 512 Bytes nichts zu tun. Da werden also immer mindestens 4-Byte Blöcke beschrieben (geht da auch nicht anders, da ECC dort eben auf dieser Blockebene arbeitet), obwohl seitenweise auch möglich ist.
Andreas B. schrieb: > Da werden > also immer mindestens 4-Byte Blöcke beschrieben (geht da auch nicht > anders, da ECC dort eben auf dieser Blockebene arbeitet), obwohl > seitenweise auch möglich ist. Wobei das Löschen / Beschreiben einer Page genauso lange dauert wie ein einzelnes Byte (oder ein Block von 4). Eben weil das Löschen (der zeitaufwendige Teil beim EEPROM) von 1 ... 128 Blöcken (= 4 ... 512 Byte) gleichzeitig geschieht.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.