UPGRADE YOUR BROWSER

We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

AR# 40603

7 シリーズ FPGA MIG DDR2/DDR3 - クロッキング ガイドライン

説明

7 シリーズ FPGA MIG DDR2/DDR3 デザインには、基準クロックとシステム クロック入力の 2 つのクロック入力があります。 

基準クロックはデザイン内の IODELAYCTRL コンポーネントを駆動し、システム クロック入力は、内部ロジックにクロックを供給するすべての MIG デザイン クロック、位相調整用の周波数基準クロック、およびマルチ I/O バンク インプリメンテーションで PHY 制御ブロックを同期させるために必要な同期パルスの作成に使用されます。 

このアンサーでは、MIG 7 シリーズ のクロック供給のガイドラインを示します。

注記 : このアンサーはザイリンクス MIG ソリューション センター (Xilinx Answer 34243) の一部です。

ザイリンクス MIG ソリューション センターには、MIG に関する質問が集められています。 

MIG でデザインを新しく作成する場合、または問題をトラブルシュートする場合は、このザイリンクス MIG ソリューション センターから情報を入手してください。

ソリューション

一般情報

必要な I/O クロック、PLL クロック供給構造 (「クロッキング アーキテクチャ」の図を参照)、およびジッターを最小に抑えながら入力クロック周波数を変更する場合のガイドラインの詳細は、『7 シリーズ FPGA メモリ インターフェイス ソリューション ユーザー ガイド』 (UG586) を参照してください。

MIG ツール (MIG v1.2 以降) では、メモリ クロック周期を入力し、サポートされるクロック供給ガイドラインに沿った、使用可能な入力クロック周期を一覧表示させることができます。

選択した 2 つのクロック周期に基づいて、生成された MIG コアで PLL パラメーターが正しく設定されます。

入力クロック ガイドライン

  • PLL ガイドライン
    • CLKFBOUT_MULT_F (M) は、1≤M≤16 にします。
    • DIVCLK_DIVIDE (D、入力分周値) は、PLLE2 パラメーターでサポートされる値に設定します。
    • CLKOUT1_DIVIDE (O、出力分周) は 400MHz 以上の場合は 2、400MHz 未満の場合は 4 にします。
    • 上記の設定が、PLL の最小 VCO 周波数 (FVCOMIN) を満たす必要があります。
      仕様については、該当する DC およびスイッチ特性のデータシートを参照してください。
      FVCO の計算式は、、『7 シリーズ FPGA クロック リソース ユーザー ガイド』 (UG472) に含まれています。
    • 入力周期とメモリ周期の関係は、InputPeriod = (MemoryPeriod*M)/(D*D1) になります。
    • 入力クロックに使用可能な入力ジッターは、PLL_Finjitter 仕様を満たしている必要があります。
      該当する DC およびスイッチング特性データシートを参照してください。
  • クロック入力 (sys_clk) は現在、メモリ インターフェイスが配置されている列の CCIO に入力できます。
    メモリ インターフェイスを含んでいないけれどもそれと同じ列にあるバンクの CCIO も対象になります。
    PLL は、メモリに送信されるクロックが含まれるバンクに配置します。
    メモリ インターフェイス PLL に入力クロックを配線するには、CMT バックボーンを使用する必要があります。
    MIG インプリメンテーションで、バックボーンの予備のインターコネクトの 1 つをこの目的に使用できます。

    • ISE Design Suite 13.4 でリリースされた MIG 1.4 では、この入力クロッキング設定が可能で、CMT バックボーンが正しく駆動されるようになっています。
    • CLOCK_DEDICATED_ROUTE = BACKBONE 制約を使用して CMT バックボーンをインプリメントすると、次の警告メッセージが表示されることがあありますが、これは無視しても問題ありません。

WARNING: [Place 30-172] Sub-optimal placement for a clock-capable IO pin and PLL pair. The flow will continue as the CLOCK_DEDICATED_ROUTE constraint is set to BACKBONE.

