Absender: Timo Sandmann
Datum: Mi, 17.09.2008 11:23:02
In-reply-to:
<000001c9182b$69bf87f0$0400a8c0@mexpnew>
References:
<000001c9182b$69bf87f0$0400a8c0@mexpnew>
Hallo Frank, Am 16.09.2008 um 20:38 schrieb Frank Menzel:
Hallo Timo, ja, aktuelle Version funktioniert bei mir immer noch. Aber das Löschen dauert eben genau 39 Sekunden bei mir.
ok gut, danke. Ja das passt ja auch zu den Ergebnissen aus dem MMC-Test.
Du hattest mal geschrieben: "Löschen der Map mit Hardware-SPI dauert dann 7 Sekunden und mit Software-SPI 16 Sekunden. Das ist bei einer 512 MB großen MMCmobile und einer 1 GB großen SD- Karte ziemlich gleich." Was hast denn Du für eine Wahnsinns-Schnelle Karte, wenn diese nur 7Sekunden zum Löschen braucht !? Vielleicht war ja Deine auch abgebrochenund hattest nur geglaubt, dass die dann mit Löschen fertig ist ? Wie lange braucht sie denn nun?
Ich hab drei Karten, die beim MMC-Test alle ungefähr dasselbe Ergebnis liefern: 826 / 955 (µs für 512 Byte lesen / schreiben). 1 KB zu schreiben dauert also ca. 1,9 ms, dann dauern 4096 KB ca. 7,8 s. Da beim MMC-Test aber bereits die Datenübertragung zum Sim aktiv ist (beim ersten Map-Löschen nicht), ist das Map-Löschen noch etwas schneller (keine UART-Interrupts). Die 7 s waren einfach nur handgestoppt, aber das kommt auch recht gut hin, wenn man es nachrechnet. Wenn das MiniFAT-Display an ist, dauert es übrigens deutlich länger, weil die Displayausgabe dann noch (vergleichsweise viel) Zeit braucht.
Da bei der Map-Datei z.B. 8192 Blöcke geschrieben werden, macht sich eine nur etwas größere Zeitspanne pro Block eben stark bemerkbar. Das ist auch der Grund, warum die MMC-Funktionen so merkwürdigen (Inline-)Assemblercode enthalten, die Sende-Schleife z.B. wird beim Map-Löschen 4 Millionen (--> 4 MB) mal durchlaufen, da machen ein paar Zyklen mehr oder weniger dann schon eine ganze Menge aus.
Für die Map reicht übrigens auch eine 2304 KB (1536 * 1536 Punkte) große MiniFAT-Datei aus. Die Map-Datei im SVN war irgendwie von Anfang an 4 MB groß, keine Ahnung warum, ich habe daran nie etwas geändert. 2,25 MB zu löschen geht dann halt entsprechend schneller, an der Kartenperformance ändert das aber natürlich nichts.
Ich habe folgende Bot-kompatiblen Karten: 512 MB MMC, Produktbezeichnung TS512MRMMC4 1 GB SD-Karte "Ridata 1GB Pro 150x", weitere Daten unbekannt 2 GB SD-Karte , Produktbezeichnung TS2GSD150Wenn du nach den Produktbezeichnungen im Internet suchst, bekommst du weitere Infos zu den Karten. Im Bot habe ich immer die 512 MB MMC. SDHC-Karten (SD Version 2.00) funktionieren mit dem ct-Bot-Code (bisher) übrigens nicht.
Ich glaube wir brauchen mal eine MMC-FAQ-Seite im Wiki... Grüße, Timo