DSDの帯域外ノイズ

DSD信号は、帯域外はノイズです(正確には” 20kHz以上の楽音信号はノイズと共存しています “)。

SACDなど、2.8MHzのDSDならば、20kHz以上はノイズレベルが急上昇します。5.6MHzのDSDならば、40kHz以上はノイズレベルが急上昇します。

次の図は2.8MHzサンプリング、1kHz正弦波のDSD信号スペクトラムです。fsは22.05kHzです。

すごいことになっているのがお分かりかと思います。したがって、SACDなど、DSD信号入力のあるDACでD/A変換したアナログ信号にも、多かれ少なかれ、帯域外のノイズが残留することになります。

したがって、SACDのサイトではこのようなFaqを用意して、このノイズについて解説しています。 

このようなノイズを出すのが嫌だという場合には、デジタル領域でデシメーションフィルタを通してPCMに変換する手法があります。下の図は当方のアプリでPCMに変換した信号です。USB AUDIO基板で2.8MHzのDSDを再生し、S/PDIFから出てくる信号もこれとほとんど同じです。

この信号ならば、通常のPCM入力用DACで特に何も考えずにD/A変換することができます。しかし、DSD信号を直接D/A変換するには、一般的にポストフィルタの定数を急峻になるように設定しなければなりません。

DSD1794Aなどのデータシートで謳っているDSD用のフィルタ定数に(少なくともDSDモード時には)する必要があると思います。たぶん、オシロをお持ちの方がD/A変換後の波形を見れば、ご納得されると思います。

とはいえ、オシロで波形を見るには正弦波のような試験信号がDSDでも必要だと思います。ということで、1kHz/-3dBFSの2.8MHz, DSD信号をUSB AUDIO基板ユーザーのために用意しました。

実際には、DSDIFFファイルにするとサイズが巨大になってサーバーに負荷をかけますので、DSDIFFファイルを生成するプログラムをご提供中です。

計算で信号を生成するので、A/D変換で正弦波をDSD化するよりも非常に高S/Nな信号です。これをUSB AUDIO基板で再生し、DSDモードでDSD1794AなどでD/A変換しながらアナログ波形をオシロで観察し、フィルタ定数を決める参考にして頂けると思います。

プログラムは”gendff.exe” というもので、コマンドライン上で動作します。gendff 1kHz_dsd64.dff と入力してEnterキーを押してください。しばらくするとDSDIFFファイルができあがります(ファイル名はお好きな名前で結構です)。

なお、本プログラム、およびプログラムによって生成されたDSDIFFファイルの著作権は放棄していませんので、個人的なご利用にとどめてくださいますようにお願いします。