Forum: Mikrocontroller und Digitale Elektronik SPI oder I2C Speicher für einfache I/O-Zustands-Speicherung ?


von Uli A. (schnuppi44)


Lesenswert?

Hallo zusammen !
Ich möchte im Rahmen einer Produktentwicklung auf STM32-Basis ca. 60 
Schaltzustände abspeichern  - auch nach Aus- und Wiedereinschalten des 
Systems sollen diese Zustände verfügbar bleiben - für wen es 
interessiert, hier ein Link zu einem Thread zu Vorüberlegungen des 
Projektes:

Beitrag "Mit 3.3V Mikrocontroller 5V schalten"

Die Grundidee ist es, Schaltzustände über LED-beleuchtete Taster einer 
kabelgebundenen Remote (Zustand "ON" = LED im Taster auch AN als 
optische Referenz) anzusteuern. Dabei sollen die Taster über 
PISO-Schieberegister eingelesen und die LEDs (und zusätzlich jeweils ein 
Relais, aber das tut hier nichts zur Sache) über "Power-"Schieberegister 
Texas (TLC6C598-Q1) geschaltet werden.

Es entsteht also ein im Grunde sehr simples "Schema" von 
ON/OFF-Zuständen, das in der Programmierung ständig 
aktualisiert/abgefragt und bei Betätigung eines Tasters entsprechend 
angepasst wird.

Das aktuelle "Schema" (z.B. 01=ON, 02=ON, 03=OFF, 04=ON etc.,etc.)
möchte ich dann gleichzeitig in einem Speicher ablegen, so dass mit 
diesem wie schon gesagt die ganzen Zustände auch nach Stromunterbrechung 
des Systems wiederhergestellt werden.

Ich hatte letztes Jahr schon mit Arduino FRAM Speicher über I2C 
verwendet, und die entsprechende Routine erfolgreich programmiert.

Meine Frage ist nun:
Spricht für die werte Gemeinde hier etwas für oder gegen I2C vs. SPI ?

Soweit ich als Anfänger das verstanden habe, wäre SPI schneller, aber 
das ist hier ja überhaupt nicht von Belang, da wir hier über ein 
Bedienfeld reden, wo ab und zu mal ein Taster gedrückt wird, um z.B. 
eine Funktion zu aktivieren. Als zeitkritische Anwendung kann man das 
wohl kaum bezeichnen...;-)

Für mich stellt sich auch die Frage, ob SPI nicht grundsätzlich zu 
bevorzugen wäre, weil die entsprechenden Daten ja ohnehin schon für sie 
Schieberegister da durchgehen....?

Im Gegenzug wäre ein Gedanke, ob es (vielleicht auch 
programmiertechnisch?) von Vorteil sein könnte, gerade durch Nutzung von 
I2C für den Speicher das Ganze als zwei unabhängige Systeme zu behandeln 
- a) Datenverkehr für die Abfrage und Ausgabe der Schieberegister und b) 
Speicherung....?

Als nächster Schritt wäre auch die Verwaltung bestimmter "Schemata" als 
Presets interessant...


Freue mich über Gedanken und Anregungen dazu - gerne auch für die 
programiertechnische Seite !

von Patrick C. (pcrom)


Lesenswert?

Der gesammtzweck ist mir nicht ganz deutlich... Erste Frage : Warum ein 
externes memory ? Warom nicht das EEPROM der uC benutzen ?

von John Doe (Gast)


Lesenswert?

Moderne STM32 mit Octo-SPI können SPI-Flash transparent in den 
Adressraum einblenden. Du kannst den Flash dann wie interne 
Speicherzellen nutzen.
Du brauchst also keine speziellen Routinen wie bei Standard-SPI oder 
I2C.

von Daniel F. (foxi_the_daywalker)


Lesenswert?

Hi,

ich will irgendwann ein EERAM [1] verbauen.
Das kann man beliebig häufig schreiben und wenn die Spannung flöten 
geht, hat man keine Probleme (oder wenige).

Gruß
Daniel

[1] https://www.microchip.com/en-us/products/memory/serial-eeram#

von J. -. (Gast)


Lesenswert?

Patrick C. schrieb:
> Der gesammtzweck ist mir nicht ganz deutlich... Erste Frage : Warum ein
> externes memory ? Warom nicht das EEPROM der uC benutzen ?
Vielleicht, weil der uC kein EEprom hat.

von Uli A. (schnuppi44)


Lesenswert?

