/HOME /DIY /PCM1704 DAC

Voltage Control X'Tal Osc

最終更新日2015-01-12


Design Concept

 容易に手に入るなかでも確実にジッターが低い発振器は水晶発振器です。 今回のDACは水晶発振器が出力する純度の高いクロックをできるだけ汚さずにDACへ供給することを目的としています。

 しかし,SPDIFから入力されるデータは,データを読み取っているCDトランスポートに搭載されているクロック源の周波数を基準にしています。 そのため,同期とってデータを再生するにはトランスポートのクロックに合わせてこのDACに搭載されている水晶発振器の発振周波数を変化させなければなりません。 普通の民生機器はクロックの周波数偏差が±1000ppmまで許されていますので,最悪でも水晶発振器の発振周波数は±1000ppm可変できることが必要になります。

 DACに搭載されている水晶の発振周波数をトランスポートに合わせないと,同期が取れずデータが壊れてしまいます。 いわゆる非同期のリクロックはデータこそ壊れないもの,再生の基準となる肝心のBCKが乱されます。 BCKの周波数が飛び飛びの値をとるのです。 オシロスコープでみるともっとわかりやすく,非同期のリクロックを行うとクロックのエッジが2重に見えるようになります。 この2重に見える線の間隔はリクロックの周波数 f の逆数 T = 1 / f に他なりません。 クロックがゆれるということはデジタルにとってはノイズが入るということと同等ですので再生音にも何らかの影響があると考えてよいと思います。

 ASRC,非同期サンプリングレートコンバータもジッターを除去できると謳っていますが,デジタルデータにフィルタをかけて波形を滑らかにし,その波形をデタラメナなタイミングで補間し直していますのでデジタルデータ自体が変質化しています。 CDとはいえ盤面の情報を余すことなく読み出して生かすためにはDisc情報の読み取りから再生まで完全に同期をとる必要があります。

 周波数可変の水晶発振器をVCXOと呼びます。 なかなか希望した周波数のVCXOが手に入りにくいので自分で作ることにしました。 水晶は負荷になるキャパシタンスによって共振周波数が微妙に変化しますので,通常は負荷容量が規定されています。 この負荷容量を可変にすることで水晶発振器の発振周波数を微妙にコントロールできます。 印加する電圧を変えるとpn接合の容量が変化するバラクタダイオードを水晶の負荷として接続します。 このバラクタダイオードに外部から加える電圧をコントロールして発振周波数を可変できるようにした水晶発振器がVCXOです。

 今回は74HC04を使用してVCXOを作りました。 できるだけノイズの少ない純度の高いクロックが欲しいのですが,ディスクリートで組むのは難しい上に,部品点数が増えますので,CMOSロジックを使用した回路構成にしました。 通常は74HCU04を使うことが多いようですが,バラクタダイオードで負荷を変化させて通常は発振しにくい領域まで使いますので,安定に発振する領域を広げるためにバッファが3段で電圧ゲインの高い74HCを使用します。 もちろん異常発振のリスクも高まりますので設計は難しくなります。 ここら辺の定数は現物合わせにするしかなく,基板ができてから部品をとっかえひっかえして試行錯誤するしかありません。 異常発振対策として帰還回路にLPFを設けています。 もちろんここも現物合わせになってしまいます

 マスタークロックは分周してfsの倍数が作りやすい11.2896MHz(256fs)にしています。

 電源が汚れているとVCXOの発振クロックのジッターが悪化することが懸念されますので,電源は根元である整流部分から他の系統とは独立したVCXO専用電源を設けました。 3端子レギュレターはDC電圧の安定性は優れるものの,出力のノイズが多いことはあまり知られていません。 しかも電源変動を抑えることができる帯域が数10kHzまでしかありませんので,高周波のノイズは素通しになってしまいます。 そこで,トランジスタを使用したリップル除去回路を挿入して,電源から混入するノイズを広帯域にわたって低減しています。 また,VCXOの制御信号にノイズが乗ると周波数が変調されてしまいますので,制御信号にも厳重なLPFを設けて高周波とノイズを遮断しています。 制御信号のFcは1Hz以下に設定されていて外部クロックの変動に緩慢に追従します。

Comparison of Power Spectrum, DIR1703 and VCXO


44.1kHz 256fs(11.2896MHz) VCXO Output Spectrum


