複数のUSRPのチャネルや複数台のUSRPを使用するためには、同期の理解が必要です。
クロック同期、時刻同期、位相同期についてまとめて解説します。
USRPを用いた測定や信号生成では、複数チャネルや複数台の装置を同期させて動作させることが重要になります。
USRPにおける同期は主に次の 3つの概念に分類されます。
これらはそれぞれ目的が異なり、用途に応じて組み合わせて使用されます。
クロック同期は、10 MHzリファレンスクロックを共有する仕組みですが、位相同期とは違う概念です。クロック同期を行っても、RFの位相が必ず一致するわけではありません。
クロック同期とは、各USRPのADC/DACが同じクロックで動作するようにすることを指します。
クロックが一致していない場合、各USRPのサンプルレートがわずかに異なるため、
という問題が発生します。
USRPでは、内部の device time(時刻カウンタ) はクロックから生成されているため、クロック同期が取れていないと時刻同期も維持できません。
そのため、複数USRPを同期する場合は、まずクロックを一致させる必要があります。
通常は 10 MHz reference clock を各USRPに供給してクロック同期を実現します。
時刻同期とは、複数のUSRPの内部時刻(device time)を一致させることを指します。
これにより、
などの動作を同じ時刻に開始することができます。
UHDでは Timed Command を使用して、指定した時刻に動作を開始させることができます。
複数USRPの時刻同期にはPPS(1 Pulse Per Second)信号を使用します。
PPS信号が入力されると、各USRPの内部時刻を同じ基準に合わせることができます。
なお、時刻同期を正しく維持するためには、事前にクロック同期が取れている必要があります。
位相同期とは、各RFチャネルのローカルオシレーター(LO)の位相関係を一定に保つことを指します。 位相同期はハードウェアレベルにサポートされているUSRPでのみ有効です。位相同期がサポートされていないUSRPでは、クロック同期や時刻同期が可能でも位相同期はハードウェアレベルで不可能です。
これは次の用途で重要になります。
クロック同期と位相同期は異なる概念です。
重要な点として、
10 MHzリファレンスクロックを共有しても、RFの位相が必ず一致するわけではありません。
これは、各RFモジュールのLOが独立して生成されるため、初期位相がランダムになる場合があるためです。
1台のUSRPでは、内部で次の信号がすべてのチャネルに共有されています。
そのため、同一USRP内では
はソフトウェア設定のみで実現できます。
複数台のUSRPを同期させる場合は、外部基準信号を共有します。
一般的に使用する信号は次の2つです。
複数USRPの同期では OctoClock がよく使用されます。
OctoClockは
を生成または入力し、最大8台のUSRPに分配する装置です。
この構成により、複数USRPの
を同時に実現できます。
1 : データシート上では位相同期に対応されていると書かれていますが、ドルフィンシステムでは動作未確認です
USRPの同期について