John Doe schrieb:
> Moderne STM32 mit Octo-SPI können SPI-Flash transparent in den
> Adressraum einblenden. Du kannst den Flash dann wie interne
> Speicherzellen nutzen.

Hm.....das heißt, sobald der gewählte STM32 Flash an Bord hat (haben ja 
eigentlich so ziemlich alle), kann ich den nutzen ? Ist der denn frei 
verfügbar, ohne dass es irgendwelche Kollisionen mit Systemaufgaben des 
µC gibt ?

Natürlich wäre es viel netter, wenn ich KEINEN externen Speicher 
anbinden müsste...

: Bearbeitet durch User
von Uli A. (schnuppi44)


Lesenswert?

John Doe schrieb:
> Moderne STM32 mit Octo-SPI können SPI-Flash transparent in den
> Adressraum einblenden.

Kannst Du mir bitte erklären, was das bedeutet ?

von Planloser (Gast)


Lesenswert?

Uli A. schrieb:
> John Doe schrieb:
>> Moderne STM32 mit Octo-SPI können SPI-Flash transparent in den
>> Adressraum einblenden.
>
> Kannst Du mir bitte erklären, was das bedeutet ?

Ich habe eben gegockelt:

AN5050
Application note
Octo-SPI interface on STM32 microcontrollers

Eigentlich nicht so schwer.
Klingt aber interessant. Auch PSRAM wie beim ESP32 kann man damit 
einblenden.
Ein bisschen Linkerscript anpassen, den Octo-SPI konfigurieren und schon 
kann man den externen SPI-Speicher wie internen nutzen.
Sogar XiP funktioniert damit!

von Planloser (Gast)


Lesenswert?


von Frank K. (fchk)


Lesenswert?

Uli A. schrieb:

> Natürlich wäre es viel netter, wenn ich KEINEN externen Speicher
> anbinden müsste...

Auch das geht. Schau mal in das Datenblatt Deines STM32. Da wirst Du 
möglicherweise etwas finden, was BKPSRAM heißt. Das sind 4k RAM, die 
über VBAT versorgt werden. Wenn an VBAT eine Batterie hängt, wird zum 
einen die Uhr darüber versorgt, und zum anderen diese 4k SRAM. Die 
bleiben dann auch, wenn die restliche Stromversorgung weg geht.

fchk

von Uli A. (schnuppi44)


Lesenswert?

Frank K. schrieb:
> Schau mal in das Datenblatt Deines STM32.

Danke, Frank ! Hatte mich da zwar noch nicht endgültig entschieden 
bezüglich des STM32-Modells...u.a. weil ich noch nicht sicher bin, ob 
ich die Taster nicht doch einzeln über GPIOs abfrage statt über die 
PISO-Schieberegister, und sich dadurch die minimale Pinzahl natürlich 
entsprechend höher gestaltet als bei dem monentan angepeilten 
STM32G07...aber ich check das mal bei den bisherigen Kandidaten....! 4k 
reichen ja völlig aus für den Zweck....!

John Doe schrieb:
> Moderne STM32 mit Octo-SPI können SPI-Flash transparent in den
> Adressraum einblenden. Du kannst den Flash dann wie interne
> Speicherzellen nutzen.

Ok. Verstanden hab ich das immer noch nicht ;-)))) Aber ich vermute mal, 
es geht darum, dass man da trotzdem einen externen Speicherbaustein hat, 
den aber über die Konfigurationsmöglichkeiten so adressiert als wäre es 
interner Speicher ? Also dem "Gesamtsystem" vorgaukelt, es hätte einen 
internen Speicher statt des externen ?

: Bearbeitet durch User
von Lottomann (Gast)


Lesenswert?

Uli A. schrieb:
> Ich hatte letztes Jahr schon mit Arduino FRAM Speicher über I2C
> verwendet, und die entsprechende Routine erfolgreich programmiert.

Dann bleib doch einfach beim IIC-Bus. EEPROM (24Cxx) kosten nur wenige 
ct 
(https://www.reichelt.de/ch/de/eeprom-2-kb-256-x-8-4-5-5-5-v-so-8-st-24c02-mn-p40062.html?&trstct=pos_0&nbc=1), 
FRAM ist eine elegante Alternative schnell und beliebig oft zu schreiben 
und andere IIC-Peripherie läuft über die gleichen zwei Drähte.

von Uli A. (schnuppi44)


Lesenswert?

Lottomann schrieb:
> Dann bleib doch einfach beim IIC-Bus. EEPROM (24Cxx) kosten nur wenige
> ct
> FRAM ist eine elegante Alternative schnell und beliebig oft zu schreiben
> und andere IIC-Peripherie läuft über die gleichen zwei Drähte.

Danke für Deinen Beitrag. Dann werde ich vermutlich bei der 
FRAM-Variante bleiben - der 1 Euro mehr im Gerät soll dann nicht das 
Problem sein ;-)

