バックナンバーはこちら。
https://www.simulationroom999.com/blog/In-vehicle-external-storage-backnumber/
はじめに
SDカードのPERFORMANCE_ENHANCEの話。
登場人物
博識フクロウのフクさん
イラストACにて公開の「kino_k」さんのイラストを使用しています。
https://www.ac-illust.com/main/profile.php?id=iKciwKA9&area=1
エンジニア歴8年の太郎くん
イラストACにて公開の「しのみ」さんのイラストを使用しています。
https://www.ac-illust.com/main/profile.php?id=uCKphAW2&area=1
PERFORMANCE_ENHANCE
で、やっとPERFORMANCE_ENHANCEの話に突入なんだけど・・・。
PERFORMANCE_ENHANCEってなんだったっけ?
まぁここを読み返すのが早いかな。
あー、Command Queueがどーのってやつだ!
あれ?Command Queueって最近見た単語だな?
前回のApplication Performance Classの話の時だな。
お!
ということは、良い感じで話が繋がっていたってことか!
まぁ応答向上仕様と言う意味では
全部話としては繋がってるね。
PERFORMANCE_ENHANCEの内訳
まずはPERFORMANCE_ENHANCEの内訳を書き出してみよう。
PERFORMANCE_ENHANCE | Description |
---|---|
SD_STATUS b[335:331] | Command Queue Support. |
SD_STATUS b[330] | Support for Cache.1:Supported |
SD_STATUS b[329] | Support for Host-initiated maintenance,1:Supported |
SD_STATUS b[328] | Support for Card-initiated maintenance,1:Supported |
キャッシュの話はApplication Performance Classの時にも出てきていたけど、
HostとCardのmaintenanceってなんだろ?
セルフメンテナンス
SDカードにはセルフメンテナンスの機能が入っている場合がある。
Application Performance Class 2としてはmustな要件になる。
セルフメンテナンスって具体的に何してるの?
まぁSDカード内部のデフラグみたいなことやってると思うよ。
思うよって・・・。
はっきりしないなぁ。
正直何をするかについてはSDの仕様としては規定していない。
といっても、目的としては、SDカードのアクセス速度を最大化なんで、
データの整地と考えるのが妥当だろう
あー、それでデフラグってことか。
セルフメンテナンスの種類
セルフメンテナンスも
Host-initiated maintenance
と
Card-initiated maintenance
があるみたいだけど?
名前のまんまだけど、
ホスト側主導のメンテナンス起動
と
カード側主導のメンテナンス起動
の2つがあるってことだね。
もしかして、そこそこ話長い・・・?
まぁそこそこの情報量なんで、次回説明しようか。
まとめ
まとめだよ。
- SDカードのPERFORMANCE_ENHANCEの説明。
- PERFORMANCE_ENHANCEの内訳。
- Command Queue。
- キャッシュ。
- ホスト主導メンテナンス起動。
- カード主導メンテナンス起動。
- メンテナンスはSDカード内のデフラグ。
バックナンバーはこちら。
コメント