Rafale28のブログ

頭の悪い大学生がやったことを忘れないようにメモしておくブログ

FPGAでSDカードと通信してみる。(3)

すこし日にちが経ってしまったが読み込んだデータの解析を再開した。

SDカードから512バイト読み出してその内容を何かしらの方法で確認しなければいけないのでとりあえずUARTで吐き出すことにした。データの保持は最初SRAMにしようと思ったが512バイトなので4096bitのレジスタに保持しておいた方が楽という結論になりSDから読んだデータをレジスタに保持し、読み終わったらUARTでPCに送るという方法にした。

とりあえずセクタ0を読んでみたデータがこれである。

f:id:rafale28:20170913155708p:plain

セクタ0にはパーテーショニングの情報がかかれているらしく446byte目から16byte分がエントリ1の区画テーブルらしい。順番に見てみる

これでちゃんとFAT16でフォーマットされていることが分かった。

次に開始セクタの番号だがデータはリトルエンディアンなので開始セクタは83になる。

 

83を読んでみた。

f:id:rafale28:20170913172020p:plain

これを文字表示にしてみると

f:id:rafale28:20170913172302p:plain

NO NAME FAT16という文字が読めた。

このセクタはBPB(BIOS Parameter Block)と言うらしくFATボリュームのパラメータが記録されているらしい。

とりあえず疲れたのでここまで切り上げる。

おそらく次の記事ではSDに保存されたファイルが読めていることだろう(希望的観測)