Aber nochmal zu der Idee von Frank, wenn das denn so dann intern lösbar 
wäre: Wie sieht das denn mit dem internen SRAM aus bezüglich Robustheit 
bzw. Wiederbeschreibbarkeit in Zyklen ? Gibt es da Limits, die ggfs. 
deutlich unter denen von FRAM liegen ? Oder wäre der interne 
SRAM-Bereich da als gleichwertig zu sehen ?

: Bearbeitet durch User
von Kevin M. (arduinolover)


Lesenswert?

Uli A. schrieb:
> Wie sieht das denn mit dem internen SRAM aus bezüglich Robustheit
> bzw. Wiederbeschreibbarkeit in Zyklen ?

Genauso wie mit jedem anderen RAM, quasi unbegrenzt.

von Frank K. (fchk)


Lesenswert?

Uli A. schrieb:

> Aber nochmal zu der Idee von Frank, wenn das denn so dann intern lösbar
> wäre: Wie sieht das denn mit dem internen SRAM aus bezüglich Robustheit
> bzw. Wiederbeschreibbarkeit in Zyklen ? Gibt es da Limits, die ggfs.
> deutlich unter denen von FRAM liegen ? Oder wäre der interne
> SRAM-Bereich da als gleichwertig zu sehen ?

SRAM ist SRAM, da gibts keinerlei Limits.

Wenn Dein Prozessor kein Backup RAM hat, dann kannst Du immer noch 20 
Bytes in der Echtzeituhr speichern. Das sind die sogenannten Backup 
Register. Schau ins Reference Manual zu Deinem Prozessor.
Wenn Du die RTC nicht benutzt und keinen Uhrenquarz anschließt, kannst 
Du prinzipiell auch andere Register der Uhr für Deine Zwecke 
missbrauchen. Die Uhr darf dann halt nur nicht loslaufen.

fchk

von Uli A. (schnuppi44)


Lesenswert?

Danke für die Ergänzungen. War nur etwas ins Grübeln gekommen von der 
Info, dass bestimmte EEPROMs in AVRs offensichtlich eine "geringere 
Lebensdauer" haben sollen...wenn das für den SRAM nicht zutrifft, ist 
das ja fein...

von Uli A. (schnuppi44)


Lesenswert?

Frank K. schrieb:
> Wenn an VBAT eine Batterie hängt, wird zum
> einen die Uhr darüber versorgt, und zum anderen diese 4k SRAM. Die
> bleiben dann auch, wenn die restliche Stromversorgung weg geht.

Sorry, hab das erst jetzt richtig verstanden beim nochmal 
Drüberlesen....

Das heißt ja, dass da dann trotzdem noch eine Batterie benötigt wird, 
die den Speicherinhalt "am Leben hält"....und das trifft laut 
STM32-Datenblatt auch auf die "stille Reserve" in der Uhr zu...

Dann werde ich wohl doch eher mit dem FRAM arbeiten, was ja auch kein 
Ding ist....dachte nach Euren (dennoch erhellenden) Kommentaren nur, 
dass ich das auch ohne den externen Speicher realisieren könnte...

Danke an alle !

von Mitlesa (Gast)


Lesenswert?

Warum hat das hier noch keiner ins Gespräch gebracht?

Beitrag "STM32: EEPROM Emulator im Flash"

von Uli A. (schnuppi44)


Lesenswert?

Mitlesa schrieb:
> Warum hat das hier noch keiner ins Gespräch gebracht?
>
> Beitrag "STM32: EEPROM Emulator im Flash"

Hm....ist zwar interessant, allerdings wird auch dort der Aspekt 
angesprochen, dass Flash-Speicher nur 100k mal beschrieben werden 
könne....

von Einer K. (Gast)


Lesenswert?

Uli A. schrieb:
> Wiederbeschreibbarkeit in Zyklen ? Gibt es da Limits, die ggfs.
> deutlich unter denen von FRAM liegen ?

Normales SRAM ist unendlich oft beschreibbar und lesbar.

