周波数カウンタを作る 4

前回は、siliconvalley4066 さんの STM32F103C8T6 を使用した周波数カウンタに、手持ちの部品で作ったプリアンプを追加して測定できる周波数の上限を確認しました。

前回までの周波数カウンタの計測結果は・・・
・TTL レベル:66 MHz(自作信号発生器 TTL 信号の上限)
・信号発生器の出力信号を 20 dBm 程度にアンプで増幅:53 Mhz
・手持ちの部品でブレッドボード上に作ったアンプで増幅:24 MHz

前回の記事は、下のリンクから確認してください。

今回は、手持ちの部品の整理を兼ねて保有プリスケーラ IC の性能確認と自作基板でプリスケーラを試作して機能を確認します。

なお、この「周波数カウンタを作ってみる」企画の最終目標は、ずっと前に製作した PIC16F84 を使用した周波数カウンタと同等性能の
・通常入力で周波数上限:60 MHz
・プリスケーラを付けて周波数上限:2.4 GHz
・ 周波数安定度を保つために TCXO 内蔵
を目指します。(今の私のスキルで、本当に出来るのか心配ですが。)

プリスケーラ

「プリスケーラ」(prescaler:分周器)とは、誤解を恐れずに言うと周波数を 1/2 にするデジタル回路の集まりです。
プリスケーラの基本構成は論理回路の教科書で最初の方に出てくる JK フリップフロップ回路です。
JK フリップフロップ回路は入力信号を 1/2 にすることが出来ます。これを2つ接続すると、周波数は 1/2 × 1/2 = 1/4 になります。

この回路を集積したのがプリスケーラ IC です。(実際には内部構成は異なりますが。)
プリスケーラ IC は、用途に合わせて複数個の IC を組み合わせて、必要な周波数に分周して出力することが出来ます。

市販されているプリスケーラ IC は、とても高い周波数を分周することが出来ます。
これは、その昔スーパーコンピュータでも使用されていた ECL(Emitter Coupled Logic)という素子を使う事で実現しています。
ECL の動作原理の解説は長くなるので省きますが、論理判断の電圧差を小さく(0.8 V)し、常に大きな電流を流し続けることでスイッチ動作を高速にできる素子です。

プリスケーラ IC の出力信号は ECL なので、通常の TTL IC 等を直接接続しても正常に動作しません。
ECL 素子を使ったプリスケーラ IC の出力には、レベルコンバータが必要です。

なお、周波数カウンタの主要構成品である水晶振動子(温度無依存水晶振動子)も分周器も、佐賀出身の古賀逸策 教授が発明しました。(水晶振動子:1932年、分周器:1937年)
古賀教授は2017年にその業績が認められてIEEEマイルストーンに認定され、記念銘板が贈呈されました。(著作一覧を見ると「圧電気と高周波」などの専門書以外に「誰にも出来る  ラジオの故障修理」なんて電子工作本を書いているとは、古賀教授すごいです!)
(古賀教授の写真は東京工業大学の HP より引用)

保有プリスケーラ IC

部品箱で見つけたプリスケーラ IC は、以下の12種類です。(他にもあるかもしれませんが、どこで購入したかも覚えていません。良く集めたものです。)

以下のリストは名称・対応周波数・分周比・動作電圧の順です。

富士通
MB501:10MHz-1GHz、64,65,128,129、+5V
MB503:10-200MHz、16,17,32,33、+5V
MB504:10-520MHz、32,33,64,65、+5V
MB506:100MHz-2.4GHz、64,128,256、+5V
MB507:100MHz-1.6GHz、128,129,256,257、+5V

NEC
uPB581:500MHz-2.8GHz、2、+5V
uPB1507:500MHz-3GHz、64,128,256、+5V
uPB1508:500MHz-3GHz、2、+5V

東芝
TD6127:400MHz-1GHz、64,65,128,129、+5V
TD7104:50MHz-1GHz、2,4,8 、+5V

MOTOROLA
MC12034:500MHz-2GHz、32,33,64,65、+5V

Hittite
HMC363:200 MHz-12GHz、8、+5V

保有プリスケーラ IC の周波数範囲

プリスケーラの情報収集

部品箱の在庫(死蔵品)の一覧と性能が分かったので、この部品で出来そうなプリスケーラの情報をネットで探しました。
色々な情報が見つかりましたが、今回作ってみるのは、GBPPR(Green Bay Professional Packet Radio)さんの「13 GHz Frequency Counter Prescaler」です。
(GBPPR はもちろん個人名ではなく、米国ウィスコンシン州ブラウン郡グリーンベイ市の電子工作好きの集まりの名前のようです。)

GBPPR では沢山の電子工作のプロジェクトが公開されていますが、このプリスケーラは、「VHF Communications Magazine」(2006年版)で Zeljko Bozic (S52ZB) 氏が設計して発表したものです。

