ご無沙汰してます。
やっと全部品が実装できました。
ふと真夜中テンションで電子工作したくなることありません?
— AUDIY (@AUDIY14) April 29, 2024
さっきその時間でした pic.twitter.com/nssxZy2ecg
PT8211S自体は2022年に秋月電子通商で購入済でしたが、安定化電源が足りなかったり基板設計に時間がかかったり興味が薄れたりでなかなか進んでいませんでした。
テスト期間に部屋の掃除がしたくなるように(?)、GWに電子工作したくなったのでさっさと作ってしまいました。
本DACボードの構成
特段変わったことはしていません。DAC出力後のフィルタ回路もPT8211データシート記載の定数で作っています。
データシートを見て疑問に思ったんですが、ポストフィルタ回路がサレン・キー型なのは何か理由があるんですかね・・・?
オペアンプは出力オフセット調整ができるということでSA5534A(5532の1回路・高精度・外部位相補償版です)を使用しました。
PT8211のデータシートでは、PT8211の電源にRCローパスフィルタを使用していますが「電源ラインに抵抗」というのが個人的には気持ち悪さを感じるのでLT1761を直近で使用する構成にしました。
ポストフィルタ回路のコンデンサは全てフィルムコンデンサを使用しましたが、データシート上の33pFはDigikeyだと取り扱いが少なく、WIMA一択になります。
音質とか追求するようなICでもないと思うのでC0G特性のMLCCを使用したほうが無難でしょう。
測定環境構築
技術者の端くれたるもの、DAC(というか回路)を作ったからには測定したくなるものです。
実は2年近く前に強力なオーディオ測定機器を購入していました。
E1DA Cosmos ADC届いた pic.twitter.com/5LcKGbqkCk
— AUDIY (@AUDIY14) August 6, 2022
このCosmos ADCですが、
数万円で手に入る非常に高性能なADCとなっています。また測定に使用するソフトウェアですが、
フリーソフトで測定可能とのことで、ここまで来てしまうとオーディオメーカーは迂闊なものを作れないですね・・・
測定環境構築にはblue-7 ( Follow @blue__seven )氏の以下の記事を参考に構築しました。
いざ、測定!
PT8211Sの自作USB-DAC、測定! pic.twitter.com/Nc3tFtIO42
— AUDIY (@AUDIY14) May 2, 2024
ということで測定しようと思ったのですが、なんかやたらとTHD+Nが悪い(0.7%ほど)です。
色々見ていくと・・・
やたら歪み率大きい(THD+N=0.66%)と思って色々調べたらどうもアースループっぽいぞ pic.twitter.com/FVjEK3wz7m
— AUDIY (@AUDIY14) May 2, 2024
ほぼ間違いなくアースループっすね pic.twitter.com/NBywBHLe2C
— AUDIY (@AUDIY14) May 2, 2024
状況をまとめると、
- 測定用PCと再生用PCは同じものを使用
- 電源(PCまたはモバイルバッテリー)にかかわらず、FPGA基板に給電した途端にノイズが現れる
- モバイルバッテリーは安定化電源を通じ必ずPT8211S用のレギュレータに対し給電している
- PCからFPGAに給電している場合、FPGA基板とDAC基板間のGNDワイヤーを抜くとノイズが消える
- モバイルバッテリーからFPGAに給電している場合、FPGA基板とDAC基板間のGNDワイヤーの有無に関わらずノイズが発生する。
これらからFPGA基板上のスイッチングレギュレータのスイッチングノイズがGNDループにより測定機器側に流れ込んでいると予想しました。
ノイズが出ているときのFFT波形は以下のような感じです。
多少良くはなったけどまだ何かありそう pic.twitter.com/icBR4SGLiO
— AUDIY (@AUDIY14) May 2, 2024
環境を見直して・・・
とりあえずはFPGAへの給電をPCから行い、FPGAとDAC間のGND接続をなくせばループは絶たれるのでその方法で計測しました。
GNDの取り回し見直したらTHD+Nを0.062%まで抑え込めた! pic.twitter.com/nUDoMqEcus
— AUDIY (@AUDIY14) May 4, 2024
THD+Nが0.062%と、PT8211Sのデータシートと比較して良すぎる値が出ています。
まぁデータシート上にどんな回路で測定されたか記載もありませんので、データシートの値がかなりマージンを持たせてあるか、AUDIYの測定ミスのどちらかだと思います。
ところで
その他、現状わかっていることとしては相互変調歪(?)がしっかり出ています。
以下、48kHz fsで1kHz正弦波を再生したときのFFTと
44.1kHz fsで1kHz正弦波を再生したときでスペクトルに大きな違いが見られます。
同じ1kHz正弦波だと、44.1kHz系統(44.1/88.2/176.4/352.8kHz)と48kHz(48/96/192/384kHz)の間に同様の傾向が見られました。
ひょっとしてと思い、44.1kHz fsで918.75Hz(1000[Hz] * (44.1/48) = 918.75)正弦波を再生したところ、
ビンゴです。
352.8kHz fsでも同様の結果が得られたので、再生する音源に含まれる周波数と送信するデータの周波数の差分が悪さしているのは間違いなさそうです。
原因はおそらく相互変調歪ですね。
— AUDIY (@AUDIY14) May 4, 2024
(左:44.1kHz fsで1kHz再生、右:44.1kHz fsで918.75Hz再生) https://t.co/plQiDkfwZh pic.twitter.com/6NBNRnbm9P
ということで、出来上がったPT8211S 自作USB-DACのFFT波形を取ってみました。
AUDIY自身まだまだこの測定環境の使い方がわかっていない点も多い(0dBFSの合わせ方とか)ので、理解しながら他の特性(S/N日など)も見ていきたいと思います。
最近ずっとFPGAでしたがやっと電子工作っぽいことができるようになってきました(なおインフレで部品代がツラいです・・・)。