以前から手に入れていたもの
USB−I2S コンバータ CM6631Aボード
24ビット96KHzコーデック PCM3060
というわけで、DAコンバータを作る気になって実験をはじめた。
まずは電源。小型のトロイダルトランス(電圧は高め)に少なめの平滑コンデンサ、3端子レギュレータを使ったプラスマイナス8Vの電源。
世の中には3端子レギュレータを馬鹿にする人は少なくないが、これほど安定した性能のレギュレータICはほとんどない。ましてや負電源用のICはない、と断言してもいいぐらいだ。
事実、仕事では超ローノイズ、高性能を要求されるアナログ回路にも普通に3端子レギュレータ電源を使っている。ようは使い方をまちがえなければ必要十分な電源となる。
USB−I2Sコンバータボードは中国から輸入した基板で、CM6631Aが搭載されている。実はこのIC、単体でも手には入ったのだが、マニュアルが手に入らず、使えないというマヌケなことになっている。ボードとして売られているものにはフラッシュメモリなども搭載されていて、これがなんらかの役割を果たしているらしい。
Windowsからは普通に認識され、デバイスドライバも自動でインストールされた。
信号としてはMCLK、BCK、LRCK、DATAの4本だが、グラウンド、そしてUSBからの電源も引き出した。
PCM3060はCODECであり、ADC/DAC両方がひとめとめにされたICだ。今回はコンバータボードが出力しかサポートしていないので、DACとしてのみ使う。
もちろん、PCからUSBを通してグラウンドを振り回されてはたまらない。24ビットどころか12ビット分解能も怪しくなる。というわけで、アイソレータICを間に入れた。USBアイソレータといえばADUM4160が有名だが、今回はI2Sで絶縁をしてみた。なんといってもアイソレータICが安く、絶縁もしっかりしている。
PCM3060からの出力は差動出力で、外部バッファでシングルエンドにした。
電源はかなりけったいなことをしている。この手のCODECは「電源電圧が基準電圧」なので、電源の品質がそのまま音質につながる。
そのため、高品質な電源回路は必須だ。デジタル側の電源はひとまずロームのBA033で普通に作った(あとで検証するつもり)。アナログ側の電源は+5Vなのだが、ここで3端子レギュレータや下手な電圧リファレンスICを使うわけにはいかない。というのも、DACの基準電源に1/f雑音をはじめ、やっかいなノイズを送り込むことになるからだ。普通の計測器では電源のノイズを測定するのはかなり困難で、せいぜい数マイクロボルトまでしか見えず、ノイズのもつ成分を観測することはできない。
そこで職権乱用して、高性能なFFTアナライザを使ってノイズ成分を見たのだが・・・ツェナーダイオードはもちろん、レギュレータIC、基準電圧ICなどのノイズがけっこう大きい(といっても数マイクロボルトではある)のに気づく。
ところが24ビットDACともなると、最大出力が5Vだとしても、LSBは約0.3マイクロボルトになる。電源電圧が基準であるなら、数マイクロボルトのノイズは看過できない。
そんなわけで、ハイパワーで高速なオペアンプを使ってPCM3060の電源ピンを駆動してやった。かなり無茶ではあるが、バイパスコンデンサは最小限になっている。
PCM3060はローコストCODECでもあるので、DACはΔΣ型である。高価なレジスタストリングや実現の難しい抵抗ラダーではない。当然、出力には高周波ノイズ成分が現れるので、フィルタは必須である。
ここで、甘く見ていたのを白状しよう。普通に高性能オペアンプで差動入力をやったのだが・・・ノイズがかなり大きい。なんじゃこりゃと思ってオシロスコープで観測するとS/N比が20〜30dBしかない有様。DACの出す高周波ノイズをそのまま通していたんだから当然である。
簡単なフィルタを通してみたがあまり改善せず、勢いあまってLCフィルタまでやってみたが完璧にはノイズが取り除けない。
原因のひとつがΔΣDACで差動出力をすると正負それぞれの出力端子に出てくるノイズ成分は逆相だということ。つまり差動アンプではまったく取り除けない。
まだまだ対策は必要のようだ。
とりあえず、音は出ているので鳴らしてみているが、24ビット・96KHz(音源は48KHzしか手元にない)の恩恵はまだまだ感じないなぁ、というのが正直なところ。
もっと詰めていって、まともな音が出るところまで持って行かないとな・・・
ログインしてコメントを確認・投稿する