このプリスケーラの性能は、製作予定の周波数カウンタの上限周波数 2.4 GHz より、かなり上の 13 GHz までの信号を 1/1000 の周波数に変換します。

このプリスケーラの構成は、
・HMC363:8倍
・MB506:64倍
・74 シリーズのロジック回路:1.953125 倍(1.25 x 1.25 x 1.25 = 1.953125)
の3段構えで
8 X 64 X 1.953125 = 1000 倍にします。

つまり、このプリスケーラを周波数カウンタに付けると、13 GHz の入力信号が 1/1000 の 13 MHz になるという事です。
これなら簡単に周波数の読み替えが出来ますね。

プリスケーラのプリント基板

さすがに、GHz 帯の信号を扱うのにブレッドボードは使えないのでプリント基板を使います。
ところが、困ったことが起きました。
実物をご覧ください。

入力端子は SMA、出力端子は BNC コネクタを取り付ける設計になっています。
(試作基板なので、扱う周波数が低い74シリーズのロジック回路は省いています。出力は入力周波数の 1/512 になります。)
コネクタの設計上は SMA が 18 GHz、BNC が 4 GHz 以下で使用するよう定められているので、問題はないはずです。(入力の上限が 13GHz の場合に出力は 25.4 MHz)
入力信号のラインは、Hittite 社の評価基盤と同等の多数のグランドピアも配置していましたが・・・

KiCad で基板を作る時に SMA コネクタのサイズを間違えました。
グランド端子の位置が合いません。

仕方がないので、プリント基板のレジスト部分を削って半田が乗るようにします。
写真写りが悪いですが、こんな感じに加工しました。

プリント基板の自宅リフロー

写真を見てもらうと分かると思いますが、このサイズをお年頃の眼で半田付けするのは辛すぎるので、OLED オシロスコープと同じようにヒートプレートで「自宅リフロー」しました。
写真ではキレイに取りついていますが、加熱中に2~3個のコンデンサの位置がズレてしまったので、慌てずにゆっくりと修正してからヒートプレートの電源を切りました。

このサイズの部品でも自宅リフローが可能な事が分かりました。

基板の完成

SMA コネクタと電源ラインなどを取り付けた完成写真です。
出力コネクタは最終的には BNC コネクタを付けますが、計測用に同軸線を取り付けました。

プリスケーラの動作確認

通常ならば自作基板の IC はソケットを使うので導通確認をした後に IC を差し込むのですが高周波信号を扱うので直付けです。
電源部分の短絡などがない事をマルチメータで確認後に、出力電流を絞って実験用電源から電源を供給します。
電源装置のモニタ表示で 80 mA 程度の消費電流なので電源系に短絡はないようです。
(最大消費電流:HMC363 90 mA、MB506 18 mA、MAX961 11 mA)

数百MHz 以上の高周波信号が必要なので、以前紹介した簡易スペアナの GigaSt V.4 の出力を使います。
この器材の入力は 7 GHz までですが、信号発生器としては 4 GHz まで出力できます。

プリスケーラの分周比 512 倍で割り切れる 512 MHz を入れてみます。出力は 1 MHz になるはずですが・・・
ダメですね。

もう一度、よく確認しましょう。
プリスケーラ基板の入力には 512 MHz を入力しています。

1段目の HMC363 の動作周波数は 100 MHz ~ 12GHz なので問題ありません。
2段目の MB506 は 100MHz ~ 2.4GHz ・・・ダメじゃん。

MB506 のデータシートに記載されている最低周波数は 100 MHz ですが、ある程度低い周波数から動作するとしても
512 MHz ÷ 8 = 64 MHz では無理ですよね。

次にプリスケーラの入力部に 1024 MHz を入力します。
これなら、MB506 の最低周波数 100 MHz 以上の 128 MHz が入力されるので大丈夫なはずですが・・・
ダメですね。

確認のために両方の周波数で HMC363 の入力と出力の周波数をジャン測の周波数カウンタで確認しました。
入力の 5 Pin には、512 MHz と 1024 MHz が来ていました。
しかし、出力の 3 Pin には出力が出てきません。(入力した周波数の 1/8 の周波数が出力されるはずです。)

自宅リフローは成功していて、肉眼と電子拡大鏡で見ても 8 Pin の全ての足はしっかりと半田付けされています。
この IC はパッケージの裏にも GND 端子があり、これが接地されていないと安定動作しないらしいです。

プリスケーラ用 IC は高速で動かすために ECL で構成されていて速度を熱に変えているようなものなので、IC を冷却するためにしっかりとクリームはんだを盛りましたが、ちゃんと接地されていないのかなぁ?

MB506 のみで機能確認

色々とネットを検索すると、HMC363 は入力や出力ラインの取り回しなど基板の設計が悪いと、反射などのために正常に動作しないという情報も見かけたので、この1段目を外して機能確認してみます。

