Forum: Mikrocontroller und Digitale Elektronik Bits eines Flashspeichers beschreiben


von Selbst ist der Mann (Gast)


Lesenswert?

Hallo Gemeinde,

Ich stelle momentan Überlegungen für eine kleine Flashverwaltung für den 
internen Flashspeicher eines STM32F2 an. Nun stellt sich mir die Frage: 
Kann man einzelne Bits eines Bytes des Flashspeichers durch 
aufeinanderfolgende (byteweise) Schreibvorgänge nacheinander 
programmieren (also auf 0 setzen), ohne dass die Zelle zusätzlichen 
Schaden erleidet?

von holger (Gast)


Lesenswert?

>Kann man einzelne Bits eines Bytes des Flashspeichers durch
>aufeinanderfolgende (byteweise) Schreibvorgänge nacheinander
>programmieren (also auf 0 setzen), ohne dass die Zelle zusätzlichen
>Schaden erleidet?

Nein. Es wird immer das ganze Byte geschädigt. Und noch
schlimmer es wird eine ganze Page geschädigt. Vergiss es.

von dummschwaetzer (Gast)


Lesenswert?

Ja.
Seite! löschen (xxx byte)
dann nach belieben Bits in dieser Seite auf 0 setzen.
Die größte Belastung für die Flash-Zelle ist das löschen.

von Selbst ist der Mann (Gast)


Lesenswert?

Der Witz am Verfahren soll sein, dass so viele Bits wie möglich 
programmiert werden, bevor die Page wieder gelöscht wird. Beispielsweise 
wird in einem Byte der Zustand eines Teilbereichs des Flash markiert. 
Später soll dieser Bereich als "benutzt" markiert werden, womit 
verbliebene Bits im Byte ebenfalls auf 0 programmiert werden. Die Zahl 
der Schreib-/Löschzyklen soll dadurch minimiert werden. Aber 
möglicherweise geht der Schuss nach hinten los?

von holger (Gast)


Lesenswert?

>Die Zahl der Schreib-/Löschzyklen soll dadurch minimiert werden. Aber
>möglicherweise geht der Schuss nach hinten los?

Papp dir ein SPI FRAM dran und vergiss den Quatsch.

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.