パスワードを忘れた? アカウント作成
233970 journal

gm300の日記: class対応。

日記 by gm300
与太を書いたら長くなりすぎたので自分の日記に引越し。携帯でSDHCにアクセスしたら遅いという話。全然相手の都合考えるつもりなし。与太だもん。最近のSPIモードアクセスの集体勢(あれ?)としよう。

たぶんどんなclassのカードでも読めると思う。というわけで制約無し。読めるけど、class が示唆する最高速度なり、カードの実力としての最高速度で読めるかどうかはまた別。SDcardのアクセスに都合が良いclock 速度は、400KHz, 25MHz, 50MHz といろいろあって、しかもカード側は自走できる。 もしかすると節電のためにカードの電圧は抑え目で、SDの部分は、2MBps くらいしか期待していないので、clock等も控えめかもしれない。本当は4bitパラレルの転送ができるけど、1MBpsくらいですむのならば、SPIモードで、1bit/1clockで転送しているかもしれない。音楽聴いたり、時々写真書きこむくらいなら充分じゃない?

SDカードだとバースト転送は早い。が、電源on直後の状態、spec的には初期化中は400Kbpsしかでない。お間抜けなfirmだと、バーストできないときは、いちいちFATを頭から、読み直して、そのときには部分的に勘違いして400Kbpsになっているかもしれない。さらにlong file name だとさらに遅いかもしれない。

どんなにいいカード用意してもfirmが間抜けならばしかたがないが、そうでないならば、こうしたら早くなるはず。
1) FAT16でformat する。8Gだと普通はFAT32になっているはずだが、無理にFAT16にする。
2) long file name は使わない。windows では<使わない>という方針は選べないと思う。携帯もlong file name は始めから無視する。
3) sectorサイズは変えることができないからcluster sizeを256kにする。(Microsoftのdocumentには64k以上は読めないと思ったほうがいい とあるけど無視)
4) ディレクトリの階層は浅めにして、特にMP3のファイルをおく階層では、ディレクトリあたり死にそうなくらいたくさんファイルを置いて、firmがファイル名の順序とか、最終更新時間の順序でファイルを読む出そうとしないことを強く願う。
5) とりあえずディレクトリ全部作ってデータを流し込むとかして、ファイルができるだけ連続したクラスタに入るようにする。(手がかかるわりに効果は薄いと思う)
6) 携帯を電源に繋げる。電源に繋がっていると、SDの電圧を上げて、パラレル転送で、25MBpsになるかも。
この議論は、gm300 (14617)によって ログインユーザだけとして作成されたが、今となっては 新たにコメントを付けることはできません。
typodupeerror

コンピュータは旧約聖書の神に似ている、規則は多く、慈悲は無い -- Joseph Campbell

読み込み中...