2002.12.18 新規

はじめに

 他のカードに比べて高価だったMMC/SDカードも価格が下がってきました。
 4MB〜16MBのMMCカードなら\1,000.-を切るジャンク品も出てきたので、FPGAのコンフィグレーション+アプリケーション用ストレージとして、MMC/SDカードを使ってみることにします。
 1チップマイコンを使用してJTAGまたはシリアル経由でコンフィグレーションを行います。
 アクセス方法は、CRC計算の不要なSPIモードを使用します。

とりあえずアクセス

 とりあえずPCのパラレルポートに繋いでMMC/SDカードをアクセスしてみます。
 インターフェース回路は基本的には直結ですが、MMC/SDカードのI/Oは3.3Vなのと、一部オープンドレインドライブなので、74HC125等を使ってレベル変換する必要があります。
MMC/SD - DOS/Vパラレル参考回路図

 とりあえずセクタリード/ライトは動きました。
 ドライバー部は、タイムアウトが無く、エラー処理もかなり手抜きですが、とりあえずアクセスはできています。
 パラレルポートで事足りるなら、実行&デバッグが容易なPC上で開発するのが、C言語の1チップマイコン用ドライバー層を一から構築する時の早道です。
DOS/V,Windows用サンプルプログラム、ソース一式 (2002.12.19 giveioモジュール修正)

 あとは、実際マイコン用に乗せてテストするだけです。

 私はコネクタの手持ちが無かったので、お約束というか最安値のUSB-SDカードリーダを買って改造しました。
 今回は通常のリーダ/ライタとしても機能も残してあります。
MMC I/F

現状は、ここまでです。

今後MMCドライバーを8bitマイコン向きに書き直し、FAT上のファイル読み込みドライバを追加します。