Forum: Mikrocontroller und Digitale Elektronik USB Stick Schreibzyklen


von usb (Gast)


Lesenswert?

Hallo,

weiß jemand, für wieviele Schreibzyklen USB Sticks in der Regel 
ausgelegt sind? Ich habe einen Datenlogger gebaut, der im 5Hz Takt etwa 
400Byte auf den Stick schreibt. Mit welcher Lebenserwartung muss man bei 
so einem Stick rechnen?

DAnke

von Purzel H. (hacky)


Lesenswert?

Das kommt auf die Details an. Diese Schreiboperation... macht die 
jeweils open(), write(), close() ? oder wird nur einmal geoeffnet ?
Der Unterschied ist wie oft das directory neu geschrieben wird. Ich 
wuerd von 10k Schreibvorgaengen pro sektor ausgehen. Das Direktory ist 
daher das kritische Teil.

von usb (Gast)


Lesenswert?

Die Datei wird geöffnet, Daten werden geschrieben, Datei wird 
geschlossen.
Wird bei jedem Dateizugriff die Dir. neu geschrieben?

von Guest (Gast)


Lesenswert?

Man darf aber nicht vergessen, dass intern im USB-Stick das Flash auch 
nicht immer an die gleiche Stelle geschrieben wird. Dafür sorgt die 
Elektronik im USB-Stick.

von JojoS (Gast)


Lesenswert?

Bei jedem schreibenden Zugriff müsste auch das Dir aktualisiert werden: 
Änderungsdatum, Gröss, Archivbit. Die c't hatte mal einen Dauerversuch 
gemacht, ich finde das genaue Ergebnis aber gerade nicht.
http://www.heise.de/ct/hotline/Flash-Haltbarkeit-296140.html
http://wapedia.mobi/de/SD_Memory_Card
Aber da es auch Qualitätsunterschiede bei den Flashs gibt (auch 
innerhalb einer Serie eines Herstellers) würde ich mich bei wichtigen 
Daten nicht da drauf verlassen.

von Kai (Gast)


Lesenswert?

Nach 5,5 Stunden ist der Spaß vorbei.
Vorausgesetzt, Du beschreibst immer dieselben Zellen.

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

> Du beschreibst immer dieselben Zellen.
Das organisiert der Controller im USB-Stick. Und der sollte ein halbwegs 
ausgeklügeltes Wearleveling haben, dass das nicht passiert. Aber 5x pro 
Sekunde scheint mir auch recht heftig...

>>> Ich habe einen Datenlogger gebaut, der im 5Hz Takt etwa
>>> 400Byte auf den Stick schreibt.
Zudem sind die 400 Byte ganz arg ungeschickt wenig für das 
Dateisystem...


Warum sammelst du nicht ein paar Bytes zusammen und schreibst die dann 
auf einen Rutsch?

BTW:
Du solltest übrigens nicht meinen, dass die Daten auch tatsächlich auf 
dem Flash gespeichert sind, wenn du sie via USB losgeworden bist. Da 
können durchaus noch ein paar ms zwischen "Schreiben" und "Speichern" 
vergehen...

von usb (Gast)


Lesenswert?

Hallo Lothar,

mit den paar ms kann ich leben. Die Daten müssen mit der Rate 
geschrieben werden, da es sich um einen Logger für Rennstreckenfahrzeuge 
handelt. Kommt es hier zu einem Unfall, schaltet sich in der Regel die 
Versorgungsspannung automatisch ab. Befindet man sich da gerade am Ende 
eines solchen "Sammelrhytmus", so gehen wichtige Unfalldaten verloren.

Gruß
Alex

von Hannes H. (mui)


Lesenswert?

Logger mit Batterie puffern? (2-3x AA)

von Peter (Gast)


Lesenswert?

ob die Daten noch lesbar sind wenn man währen des Schreibens die 
Stromversorung kappt ist aber zweifelhaft.

Entweder das Filesystem ist platt oder wenn man ohne FS arbeitet, der 
Controller sich intern verschluckt sich wenn er gerade beim merken 
seiner Wearleveling daten ist.

von usb (Gast)


Lesenswert?

Peter,

habe ich schon getestet. Wenn die Stromversorgung gekaptt wird, bevor 
die Datei geschlossen wird, dann geht der letzte Datensatz verloren.

Puffer wäre natürlich eine Möglichkeit.

Gruß
Alex

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

> ob die Daten noch lesbar sind wenn man währen des Schreibens die
> Stromversorung kappt ist aber zweifelhaft.
Sind sie nicht, ein einfacher Test beweist es: Kopiere eine große Datei 
vom PC auf den Stick und zieh den mittendrin ab. Da bekommst du alles 
mögliche von "Datei korrupt" über "nicht lesbar" bis zu "Medium nicht 
erkannt".

> schaltet sich in der Regel die Versorgungsspannung automatisch ab.
Dann solltest du sie lokal puffern, die Versorgung...

> Logger mit Batterie puffern?
Mindestens der USB-Stick muß gepuffert werden, damit der intern fertig 
wird und nicht das FS versaut.

EDIT:
> habe ich schon getestet. Wenn die Stromversorgung gekaptt wird, bevor
> die Datei geschlossen wird, dann geht der letzte Datensatz verloren.
Wie hast du das getestet? Statisch, oder wirklich während des 
Schreibens? Hast du unterschiedliche USB-Sticks ausprobiert (da gibt es 
nämlich Unterschiede)?

von Held der Arbeit (Gast)


Lesenswert?

bitte auch unterscheiden welche speicherarchitektur (slc oder mlc). nur 
neuere sticks haben überhaupt wearleveling!

von D.T.P.G. (Gast)


Lesenswert?

>Die c't hatte mal einen Dauerversuch
>gemacht, ich finde das genaue Ergebnis aber gerade nicht.

Ich habe das Ergebnis gefunden:
Der Stick hat 16 Mio Zyklen geschafft.

Wie gesagt hängt das aber von der Bauart und der Fehlerkorrektur ab, 
aber auch die Temperatur wird eine Rolle spielen (die 50 mA werden zu 
99% in Wärme umgewandelt, die staut sich bei Dauerbelastung)

von Peter II (Gast)


Lesenswert?

D.T.P.G. schrieb:
> die 50 mA werden zu 99% in Wärme umgewandelt
und wo bleibt der Rest?

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Peter II schrieb:
> und wo bleibt der Rest?
Licht?
Jeder USB-Stick hat so eine LED... ;-)

von Peter II (Gast)


Lesenswert?

Lothar Miller schrieb:
> Jeder USB-Stick hat so eine LED... ;-)

gar kein Platz dafür
http://www.elecom.co.jp/news/200903/mf-su2/

von Verwirrter Anfänger (Gast)


Lesenswert?

Einfach mal das hier modifizieren:
http://dangerousprototypes.com/2010/05/25/prototype-flash_destroyer/
und selber testen ;)

von ... (Gast)


Lesenswert?

Held der Arbeit schrieb:
> bitte auch unterscheiden welche speicherarchitektur (slc oder mlc). nur
> neuere sticks haben überhaupt wearleveling!

Dafür vertragen bei den älteren die einzelnen Zellen mehr Zyklen. 
Aktuelle mlc schaffen grad noch dreitausend.

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.