Keywords:
crossgcc gcc gdb hitach H8 H8/3048 AKI-H8 秋月 linux cygnus MAS3507 MP3 MPCD SCSI LC7883 WD33C93
MPCD計画
↑試作基板(製作中)
完成イメージ画像(汗)
Copyright(C)1998,1999 かしま
since Dec.1998
ec2-3-149-237-231.us-east-2.compute.amazonaws.com , 60520th
1999/11/26 UPDATED
かしまの掲示板
MPCDとは?
MPCDは SCSIインターフェースに接続された記憶デバイス(CDROM/HDD/MO)から MP3ファイルをロードして再生できる、ポータブルマイコンである。
海外では、CDから再生できるタイプのものも発表されているようである。
開発環境の構築
AKI-H8遊び
ハードウェア
仕様
日立 H8/3048(16MHz) CPU
128KBフラッシュROM(CPUに内蔵)
2Mbyte(1Mbit×16bit DRAMx1) メインメモリ
MAS3507 MPEGオーディオハードウェアデコーダー
MPEG1/2 layer-2/3対応
対応ビットレート 8K/sec〜160K/sec
対応サンプリング周波数 8KHz〜48KHz
DSPトーン(bass, treble)コントロール内蔵
LC7883 8倍オーバーサンプリング16bit DAC
DAC3550オーバーサンプリング32bit DAC
WD33C93A SCSI-1ホストアダプタ(PIO転送 500Kbyte/sec以上)
外部 LINE入力(未定)
基板寸法 150x200x25(ラッピング配線時)、100x150x15程度(専用基板使用時)
電源 13.8V 5W以下
プロトタイプ
MPCD本体暫定回路図
(99/11/26 更新)
CPLD暫定等価回路図
MP3モジュール(ハンダ途中)
MP3モジュール基板回路図
MP3モジュール基板アートワーク
CPU部
SCSI部
MP3デコーダ部
DAC/オーディオ部
ソフトウェア
ファームウェア
ファームウェアはCPU内蔵フラッシュメモリー(128KB)内に実装される。
IPL
SCSI #0、任意のファイルシステムからファイル "mpcdcore"をメインメモリーにロードして実行する。
SCSI BIOS
ASPI相等のサービス
LCD BIOS
英数字フォントおよび1文字出力ルーチン
実行プログラム(mpcdcore)
プログラムの最大サイズはワークエリア・スタックを含めて2メガバイトである。
ファイルシステム
ファイルバッファ128Kbyte(128Kb/s 44.1KHz時、約8秒分)
CDFS
ISO9660ファイルシステム
Jolietエクステンション
FATFS
MOディスク(スーパーフロッピー(FAT))
ハードディスク/DirectAccess(FAT/FAT32)
LCD漢字表示(SJIS漢字)
1文字出力
ビットマップ表示
16ドット漢字フォント
MP3 ID3 Ver1.0 TAGサポート
基本再生ルーチン
再生・一時停止
早送り・巻き戻し
ランダム再生・曲単位リピート
区間リピート(最大ファイルバッファ分、もしくは無制限)
ビートマニアモード(大暫定)
MP3データのフレーム番号とキー入力マップファイルを用意し、ビートマニアもどきゲームができる。(笑)
ただし、オーディオのミキシングができないので、あまり面白くない。
CDオーディオを垂れ流しにしてMP3チャンネルでサウンドを出すか。;(^^)
MPCD記録フォーマット
ファイルシステムはISO9660 + Joliet extention(マックユーザはもう知らん、その前にオレ様の言ってる事自体理解できまい)
/00_index.m3u ファイルにリストされた ISO9660形式ファイル名の MP3ファイルをロードし再生する。(暫定)
/00_index.lst ファイルにリストされた ISO9660形式ファイル名の MP3ファイルをロードし再生する。 2番目以降の引き数に半角カナ(キャラクタベースのLCDを使用する場合の配慮)で曲の叙述を記載する(暫定)
開発計画・記録
テスト基板製作(99.4.28)
メモリアクセステスト
周辺チップレジスタアクセステスト
オーディオ回路テスト
ハードウェアエンコーダ試行・I/Oルーチン作成
モニタ経由で1MB程度の音楽を再生(99.8.14)
44.1KHz/128Kbpsにおける DEMANDピンの状態: ロジアナ波形
(1)
(2)
(1)はストリームの送りはじめの場面。 (2)は送り終わった後の場面。 (2)の状態から、ストリームを送りきった後も 100msは音が鳴っている事になる。
また、DEMANDピンはデータバッファがフルの状態以外にも、定期的に Loレベルになっている。
SCSIインターフェース試行・I/Oルーチン作成
Standard Inquiry試行
raw read試行
CDFS作成
スーパーフロッピーFS作成
漢字対応LCD試行・I/Oルーチン作成
ブートローダ作成
コアプログラム調整(MOディスクにて作業)
参考文献
SCSI-2詳細解説/菅谷誠一/CQ出版
H8/3048 ハードウェアマニュアル/日立製作所
H8/3048 プログラミングマニュアル/日立製作所
DATA SHEET MAS3507D MPEG1/2 Layer2/3 AudioDecoder/MICRONAS INTERMETALL
DATA SHEET XC9536 ISP PLD/Xilinx
DATA SHEET Am33C93A Enhanced SCSI-Bus Interface Controller/AMD
DATA SHEET G1213 128x32 graphic LCD/SII
DATA SHEET HM5118160 1Mx16 DRAM/Hitachi, Ltd.
DATA SHEET LC7883K 8fs DAC/三洋
ISO 9660 CD-ROMファイルシステムの概要
Joliet Specification
GNU による AKI-H8 のプログラム開発/細渕
Introduction to ISO9660/Disc Manufacturing, Inc.
E-mail
-- LINK FREE --
HOME
LAST