バックナンバーはこちら。
https://www.simulationroom999.com/blog/In-vehicle-external-storage-backnumber/
はじめに
SDカードのACMD13(SD_STATUS)の話。
登場人物
博識フクロウのフクさん
イラスト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
ACMD13(SD_STATUS)
太郎くん
前回出てきたACMD13(SD_STATUS)だけど、
その名の通り、SD_STATUSというのが取得されるんだよね?
フクさん
うん。
SD_STATUS自体は512bit長のデータで、
CMDではなく、DATのラインで取得される。
太郎くん
そのSD_STATUSの内容がどうなってるのかなー?
SD_STATUS明細
フクさん
まぁ実は大半はReservedだったりするけど、
とりあえず、明細を書き出してみよう。
Bits | Identifier | Value | Description |
---|---|---|---|
511:510 | DAT_BUS_WIDTH | ’00’=1(default),’10’=4bit | 現在のバス幅。ACMD6(SET_BUS_WIDTH)でも取得可能 |
509 | SECURED_MODE | ‘0’=Not in the mode,’1’=In Serured Mode | Secured modeか否か |
508:496 | reserved | – | – |
495:480 | SD_CARD_TYPE | ‘0000h’=SD,’0001h’=SD ROM,’0002h’=OPT | |
479:448 | SIZE_OF_PROTECTED_AREA | Size of protected area | 保護領域サイズ |
447:440 | SPEED_CLASS | Speed Class of the card | カードのSpeed Class |
439:432 | PERFORMANCE_MOVE | Performance of move indicated by 1[MB/s] step. | AUのコピー速度 |
431:428 | AU_SIZE | Size of AU | Allocation Unit(NAND-FLASH消去単位) |
427:424 | reserved | – | – |
423:408 | ERASE_SIZE | Number of AUs to be erased at a time | ERASE_TIMEOUTで指定された時間で消去できるAU数 |
407:402 | ERASE_TIMEOUT | Timeout value for erasing areas specified by UNIT_OF_ERASE_AU | ERASE_SIZEで指定されたAU数を消去するのに必要な時間 |
401:400 | ERASE_OFFSET | Fixed offset value added to erase time. | AU消去時に必ずかかるオフセット時間 |
388:396 | UHS_SPEED_GRADE | Speed Grade for UHS mode. | UHS mode時のSpeed Grade |
395:392 | UHS_AU_SIZE | size of AU for UHS mode | UHS mode時のAUサイズ |
391:384 | VIDEO_SPEED_CLASS | Vedeo Speed Class value of the card | ビデオスピードクラス |
383:378 | reserved | – | – |
377:368 | VSC_AU_SIZE | AU size in MB for Video Speed Class | ビデオスピードクラスに於いてのAUサイズ |
367:346 | SUS_ADDR | Suspension Address | サスペンドアドレス |
345:340 | reserved | – | – |
339:336 | APP_PERF_CLASS | Application Performance Class Value of the card | アプリケーションパフォーマンスクラス |
335:328 | PERFORMANCE_ENHANCE | Support for Performance Enhancement functionalities | 応答向上機能 |
327:314 | reserved | – | – |
313 | DISCARD_SUPPORT | ‘1’:Supported | ERASE操作サポート |
312 | FULE_SUPPORT | ‘1’:Supported | ユーザエリア全域のERASE操作サポート |
太郎くん
なんだろう・・・。
聞き覚えのない機能が大量に並んでる気がするだけど、
これ全部追いかけていく感じなの・・・?
フクさん
それをやるととんでもないボリュームになるから、
基本は目的の”335:328 PERFORMANCE_ENHANCE“に絞って、
あとは気になったところだけあっさり説明って感じかな。
とりあえず、気にったところだけピックアップ
フクさん
とりあえず、きになったところ2,3点あげてみて。
太郎くん
うーん、ぱっと見だと、
- PERFORMANCE_MOVE
- VIDEO_SPEED_CLASS
- APP_PERF_CLASS
ってのが、なんか気になるといえば気になるなー。
フクさん
じゃー、まずはその3点だけ先に掘り下げてしまおう。
まとめ
フクさん
まとめだよ。
- ACMD13(SD_STATUS)で取得できるSD_STATUSの明細。
- 全てを説明するとボリュームが大きいので以下3点に絞って説明予定。
- PERFORMANCE_MOVE。
- VIDEO_SPEED_CLASS。
- APP_PERF_CLASS。
バックナンバーはこちら。
コメント