Guten Abend!
Ich habe erfolgreich eine CF im Memory Mapped Mode an einen AVR
drangehängt.
Wenn ich einen Sektor adressiere und anschliessend den Schreibbefehl
durchgebe, kann ich ja ziemlich schnell den ganzen Sektor (512B) ins
Datenregister der CF schreiben. Soweit so gut. Wenn der Sektor
geschrieben ist, dauert es aber ziemlich lange bis die Karte wieder
bereit ist. Ich hab das mal so quick n' dirty gemessen und es sind ca.
400 Mikrosekunden. Ist das normal?! Ich habe keine Beschreibung zu
dieser Zeit in der Spezifaktion gefunden. Wie erreicht man dan die ca.
10MB/s lesen und schreiben die auf der Packung der CF steht?!
Bitte um Hilfe...
Hallo,
ich habe EXTREME Unterschiede zwischen den Cf karten festgestellt.
Lexar Karten z.b. arbeiten 100% nach Spezifikation und sind sehr
schnell. Da kann ich MP3 Datein bis 320kbit/s abspielen.
Mit genau der gleichen Hardware und Software kann ich keine Karten der
Firma extreme Memory abspielen, dort stockt die widersgabe schon bei
80kbit/s
Darüber hinaus habe ich bemerkt, daß die Karte von Extreme Memory es
niicht zulässt, daß mehrere Sektoren auf einmal in den Read Buffer
geladen werden. Wenn ich z.b. 4 Sektoren auf einmal in den Buffer lade
und 191 Words rausgelesen habe ist das Busy-Flag im Statusregister
Dauerhigh und die Karte ist erst nach einem Hardwarereset wieder
einsatzbereit.
Wie es scheint gibt es eben viele Unterschiede zwischen den Karten.
Ich kann nur die Lexar Karten empfehlen, die sind zwar etwas teurer,
dafür hat man mit ihnen weniger Probleme und von extreme Memory kann
ich nur abraten.
Danke!
Ich habe eine brandneue CF ultra von Sandisk.
Ich lese/schreibe immer nur 1 Sektor aufs mal... Ich komme auf ca.
300KB/s was eigentlich reicht, aber das lange warten zwischen den
Sektoren nervt mich, zwingt mich wahrscheindlich zu einem internen
Puffer, da ich die Daten "realtime" verarbeiten muss.
Da CF Cards als "Speichermedien" = Festplatten gelten
gilt vermutlich
10MB/s = 10.000.000 Bit / s
10.000.000 / 8 = 1250000 Byte
1250000 / 512 = 2441 Sektoren
2441 * 0.0004 s = 0.97s => pro Sekunde 10MBit
oder Liege ich da falsch ??
Gruss
T.Stütz liegt -glücklicherweise- falsch.
Zwar sind 10 MByte in der Tat 10 Millionen* Bytes, aber eben Bytes,
nicht Bits.
*) die uns geläufigeren auf Zweierpotenzen basierenden Werte werden
korrekt kibibyte (kiB) , Mebibyte (MiB), Gibibyte (GiB) etc. benannt.
Das klingt zwar bescheuert, ist aber korrekt.
Rufus hat wirklich Recht. Ist schon witzig, seit dem ich denken kann und
in der gesamten mir bekannten Literatur sind 1024 Byte eben 1 Kilobyte.
Die Bezeichnung Kibibyte ist mir noch nie untergekommen. Naja, liegt
dann wohl daran, daß ich wohl doch nicht so viel Literatur kenne :)
Jedenfalls danke für die Info, Rufus. Man lernt doch nie aus...
@all
Ich war mir echt nicht sicher - von der Rechnerei her stimmts ja auch
und: manche Festplattenhersteller rechnen halt anstatt mit 1KByte=1024
mit 1000 Byte
Natürlich weiss ich wie groß ein MByte/KByte etc ist...
Die Frage war nur ob das auch der CF-Card Hersteller weiß...
Gruss
"manche Festplattenhersteller rechnen halt anstatt mit 1KByte=1024
mit 1000 Byte"
Das tun alle Festplattenhersteller, weil's nämlich korrekt ist.
So ist das seit einigen Jahren in einer Norm festgeschrieben:
http://www.iglossar.de/g/gibibyte.htm
Würde ein Festplattenhersteller Kapazitäten in KByte angeben, damit
aber Kibibyte meinen, würde ihm in Deutschland mit Sicherheit der Arsch
wundgeklagt werden, wg. irreführender Werbung etc.
Es ist ein mittleres Wunder, daß das bei Computerhändlern, die
Speichermodule verkaufen, nocht nicht vorgekommen ist.
Hallo Rufus!
Ich bin schon mindestens ein Jahrzehnt Computerfan, aber das habe ich
noch nie gehört. Im Gegenteil ich habe mich immer geärgert, dass 1
Kilo-Byte 1024 Byte sein sollen. Dies ging mir immer gegen meine Logik
und gegen den Strich.
Dankeschön. Die Information war sehr interessant.
Aber warum sind - Gibi-Byte, Kibi-Byte und Mebi-Byte so unbekannt?
Auch in der Schule haben wir dies nicht gelernt.
Tschüss
Martin
Und beim PC wird es auch nirgend verwendet. Daher ist eine 160GB
Festplatte auch gerade mal 148GiB groß. (in Windows steht da natürlich
GB)
Oder kann es sein, dass es eine alternative Schreibweise für GiB gibt
?
Irgendwo habe ich mal was gelesen, das k=1000 und K=1024
Windows verwendet nämlich immer ein großes K für KB.
"Irgendwo habe ich mal was gelesen, das k=1000 und K=1024
Windows verwendet nämlich immer ein großes K für KB."
Das ist eine höchst inoffizielle Konvention, die spätestens beim
Megabyte scheitert:
1 mB ist ziemlich wenig - nämlich ein Millibyte.
Betrachtet man übrigens diverse Kernel-Ausgaben aktueller
Linux-Distributionen, dann reden die auch von MiB, KiB und GiB.
Ich gebe ja offen und uneingeschränkt zu, daß es mächtig beknackt
klingt "Mebibyte", "Gibibyte". Schauder.
Es ist aber trotzdem sinnvoll, daß das so festgelegt ist.
@all
Bin zwar seit über 15 Jahren im Programmiergeschäft tätig,
lerne aber jeden Tag/Stunde was neues...
Wir sollten uns aber mal wieder auf das eigentliche Problem
stürzen: warum ist die CF-Card so langsam (grob geschätzt etwa 10x)
Gruss