u_mig_7series_0/c0_u_ddr3_clk_ibuf/diff_input_clk.u_ibufg_sys_clk (IBUFDS.O) is locked to IOB_X0Y176
u_mig_7series_0/c0_u_ddr3_infrastructure/plle2_i (PLLE2_ADV.CLKIN1) is locked to PLLE2_ADV_X0Y1
u_mig_7series_0/c1_u_ddr3_infrastructure/plle2_i (PLLE2_ADV.CLKIN1) is locked to PLLE2_ADV_X0Y5
......

  • メモリ バンクの 1 つにある CCIO ピンにメモリ システム入力クロック (sys_clk) が配置されている DDR3 インターフェイスの場合は、MIG により、CCIO ピンに DIFF_SSTL15 I/O 規格 (VCCO = 1.5V) が割り当てられます。
    同じ差動入力レシーバーが DIFF_SSTL15 および LVDS 入力の両方に使用されているため、LVDS クロック ソースを DIFF_SSTL15 CCIO ピンに直接接続することが可能です。
    条件については、次を参照してください。
  • LVDS や LVDS_25 などの差動規格の出力に必要な公称電圧とは異なる電圧レベルが供給される差動入力を I/Oバンクで使用することも可能ですが、
    それには次の条件を満す必要があります。
    1. オプションの内部差動終端が使用されていない (DIFF_TERM = FALSE (デフォルト))。
      注記 : 最上位モジュールにある DIFF_TERM パラメーターを手動で変更するか、または UCF でこの設定を変更する必要がある場合があります。
    2. 入力ピンの差動信号が特定のデバイス ファミリ データシートの推奨される動作条件の表の VIN 要件を満たしている必要がある。
    3. 入力ピンの差動信号が特定のデバイス ファミリ データシートの該当 LVDS または LVDS_25 DC 仕様の表の VIDIFF (min) 要件を満たしている必要がある。

      上記の条件を満たす方法の 1 つに、入力信号を AC カップリングし、DC バイアスする外部回路を使用する方法があります。
      次の図は、差動クロック入力に AC カップリングおよび DC バイアスを適用する回路を含む例を示しています。
      内部 DIFF_TERM は FALSE に設定されているので、RDIFF は 100 オームの差動レシーバー終端となります。
      入力ノイズ マージンを最大化するには、すべての RBIAS 抵抗が同じ値で、基本的に VCCO/2 の VICM レベルを作成する必要があります。
      10k ~ 100K オームの範囲の抵抗をお勧めします。
      AC カップリング キャパシタ (CAC) は、通常 100nF の範囲になります。
      すべてのコンポーネントは FPGA 入力に物理的に近い位置に配置する必要があります。


注記 :

1) 差動 LVDS 入力の最後のガイドラインは、次のバージョンの『7 シリーズ SelectIO リソース ユーザー ガイド』 (UG471) の「LVDS、LVDS_25 (低電圧差動信号)」セクションに追加されます。
2) これらのガイドラインは、すべてのパッケージ、列 (HR/HP)、および I/O 電圧に適用されます。

コントローラー間での sys_clk の共有
『7 シリーズ FPGA メモリ インターフェイス ソリューション ユーザー ガイド』 (UG586) に記述されているように、MIG 7 シリーズ FPGA デザインの場合、ジッタを最小限に抑えるために、メモリ インターフェイスと同じ I/O バンク列に sys_clk が必要です。

  • 複数インターフェイスが複数 I/O 列にまたがる場合
    • 1 つの sys_clk 入力では、複数の I/O 列にまたがる複数のメモリ インターフェイスを駆動できません。
      ジッターを最小限に抑える CMT バックボーンを使用する PLL を駆動するには、入力クロックの入力がメモリ インターフェイスと同じ列にある必要があります。
  • 複数インターフェイスが 1 つの I/O 列に含まれる場合
    • 複数のメモリ インターフェイスが同じ I/O 列に含まれている場合は、これらのインターフェイスで 1 つの sys_clk を共有できます。
      sys_clk はメモリ インターフェイスが配置されている列の CCIO に入力できます。
      メモリ インターフェイスを含まないバンクの CCIO も使用できますが、メモリ インターフェイスと同じ列のものである必要があります。
  • 複数インターフェイスが異なる SLR に含まれる場合
    • 複数のメモリ インターフェイスが異なる SLR に含まれる場合、これらのインターフェイス間で 1 つの sys_clk を共有することはできません。CMT バックボーンは SLR バウンダリを超えることができません。