FRAM altert durch lesen genauso schnell, wie durch schreiben/löschen.
Das Problem haben EEPROM und FLASH nicht, die altern nur beim 
schreiben/löschen

von Uli A. (schnuppi44)


Lesenswert?

Arduino Fanboy D. schrieb:
> FRAM altert beim lesen genauso schnell

Okay....klingt schwach....;-) Aber im Datenblatt des FRAM steht 10^14 
read/writes....ich glaube, das hält ne Weile....;o)

(keineswegs klugscheißerisch gemeint!)

Und da ich in meinem Fall ja sogar eher öfter schreibe als lese 
(schreiben andauernd bei Eingabe durch die Taster und lesen nur wenn 
Strom weg), ist das für mich rein formal auch kein Pro für EEPROM & 
Flash....

von Uli A. (schnuppi44)


Lesenswert?

....aber ich kann ja auf Nummer sicher gehen und noch 40 cent für nen 
SPI-SRAM drauflegen...;o)
Da brennt dann gar nix mehr an....

von Peter D. (peda)


Lesenswert?

Arduino Fanboy D. schrieb:
> FRAM altert beim lesen genauso schnell, wie beim schreiben.

Und was stört Dich daran?
Das Problem ist eher der Finger, der neue Werte eingibt. Der ist längst 
zu Staub zerfallen und auch die Taste ist längst verrottet.

CY15B004J:
- High-endurance 100 trillion (10^14) read/writes
- 151-year data retention

Das ergibt für das selbe Byte hintereinander zugreifen bei 400kHz >2000 
Jahre.

von Stephan (Gast)


Lesenswert?

Arduino Fanboy D. schrieb:
> FRAM altert durch lesen genauso schnell, wie durch schreiben/löschen.

Das mag stimmen; aber in absoluten Zahlen (in Zugriffen oder Jahren) ist 
das m.E. praktisch nicht relevant.
Wir nutzen verschiedene Cypress (jetzt Infinion) FRAM Modelle schon 
länger (>8 Jahre) und nutzen die quasi im "Festplatten"-Betrieb. Aktuell 
die "Excelon" Serie. Das einzige was da merklich altert ist der Anwender 
(oder ich). ;)
VG, Stephan

von Einer K. (Gast)


Lesenswert?

Uli A. schrieb:
> (keineswegs klugscheißerisch gemeint!)

Peter D. schrieb:
> Und was stört Dich daran?

Stephan schrieb:
> Das mag stimmen; aber in absoluten Zahlen

Mädels, ihr dürft gerne auf mir rumhacken, und meine Aussage negativ 
bewerten....

Aber bedenkt dabei: Es wurde nach genau solchen Unterschieden gefragt.

von Mitlesa (Gast)


Lesenswert?

Uli A. schrieb:
> Hm....ist zwar interessant, allerdings wird auch dort der Aspekt
> angesprochen, dass Flash-Speicher nur 100k mal beschrieben werden
> könne....

Das umgeht man in Profi-Bereich damit dass man nur einmal beim
Ausschalten die Gerätezustände speichert. Solange das Gerät
läuft bleiben die Daten im RAM erhalten. Das hält ewig.

von Uli A. (schnuppi44)


Lesenswert?

Mitlesa schrieb:

> Das umgeht man in Profi-Bereich damit dass man nur einmal beim
> Ausschalten die Gerätezustände speichert. Solange das Gerät
> läuft bleiben die Daten im RAM erhalten. Das hält ewig.

Verstehe. Interessant zu wissen...!

Aber mal blöd als Anfänger zum Verständnis gefragt: Wie macht man das in 
einem simplen Gerät, das man nicht "runterfährt" wie z.B. ein 
Betriebssystem ?
Ich meine, Strom weg ist Strom weg, oder ?
Da käme ja dann nur wieder irgendeine Routine in Frage, die eine 
Zwischenstromversorgung nutzt...also zumindest eine Art Kondensator, der 
noch solange Strom liefert, die zum Abspeichern gebraucht wird, oder ?

von MCUA (Gast)


Lesenswert?

PowerFailInterrupt

von Uli A. (schnuppi44)


Lesenswert?

MCUA schrieb:
> PowerFailInterrupt

Könntest Du das genauer erläutern ? Klingt für mich nach ner 
softwareseitigen Lösung - das beantwortet aber nicht meine obige Frage 
nach der Stromversorgung...(ich möchte z.B. zusätzliche Batterien im 
System vermeiden)...

