DSPロックイン内部信号の直接取得によるシアフォース検出


[目的]  ロックインアンプの応答速度の高速化を目指す。
 今回使用したロックインアンプはDSPロックインアンプであり。DSPとは、Digital Signal Processor の略で、ディジタル信号を高速に処理するように設計されたプロセッサです。最大の特徴は、複数の処理を並列に実行可能な構造を持っていることです。内部構造を見ると、プログラムとデータに対してそれぞれ専用のメモリとバスを持っており、プログラムとデータの両方を同時に転送することができ、ハーバードアーキテクチャと呼ばれる構造を取っています。さらに演算器についても、信号処理で使用頻度の高い積算用と加算用の演算器が並列に実行可能な形で内蔵されています。
 DSPロックインアンプの出力データの受け方としては、GPIBがあります。GPIBの信号の早さは、約33MSと遅くGPIBを使って実験を行うと時間がかかって仕方がありません。また、研究室のDSPロックインアンプには外部出力として電圧変換されて出てくる出力インターフェイスがあります(先生によると付録で付いているみたいです)。が、こちらも、あまり高速とはいえず、またアナログ出力であるがために誤差が多くなる可能性があります。他に方法は無いかと考えました。
 DSPロックインアンプを使わずに自分たちで電気回路を作製してしまおうと考えたのが、益田、尾上班でこちらは300μsでデータを更新できる速度を持っています。僕たちはDSPロックインアンプを使い応答速度を益田、尾上班に負けないくらいの応答速度を実現できないかと考えました。


 DSPロックインアンプは本来DSP(ディジタル・シグナル・プロッセッサ)が全ての信号処理をしています。DSP内でデータは4μs変わっており、信号は全てディジタルで処理されているために、この信号を直接取得できれば応答速度の高速化に繋がるのではないかと考え出しました。そのために、まずDSPロックインアンプの取扱説明書をよみDSPロックインアンプの内部構造の解析をすることからはじめました。
 DSPロックインアンプは6枚のボードからなっており、回路図は複雑で簡単ではなくどのように信号が出力されているのかでさえ分かり難かったのですが、前文にあった電圧変換出力の部分からDSPまでの信号のやり取りが辛うじて分かったため、ここの間の部分からロックインアンプの応答速度の高速化を目指しました。DSPから電圧出力までの経路を模式化したのが右図です。
 DSPより出た信号はプログラマブル・アレイ・ロジックを2つ通り、D/A変換ICを通ってアナログ出力されていることが分りました。D/A変換ICの前まではディジタルで扱っているのでここの前のデータをもらう事にしました。
 ここの場所をオシロスコープで見てみると(左下図)プログラマブル・アレイ・ロジックからPCM1700Pへの信号はCLK信号15MHz、データ信号、ロード信号があり、CLKはタイミング、データは1本の線に実部、虚部ともに流れており、データを読み出すタイミングとしてロード信号がありました。データとロードの関係を詳しく調べるためにPCM1700Cがどのような働きをしているかを販売会社のHPからパンフレットをダウンロードして調べました。

画像をクリックすると、拡大画像が新しいウインドウに表示されます。





画像をクリックすると、拡大画像が新しいウインドウに表示されます。

 左図はPCM1700Pの機能の一部を図案化したものです。PCM1700PはただのD/A変換ICはなく、18-bit Serial to Parallel Shift Registerを内蔵している事が分かりました。
 シフトレジスターは入力信号(Serial)をレジスター内部に保存していき。保存ボックスがいっぱいになったら出力側(Paralell)に出力します。このように、Serial Dataを Parallel Dataに変換するのがシフトレジスターの主な働きです。今回使われていた、PCM1700Pはこの出力のタイミングにLoad信号が使われています。以上の事を踏まえて作製案を出しました。






 右図はF/F回路の説明図です。F/F回路にLoadを通すことにより単発式だったLoad1&2がQ1,Q2では保存されていることが分かります。上が理論で下がロジックアナライザ(LA400)によって測定した図です。このことを踏まえて、作製回路を改良しました。
画像をクリックすると、拡大画像が新しいウインドウに表示されます。





画像をクリックすると、拡大画像が新しいウインドウに表示されます。

 このように回路を作製しようとしましたが、急遽18bit Shift Registerが手に入らなくなったために8bitと16bit Shift Registerを直列に繋ぐことによって上位16bitをもらおうと考えました。そして、ノイズ取り等を加えた結果、左図のように作製することに決定しました。
 作製した回路が正しく動いているかのテストをやりました。まず、波形発生器から適当な参照信号をShift Registerに送り、頃合いを見て別に作り出したLoadをShift Registerに送って出力データをLA400で確認し、正常に作動しているので、作製した回路を実際にロックインアンプに取り付けました。左下の写真は取り付けたところを上部から撮影したものです。
 実際に取り付けた後、取り出した信号をPCに取り込むプログラムの作製をしました。






 プログラムが完成したので実際にロックインアンプの応答速度を計測してみました。
 まず、上の図のように回路を接続しますこの時にロックインアンプに入れるのは波形発生器から参照信号。その信号と同じ周波数の信号をカスタムISAボードからロックインアンプに入力します。次にカスタムISAボードから入力している信号の位相を急激に変えます。
 カスタムISAボードの信号の位相を急激に変えると左下図のように変化します。CH1は信号の変化、CH2はカスタムISAボードの位相を変化させるためにPCが送っている信号です。この変化をロックインアンプがどれだけ早く応答できるかを調べました。
 ロックインアンプの時定数をそれぞれ1ms、300μs、100μsに設定して、計測した結果をグラフにまとめたのが右下図です。時間軸(X軸)は1カウント10μsでそれぞれにほぼ時定数通りに値が安定していることが分かりました。このことは、僕らが作製した回路が正しく正常に動作していることの確認と、同時にロックインアンプはかなりの速度で応答できることが分かりました。
画像をクリックすると、拡大画像が新しいウインドウに表示されます。