MB506 の在庫はまだあるので、新しいプリスケーラ基板に MB506 と ECL – CMOS コンバータの MAX961 のみを乗せて試験します。
HMC363 部分はジャンパで飛ばします。

MB506 は下図の SW1、SW2 のスイッチ端子の設定で分周比を変更できます。
元の基板は 1/64 の設定ですが、そのままではつまらないので変更してみます。

現在の基板では SW1 と SW2 が「H」ですが、両方「L」にして 1/256 に設定します。
この状態の基板で入力に 512 MHz を入力します。

今度はちゃんと出力に 1/256 された 2 MHz が出力されました。
という事は HMC363 の部分が、ちゃんと働いていないという事ですか・・・

うーーん、今までは全て成功していた「自宅リフロー」ですが、初めての失敗ですね。
それとも配線の取り回しによる反射などの基板の設計が悪いのかな?
しかし KiCad でプリスケーラ基盤を作る時には、HMC363 販売元の評価ボードの部品と配線の配置をパクってリスペクトして作ったので、動作すると思ったのですが・・・

HMC363 の製造元 Hittite 社の評価ボード

どちらにしろ、ジャン測の周波数カウンタと自作のパワー計だけでは動作確認を行うのは大変です。
プリスケーラへ入力している数百 MHz を超える高周波は無理としても、数MHz 帯の信号の状態はオシロスコープで確認したいところですが、まだ Tek のオシロは故障中です。どうしよう・・・

再度の見直し

どうしても納得がいかないので、再度データシートを確認します。
Hittite 社は2014年に アナログ・デバイセズ社に買収されたので、HMC363S8G は ADH363S という名前になっています。

名前が違うだけで、どちらも同じ IC ですが、2つのデータシートが存在します。
両方のデータシートを可能な限り色々なバージョンで確認しますが、1段目に使用しているプリスケーラ IC の HMC363S8G は、

入力:5 Pin
反転入力:7 Pin
出力:3 Pin
反転出力:1 Pin
ですが、評価ボードでは 7 Pin の反転入力をコンデンサを通して GND に落としています。

この IC の購入元は記憶が確かならば秋月電子さんです。
かなり前に購入したと思いますが、まだ、本日も継続して販売していました。

12GHz プリスケーラー HMC363S8G(販売コード:101297)
商品説明を見てみます。
「12GHz、分周比8のGaAsプリスケーラICです。型番の末尾によってピン配置が異なりますのでご注意ください。5番ピンが入力です。1番ピンが出力(~OUT)になります。」

「えっつ!?」
データシートにはどこにも書いていないですが、型番によってピンの機能が違うようです。
1番ピンが出力?
秋月電子で販売している HMC363 の2行目の数字は「5160」ですが私が基板に取り付けた HMC363 も「5160」です。

そこまで言うのなら、高周波基板なのであまりやりたくはありませんが基板の配線を変更してみましょう。
3番ピンに付けているコンデンサを外して1番ピンからジャンパします。

この状態で 512 MHz を入力して出力を見てみます。
(このプリスケーラ基板は 1/512 です。)

あれ?本当に今度は問題なく 1 MHz の出力が出ました。
信号源は簡易スペアナ・アダプタの GigaSt なので、正確なクロック源は使用していないことを考えると、ちゃんと 512 MHz の 1/512 で 1 MHz が出ていると言えるでしょう。

こんな結末になるとは思いませんでした。
とりあえず、ロジック回路で 1/1.953125 にする部分以外は、プリスケーラの機能試験が出来ました。

周波数カウンタとして完成させるには、
1 オリジナルと同じロジック回路で 1/1.953125 回路を作る。(DIP IC を4つ使っているので、それなりの基板サイズが必要です。)
2 他の方法で(ハードウエア的に)回路を作る。(FPGA や GreenPAK 等なら小型化できますね。)
3 MCU で分周比の計算を切り替える。(基板サイズの増加は、もちろんゼロです。)
の3種類の解決方法がありますが、最大でも数MHz 帯の回路なので特に問題ないですね。
後から最終的な解決策は考えることにします。

次回の予定

次回は、STM32 で動作している周波数カウンタのクロック源を TCXO(温度補償型水晶発振器)に変更します。
TCXO とは、通常の水晶発振器に温度補償回路を追加したタイプのオシレータです。
MCU の内蔵クロックやセラミック発振子に比べて高安定で、周囲の温度変化による周波数の変動を少なくなるようにした部品です。

旧型の自作周波数カウンタで使っていた TCXO は、DIP IC 14ピンサイズの大型の TCXO でしたが、最近の TCXO はスマホや GPS に使うために小型化されて安価な部品になっています。

現在は STM32 のボードに乗っている水晶発振器を信号源に使用しているので、通常の電子工作に使用するには十分に高安定ですが、周波数カウンタとして使うために TCXO を搭載してさらなる高安定化を目指します。

コメント