von Walter T. (nicolas)


Lesenswert?

Uli A. schrieb:
> Wie macht man das in
> einem simplen Gerät, das man nicht "runterfährt" wie z.B. ein
> Betriebssystem ?

Uli A. schrieb:
> Da käme ja dann nur wieder irgendeine Routine in Frage, die eine
> Zwischenstromversorgung nutzt...also zumindest eine Art Kondensator, der
> noch solange Strom liefert, die zum Abspeichern gebraucht wird, oder ?

Das ist eine Methode. Es gibt andere Varianten bis zur Pufferbatterie.

Alles in allem ist es durchaus nicht wenig Entwicklungsaufwand, das bei 
allen Temperaturen und Betriebszuständen betriebssicher zu bekommen bei 
möglichst kleinem Bauteileaufwand. Speicher-Zyklen zu sparen, indem man 
nur beim Ausschalten speichert, lohnt sich also nur bei großen 
Stückzahlen. Bei kleinen Stückzahlen nimmt man einfach einen größeren 
Speicherbaustein, betreibt Wear Leveling und schreibt dann, wenn es 
einem am besten passt.

von fchk (Gast)


Lesenswert?

Uli A. schrieb:
> Ich meine, Strom weg ist Strom weg, oder ?
> Da käme ja dann nur wieder irgendeine Routine in Frage, die eine
> Zwischenstromversorgung nutzt...also zumindest eine Art Kondensator, der
> noch solange Strom liefert, die zum Abspeichern gebraucht wird, oder ?

Genau. Inzwischen gibts die Kondensatoren auch in etwas größer, z.B.

https://www.kemet.com/en/us/capacitors/supercapacitors/product/FG0V155ZF.html

1.5 F. Das sind 15000000µF. Wenn Du den an Dein VBAT anschließt und über 
eine Diode (keine Schottky, die lecken zu viel) von VCC lädtst, dann 
hält der den Speicher und die Uhr etliche Wochen.

fchk

von Karl (Gast)


Lesenswert?

Uli A. schrieb:
> das beantwortet aber nicht meine obige Frage
> nach der Stromversorgung...(ich möchte z.B. zusätzliche Batterien im
> System vermeiden)...

Was denkst du wie lange es dauert deine 8 Byte zu speichern?

von Lottomann (Gast)


Lesenswert?

Arduino Fanboy D. schrieb:
> Aber bedenkt dabei: Es wurde nach genau solchen Unterschieden gefragt.

Wie bitte?

Peter D. schrieb:
> Das ergibt für das selbe Byte hintereinander zugreifen bei 400kHz >2000
> Jahre.

Ich rechne das jetzt nicht nach, ist aber doch ein sehr starkes 
Argument!

von Frank K. (fchk)


Lesenswert?

Uli A. schrieb:

> Könntest Du das genauer erläutern ? Klingt für mich nach ner
> softwareseitigen Lösung - das beantwortet aber nicht meine obige Frage
> nach der Stromversorgung...(ich möchte z.B. zusätzliche Batterien im
> System vermeiden)...

Viele Netzteile haben ein PowerGood Ausgang. Das ist ein Komparator, der 
die Ausgangsspannung gegen eine Referenzspannung vergleicht, und wenn 
die Ausgangsspannung eine bestimmte Zeit lang stabil über der Schwelle 
liegt, dann geht das PowerGood an, und der Prozessor startet. Hast Du in 
jedem PC.

Wenn das Gerät ausgeschaltet wird, dann geht PowerGood wieder weg. Der 
Prozessor kann aber noch eine kurze Zeit weiter laufen. Beispielsweise: 
Du hast ein Gerät, das mit 12V versorgt wird. PowerGood geht bei sagen 
wir mal 11V weg. Der Schaltregler für die 3.3V Versorgung geht aber noch 
bis 5V. Die Zeit, bis sich die Ausgangskondensatoren des Netzteils von 
11V auf 5V entladen haben, hast Du noch Zeit, um Daten in Sicherheit zu 
bringen. Das können 10 oder 100ms sein.

fchk

von MCUA (Gast)


Lesenswert?

Man muss nicht riesige Cs haben, um für ein paar ms noch Spannung zu 
haben.

von Uli A. (schnuppi44)


Lesenswert?

