Eタイル・トランシーバーPHYユーザーガイド

ID 683723
日付 12/09/2021
Public
ドキュメント目次

F. ホールド時間違反

EタイルネイティブPHY IPのインスタンスを複数使用している場合に、予期せぬホールド時間違反が発生することがあります。この違反が発生する原因は、EMIBレジスターのクロッキングに使用する異なる2つのクロックが、別々のネイティブPHY IPインスタンスのPMAチャネルからのもので、それによりIPに、実装されたネイティブPHY IPインスタンスのチャネル間のフォールスパスができてしまうことです。

IP間のSynopsysデザイン制約 (.sdc) を実装して、別々のネイティブPHY IPインスタンスからのチャネル間のフォールスパスを切り離します。

注: この要件の対象は、 インテル® Stratix® 10デバイスのみです。 インテル® Agilex™ デバイスは対象外です。

次の図で示すネイティブPHY IPインスタンスでは、4つのチャネルがインスタンス化されています。

  • 同じチャネル間のタイミングパスは有効なパスです。これを保持して、クロックスキューを制御する必要があります。
  • 隣接するチャネル間のタイミングパスは無効なパスです。このパスは切断する必要があるため、.sdc ファイル内の2つのノード間にフォールスパスを設定してください。
  • ネイティブPHY IPにより、set_false_path がネイティブPHY IP内のすべての隣接チャネル間に実装されます。
  • 異なるネイティブPHY IPインスタンスからのチャネル間のタイミングパスも無効です。このパスは切断する必要があるため、.sdc ファイル内の2つのノード間にフォールスパスを設定してください。
図 153. 4つのチャネルがインスタンス化されたネイティブPHY IPインスタンス

例1: 同じチャネル間の正しいタイミングパス

ノードから:

xcvr_native_s10_etile_0|g_xcvr_native_insts[0].ct3_xcvr_native_inst|inst_ct3_xcvr_channel|inst_ct1_hssi_pldadapt_tx~aib_tx_internal_div.reg

ノードへ:

xcvr_native_s10_etile_0|g_xcvr_native_insts[0].ct3_xcvr_native_inst|inst_ct3_xcvr_channel|inst_ct1_hssi_pldadapt_tx~s2_6_0__aibadpt__aib_fabric_tx_transfer_clk.reg

例2: 隣接チャネル間の誤ったタイミングパス

ノードから:

xcvr_native_s10_etile_0|g_xcvr_native_insts[0].ct3_xcvr_native_inst|inst_ct3_xcvr_channel|inst_ct1_hssi_pldadapt_tx~aib_tx_internal_div.reg

ノードへ:

xcvr_native_s10_etile_0|g_xcvr_native_insts[2].ct3_xcvr_native_inst|inst_ct3_xcvr_channel|inst_ct1_hssi_pldadapt_tx~s2_6_0__aibadpt__aib_fabric_tx_transfer_clk.reg

例3: 異なるネイティブPHY IPインスタンスからのチャネル間の誤ったタイミング パス

次の図で示すデザインに含まれる複数のIPインスタンスでは、それぞれネイティブ PHY IPがインスタンス化されています。

図 154. 2つのネイティブPHY IPインスタンスの各インスタンスで4つのチャネルがインスタンス化されている場合

ノードから:

CLIENT_BK[4]|xcvr_native_s10_etile_0|g_xcvr_native_insts[0].ct3_xcvr_native_inst|inst_ct3_xcvr_channel|inst_ct1_hssi_pldadapt_tx~aib_tx_internal_div.reg

ノードへ:

CLIENT_BK[5]|xcvr_native_s10_etile_0|g_xcvr_native_insts[0].ct3_xcvr_native_inst|inst_ct3_xcvr_channel|inst_ct1_hssi_pldadapt_tx~s2_6_0__aibadpt__aib_fabric_tx_transfer_clk.reg

どちらのノードもチャネル0からのものであると言っても、ネイティブPHY IPの2つの別々のインスタンスからのものです。この場合、フォールスパスの設定は、ネイティブPHY IPインスタンスのレベルではできません。したがって、フォールスパスの設定には、プロジェクト内のハイレベルの .sdc ファイルを使用してください。

上の図で示したとおり、この追加のインテグレーター .sdc ファイルは、ネイティブPHY IPの外にあります。そこでは、適切なタイミングパスを切断する必要があります。インテルからの推奨事項は次のとおりです。

  1. デザイン内の無効な特定のタイミングパス (ネイティブPHY IPインスタンスによって切断されていない異なるチャネル間のパス) を特定します。
  2. 次に、特定したパスをハイレベル .sdc ファイルでターゲットにします。