March 03, 2007MMC/SDのSPIモードでのbusy信号以前『SDカードとの闘い』という記事でオシロでSDの様子を見てみたい、ということを書きましたが、実際に計測してみました。前の記事では、データ落ちが発生するのはSDの書込み性能の違いからくるものであり、公称性能が違うSDカードを、書込み時のビジー(busy)が出力される長さをオシロで計測することで評価してみようという趣旨だったと思います。ところが、ELMの『MMCカードの使い方』をよく読んでみると、このようなことが書いてありました。
今まで実はbusyの間はポーリング、つまりbusyの出力が停止するまでずっとCPUをSDの監視に割り当てていたのですが、ここに書いてあるようにbusyの評価を先送りにできるのなら、その開いた時間でデータを取りこぼしなく確実に取得できることになります。そこで、そのビジーの遅延評価をオシロを利用して詳しく分析してみることにしました。 長いので詳細は続きにてどうぞ。 busyの遅延評価を行った場合の全体図を示します。 busyが出力されてCSをデアサートする部分。SDのDOUTを確実に解放するためにはCSデアサート後、CLKを適度に送る必要があります(ここでは8clk)。 busyの遅延評価(CSを再アサートし、DOUTの出力を見る)を行っている部分。busyの場合はCSアサート後、1clk後にDOUTがbusyを出力します。 ついでにbusy遅延評価を行いながら、1セクタ(512byte)の連続書込みをした場合の信号の変化を捉えてみました。カードはTECIC MicroSD 512MBですが、これによるとbusy出力は約0.99msecであり書込み1サイクルあたり1.68msecでした。よって、これから推算される書込み能力は(1000 / 1.68 * 512) = 305 KByte/secで、僕の用途では十分に高速です。なお、SPIのクロックは24MHzです。 文献にもあたったところ、SandiskのSDのマニュアルを読むと、このbusyの遅延評価について100ページの5.4.3 Data Writeに明確に書いてありました。このマニュアルですが、どうやら本家からはデットリンクになっているようなのでコピーを落とせるようにしておきます、問題がある場合は直ちに削除します。 コメント
コメントする
|
検索君
スポンサード リンク
最近の記事 HDL-AAX2 シャットダウンスクリプ… 曜日を求める(8bit範囲で) Assisted GPS (A-GPS)… HDL-AAX2の修理 ExcelでMarkdownの表を編集 Rubyで確率分布の性質を求めるgem Windowsのcygwin/MSYS2… RubyでGPS姿勢推定 RubyでGPS受信機 boost::math::distrib… E-MailRelay本体更新(ver … RinRuby (Ruby gem fo… RSpecでのexample間共用のイン… 夏休みの工作: ソースコード公開 夏休みの工作: タッチセンサ GPD Pocketに増設したストレージ… GPD Pocketにストレージ増設 GPD Pocket 内蔵USBハブ基板… GPD Pocket 内蔵USBハブ基板 久しぶりの基板作成 自転車用六角穴付き特注ナット Xiaomi Mi Max (Hydro… Xiaomi Redmi Note 3 … Super Sylphide 進捗状況(… Super Sylphide 進捗状況(… かてごり~一覧 Aero & Astro (100) Computer (189) Embedded System (308) Info (14) Mountain (43) Movable Type (28) Movie & Animation (20) Music (9) Photo (47) Site Management (46) Timely (135) Tips (68) 今月かれんだ~ あ~かいぶ 最近のTrackback ダイナミックDNS 3domain.hk… @ 3年落ちのPCでまだまだがんばる日記 9X到着〜インプレ@ 艦船プラモとRCマイクロヘリが好き! USL-5P@ 谷岡のページ (PukiWiki/TrackBack 0.3) [mbed][猫カメラ]猫カメラつづき@ Embedded 脇見運転 [mbed][猫カメラ]mbed + 猫…@ Embedded 脇見運転 MT4 @ ダイナミックで動く画像リサイ…@ wed@ 私がAudionoではなくBlackfi…@ Blackfin空挺団::Blog 【Web】はぐれメタルできたよー@ I'm St'a'dying English ちっとも、作っていない@ 三D坊主 猫カメラ@ 脇見運転 To 『猫カメラ』 試作中 最近のこめんと いきなりのコメント申し訳ありません。
… by まろまろ先輩 @ GPD Pocket 内蔵USBハブ基板 音楽を読み取りする 説明して欲しいですby 榎本待子 @ iPodからPCに曲を転送 Arduino嫌いだわ。
あんなもの見…by Alice @ 僕がArduinoを使わないわけ やや遅い書き込みで失礼します。
別の機…by LOSスマホ @ Xiaomi Mi Max (Hydrogen) の MIUI8 FM Radio (stock) 日本バンド対応 >Bさま
確か当時、そこまで高くなかっ…by fenrir @ MKS Promenade-Ezy ケージ交換 お値段はおいくらでしたか?
私も曲げて…by Bさま @ MKS Promenade-Ezy ケージ交換 >forester3さん
お返事遅くな…by fenrir @ EZUSB Keilからsdccへ、EZUSB.lib等の移植 お世話になります。3年ほど前sdccの…by forester3 @ EZUSB Keilからsdccへ、EZUSB.lib等の移植 以下のものはどうですかねby て @ VBAで泣かないために >tomi9さん
コメント気づくのが遅…by fenrir @ TCM8240MD breakout (i2cで画像取得モジュール) 動作確認完了 りんく集 |