だいぶ前にリアルタイムDSDコンバータをFPGA上に実装したお話を書きましたが
今回は実際にこのリアルタイムDSDコンバータから出力された信号をローパスフィルタに通して出力波形を見てみたいと思います。
DSDの利点。それは・・・・
原理上はアナログのローパスフィルタを通すだけで再生したいアナログ波形を取り出せるという点です。(実際はそうはいきませんが・・・・)
ということで、CRローパスフィルタを通してアナログ波形をオシロスコープで観測してみます。
配線
PC→Amanero Combo384→Terasic DE10-Lite (ここでPCM-DSD変換)→CRローパスフィルタ→オシロスコープで配線します。
PCM-DSDコンバータを試す pic.twitter.com/eknqnht6bN
— AUDIY (@AUDIY14) December 25, 2021
最初ちょっと積分器の設計をやらかしていたんですが
動いた!2次CRローパスフィルタを通したあとの周波数も再生している周波数と合ってる。
— AUDIY (@AUDIY14) December 25, 2021
ただ歪みが.....w pic.twitter.com/bgBnomZe4n
修正すると・・・・
リアルタイムPCM-DSDコンバータの積分器を見直したら以前に比べてだいぶ波形が良くなった気がする pic.twitter.com/jpvSts9vbC
— AUDIY (@AUDIY14) January 15, 2022
ゼロクロス周辺の変な歪は消えましたが正弦波ではなく三角波っぽい波形になっています。
三角波ということは奇数次高調波が乗っているということですね。
ちょっくらFFTで周波数特性を見てみます。
ローパスフィルタを通したあとの出力波形をFFTで見てみる
ビンゴです。
なぜか5次高調波はいませんが、1kHz、3kHz、7kHz、9kHz・・・・と奇数次高調波がガッツリ乗っています。
しかも今回のローパスフィルタのカットオフ周波数は20kHzですし、PCM-DSD変換でオーバーサンプリングなどの信号処理も一切行っていません。
それを1bitの矩形波の密度の変化で送っているわけですから奇数次高調波が乗って当然です。これを少なくしようとすると「マルチビット出力」や「変調の次数を増やす」ということになるのでしょう。
ということで、1次ΔΣのリアルタイムDSDコンバータの出力波形を見てみました。
次回は同じく1bit出力のまま、ΔΣ変調の次数を増やして波形の変化を確認してみたいと思います。