途中までしか書いていませんができているところまで公開しておきます。
設計仕様
いままで色々なDACを作ってきましたが全てDSD対応ではありませんでした。でも時代はDSDということで、個人的にその音質的なメリットには懐疑的ながら、今までの技術やノウハウ全部入りのDSD対応DACを作ることにしました。あわせて色々と実験や比較したいこともあるので今後の共通プラットフォームになるようなADC/DACの拡張性をもたせ、将来あたらしいDACが出てきても差し替え基板なのでDAC基板だけ交換して対応できるという目的で始めたプロジェクトです。仕様を書きます。
DAC関係の仕様
- PCMとDSD入力に対応する、レートやフォーマットは自動判別して表示
- DAC基板はアドオンのソケットを使って差し替え出来るようにする
- DAC基板はI2C、I2S入力として、DACのICとIV、アナログフィルタ、差動合成を載せる
- DACの種類はI2Cアドレス空間から判別し、起動時に自動で認識する
- ディスクリートアンプは使わないで高音質を目指す
- ボリュームはDACのデジタルボリューム。アナログ入力は全てDSDに変換してDAC側で調整。
ベース基板の仕様
- 周辺回路は全てベース基板に載せる
- デジタル用はスイッチング電源を使うがコモンモードチョーク+インダクタで高周波をフィルタリング
- ジッター対策はSRCとCS2000どちらにも対応し、ソフトでいつでも切り替えられるように
- 必要な系統全てに高性能レギュレータを使うが基板面積を節約するためにソケット化する
- ライン出力のミュートはリレーではなくミュートトランジスタを使う(音質と性能のテストのため)
- 共通化したパネル基板インターフェースを採用してインターフェースを統一
- I2S配線、差動配線は等長配線を使う
- USBはAmanero Combo384を使う
- 出力DCの検出、内部電圧監視の保護機能をつける
- DSDクロックレートはBCKをソフトウェアで判別
入出力の仕様
- デジタル入力は光、同軸2系統ずつ、AES/EBU、USB全てに対応する
- アナログはバランス、アンバランスの入出力に対応する
- アナログ入力はADCを使ってDSDに変換
- ADC基板はあとから交換できる=ICを変更できる
- ADCはマイコンでコントロール出来ないのでリセット含めた設定はPCA9535でI2C経由で行う
- アンバランス>バランス変換にTHAT1646を使ってみる
- 入力バッファはOPA1632を使ってみる
- ヘッドフォンアンプ部のバッファはLME49600を使ってみる
もしかしたら抜けがあるかもしれませんが、大体このような感じです。かなり欲張りな感じですね。とりあえずこれでやってみたいと思います。
作ってみた基板(メインボード)
サイズは20×20の基板で作りました。基板上に丸いつぶつぶがありますが、これは特に意味もわからないでやっていたりします。このパターンはLinn、Lynx、Intel等のボードデザインで使用されていたので意味があるのかと思って試してみたのですが、ネットで必死に調べてもこのパターンの正式な名称がわからず、実際にどういう効果があるのかわからないのです。普通浮きランドは高周波ノイズのたまり場になったりするので基本的に浮きは作らずにGND接続するのがセオリーなのですが、このパターンはむしろ浮きランドを積極的に増やしています。
しかしこれをやっているのは定評のあるメーカーばかりですから意味が無いわけではないと思っています。実際に試してみた結果としては残念ながら測定上全然変わりませんでした。そのかわり別に副作用もなく効果も不明なままです。超高周波の挙動で高周波をトラップするシールドのような効果があるとかそういうところなんでしょうか?残念ながら手持ち測定器での帯域では違いを全く観測できませんでした。
アナログ周りは普通のリレー切り替え式なのでアナログ領域では特筆すべき回路はありません。ADCの入力もOPA1632を使っていますがデータシートに乗っているリファレンス回路と変わりはありません。
この基板で一番複雑なのはやはりデジタル周りのルーティングです。DSD、PCM、ジッター除去、SRC、これらを全てソフトで自在にコントロールしようと思うと自ずと複雑になってしまいます。ということでその中心部の回路図を公開してみたいとおもいます。メインになるのはPCM9211を使ったルーティングがポイントです。PCM9211は入出力が豊富で設定も複雑ですが、そのぶん多機能なのでこのようなルーティング目的には探した範囲で最も適しているICだと思いました。
結構複雑ですが実際の回路図です。下の回路図のルーティングを使えばSPDIF入力、I2S入力の切り替えはもちろん、SRC経由にするかバイパスにするか、CS2000でのリクロックのON/OFFも全てソフトでコントロールできます。ただしこの図はPCM関係のみになります。PCM9211ではおまけ程度にしか対応していないDSD関連の切り替え機能は外部ロジックICによるスイッチで行っています。このへん本当はFPGAなどを使えればもっとスマートなのかもしれませんが、現在のノウハウではなかなか難しいところで残念ながら手が出ていません。(注意:この回路図のAES入力回路は正しくありません)
アドオンDAC基板
初回の制作ではWM8741、CS4398、ES9018の3種類を制作しました(後にAK4490も追加)。ここにPCM1792が入らない理由はDSD時にデジタルボリューム対応していないことが原因です。ここで紹介している段階でのメインボードではアナログボリュームを載せていないためPCM1792でのDSD信号再生では一切ボリューム調整が効かない為フルスイングで出力されてしまいます。DACの設計としてDSD時にだけフルボリュームになるのは仕様としてまずいので初期のDACボードからはあえて削りました。
正直この開発時点ではまともなアナログボリューム技術を持っていなかったのでDAC直だしよりも音質が劣化するのを避けるためにこのようにしています。参考までにアナログボリュームの実験とデジタルボリュームの優位性の記事はこちらです。
その他
記事が途中経過なので、とりあえず写真をアップしておきます。
下記の測定値はこのシステムを使って行ったものです。わずかなスプリアスがありますがES9018のTHDの数値は大変素晴らしいです。下はCS4398です。こちらは最高ではないですが十分な特性と言えると思います。AK4490の特性等はのちほど公開予定です。
初めまして辻野泰光と申します。現在、ネットワークオーディオプレイヤー導入を検討していて、何が一番いいかを検討しています。(自作をあり)検討中に旭化成のdacが優秀であると書かれていました。、Ak4495は古いのでAk4495又は最新のAK4497を使用してあるネットワークオーディオプレイヤーの作成予定はありませんか?
すみません訂正カ所があります。
(ak4490AKは古いので4495又は4497)
辻野さま
こんばんは。残念ながら個人でネットワークオーディオプレイヤーを一から開発するのはソフトウェアの充実とインターフェースの充実を考えるとあまり現実的ではないように思っています。既に優れたプラットフォームが存在する現状では今からですと車輪の再開発と同じことになりかねません。
ということで個人で手軽にネットワークプレイヤーを実現する方法としてRaspberryPiなどの小型Linux基板での実績がありますので、自作のノウハウをお持ちならRaspberryPi等からデジタルで直接DACへ入力する方法をオススメしたいです。ネットにいろいろな情報がありますので書いてある通りにやれば大丈夫だと思います。
または更に上のクオリティの手軽さ+インターフェースを望むなら既存のネットワークオーディオプレイヤーで安値な大手製品に外部専用DACという組み合わせが良いと思います。
ということでご要望にあうかわかりませんが、外部用のDACとしてAK4497とAK4495Sを使用したDACの作成予定がありますのでそちらについてはメールで案内差し上げます。