2021-04

車載外部ストレージ

【FileSystem】車載外部ストレージ その88【FatFs②】

FatFsをDownloadしてきた。日本語サイトではなく、英語サイトから。FatFs sample projects for various platformsの方を落とす。FatFs sampleの中身確認。様々なマイコン向けのサンプルあり。(stm32,lpc23xx)win32がWindows向けのサンプル。
車載外部ストレージ

【FileSystem】車載外部ストレージ その87【FatFs①】

FAT解説ページの紹介。 FatFsの作者であるChaNさんの解説ページ。 今後の方針。 FatFsをPC上で動作させる。 現状でもメモリ空間にFATを構築することはできるサンプルが存在。 SDカードのディスクイメージを吸い上げて、それに対して読み書きとかできたらいいな。(希望)
車載外部ストレージ

【FileSystem】車載外部ストレージ その86【SD応答向上仕様㉟】

CMD43(Q_MANAGEMENT)について説明。 CommandQueueに登録されてるTaskを全部かTask ID別に停止でいる。 Sequential CQ mode時にTask ID単位の停止は禁止されている。 停止した際の挙動は未規定の未保証。 SDカード関連の話はこれで完了。
車載外部ストレージ

【FileSystem】車載外部ストレージ その85【SD応答向上仕様㉞】

CMD38(ERASE)のDiscardについて説明。 DiscardはSSD由来の用語。 Discard指定したBlockがどのような状態になるかは仕様上の規定はない。 Discardしておくと、ストレージ側(SD/SSD)で効果的なウェアレベリングを実施してくれる可能性が上がり、結果として寿命が延びやすくなる。
車載外部ストレージ

【FileSystem】車載外部ストレージ その84【SD応答向上仕様㉝】

CMD38(ERASE)のFULEについて説明。 完全フォーマットとかで使われる仕様。 CMD38(ERASE)のFULEのサポート有無はSD_STATUSで確認できる。 通常のERASEと違い、全領域ERASEであっても1秒以内に完了する仕様となっている。 間違って使わないように消去範囲を明示する必要はある。
車載外部ストレージ

【FileSystem】車載外部ストレージ その83【SD応答向上仕様㉜】

CMD38(ERASE)について説明。 CMD38のリクエストパラメータは32bit長Erase Function。 Eraseが通常の消去、Discardは管理破棄、FULEは全領域Erase。 busy待ちはAU_SIZE、ERASE_SIZE、ERASE_TIMEOUT、ERASE_OFFSETから算出する。
車載外部ストレージ

【FileSystem】車載外部ストレージ その82【SD応答向上仕様㉛】

CMD32(ERASE_WR_BLK_START)、CMD33(ERASE_WR_BLK_END)について説明。 リクエストパラメータ、レスポンスフォーマットは一緒。32bit長アドレス。 R1フォーマット。 SDUC時はCMD22(ADDRESS_EXTENSION)で5bitの拡張アドレスを指定する。
車載外部ストレージ

【FileSystem】車載外部ストレージ その81【SD応答向上仕様㉚】

消去系コマンドの説明。 CMD32(ERASE_WR_BLK_START)。 CMD33(ERASE_WR_BLK_END)。 CMD38(ERASE)。 消去系コマンドはCQモード時のみ使用可能。 CommandQueueと連携することで効果が得られるためと思われる。
車載外部ストレージ

【FileSystem】車載外部ストレージ その80【SD応答向上仕様㉙】

CMD19(SEND_TUNING_BLOCK)の電気回路的な話。 CMD19を使用して以下を確認するのが目的。 最大オーバーシュート、アンダーシュートの確認。 最大の伝播遅延の確認。 最小の伝播遅延の確認。 電気回路の難しいところはハード屋さんがやってくれるはずなのでサポートを万全にすることを意識する。
車載外部ストレージ

【FileSystem】車載外部ストレージ その79【SD応答向上仕様㉘】

CMD19(SEND_TUNING_BLOCK)はSDカードバスのチューニング 1.8[V]駆動モードの時に利用できる。 1.8[V]駆動モードじゃない場合はillegal command扱い。 カードから送られてくるデータが固定なのはSDカード毎に検査が変わらないようにするため。