USRP の DC offset キャリブレーションを行なう

USRP の DC オフセットとキャリブレーション

USRP はFPGA内でDC offsetを除去する回路が含まれており、送受信時にLO Leakageを除去してくれます。で実際には各RFドーターボード(WBX や CBX)毎に個性があるので、各ボード毎にキャリブレーションを行なう必要があります。
clip_image001
※引用元 http://www.ni.com/white-paper/14311/en/
USRPのキャリブレーションの仕組みは、
  1. 以下の、各キャリブレーションツールを実行すると、補正値が記述されたテーブル(CSV)がユーザフォルダに各ドーターボード毎保存されます。
  2. ファイルは c:\users\username\AppData\Roaming\.uhd\cal に保存されます。
  3. 各ドーターボードの中心周波数(LO)を設定する際に、各補正値がUSRP FPGA内に適用されます。
  4. この適用は、USRPドライバがユーザフォルダにテーブルファイルがあれば自動的にUSRPに補正値を送るので、ユーザは特に何もする必要はありません。
  5. 必要であれば補正値ファイルをコピーしておきます。
  6. キャリブレーション中は、USRPのRFポートは何も接続しません。
clip_image002
キャリブレーションのツールは、スタートメニュー→National Instruments→NI-USRP→utilities に入っているものを使います。
送信DCオフセット
uhd_cal_tx_dc_offset.exe
送信IQインバランス補正
uhd_cal_tx_iq_balance.exe
受信IQインバランス補正
uhd_cal_rx_iq_balance.exe
詳しくは UHD - Calibration Application Notes を参照。
 

キャリブレーションを行なう

各ツールが保存されているフォルダ
clip_image003
まずUSRPを認識できる状態にしておいて、USRPのRFコネクタをすべて外しておきます。次に、コマンドプロンプトを起動してキャリブレーションツールを実行します。
送信DCオフセットのキャリブレーションをする場合は、
>uhd_cal_tx_dc_offset.exe
を実行します。
キャリブレーションはドーターボードがサポートしている周波数帯すべてに対して行ないますので、時間が10~20分程度かかります。
もしキャリブレーションする範囲を決める場合は、キャリブレーション開始、終了周波数をコマンドオプションで指定します。
例)

開始周波数
2420MHz
終了周波数
2490MHz
周波数ステップ
1M
コマンドライン
c:\> uhd_cal_tx_dc_offset.exe --start_freq 2420000000 --freq_stop 2490000000 --freq_step 1000000
以下は、送信 IQインバランスを補正するキャリブレーション中です。
clip_image004

キャリブレーションの成果

ではキャリブレーションの成果はどの程度あるのでしょうか?
USRP2 + CBX で 2473MHz で試しました。
こちらがDCオフセットキャリブレーション前。
-56.99dBm 程出てしまっています。
clip_image005

こちらがキャリブレーション後。かなり目立ちますが、-63.75dBmにまで下がりました。clip_image006
以上





















コメント

  1. お世話になります.

    当該記事を参考にさせていただきました.
    Ettus社のN210+WBXボードを,ファームウェアをLabVIEW用に書き換えたものについては,正しくキャリブレーションを行うことができました.
    しかし,NI社から購入したUSRP-2921(2.4-2.5GHz及び4.9-5.5GHz対応)について,同様にキャリブレーションを行おうとしたところ実行することができませんでした.

    こちらの機種についてはセルフキャリブレーションに対応していないのでしょうか?
    もし何か情報ありましたら,コメント頂けると幸いです.

    返信削除
  2. 結論から申し上げますと、この機種はキャリブレーションには対応していません。
    正確にはこの機種が搭載しているドーターボードはキャリブレーションに対応していません。
    この機種はXCVR2450を搭載していますが、対応しているドーターボードはRFX,CBX,WBX,SBXになります。

    http://files.ettus.com/manual/page_calibration.html

    どの機種にどのドーターボードが搭載されているかは公式に発表されていませんので、以下ページを見て判断します。

    http://files.ettus.com/manual/page_dboards.html#dboards

    いかがでしょうか?

    返信削除
    返信
    1. Mikio様 ご返信ありがとうございます.

      添付URL拝見させていただきました.
      現行モデルだと,CBX,WBXを利用する方がよさそうですね.
      貴重な情報,ありがとうございます.

      削除

コメントを投稿