インテルのみ表示可能 — GUID: lcj1614823158323
Ixiasoft
インテルのみ表示可能 — GUID: lcj1614823158323
Ixiasoft
4.3. Precision Time Measurement (PTM)
Precision Time Measurement(PTM)を使用すると、独立したローカルタイムクロックを使用して、複数のコンポーネント間でイベントを正確に調整できます。通常、個々のタイムレコーダーの時間の値と変化率の概念が異なることを考えると、このような正確な調整は困難です。この制限を回避するために、PTMを使用すると、コンポーネントは、ローカル時間と共有PTMマスター時間(PTMルートに関連付けられた独立した時間領域)との関係を計算できます。各PTMルートは、PTM階層のPTMマスタータイムを提供します。
PTMリクエスターとは、エンドポイントまたはアップストリームポートに関連付けられたコンシューマーとしてPTMを使用できる機能を指します。 PTMレスポンダーとは、PTMを使用して、ルートポートまたはルートコンプレックスに関連付けられたPTMマスタータイムを提供できる機能を指します。 PTMルートは、PTM階層のPTMマスタータイムのソースであり、PTMレスポンダーでもあります。 F-タイル PCIe ハードIPは、エンドポイントモードのPTMまたはPTMリクエスターをサポートします。
- PTMは、F-タイルのEndPointモード(PTMリクエスター)としてのみ実装されます。
- EndPointモードとしてのポート0またはポート1のコンフィグレーションは、PTMをサポートできます。常に1つのポートのみがPTM機能を有効にできます。
- PTM は PCIe Gen3 および Gen4 の速度でサポートされています。
- 一般的なクロック方式での PTM 精度 = ±50 ns (Gen3 x1 モードを除く)
- 独立した拡散スキームを使用した個別の基準クロックでの PTM 精度 = ±100 ns
F-タイル PCIe ハードIPのPTMリクエスターは、有効になっている場合、PTMコンテキスト(ダイアログの開始)を自動的に更新します。 1ミリ秒から10ミリ秒ごとの自動トリガー、またはユーザー入力のみによる手動トリガーとしてコンフィグレーションできます。
上の図は、自動トリガーが有効になっている場合のPTMインターフェイスのタイミング図を示しています。ptm_context_valid_oはptm_local_clock_oが有効 かどうかを示します。
- クロックが停止するか、間違った周波数で動作する(たとえば、リンク速度が変化しているとき)、または
- PTMが無効になっている、または
- PTM応答タイムアウト(自動更新または手動更新の開始条件が満たされたときに、リクエスターはPTMダイアログを再開します)、または
- 重複PTMTLPが受信されるか、再生TLPが送信されます(応答を待機している場合、リクエスターは、最後の非重複要求が送信されてから100μs待機してから、新しいPTMダイアログを開始できるようにします。
受信したPTMメッセージもアプリケーション層に転送されます。
PCIeリンク上の2つのコンポーネント間でPTMを使用する場合、PTMリクエスターに代わって機能するアップストリームポートは、同じリンク上のダウンストリームポートにPTMリクエストを送信します。これは、上の図のとおりにPTMレスポンダーに代わって機能します。
ポイントt1、t2、t3、およびt4は、PTMメッセージを送受信するときに各ポートによってローカルにキャプチャされたタイムスタンプを表します。各ポートに関連付けられたコンポーネントは、1番目のPTMダイアログからのこれらのタイムスタンプを内部レジスターに格納して2番目のPTMダイアログで使用し、以下同様に後続のPTMダイアログで使用します。
2番目のPTMダイアログでは、ダウンストリームポートが前のPTMダイアログ中に保存されたタイムスタンプに基づいてPTMResponseDメッセージを入力します。形式は次の2番目の図に示されています。これには、t2'であるPTMマスタータイムとt3-t2である伝搬遅延が含まれます。
次に、アップストリームポートに関連付けられたコンポーネントは、そのタイムスタンプをPTM ResponseDメッセージで渡されたタイムスタンプと組み合わせて、次の式を使用してPTMマスタータイムを計算できます。 t1'= t2'でのPTMマスター時間-[((t4-t1)-(t3-t2))/ 2]