DDS-PLL 局部発振器の実験 |
PLLに関してはいろいろ実験を重ねてきましたが、そろそろ、DDSと組み合わせて「形あるもの」にしたいと思っています。ただし、DDSはご存知のとおり雑音の巣ですので、高純度のPLLシンセサイザーと組み合わせるには、いろいろな点に配慮しないといけません。少し、時間をかけて、ゆっくり、着実に進めていこうと思います。
<局部発振器の構成> 【2004.10.24】
以前にDDSの逓倍用に検討していた回路があります。以下のような構成図で、3逓倍で95MHz近辺を生成しようと画策していました。これは、AD9850をオーバークロックで用いていました。実際、昔の受信実験系で、50MHzの受信をさせてみましたが、感度劣化、スプリアス受信もなく、とりあえずは使えることが解りました。これで、局部発振器を構成する最低限の担保ができていたわけです。この構成で、低い周波数を生成してPLLに加えれば、DDS-PLLの実験ができるはずです。
DDS逓倍用ユニットの構成
とりあえず動作確認用にシャーシーに仮組みしたユニット類
10.24MHzのスペクトラム
ただ、これだけですと、すでにいろいろな回路を組み合わせて、アッセンブルしてあるので、雑音が出ている場合、切り分けがかなり難しいことになります。ということで、個別回路でDDS回路を構成することも考えて見ました。[方法1]としては8バンドTRXに使っているDDSを用いて、これをPLLに入力するもの、[方法2]としてはオーバークロックを遊んだAD9851を用いて、PLLに入力する方法、さらに[方法3]として、上記のDDS逓倍用ユニットを流用することとします。いろいろ遊んで、最良の方法を選択してみようと思います。
DDS-PLLの回路構成 (方法1と方法2)
<方法1:8band-TRXのDDSを利用> 【2004.10.31】
まず、一番確実そうなのが8バンドTRXからリファレンスをもらってPLLに供給する方法です。なぜなら、リファレンス周波数が10kHz近辺と低いですが、すでに外付けPLLローカルで実施したことがあるからです。ただ、リファレンスとして十分な低雑音性があるかどうかについては自信がありませんでした。ま、なにはともあれやってみることにします。
方法は上図のとおりでBPFは当座はLCのBPFが使えるか試してみます。以前はここにセラミックフィルター(BW:350kHzくらい)を用いてDDS信号のクリーンアップをやっていましたが、今回は若干1VCOあたりの周波数変化幅が大きいので、LCのBPFでトライします。たとえばリファレンス入力を10.7MHzにすると約2MHz程度は通過帯域が必要になるためです。下に示したBPFは、昔、用途は忘れましたが、中心周波数が10-12MHzくらいの帯域制限用に作ったものです。
並列共振型3連BPF
3連BPFの特性
CF:10.7MHz SPAN:20MHz
さて、こんな感じで97MHzのPLLを組んでみました。それを以下に示します。DDSで生成された10.7MHzの信号はMC145152のリファレンスカウンターで1/64されて、約170kHz近辺の位相比較周波数になります。これでVCOのバンド内でロックがかかるように、A/Nカウンタの値を設定します。
近傍特性 Span:1kHz RBW:10Hz 若干、50Hzの高調波が確認できるが、十分な特性と考えていいのではないか。 |
|
広域特性 Span:1MHz RBW:3kHz スプリアスは見当たらない。きれいな特性である。 |
|
DC-200MHz特性 CF:100MHz Span:200MHz RBW:10kHz 上図同様にスプリアスは見当たらない。きれいな特性である。右端に2次の高調波が-20dBくらいで見える |
このように、ウェルパインのDDSで簡単にきれいなPLLを組むことができました。ただし、スペアナノイズレベル以下のスプリアスはわかりませんので、最終的にはRXに組んでみないと、なんとも言えません。このDDSは周波数コントロール回路をスタティックなロジックICで組んでいるために、残留雑音は少ないと考えられます。そこで、CPUを使った場合はどうなるか懸念されるところですが、これについては次回に検討することにします。
<方法2及び方法3についての試行錯誤> 【2004.11.13】
この2週間、方法2と3について試行錯誤の実験を繰り返していました。まず、方法2については単にPICをつないだだけですが、擬似的にポートスキャンやデータ出力のルーチンを動かして、CPUが実働状態で実験しました。この場合、ノイズ混入があるかと思ったのですが、PLLへのリファレンス信号を十分大きな値(数Vp-p)にすれば、ほとんどPLLの信号純度に影響しないことがわかったので、ここではデータ提示はしません。
方法3については、相当てこずりました。実は、方法2ではDDSがAD9851でバランス出力のため、DDS出力が比較的大きいのですが、方法3に用いたAD9850はシングルエンド出力のままなので数百mVの出力しかありません。これをフィルタリングして、さらにレベルが数dB下がって、PLLのリファレンスに入力していたために、VCOはロックはするものの、C/Nの極めて悪いノイジーなPLLになってしまいました。最初にこの状態に陥ったときは、原因がわからず「もうだめか」とあきらめかけてしまいました。
しかし、この手の話は、時間を置いて冷静になって分析していくと、いつかは悪い原因がわかることが多いのです。もともと、リファレンスが10kHzで実現してるのだから、それから変化している部分を徹底的に洗えば、特性の悪い原因が見えてくるはずです。今回は、そのリファレンス信号レベルとフィルターの特性がそれに当たります。
さて、試行錯誤の経過をうだうだ書いても、あまり参考にならないでしょうから、結果だけを提示しておきます。PLL局発の最終形態に近い構成として(方法3)、PLLの入力にPIC16F877とAD9850を用いたDDS逓倍ユニットを接続した形で一応の特性を得ることができました。
PLLの基準入力にDDS逓倍ユニットを流用
これはクロックが167.77216MHzでDDS出力は約10.7MHz、PLLの位相比較周波数は前回と同じく170kHz近辺、VCOの発振周波数は96MHz帯、周波数ステップ(ロータリーエンコーダの1クリックあたり)はまだ、350Hz近辺になっています。プログラムは以前に作った逓倍用のものを流用しているために、実際に使うためには、周波数ステップを100Hz/10Hz切り替えにするとか、いろいろ追加しないといけないのですが、まずは、受信機と結合して、所定の特性が出るまでは、細かいつめは後回しにしたいと思っています。さて、この特性を以下に示します。
近傍特性 Span:1kHz RBW:10Hz 前回と同じく、50Hzの高調波が確認できるが、十分な特性と考えていいのではないか。 |
|
広域特性 Span:1MHz RBW:3kHz スプリアスは見当たらない。きれいな特性である。前回よりC/Nが5dBくらい良好。 |
|
DC-200MHz特性 CF:100MHz Span:200MHz RBW:30kHz 前回同様にスプリアスは見当たらない。きれいな特性である。右端に2次の高調波が-20dBくらいで見える |
先にも書きましたが、DDS逓倍ユニットは出力が低いので、フィルターのあとに実験用の2SC1426のプッシュプルアンプ(ゲインは18dB)を入れています。これはあまりに大げさなのでC1906程度のアンプか、あるいは2SK241のバンドパスアンプ(3−4連のLC利用型)にするつもりです。
上図を見て解るとおり、基本的な特性は押さえられたようです。問題があるとすれば、スペアナで表示できないレベルの雑音ですが、VCOの出力にもLCのBPFをかけるつもりなので、何とかなるのでは?と考えています。一応、これでDDS-PLLに見通しがたったような気がしています。
このごろは、休みになるとあちこち遠出をしています。当初は十分だと思っていたパワーにも今ではまったく馴れてしまって、維持できるならいくらでも馬力は欲しいと思いはじめました(→なんだかリンクいただいてるF&Fのウェブマスターに似てきたなぁ!)。
さて、DDS+PLLをいじくりまわしていろいろわかってきました。まだ受信機に接続していませんが、最終形に近いパラメータを記述しておこうと思います。(どっかでこれではだめと判明したら、さっさと変更します)
まず、DDSのクロックですが、心情的にはなるべく低い周波数のほうが余計な雑音を撒き散らさないのでいいのでは?と思われますが、まったく逆の結果になりました。というのは、やっぱり、DDS出力につないだクリーンアップ用のフィルタの「でき」がかなりPLLのC/Nに影響してくることがわかったのです。このBWを大きくすると余計な雑音を拾います。また帯域外減衰量がブロードだと、DDSのいろんな高調波がVCOに乗ってきます。さらにクロック周波数が低いとDDSのスプリアスも低い周波数には多く存在します。これが、クロック周波数が低くてブロードなBPFを使うとNGな理由のようです。
ここは、DDSのどのスプリアスがPLL-VCOにどういう風に写像されるかというのは同定するのが難しく、なんとも定性的に、BWが狭くて帯域外減衰特性が急峻なものがいいとしかいえません。以前の8バンドTRX用のDDS-PLL局発は、10.7MHzのセラフィルを2段もかまして良好な特性を得ました。しかし今回は3.5-21MHzのジェネカバ受信を狙っているので、PLL(VCO)の周波数可変範囲が1VCOあたり10MHz程度と大きく、リファレンスのためのPLLの入力(DDSの出力)を10MHz近辺にとると、その周波数可変範囲=BWは2MHz程度になります。このFoとBWで急峻なLCフィルタを作るのは、結構骨が折れます。このBPFがいい加減だと、VCOの出力は悲惨で、一時は近傍C/N=-40dBなんて恐ろしい状態にも陥りました。
いろいろ思考(のつもり)錯誤して決定したパラメータを以下に示します。
DDSクロック周波数 | DDS位相ステップ | DDS周波数ステップ (Hz) |
VCO生成周波数(MHz) | 分周比 | 位相比較 周波数 (MHz) |
PLL入力周波数 (MHz) |
Ref Counter 分周比 |
VCO周波数 ステップ (Hz) |
167.77216 MHz =2^24*10 Hz |
256 | 10 | 96 | 640 | 0.15 | 9.6 | 64 | 100 |
64 | 2.5 | 96 | 640 | 0.15 | 9.6 | 25 | ||
512 | 20 | 66 | 320 | 0.20625 | 13.2 | 100 | ||
512 | 20 | 54 | 320 | 0.16875 | 10.8 | 100 | ||
512 | 20 | 54 | 320 | 0.16875 | 10.8 | 100 | ||
512 | 20 | 48.5 | 320 | 0.1515625 | 9.7 | 100 | ||
128 | 5 | 48.5 | 320 | 0.1515625 | 9.7 | 25 |
結局クロックは昔のDDS逓倍ユニットで使ったものを用いました。60MHz、120MHz近辺で2^N*X (Xは分数もあり) という周波数で試験しましたが、先のBPFの特性が良好でないせいか、VCOに写像されるスプリアスが大きく、使用を断念しました。結果的には1つのクロック周波数で異なる3バンドのVCOを高品位に位相ロックできます。クロックを高く、DDS生成周波数を低く・・というのがいい結果を生むようです。
VCOはいままで作ってきた3種類です。95-99MHz用、54-67MHz用、48.5-55MHz用となります。それぞれのVCOにおけるパラメータを記してあります。96MHz帯はループゲインが減少し、また66MHz帯では位相比較周波数が高くなるため、C/Nや安定度に影響が出るかなと思いましたが、作ってみると問題はありませんでした。(一応シミュレーションはしましたが・・)まあ、安定に動作しています。この特性をいしいち掲載しても、さすがに単調でうざったくなるので、今回は省略します。要は前節の結果と同じということになります!
<やっぱり苦闘の日々--C/N改善はたいへんだ> 【2004.12.18】
なんとなーく↑で決まったかなと思ったのですが、細部を見ていくとpwz的には気に食わない部分も出てきました。ということで、すこし、時間をかけながらループの定数をいじっています。
さて、位相比較周波数100kHzでMidバンド(55-66MHz近辺)の実験をやっています。ループ定数の最適条件がクリティカルで、10MHz以上の周波数帯域を単一の定数で「サボる」のはもしかしたら難しいかもしれません。(でも切り替えるの面倒だ)できるかぎり、定数切り替えはやりたくありません。この辺になると、一応、エクセルで固有周波数をいろいろ変えながらループ定数を計算します。必要なら、系の位相余裕も見ておきます。
それでもPFC(位相周波数比較器)が優秀だから、えっちらおっちら、ロックだけさせるのだったら簡単です。145163なんか使って、ロックが時々外れるなんて駄作を平気で作っていた頃が恐ろしいです。そんな系の周波数ステップ収束特性、C/Nなんて、むちゃくちゃだったのだろうと容易に想像できます。(雑誌にも、なんかループフィルタの値をぱくって、条件の全然違う回路にへーきで使ってるものがあったけど、今見ると、ちょっと恥ずかしくなります。
ループ定数と実際のC/N評価
ループフィルタの定数はRが2種、Cが1種ですが、
それが系に及ぼす影響は多大なるものがあります
上図のように、時間をかけながら、特性のいいところを手探りしています。ハムバンド程度のピンポイント周波数(BW:2MHzくらい?)なら楽勝なのですが、帯域を広げるために、「楽しくてこずってる」最中です。固有周波数の選定によっては、ノイズスペクトラムが大きく変わるのをみると、大変面白いです。
<PSの製作とラインノイズ> 【2005.1.23】
やっとこのページに戻ってきました。年末年始、その後もずっと寄り道していたので、「感」が鈍っていなければいいですけど。最近、DDSがローカルとして市民権を得てきたのか、今回の370G新年会の製作品も、かなりDDSを使った事例がありました。私は数年前からDDSを無茶してローカルに使ってきて、その利点・欠点が良くわかっているつもりです。次回以降、どこかで、今回の製作において、DDS直接ローカル利用をギブアップしなければならなかった理由を、まとめて記述したいと思っています。
というところで、PLLですが、実は受信系にDDS-PLLブレッドボードをつなぎ込むには、実験用電源が不足していることに気がつきました。マルチ電圧出力の実験用電源を2台持っているのですが、これらから受信系とシンセサイザで共通に電源供給すると、なにかトラブルがあった場合の切り分けに手間取りそうなので、3台目のマルチ電圧電源を作ることにしました。ついでといってはなんですが、−ΔVのNiMH急速チャージャーも空き地に作りこんでしまいました。
上図は、LM338を用いた3Aの12-18V可変(中央のロータリーSWで切り替え)と317や78シリーズを使った1A固定電圧(12,15,18,21,24V)とNIMHチャージャー(秋月キット)をドッキングさせてみたものです。なんの変哲もないものですが、製作物の規模が大きくなるにつれて、こういったマルチ電圧電源が増えてしまい、これ以外に2台、似たような電源を作ったことになります。
さて、この電源ですが、高CNのシンセサイザをいじっていると、どうもレギュレータを使っていても、その出力のノイズが気になります。今回、それについても、ちょこっと測ってみることにしました。下の写真はその様子です。意外と雑音が多いのと、リップルフィルタの効果の高さに驚かされます。
78XXシリーズ 上:7812の出力雑音スペクトラム 下:系の残留雑音レベル SPAN:5kHz CF:2.5kHz RBW=VBW=10Hz REF:-30dBm AC Coupleで観測 |
|
LM338 上:LM338の出力雑音スペクトラム 下:系の残留雑音レベル SPAN:5kHz CF:2.5kHz RBW=VBW=10Hz REF:-30dBm AC Coupleで観測 |
|
LM338にリップルフィルタを付加 R-Filの出力雑音スペクトラム (測定系のノイズスペクトラム以下) SPAN:5kHz CF:2.5kHz RBW=VBW=10Hz REF:-30dBm AC Coupleで観測 |
使ったリップルフィルタはなんの変哲もありません。ここで使った2SC1345の単純なやつです。ただ、リップル除去用コンデンサは、DDSの師匠である、JR1EOP OMご推薦のサンヨーのOSコンデンサを使ってみました。上図から、LM338は若干(15dBくらい?)ノイズ出力レベルが固定電圧レギュレータより大きいようですが、リップルフィルタを使うとスペアナ残留雑音レベル以下まで抑圧できます。ここでは30dB以上は抑圧しているようです。これで、リップルフィルタを用いないと、C/Nのいいシンセができない理由が少しわかったような気がしています。
次は組み上げたPLL(3バンドVCO付)とDDSの結合実験です。
<とりあえずDDS-PLL> 【2005.1.29】
正月休みは、こつこつPLLの配線をしておりました。というのは、このシステムはVCOが3つで、VCO毎に分周比も異なるため、システムとしてまとめて特性を「ぎりぎりと」詰めていく作業を行うには、配線換え、各種設定が面倒なのです。やっぱり、最終形態に近い形でチューンアップを行いたいので、VCOと分周比の切り替え回路を実装して、瞬時にバンド切り替えができるようにしてみました。ここまでくると、周波数シンセサイザの形が見えてきます。
DDS-PLLシンセサイザのPLL部分
上図はPLL(左下)、分周比エンコード回路(青のDIP-SWの左)、入力フィルタ3種(左上)、VCO3台(右の列)とそれらを切り替える回路からなっています。左上のSMAケーブルはDDSの出力につながっており、この信号がフィルタリングされて、PLLのreferenceになります。一応この形でケースインしようと思っています。ただ、チャージポンプ/フィルタと3台のVCOは銅版でシールドして、TXからの輻射妨害を防ぐ必要がありそうです。この状態でざっくりとC/Nを取ってみましたが、95MHz帯はちょっとチューンアップが要りそうですが、他のバンドは一発OKでした。さらに特性を追求していこうと思います。
<DDS〜PLL〜PSの結合> 【2005.2.5】
04年末から、「早く仕上げないとまずいなーー」と思っていた、DDSとPLLの結合作業が一部完了しました。下の写真は電源の上にDDSユニットを置いて、近くのPLLブロックに基準発振信号を供給している様子です・
各部を結線した様子
実は、90MHz帯のVCOに若干、DDSのノイズが残留していたようで、対策をしていました。上の写真右下のBPFブロックは、いずれも3段のLC-BPFなのですが、90MHz帯は条件が厳しいのか、この程度のBPFではいかなるDDS周波数でも雑音抑圧ができるというわけにはいかず、もう2段のBPFを外付けしています。
95MHz帯VCO出力
RBW:10Hz SPAN:1kHz
上図はその2段BPFを追加したときの特性ですが、BPFを追加することで、周波数を可変しても、この程度のC/Nは稼げるようになります。これが無いと、DDS周波数によっては、スプリアスが増加(といってもせいぜい-70dBくらい)します。したがって、このリファレンス用のBPF(DDS信号のクリーンアップ用)は極めて重要であることがわかります。
<ほぼ完成の見通し> 【2005.2.26】
知らない間にE320がE350になってDOHC化されています。実際には必要十分なパワーでも、このくらいの額を出すことを考えると,競争力維持のためには、「カタログスペック」も重要なのでしょう。しっかし、同じような表示パワーでも国産車の場合はパワー感の無いこと無いこと!
さてさて、本題ですが、だいぶ時間が経ってしまいました。とりあえず、DDS-PLLは局発として採用できそうだという見通しがたちました。結局、ハイバンド(95MHz帯)だけ、4連のBPFを突っ込みました。安易にやるとロスが出るので、1段目と2段目に2SK241のアンプをかましたバンドパスアンプの構成にしました。この電源はゴージャスにもリップルフィルタをおごってあります。MID/LOWバンドはリレーでスルーするようになっています。これを以下に示します。
外付けバンドパスアンプ(スルー回路付)
実は、おまじないというのは、DDSの出力をEFで受けていますが、その出力とBPAの間にATTを入れてることです。上の写真の左側のSMAコネクタのあたりに抵抗が見えますが、これが7dBのATTです。これ無しでは、どうもVSWRが悪く、DDSの出力バッファ(EF)とBPAを直接つなぐと、PLL(VCO)のスプリアスが増加します。EFのバックアイソレーションを超えて、DDSに負荷のミスマッチングによる非線形歪みが発生してるのでしょうか?上記BPAをスルー(MID/LOWバンド時)にしたときもこの7dBATTは挿入されており、VSWRの改善に一役買っています。
LOWバンド上限(56MHz)のVCOの近傍C/N
SPAN:1kHz RBW:10Hz
上図は、外付けBPFを付けないLOWバンドのVCOのC/Nですが、かなりきれいです。このバンドは3連のBPFだけでOKのようです。95MHz帯の場合は、BPFが必要になったのですが、これはループゲインの減少による、雑音抑圧能力の減少・・と捉えればいいのかもしれません。
実は、このユニットがうまくいったので、昔に作ったRX系につなぎこんでみました。ラフな感じでは、感度劣化もなくいい具合です。詳細は今後見ていきますが、LOCALにこれだけスプリアスが無いので、RXのスプリアスレスポンスは問題ないと思います。RXINあるいはIFに落ちる雑音が心配だったのですが、杞憂だったようです。
<いっかいまとめとたわごと> 【2005.3.4】
このアイテムの最後に、DDS-PLL回路の最終ブロックを示しておきます。コア部分の回路図は、PLLの実験ページに示したものと変わりありません。こんなマニアックな回路なんて、マジに真似する人も居ないでしょうから、ブロック図だけで十分だろうと勝手に判断しました。
色のついているところが多少なりともノウハウのある部分です。まとまりはありませんが、1年間の長きにわたって、少しずつ書き加えてきました。一応、この形で3.5-22MHz(連続)と50MHz帯がカバーできることになります。HFハイバンドは使う機会もほとんど無いし、この帯域の放送受信もしないと思うので、結局省略してしまいました。
受信機につなぎこんでの感想ですが、第一に「まったくもって安定」です。まだ、周波数ステップが大きい(300Hzくらいになっている・・いつでも修正できると思って、まだやっていない)ので最終的なフィーリングは解らないのですが、VCOのLをたたいても、「こんこん」言うだけで、ロックはまったく外れません。DDSダイレクト発振のローカル(8バンドTRX)とほとんど同じ感じです。強力なPLL制御がかかっています。
スプリアスも、1VCOあたり数点にすぎません。もちろんハムバンドは一点もありません。これがDDSダイレクト発振だと、ハムバンド内でも数点あるのが普通(BPFによるが)ですので、とてもジェネカバなんて不可能ですし、ハムバンド内のスプリアスというのも、結構うっとおしいモノです。これが、まったくありません。このあたりが、DDSダイレクト発振に比べて、回路規模は大きくなってしまうのですが、PLLのいいところです。
DDSダイレクト発振の場合、下図のように、結構なスプリアスを撒き散らすもんだから、フィルタリングを厳重にしないと、受信帯域やIF帯域にスプリアスが飛び込むのです。
DDS-PLLといえど、DDSを逓倍しているようなものだという人もいるようですが、PLLのループによる雑音抑圧の効果を見逃すことはできません。おまけに、今回のシステムはDDSの出力にも厳重なBPFを入れて基準信号をクリーンアップしていますから、効果はさらに良好になります。DDSダイレクトローカルのC/Nが平均70dBとすると、20dBm出力のDDSダイレクトのローカル信号がIFや受信帯域に飛び込むなら、70dB程度(以上?)の減衰量の確保できるフィルタが必要になります。まあ、IFへのダイレクト飛び込みはミクサーのローカル to IF アイソレーションも期待してもいいのかもしれませんが、RFダイレクトは、ローカル供給先のミクサーで発生するので致命的です。
こんな、無信号時にスプリアスが「ばんばん」受信できる系では、強信号がひしめいた場合、スプリアス受信の増加はたいへんなものになるでしょう。DDSダイレクト発振ローカル(ただし、出力BPFを厳重にした場合は別)が実用になるのは、ローカル信号の極めて小さくていい、またIFゲインも少ない「小ぶり」なシステムだけでしょうね。ただし、DDSもDAのビット数が16ビットとかになって、これでクロックが500MHzなんてFBな石(アナデバなら作ろうと思えば作れると思います)が安く手に入れば、話は別です。