DAC基板と接続してデジタルオーディオシステムを作るロジック基板を作りました。
マイコンを搭載しI2Cマスターとなって各デバイスを制御します。DAC基板とはデジタルアイソレータで電気的に分離してDACへのデジタルノイズの影響を低減します。DDCとのインターフェースはUSBコネクタ(Amanero Combo384またはその互換基板)、RJ45コネクタ(LVDS to I2S)そしてXHコネクタ(I2S)の3入力に対応します。
このロジック基板が想定しているDACはAKMのAK449xシリーズのDACです。AK4490、AK4495/S、AK4493、AK4499でのPCM/DSD再生、デュアルモノ再生が問題なくできています。AK4497については基板を持っていない(作ってない)ので確認していませんが、多分動くと思います。
マイコン
マイコンはESP-WROOM-32を使いました。IoTマイコンなので将来スマホから操作できるようにしたいなと考えていますが、とりあえずはただのマイコンです。I2Cのマスターデバイスとして、DAC、CPLDそして表示器の制御、また無線通信処理(これは将来)をします。ファームの書き込みはUARTで行います。PCとはUSB接続して基板はURATで接続するのでUSB-シリアル変換モジュールが必要になります。
CPLD
CPLDはIntel(Altera)のMAX Vで入力の切り替え、PCMのサンプリング周波数の検知、PCM/DSDモードの検出そしてDSDの周波数検出といったことが主な機能です。LVDS to I2S基板はPCM/DSDの検知信号は含まれないのでAK4490/95SでDSDを再生するにはこのPCM/DSDモードの検出が不可欠になります。
DSDの転送周波数はAmanero Combo384互換基板からの出力(DSD64_128信号)ではDSD64/128のモニターしかできませんが、DSD256/512をモニターできるようにしています。
このCPLDはマイコンからはI2Cのスレーブデバイスになります。CPLDのレジスタを読むことでDACや基板の設定用のピンヘッダーの状態や再生モード、再生周波数がわかり、レジスタに書くことで入力の切り替えが行えます。
DoPにも対応させたいのですがうまくいっていません。タイミングによってキレイな波形で再生できたりできなかったりです、今のところ。なのでDoPは未対応になるかもしれません(その可能性が大)。
表示装置
表示装置としてはI2Cの表示器が使えます。現在は、秋月で購入できるOLEDキャラクタディスプレイモジュール20×2行(SO2002AWYB-UC-WB-U)に表示させています。基板には128×64ドット有機ELディスプレイSSD1306のコネクタも用意しています。SSD1306のスレーブアドレスは0x3C固定なのでS2002Aのスレーブアドレスは0x3Dで使います。
今のところ表示する内容は、再生モード(PCM/DSD)、サンプリング周波数(PCM)、DSDの転送周波数、アッテネータレベル、選択されているデジタルフィルタ(PCM)、そして入力インターフェースになります。
スイッチ
スイッチは4つのタクトスイッチを実装しています。これらのスイッチは現在ハードウェア・アッテネータのUP /DOWN、入力切り替え(トグル)そしてデジタルフィルタ特性の切り替えに使っています。基板上に切り替えスイッチがあるのは使い難いので、外部のスイッチ基板が接続できるようにピンヘッダーも用意しました。
DACインターフェース
DACとのインターフェースはI2SとI2Cのペアを2系統用意しています。これはCPLDからデジタルアイソレータICまでとデジタルアイソレータICからDACまでをポイントツーポイントで接続させることができ、途中にスタブを形成しないようにしています。そうすることで反射による信号波形の品質劣化を防いでいます。デュアルモノモードでも最適な信号伝送が可能になります。
基板の外観
基板はこんな感じです。基板サイズは90 x 100 x 1.6mmです。
- CPUモジュール ESP-WROOM-32
- CPLD 5M570ZT100C
- LDO 1.8V . CPLDのコア電源用
- デジタルアイソレータ.I2SとI2CインターフェースをDAC基板と電気的に分離
- 水晶発信器 CPLD用システムクロック.49.152MHz
- オプションインターフェースコネクタ.現在はLVDS to I2S基板のみ
- オプションインターフェースコネクタ.現在はCombo384互換基板専用
- 基板、DAC設定用ピンヘッダー
- 基板、DAC設定用ピンヘッダー
- タクトSW デジタルアッテネータUP
- タクトSW デジタルアッテネータDOWN
- タクトSW 入力切り替え(押す毎に USB -> RJ45 -> XH)
- デジタルフィルタ特性切り替え (押す毎に Short Delay Sharp -> Short Delay Slow -> Super Slow -> Low Dispersion -> Sharp -> Slow)
- スイッチ接続用コネクタ
- マイコン書き込み用UARTコネクタ(ピンソケット)
- XHコネクタ I2S専用
- SSD1306用ピンソケット
- CPLDプログラミング書き込み用コネクタ
- SO2002AWYB-UC-WB-U用コネクタ
- 2ピンソケット
- XHコネクタ DACインターフェース1(I2S)
- XHコネクタ DACインターフェース1(I2C)
- XHコネクタ DACインターフェース2(I2S)
- XHコネクタ DACインターフェース2(I2C)
- XHコネクタ 電源3.3V
Amanero Combo384 互換基板とLVDS to I2S基板を載せた状態です。
基板の頒布
デジタルオーディオロジック基板を頒布しています。