44.1kHz 256fs(11.2896MHz) DIR1703 Output Spectrum

 VCXOの発振スペクトラムと,DIR1703が出力するクロックのスペクトラムの比較です。 DIR1703にはCDプレーヤからSPDIFデータを入れています。

 内蔵されているVCOが付加したジッターとSPDIFが持っているジッターを切り分けることはできませんが,かなり派手なスプリアスが出ています。

 比較して,VCXOの発振スペクトルはきれいです。 通常の水晶発振器よりは位相ノイズが大きいかもしれませんが,VCXOの可変範囲とはトレードオフの関係にあるといえます。

 可変範囲は+150ppm,-50ppmくらいです。データを取らないといけないですね。 手元にあるCD WALKMANで再生していますが,一昔前のSONYの機種ではロックしませんでした。 WALKMANはショックプルーフ的なデータバッファが入っており,そのICがイカチンでSPDIFの周波数が変動するようです。 ちゃんとした水晶が搭載されているCDプレーヤーならばそれほど周波数がずれるとは考えれられませんので,大抵のモノが使えるはずです。

 可変範囲を広くするためにはバラクタダイオードの可変容量範囲を拡大するという手段がまず考えられます。 現在使っているのが,何たら500というやつで,数pFから数10pF(なんてざっくりしているんだ!!)容量可変範囲が4倍くらいです。 それを3パラで使っています。 制御入力が0V〜5Vなので,可変範囲があまり大きく取れません。 CATV用などのバラクタは30V位かけてもっと可変範囲が大きく取れます。 しかし,水晶の負荷容量の可変範囲を広くしても水晶自身の共振特性に限りがあるので可変範囲を200ppm以上取るのは難しいようです。

 水晶は負荷容量が大きいと発振周波数が下がり,負荷容量が小さいと発振周波数が上がります。 通常は負荷容量が規定されていて,16pF〜30pFくらいになっています。 規定の負荷容量を中心として負荷容量を変化させているわけです。 負荷容量を小さくする方向は基板の浮遊容量などの影響で難しくなります。 負荷容量を大きくするためには大容量のバラクタダイオードが必要になりますが,適当なものが入手できなかったので,今回は3つ並列にして使用しています。

 これ以上可変範囲を広くする方法として考えられるのは,水晶に直列にインダクタンスを入れる方法です。 水晶の共振Qが下がり,可変範囲を広げることが出来ます。 しかし,共振峰の可変範囲は周波数の低いほうにしか広がらないので周波数の高い側の可変範囲は変わりません。 他の選択肢は,水晶ではなくリチウムタンタレートを使用した振動子や,セラミック振動子などQが低い振動子を使うという手段です。 ただし,セラミック振動子では可変範囲が広くなりすぎてしまい,Qが低いことから安定性の確保も難しくなると考えられます。 リチウムタンタレートを使用した振動子を使うと可変範囲が±1000ppm程になるので丁度よいのですが,特定の周波数の振動子は入手難です。 しかも,VCO用に負荷容量を内蔵しないタイプが必要ですので,アマチュアではなかなか入手できないと思います。

 前述したように,ある程度まともな水晶振動子を使用している機器ならば温度変化で±30ppm程度,経年変化でも50ppm程度しか変化しないはずなので,負荷容量にイカチンな定数を使っていなければ,受け側が水晶ベースのVCXOならば十分ロックレンジに入ってくるはずです。

 ところで,周波数の計測方法ですが,オシロのトリガディレイをたっぷりかけると精度よく周波数を比較するが出来ます。


参考文献はこちら・・・

 何年かぶりにVCXOを変更しました。(2015-01-12)
48kHzのサンプリング周波数に対応するため,12.288MHzと11.2896MHzの二つのVCXOを作り直しました。

  48kHzに対応することで地デジ放送のほぼすべてとDVDを再生することが可能になります。 今まで再生できなかった録画番組とDVDをDACで再生することができるようになります。 現在のスピーカ(JBL D130+いろいろ)で映画見ると子供が泣き出すほどの大迫力音響で鑑賞できます。

  同時にジッター(位相ノイズ)低減すべく発振器の回路を方式を大きく変更しました。 今までのVCXOはCMOSインバータを使用した発振器でしたが,今回はコルピッツ型の発振器としました。

  CMOS素子は1/fノイズが大きくしかも,1段の"U"ではなく3段の通常のインバータを使っているため,発振器としては低級な部類に入ります。 それでももちろんDIRのPLLよりは段違いに位相ノイズが少ないことは確認済みです。

  今回は低ノイズの低周波用バイポーラ・トランジスタを使い,1/fノイズを含む全帯域のノイズを減らし,位相ノイズの少ないクロックを作ることを目標としました。

  水晶はジャンク屋で手に入る通常の水晶を使います。負荷容量を変化させてVCXOとすることができます。 VCXO専用の水晶でないことから発振周波数の中心がずれる,調整範囲が狭いなどの問題が想定されますが,実用上問題にはなりません。 DVDや地デジに対応した再生機器は27MHzの水晶から44.1kHz系と48kHz系のクロックを作っています。 この27MHzのクロックの精度とVCXOに使用する水晶の精度の差が吸収できれば十分です。VCXOの可変範囲は二つの水晶の差分だけあればよいのです。 まともなメーカーが作る製品ならば1000ppmもずれていることはありません。どんなに大きくても100ppm程度でしょう。 100ppm程度の範囲であれば通常のVCXO専用の水晶でなくても負荷容量を変化させることで発振可能です。

  切り替え信号はDIRから取り出します。二つのVCXOを同時に発振させるとは相互干渉を起こす可能性があるので,同時稼働はさせません。 10MHz以上の高周波ですので完全に分離させることは困難です。使用しないVCXOは電源を落とし,発振を停止させます。 ダイオードを使った簡単なミキサーで二つの信号のORを取り,PCM1704とFIFOバッファにクロックを供給します。

  思ったよりも全てがすんなりと動き,可変範囲も想定内に収まりました。 筐体の中に押し込んで,早速再生してみます。DVDと映画を再生できることになったのが大きな喜びです。

  CMOSからバイポーラに変更して音がどう変化したのか? スピーカーも色々いじったのでわかりません・・・が総合的には数段格が上がったように思います。
具体的(?)にはステージがより見えるようになっています。スピーカーの悪いところもよく出ます。

  もうこれ以上いじることはない・・・と思いつつ,心配事の種が少しずつ成長していく・・・これがオーディオという趣味なんでしょう。か。


/HOME /DIY /PCM1704 DAC

inserted by FC2 system