Sync_Pulse に関する情報

MIG 7 シリーズ DDR3/DDR2 デザインには、必要なデザイン クロックを生成する PLL が 1 つ含まれます。
これらの出力の 1 つが sync_pulse です。
sync_pulse クロックは mem_refclk 周波数の 1/16 なので、1/16 または 6.25% のデューティ サイクルの歪みが必要です。
このクロックは、ロー スキュー クロックのバックボーンに配分され、すべての PHASER_IN/_OUT および PHY_Control ブロックを互いに同期するように維持します。
この信号は PHASER_IN/_OUT および PHY_Control ブロックの両方の mem_refclk でサンプリングされます。
sync_pulse の位相、周波数、デューティ サイクルは、PVT に対し最大のセットアップおよびホールド マージンが提供されるように選択されます。

FAQ

クロック ソースの制限が伴う一部のデザインでは、ユーザーは MIG の GUI で no_buffer オプションを選択し、次に示すソースとなり得るものからシステム クロックを駆動する傾向があります。

1. IBUFDS_GTE2

CLOCK_DEDICATED_ROUTE BACKBONE でシステム クロックを配線するための MIG の要件を満たさないため、IBUFDS_GTE2 からシステム クロックを駆動できません。

2. 別の列にある PLL/MMCM から

MIG インターフェイスとは異なる列にある PLL/MMCM から sys_clk_i を駆動できません。no_buffer オプションを使用する場合でも、バッファーをインスタンシエートして必要なクロック制約を使用することによりシステム クロックを MIG と同じ列から駆動する必要があります。

MIG の GUI で no_buffer オプションを選択すると、バッファーのインスタンシエーションおよびシステム クロックのロケーションを後の時点でユーザーが処理しなければならなくなりますが、MIG のクロッキング規則を必ず満たす必要があります。

3. 複数のコントローラー コンフィギュレーションで MMCM を共有する - BUFG クロック (phy_clk) の共有に関する情報

MIG 7 Series DDR3 デザインには、BUFG 配線に phy_clk を出力する MMCM が含まれます。

複数のコントローラーでこのクロックを共有してユーザー インターフェイスを同期することはできません。

これは、デバイス ロジックから PHY 制御ブロックまでのタイミングが制御される必要があるからです。

クロックが複数コントローラーで共有されると、このタイミングが制御されません。

複数コントローラーでユーザー インターフェイスを同期するには、クロック ドメイン転送用の非同期 FIFO を作成するのが唯一の方法です。

これら 3 つのソースとなり得るすべての組み合わせについて Vivado でエラーや警告が発生することはないかもしれませんが、サポートされるクロッキング トポロジに該当するわけではありません。これらの使用により、全 PVT 条件で信頼性の高い一貫した結果が得られなくなる可能性があります。

改訂履歴

2015/04/20複数の SLR の共有クロックを追加
2013/09/30アンサー 53249 へのリンクを追加
2012/06/28phy_clk 共有に関する情報を追加
2012/06/27sync_pulse に関する情報を追加
2012/06/05差動 LVDS クロック入力に関する情報を追加
2012/03/20sys_clk I/O 規格に関する情報を追加
2012/03/06sync_pulse に関する情報を追加
2012/02/22「複数 I/O 列にまたがる複数のインターフェイス」セクションを編集
2012/01/31このアンサーにすべてのクロッキング情報を統合 (アンサー 41587 は削除)
2011/11/30最新のクロッキング ガイドラインおよびツール アップデート情報を追加
2011/08/15CLKFBOUT_MULT_F (M) ガイドラインをアップデート
2011/05/11アップデートされた PLL 設定を含有
2011/05/24VCO の情報を追加

アンサー レコード リファレンス

マスター アンサー レコード

サブアンサー レコード

関連アンサー レコード

AR# 40603
日付 09/14/2016
ステータス アクティブ
種類 ソリューション センター
デバイス
  • Artix-7
  • Virtex-7
  • Kintex-7
IP
  • MIG
このページをブックマークに追加