mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Reihenfolge beim Löschen eines Flashspeichers


Autor: Hans F. (snuff)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Community

Ich habe eine etwas speziellle Frage. Ich nutze einen externen 
Flashspeicher für einen Mikrocontroller. Wenn ich einen Löschvorgang 
starte (sektorweise oder gleich den gesamten Speicher), kann ich da 
irgendwie feststellen, in welcher Reihenfolge die Speicherplätze 
gelöscht werden? Werden sie einfach in aufsteigender Reihenfolge 
gelöscht oder ist dieser Prozess rein zufällig und überhaupt nicht 
kontrollierbar?

Danke und liebe Grüsse

Autor: holger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Wenn ich einen Löschvorgang
>starte (sektorweise oder gleich den gesamten Speicher), kann ich da
>irgendwie feststellen, in welcher Reihenfolge die Speicherplätze
>gelöscht werden?

Nein.

Autor: Dr. Sommer (Gast)
Datum:

Bewertung
1 lesenswert
nicht lesenswert
Die werden alle gleichzeitig gelöscht; das ist die besondere Eigenschaft 
des Flash Speichers. Könnte man die Zellen einzeln löschen, wäre das für 
die Programmierung einfacher und der Baustein würde dies ermöglichen. Es 
geht aber eben nicht,  bzw. nur bei teurerem Speicher mit kleinen Pages 
oder NOR-Flash.

Autor: Hans F. (snuff)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Um Missverständnisse zu vermeiden hier eine kleine Ergänzung:
Mir ist bewusst das mit einem Löschbefehl mehrere Bytes bzw. ein Sektor 
gleichzeitig gelsöcht wird.

Mir geht es um folgende Frage: Wenn während des Löschvorgangs der Strom 
getrennt wird, wo muss ich dann noch mit "Restdatenmüll" rechnen?

Deshalb die Frage bezüglich der "Löschreihenfolge".

Könnte ich also beispielsweise davon ausgehen, dass beim Ausfallen der 
Versorgungsspannung während eines Löschvorgangs am Ende des Sektors noch 
korrekte daten zu erwarten sind oder ist diese Überlegung grundlegend 
falsch?

Danke und mfg

Autor: holger (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>Könnte ich also beispielsweise davon ausgehen, dass beim Ausfallen der
>Versorgungsspannung während eines Löschvorgangs am Ende des Sektors noch
>korrekte daten zu erwarten sind oder ist diese Überlegung grundlegend
>falsch?

Ja, die Überlegung ist falsch. Es gibt keine "Löschreihenfolge".

Autor: user (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wenn du mitten beim Löschen ausschaltest, dann können einzelne Bits noch 
erhalten bleiben, aber dies über den ganzen Speicher verteilt.

Autor: Donni Donis (donnidonis)
Datum:

Bewertung
1 lesenswert
nicht lesenswert
Überall 1 reinschreiben, löschen, unterbrechen, auslesen und Ergebnis 
anschauen. Und gerne auch teilen, interessiert mich auch

Natürlich mehrere Durchläufe machen und vergleichen, damit man es 
beurteilen kann.

: Bearbeitet durch User
Autor: Alex Ge (dragongamer)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ein Mikrocontrolerprogramm sollte eigentlich in der Regel so designt 
sein, dass es mit jedem Zustand seiner Umgebung, bei Start klar kommt...
Gibt es in deinem Fall Gründe die das verhindern?

Wenn es wirklich um viel Speicher geht, welcher eine Signifikante 
Verzögerunge rzögt,w enn du ihn gänzlich überschreibst, beim start, dann 
solltest du es eventuell etappenweise machen.
Also nur einen Teil löschen, den Fortschritt im persistenten Speicher 
festhalten, und dann weiter machen.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.