Frank K. schrieb:
>
> Viele Netzteile haben ein PowerGood Ausgang. Das ist ein Komparator, der
> die Ausgangsspannung gegen eine Referenzspannung vergleicht, und wenn
> die Ausgangsspannung eine bestimmte Zeit lang stabil über der Schwelle
> liegt, dann geht das PowerGood an, und der Prozessor startet. Hast Du in
> jedem PC.
>
> Wenn das Gerät ausgeschaltet wird, dann geht PowerGood wieder weg. Der
> Prozessor kann aber noch eine kurze Zeit weiter laufen. Beispielsweise:
> Du hast ein Gerät, das mit 12V versorgt wird. PowerGood geht bei sagen
> wir mal 11V weg. Der Schaltregler für die 3.3V Versorgung geht aber noch
> bis 5V. Die Zeit, bis sich die Ausgangskondensatoren des Netzteils von
> 11V auf 5V entladen haben, hast Du noch Zeit, um Daten in Sicherheit zu
> bringen. Das können 10 oder 100ms sein.

Verstehe das Prinzip. Und klar kenne ich das von bestimmten 
Netzteilen....
Danke fürs Erklären, Frank !

Aber zum eigentlichen Thema verstehe ich nicht, warum wir gerade eine 
Frage wie

Karl schrieb:
> Was denkst du wie lange es dauert deine 8 Byte zu speichern?

diskutieren.....

Der eigentliche Aspekt (zumindest von meiner Seite aus) war ja nicht, 
wie lange das Speichern dauert, und ob dafür bei Strom AUS noch genug 
Zeit bleibt, sondern das längerfristige Liefern einer "Notspannung" wie 
z.B. die angesprochene VBAT oder ähnliche Konzepte, damit die internen 
Speicher nicht ihren Inhalt verlieren...keep it simple....da ist für 
mich der komplett nichtflüchtige Ansatz eines externen SRAM oder FRAM, 
der komplett OHNE solche Spannungserhaltungsvehikel auskommt, eindeutig 
attraktiver...

von Uli A. (schnuppi44)


Lesenswert?

Arduino Fanboy D. schrieb:
>
> Aber bedenkt dabei: Es wurde nach genau solchen Unterschieden gefragt.

Völlig richtig. Daher war auch mein Hinweis auf das NICHT 
klugscheißerische meinerseits genau so gemeint ;-)

von Frank K. (fchk)


Lesenswert?

Uli A. schrieb:

> Speicher nicht ihren Inhalt verlieren...keep it simple....da ist für
> mich der komplett nichtflüchtige Ansatz eines externen SRAM oder FRAM,
> der komplett OHNE solche Spannungserhaltungsvehikel auskommt, eindeutig
> attraktiver...

Ein externes SRAM ist auch leer, wenn der Strom weg ist. Nur mal so zur 
Info...

fchk

von Uli A. (schnuppi44)


Lesenswert?

Frank K. schrieb:
> Ein externes SRAM ist auch leer, wenn der Strom weg ist. Nur mal so zur
> Info...

Danke für die Klarstellung ! - dachte, diesbezüglich sind FRAM und SRAM 
gleichzusetzen....

von Einer K. (Gast)


Lesenswert?

Uli A. schrieb:
> Danke für die Klarstellung ! - dachte, diesbezüglich sind FRAM und SRAM
> gleichzusetzen....

Dann gäbe es keine Notwendigkeit für FRAM!
Oder?
Die Alternative, sowas wie: 23LCV1024
Gibt es auch in den verschiedensten Ausführungen.

von (prx) A. K. (prx)


Lesenswert?

Uli A. schrieb:
> Hm....ist zwar interessant, allerdings wird auch dort der Aspekt
> angesprochen, dass Flash-Speicher nur 100k mal beschrieben werden
> könne....

Alterung bezieht sich rechnerisch auf die Löschvorgänge einer Page, 
nicht aber auf einzelne Programmiervorgänge von einem Teil einer Page. 
Man kann Pages inkrementell füllen, indem man neue Daten an die 
bisherigen Daten dranhängt. Erst wenn eine derart inkrementell gefüllte 
Page voll ist, und man zur nächsten übergehen muss, zählt die Page als 
einmal vollständig geschrieben (und muss gelöscht werden).

Schreibt man also jedesmal 16 Bytes in eine 16kB grosse Page, kann man 
1024 mal schreiben, bis ein einziger Vorgang von den 10000 oder 100000 
mindestens möglichen abgeschlossen ist. Das reicht eine Weile.

: Bearbeitet durch User
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
Noch kein Account? Hier anmelden.