マスタタイムベースによる同期では、デバイスが異なるレートで動作している場合でも、同期されたデバイス間で位相アライメントが維持されます。この方法では、すべてのデバイスのマスタタイムベースからクロックを取得します。

マスタタイムベースによる同期を使用すると、複数のデバイスが異なるレートで動作している場合や異なるサブシステムに属している場合でも、すべてのデバイスのタイミングを同期できます。マスタタイムベースから取得されたクロックは、開始時から同位相のまま維持されます。カウンタ操作では、マスタタイムベースによる同期により、以下が可能になります。
  • カウンタタイムベースは、ドリフトすることなく同期された状態を維持する。
  • アプリケーションで異なるカウンタタイムベース周波数が必要となる場合、カウンタタイムベースは同位相のまま維持される。

マスタタイムベースによる同期を使用する場合、スレーブデバイスのオンボード発振器は、マスタデバイスから供給されるマスタタイムベースに置き換えられます。次に、各デバイスは同期された発振器から他のクロックを派生します。派生クロックが同位相になるには、開始トリガを共有する必要があります。

メモ マスタデバイスでタスクを開始する前に、スレーブデバイスでタスクを開始する必要があります。

マスタタイムベースによる同期を実現するには、スレーブデバイスで2つのプロパティを設定する必要があります。スレーブデバイスでMasterTimebase.Src属性/プロパティを使用して、マスタデバイスからマスタタイムベースの端子を指定します。スレーブデバイスでは外部タイムベースが使用されるため、MasterTimebase.Rateプロパティを使用してマスタタイムベースのレートを指定する必要もあります。値をハードコードする代わりに、マスタデバイスからマスタタイムベースのレートとソースをクエリします。次に、スレーブデバイスのレートとソースを同じ値に設定します。

マスタタイムベースによる同期を行うと、デバイス間のクロックの移動に必要な時間によりスキューが発生します。

ほとんどのデバイスでは、マスタタイムベースではなく基準クロックが使用されます。そのため、デバイスでは基準クロックによる同期が用いられます。マスタタイムベースによる同期でも、複数の信号の共有とこれらの信号用の複数のRTSIまたはPXIトリガラインの予約が必要になります。すべてのデバイスが同じレートで動作するサンプリングクロックタイミングのアプリケーションでは、サンプリングクロックによる同期を使用できます。サンプリングクロックによる同期では、共有の開始トリガが不要となるため、追加のRTSI/PXIラインも不要となります。サンプリングクロックによる同期により、マスタタイムベースを使用するデバイスと基準クロックを使用するデバイスを同期できます。