## c't-Projekte - Mailinglisten

[Voriger (Datum)] [Nächster (Datum)] [Voriger (Thread)] [Nächster (Thread)]
[Nach Datum][Nach Thread]

### Re: [ct-bot] SPI-Hardwareumbau

Absender: Timo Sandmann
Datum: Di, 16.09.2008 15:30:53
In-reply-to: <000001c9176c$766a13e0$0400a8c0@mexpnew>
References: <000001c9176c$766a13e0$0400a8c0@mexpnew>

    Hallo Frank,

    Am 15.09.2008 um 21:51 schrieb Frank Menzel:

>     Hallo Timo,
>     Start ist bei 282 und Ende bei 2280.
>     Den Patch habe ich eingespielt (Zeilen  manuell eingefügt da direkt in
>     der Mail drin) und muss sagen: Es klappt prima !
>     MMC-Test prima, der ja vorher aber auch schon lief mit denselben
>     Kartendaten. Aber das Map_Delete läuft jetzt wunderbar durch und die

> `Karte ist in 40 Sekunden gelöscht. Jedenfalls bricht er nicht kurz` `nach`

>     dem Start ab. Ist die Löschzeit annähernd richtig ? Scheint mir doch
>     recht lange zu sein.

`dein MMC-Test hatte ergeben, dass es ca. 3,7 ms dauert, 512 Byte zu` `schreiben, das sind also ungefähr 7,4 ms pro KB. Folglich dauert es` `(theoretisch) 4096 KB * 7,4 ms / KB = 30 s für die ganze Map-Datei.` `Aber: Die Lösch-Funktion "stresst" die Karte viel mehr, es werden ohne` `Unterbrechung die Daten (alles Nullen) geschrieben, beim MMC-Test` `hingegen hat die Karte immer etwas Luft, weil auch Daten gelesen,` `Puffer aufbereitet werden und die ganze Testroutine nur beim Display-` `Update ausgeführt wird.` `Ich denke genau hier lag auch das Problem: Wenn die Karte nach einem` `Schreibvorgang "fertig" meldet, sind die Daten wohl noch nicht im` `Flashspeicher angekommen, die Antwort heißt nur, dass die Karte wieder` `bereit ist. Irgendwann ist der Cache im Kartencontroller aber voll` `bzw. er muss auf einen anderen Flashblock wechseln und das dauert dann` `deutlich länger. Hier hat der Timeout in mmc_write_sector_spi() nicht` `mehr ausgereicht (der Zähler war in 16 Bit) und es kam zu "Fehler 3".` `Mit dem Patch ist der Timeout-Zähler 24 Bit groß, das reicht dann auch` `für den (seltenen) Fall, dass die Karte länger braucht, bis sie wieder` `bereit ist.`

`Ich muss noch mal überlegen, ob damit jetzt auch wirklich alle` `(Timeout-)Fälle abgedeckt sind, dann stelle ich den Patch ins SVN. Da` `der Zähler erhöht wird, während die Hardware das aktuelle Byte` `überträgt, verlangsamt der Patch die ganze Geschichte übrigens nicht,` `so dass sich für schnellere Karten kein Nachteil ergibt.`

    Grüße,
    Timo

- Antworten:
  - [ct-bot] Speed-Log auf MMC verursacht Absturz
    - From: Harald W. Leschner
  - Re: [ct-bot] SPI-Hardwareumbau
    - From: Timo Sandmann

- Referenzen:
  - AW: [ct-bot] SPI-Hardwareumbau
    - From: Frank Menzel

- Voriger (Datum): AW: [ct-bot] SPI-Hardwareumbau, Frank Menzel
- Nächster (Datum): [ct-bot] Speed-Log auf MMC verursacht Absturz, Harald W. Leschner
- Voriger (Thread): AW: [ct-bot] SPI-Hardwareumbau, Frank Menzel
- Nächster (Thread): [ct-bot] Speed-Log auf MMC verursacht Absturz, Harald W. Leschner
- Indizes:
  - Datum
  - Thread