PC オーディオ 音楽 MUSIC のブログ
asoyaji様 komotanです。 私は RasberryPi +Volumio の長所の一つが USBケーブルを使わずに直接I2SでDACに接続することだと思います。 ALIXから USB ケーブルでDDCにつなぎ I2S でDAC につなぐのは音を悪くする要因をシリーズにつなぐことになるので あまり良くないと思うのですが いかがでしょうか?(何せUSBケーブルは相当高価なものをつながないといけませんし・・・)
USBは非同期モードが主流になってから、かなりの改善があったことは間違いありませんが、USBを介さずに直接I2Sで接続できた方がいいのは当然です。ただ、I2Sとは言え、PCから出る信号ですから、あまり期待していなかったのですが、聞いてみてビックリ、素晴らしい音です。半導体計測屋さんによると、RaspberryPiからでているBCLKの精度が素晴らしく、シグマの表示(ばらつき)がほぼ0で、ジッターが出ていないということです。もうこれからのPCオーディオは、間違いなく、PCI-2S-DAC直結になることは間違いないでしょう。
BCLK生成の為に、GPIOの「PLL機能」使ってるから「あまり良くない」って感じの記述をどっかで見たのですが、計測したらそんなことなかったのですよ。 Si5317みたいな超高性能なPLLだって有るのに、「PLLだからダメ」が独り歩きしてる気がしました。勿論ジッタが増えちゃうPLLチップは多数あるし、私もPLLのジッタで失敗したことありますけどね。
最大クロックの700MHZでしかコントロールできないので、必ず1.4nsのジッターが乗るということらしいですが、1.4nsのジッターって言われてもイメージできません。
1.4nsecって700MHzの一周期に相当しますが、「必ず1.4nsのジッターが乗る」ってどういう仕組みなのでしょう?私も理解できません。 そんなこと言い出した人って何か誤解してませんかね? 絶対値はずれるかもしれませんね。2.8224MHzに対して2.82258MHzとか。
気になるので計測しました。 シグマがほとんど0ってのは、TIA(タイムインターバルアナライザ)で測った話なので、もっと高精度に見るためにFFTで見ました。TIAは2.822までなのです。 センタが2.8224ピッタリ出てて(当り前だけどこれは凄いと思った)、最少2.8210、最大2.8238です。計算するとジッタ範囲は0.35nsecです。やっぱり1.4nsecなんて大嘘。 DIYINHKもAmaneroも、ほぼ同じ数字でした。 同じ数字って事は、私のオシロの測定精度限界かもしれないです。
実際の計測で0.35nsecとは凄いですね。1.4nsecは何なのかはわかりませんが、改めてその凄さを確認できましたね!流石です。
すみません。大嘘こいだBunpeiです。XMOSの類推から間違ったことをasoyaji様にお伝えしてしまいました。XMOSでのI2S信号の出力にはクロック周期の2.5nsの系統的ジッターが含まれることが実測されています。これはCPU周辺バスのタイミングがそのままI2S信号に出てくるためです。しかし、ARMアーキテクチャのBCM2835のPCM_CLKでは、そのデータシートに以下の記載があるように内部バスのタイミングとは非同期になっているため、XMOSのような系統的なジッターが無いようですね。これは素晴らしい!8.3 OperationThe PCM interface runs asynchronously at the PCM_CLK rate and automatically transfers transmit and receive data across to the internal APB clock domain.しかし、元クロックは19.2MHzしかなく、CPUの700MHzも2.8224MHzもPLLで作っているわけですから、原理的に誤差はつきまといます。その中で192kHz系のサンプリング周波数だけは19.2MHzに対して綺麗なPLLの有理数比で与えられるので、誤差なくドンピシャリで出てくる可能性があります。asoyaji様がそれを聴き分けられたのだとすると凄い!
bunpeiさん 大嘘なんてとんでもない! 断りもなく、別の場所でのbunpeiさんの書き込みを勝手に書き込んでしまい、お詫びを申し上げます。 いつも専門的で的確なご意見をいただき瞻仰しているのですからどうかお許しください。ただ専門的すぎて、私のレベルでは付いていけないことがしばしばですが(汗)。今回も、貴重なご意見をいただきありがとうございます。そのご意見があったおかげで、半導体計測屋さんも実際に計測していただき、結果的に、RaspberryPiの素晴らしさが発見できたように思います。 192KHz系の19.2MHzだけは誤差なくドンピシャというのは、非常に興味深いです。確かに192kHzは44.1kHzに比べ滑らかで明らかに違うのです。 そうだとすると、RaspberryPiは192kHzで聴いてこそ、最大の真価を享受できるということになりますね。 これは面白くなってきました。
bunpei様 Asoyaji様 大嘘なんて言ってごめんなさい。1.7nsecとはRMS値で言ってるのかもしれません。 XMOSでもAmaneroでも同じ数値はおかしいと気になったので、思い直して設定変えて測ってみました。 測定分解能が全く不足してたみたいで、時間分解能上げて測ったら差が見えてきました。 絶対周波数はAmanero とXMOSが2.8224MHz、Volumioが2.8225MHzと、当初の予想通りVolumioはずれてました。 基準クロックが違うのだからこれは仕方ない事です。Amaneroも、XMOSも、専用の発振器2個載ってますし。 この差を測れない設定で測定して、物事語っちゃダメでした。ジッタ性能はAmanero>Volumio>XMOSな結果でした。 XMOS は立上り立下り双方向で2ピークのジッタが出て2ピーク間が2.5ns程。 bunpei様のおっしゃる数字ですね。 Volumioは立上りだけがズレるジッタが出て、ズレ幅が2ns程。RMS値で1.7nsecと言えば、1.7nsecなのかも。 ぁぁ、これの事を言ってたのかと再認識しました。 Amaneroは双方向ともピーク無しで、1nsec以下な感じです。 一目で解る図が撮れましたので、後程私のブログにUPしときます。
UPしました。http://zx900a.blogspot.jp/2014/10/volumioiisbclk-700mh1.htmlご感想どうぞ。
Bunpeiです。早速拝見しました。論より証拠、素晴らしい実証結果ですね。さすが、計測屋さん!ところで、BCM2835のPCMのしかけは優れもので、I2Sにクロックを外部から注入して、それに同期させて出力することもできます。それをやってごらんになった方もおられるんです。http://www.geocities.jp/onsei2007/kousaku/PI_I2S_DAC_2.htmlこのように外部に水晶発振器をおけば、PLLによる系統的変動は取り除けるはずですね。
bunpeiです。御参考情報です。この程度のお高そうな機器を使うとRMSで10とか20psオーダーのジッターが測定出来て、オーディオ装置ごとの違いが検証できるそうです。ご参考まで。http://www.diyaudio.com/forums/digital-line-level/192465-asynchronous-i2s-fifo-project-ultimate-weapon-fight-jitter-193.html
凄そうな装置ですね。うん百万円ですか?
asoyaji様
返信削除komotanです。
私は RasberryPi +Volumio の長所の一つが USBケーブルを使わずに直接I2SでDACに接続することだと思います。 ALIXから USB ケーブルでDDCにつなぎ I2S でDAC につなぐのは音を悪くする要因をシリーズにつなぐことになるので あまり良くないと思うのですが いかがでしょうか?
(何せUSBケーブルは相当高価なものをつながないといけませんし・・・)
USBは非同期モードが主流になってから、かなりの改善があったことは間違いありませんが、USBを介さずに直接I2Sで接続できた方がいいのは当然です。
削除ただ、I2Sとは言え、PCから出る信号ですから、あまり期待していなかったのですが、聞いてみてビックリ、素晴らしい音です。
半導体計測屋さんによると、RaspberryPiからでているBCLKの精度が素晴らしく、シグマの表示(ばらつき)がほぼ0で、ジッターが出ていないということです。
もうこれからのPCオーディオは、間違いなく、PCI-2S-DAC直結になることは間違いないでしょう。
BCLK生成の為に、GPIOの「PLL機能」使ってるから「あまり良くない」って感じの記述をどっかで見たのですが、計測したらそんなことなかったのですよ。
削除Si5317みたいな超高性能なPLLだって有るのに、「PLLだからダメ」が独り歩きしてる気がしました。勿論ジッタが増えちゃうPLLチップは多数あるし、私もPLLのジッタで失敗したことありますけどね。
最大クロックの700MHZでしかコントロールできないので、必ず1.4nsのジッターが乗るということらしいですが、1.4nsのジッターって言われてもイメージできません。
削除1.4nsecって700MHzの一周期に相当しますが、「必ず1.4nsのジッターが乗る」ってどういう仕組みなのでしょう?私も理解できません。
削除そんなこと言い出した人って何か誤解してませんかね?
絶対値はずれるかもしれませんね。2.8224MHzに対して2.82258MHzとか。
気になるので計測しました。
削除シグマがほとんど0ってのは、TIA(タイムインターバルアナライザ)で測った話なので、もっと高精度に見るためにFFTで見ました。TIAは2.822までなのです。
センタが2.8224ピッタリ出てて(当り前だけどこれは凄いと思った)、最少2.8210、最大2.8238です。計算するとジッタ範囲は0.35nsecです。やっぱり1.4nsecなんて大嘘。
DIYINHKもAmaneroも、ほぼ同じ数字でした。
同じ数字って事は、私のオシロの測定精度限界かもしれないです。
実際の計測で0.35nsecとは凄いですね。1.4nsecは何なのかはわかりませんが、改めてその凄さを確認できましたね!流石です。
削除すみません。大嘘こいだBunpeiです。
返信削除XMOSの類推から間違ったことをasoyaji様にお伝えしてしまいました。XMOSでのI2S信号の出力にはクロック周期の2.5nsの系統的ジッターが含まれることが実測されています。これはCPU周辺バスのタイミングがそのままI2S信号に出てくるためです。
しかし、ARMアーキテクチャのBCM2835のPCM_CLKでは、そのデータシートに以下の記載があるように内部バスのタイミングとは非同期になっているため、XMOSのような系統的なジッターが無いようですね。これは素晴らしい!
8.3 Operation
The PCM interface runs asynchronously at the PCM_CLK rate and automatically transfers transmit and receive data across to the internal APB clock domain.
しかし、元クロックは19.2MHzしかなく、CPUの700MHzも2.8224MHzもPLLで作っているわけですから、原理的に誤差はつきまといます。その中で192kHz系のサンプリング周波数だけは19.2MHzに対して綺麗なPLLの有理数比で与えられるので、誤差なくドンピシャリで出てくる可能性があります。
asoyaji様がそれを聴き分けられたのだとすると凄い!
bunpeiさん 大嘘なんてとんでもない! 断りもなく、別の場所でのbunpeiさんの書き込みを勝手に書き込んでしまい、お詫びを申し上げます。 いつも専門的で的確なご意見をいただき瞻仰しているのですからどうかお許しください。ただ専門的すぎて、私のレベルでは付いていけないことがしばしばですが(汗)。
削除今回も、貴重なご意見をいただきありがとうございます。そのご意見があったおかげで、半導体計測屋さんも実際に計測していただき、結果的に、RaspberryPiの素晴らしさが発見できたように思います。
192KHz系の19.2MHzだけは誤差なくドンピシャというのは、非常に興味深いです。確かに192kHzは44.1kHzに比べ滑らかで明らかに違うのです。 そうだとすると、RaspberryPiは192kHzで聴いてこそ、最大の真価を享受できるということになりますね。 これは面白くなってきました。
bunpei様 Asoyaji様
削除大嘘なんて言ってごめんなさい。1.7nsecとはRMS値で言ってるのかもしれません。
XMOSでもAmaneroでも同じ数値はおかしいと気になったので、思い直して設定変えて測ってみました。
測定分解能が全く不足してたみたいで、時間分解能上げて測ったら差が見えてきました。
絶対周波数はAmanero とXMOSが2.8224MHz、Volumioが2.8225MHzと、当初の予想通りVolumioはずれてました。
基準クロックが違うのだからこれは仕方ない事です。Amaneroも、XMOSも、専用の発振器2個載ってますし。
この差を測れない設定で測定して、物事語っちゃダメでした。
ジッタ性能はAmanero>Volumio>XMOSな結果でした。
XMOS は立上り立下り双方向で2ピークのジッタが出て2ピーク間が2.5ns程。
bunpei様のおっしゃる数字ですね。
Volumioは立上りだけがズレるジッタが出て、ズレ幅が2ns程。RMS値で1.7nsecと言えば、1.7nsecなのかも。 ぁぁ、これの事を言ってたのかと再認識しました。
Amaneroは双方向ともピーク無しで、1nsec以下な感じです。
一目で解る図が撮れましたので、後程私のブログにUPしときます。
UPしました。
削除http://zx900a.blogspot.jp/2014/10/volumioiisbclk-700mh1.html
ご感想どうぞ。
Bunpeiです。早速拝見しました。論より証拠、素晴らしい実証結果ですね。さすが、計測屋さん!
削除ところで、BCM2835のPCMのしかけは優れもので、I2Sにクロックを外部から注入して、それに同期させて出力することもできます。それをやってごらんになった方もおられるんです。
http://www.geocities.jp/onsei2007/kousaku/PI_I2S_DAC_2.html
このように外部に水晶発振器をおけば、PLLによる系統的変動は取り除けるはずですね。
bunpeiです。
返信削除御参考情報です。この程度のお高そうな機器を使うとRMSで10とか20psオーダーのジッターが測定出来て、オーディオ装置ごとの違いが検証できるそうです。ご参考まで。
http://www.diyaudio.com/forums/digital-line-level/192465-asynchronous-i2s-fifo-project-ultimate-weapon-fight-jitter-193.html
凄そうな装置ですね。うん百万円ですか?
削除