手順 8: DFX ウィザードを使用してコンフィギュレーションを定義 - 2022.1 日本語

Vivado Design Suite チュートリアル: Dynamic Function eXchange (UG947)

Document ID
UG947
Release Date
2022-05-31
Version
2022.1 日本語

Dynamic Function eXchange ウィザードは、DFX デザインの異なるパーツ間の関係を定義するために使用されます。ブロック デザイン コンテナーを使用すると、複数のソースを持つ可能性のあるデザインの階層が作成されます。DFX デザインでは、ブロック デザイン コンテナーはリコンフィギャラブル パーティション (RP) を表し、各ソースはリコンフィギャラブル モジュール (RM) になります。

DFX ウィザード内で、コンフィギュレーションとコンフィギュレーション run を定義します。コンフィギュレーションとは、1 つの RP に 1 の RM を持つフル デザイン イメージのことです。コンフィギュレーション run は、そのコンフィギュレーションの配線後チェックポイントを作成するための、配置配線ツールをパスしたものです。DFX ウィザードは、コンフィギュレーション run 間の親子関係も確立し、スタティック デザインのロックや pr_verify など、フローの必要な部分を自動化するのに役立ちます。また、run の間の依存関係が設定されるので、ソースが変更されたときに、 Vivado® でどのステップを再実行する必要があるのかがわかります。

DFX プロジェクトの詳細は、『Vivado Design Suite ユーザー ガイド: Dynamic Function eXchange』 (UG909) の第 4 章を参照してください。

  1. Flow Navigator で Dynamic Function eXchange Wizard をクリックするか、[Tool] → [Dynamic Function eXchange Wizard] をクリックして、DFX ウィザードを開きます。
    図 1. Flow Navigator の DFX ウィザード
  2. Next をクリックします。[Edit Reconfigurable Modules] ページには、rp1 ブロックのデザイン コンテナー内に作成した 2 つの RM、rp1rm1_inst_0 と rp1rm2_inst_0 が表示されます。
    重要: Dynamic Function eXchange の RTL プロジェクト フローとは異なり、DFX ウィザードを新しいリコンフィギャラブル モジュールの開始点として使用することはできません。新しい RM は、RM2 の追加と同様に、キャンバスから追加してください。
  3. Next をクリックします。[Edit Configurations] ページで、automatically create configurations リンクをクリックし、2 つのコンフィギュレーションを生成します。

    [+] ボタンをクリックしてコンフィギュレーションを生成することもできますが、RP が 1 つのデザインでは、すべての RM をカバーするコンフィギュレーションのリストを作成するには、自動生成が最も簡単な方法です。

    注記: [Configuration Name] は編集可能なフィールドです。
    図 2. コンフィギュレーションを 2 つ作成
  4. Next をクリックします。[Edit Configuration Runs] ページで automatically create configuration runs リンクをクリックし、コンフィギュレーションごとに 1 つの run を作成します。
    図 3. コンフィギュレーション run を 2 つ作成
    注記: 自動生成された名前は編集できません。parentrun は impl_1、子 run は child_0_impl_1 です。コンフィギュレーションと同様に、コンフィギュレーション run も手動で作成できるので、その際、run に好きな名前を付けることができます。

    DFX のプロジェクト フローで重要なのは親子関係であり、ここでは [Parent] カテゴリの下に表示されています。親インプリメンテーションは合成 run から始まり、すべての子インプリメンテーションは親を参照して、それらの間でのスタティック デザインの一貫性を確立する必要があります。この単純な例では、child_0_impl_1 の親は impl_1 で、子 run はインデントされているので、親子関係がわかるようになっています。

  5. Next をクリックし、Finish をクリックして、このセクションを完了させます。

    DFX ウィザードは、プロジェクト内で新規コンフィギュレーションを作成したり、変更したコンフィギュレーションやコンフィギュレーション run を作成したりするのに、いつでも呼び出すことができます。

    [Design Runs] ウィンドウで、child_0_impl_1 の新しいインプリメンテーション run が作成されています。DFX ウィザードのビューのように、この新しい run は、その上の impl_1 run への依存関係を示しています。

    図 4. 親と子のコンフィギュレーションコンフィギュレーション run を作成