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# 61075

MIG UltraScale - 1 つのデザイン内に複数の MIG インターフェイスを作成するための推奨フロー

説明

MIG UltraScale では、MIG 7-Series ツールのように複数のコントローラーを選択することができません。

このアンサーでは、1 つのデザイン内に複数の MIG インターフェイスを作成するための推奨フローについて説明します。 

ソリューション

サポート プラン

UltraScale MIG では、MIG ツールによるマルチ コントローラー サポートは追加されません。
メモリ インターフェイスの I/O ピン配置フローへの変更は今後のリリースで行われ、複数の MIG インスタンスの使用が合理化されるようになる予定です。
 

ただし、I/O ピン配置変更がリリースされるまで、MIG は、ターゲット I/O 割り当てで一意のコアを作成するために何度も実行する必要があります。

I/O ピン配置変更の注意点
 
I/O ピン配置は MIG UltraScale から Vivado I/O Pin Planner に今後のリリースで移動する予定です。 

これにより、MIG 外における MIG IP コアの複数インスタンスに対するクロック ピン配置を含め、ピン配置が容易になります。

さらに、I/O XDC 制約が MIG IP から削除され、最上位 XDC ファイルに追加されます。  

これにより、メモリ インターフェイス ピンを変更するたびに MIG コアを生成し直す必要がなくなり、同じ IP を何度も使用できるようになります。

現在のマルチ コントローラー サポート フロー


  1. 必要な MIG コントローラーをそれぞれ個々に生成します。
    『LogiCORE IP UltraScale アーキテクチャ FPGA メモリ インターフェイス ソリューション製品ガイド』 (PG150) に記述されているすべてのピン要件が満たされていて、ピンが重複していないことを手動で確認してください。
    正確にピン配置を行い、必要に応じてバンクをパックするには、MIG I/O Planner を使用したピンの手動割り当てが必要になることがあります。

  2. 生成時に [Generate Output Products] の設定をデフォルトのままにしておきます。このように設定することにより、OOC フローがイネーブルになり、生成されたコアで合成を実行できるようになります。

  3. 生成された IP をインスタンシエートしてユーザー デザインに接続する最上位ラッパー ファイルを作成します。
    各コントローラーに対してポートが一意であることを確認します。 
    例 : c0_ddr4_*、c1_ddr4_*、c2_ddr4_*

  4. 同じ列内に複数の MIG IP を配置する場合は、最上位 XDC ファイルを作成します。 
    各コアの BUFGCE 制約をコピーして最上位 XDC に貼り付けます。
    一意の MIG IP インスタンスの該当する階層を NAME = パスに追加します。 

    例 :
     
    2014.4 より前のバージョンの場合 :

    set_property LOC BUFGCE_X0Y22 [get_cells -hier -filter {NAME =~ u_mig_0*/u_ddr4_phy/u_infrastructure/mmcm_pll_loop[0].CENTER_MMCM.u_bufg_divClk}]
    set_property LOC BUFGCE_X1Y94 [get_cells -hier -filter {NAME =~ u_mig_1*/u_ddr4_phy/u_infrastructure/mmcm_pll_loop[0].CENTER_MMCM.u_bufg_divClk}]

    2014.4 の場合 (PHY のみをサポートするのにディレクトリを変更するため) :

    set_property LOC BUFGCE_X0Y46  [get_cells {u_mig_0/inst/u_ddr3_mem_intfc/u_mig_ddr3_phy/inst/u_ddr3_pll_rst/u_bufg_divClk }]
    set_property LOC BUFGCE_X0Y71  [get_cells {u_mig_1/inst/u_ddr3_mem_intfc/u_mig_ddr3_phy/inst/u_ddr3_pll_rst/u_bufg_divClk }]
    set_property LOC BUFGCE_X1Y93  [get_cells {u_mig_2/inst/u_ddr3_mem_intfc/u_mig_ddr3_phy/inst/u_ddr3_pll_rst/u_bufg_divClk }]
    set_property LOC BUFGCE_X1Y116 [get_cells {u_mig_3/inst/u_ddr3_mem_intfc/u_mig_ddr3_phy/inst/u_ddr3_pll_rst/u_bufg_divClk }]


    これらの BUFGCE 制約の Y 座標は調整する必要があります。 
    必要な変更の詳細は、(ザイリンクス アンサー 61076) を参照してください。

  5. 各コアの create_clock 制約をコピーして最上位 XDC に貼り付けます。
    一意の MIG IP インスタンスの該当する階層を -name パスに追加します。

     
  6. 例 :
    create_clock -name u_mig_0*/c0_sys_clk -period 10.0 [get_ports c0_sys_clk_p]
    create_clock -name u_mig_1*/c0_sys_clk -period 10.0 [get_ports c0_sys_clk_p]

6.   デザインの合成およびインプリメンテーションを実行します。

クロック共有の注意事項
 
詳細は、(ザイリンクス アンサー 61304) を参照してください。
クロック リソースの共有を可能にするために、生成された MIG IP を手動で編集する可能性が高くなります。
Vivado で IP コアを手動変更する方法については、(ザイリンクス アンサー 57546) を参照してください。

関連情報 :
(ザイリンクス アンサー 61076) MIG UltraScale - MIG IP の複数のインスタンスにより「[Place 30-678] Failed to do clock region partitioning」というエラー メッセージが表示される

AR# 61075
日付 11/24/2014
ステータス アクティブ
種類 一般
デバイス
IP
このページをブックマークに追加