DFX デザインに対してリコンフィギャラブル パーティション (RP) の定義、デザイン ソースのビルド、および出力ファイルの生成 (IP インテグレーター フロー) が完了したら、DFX ウィザードを開きます。ウィザードの最初の数ページは、この章で前述した標準的な DFX フローと同じです。抽象化シェルに関係なく、同じ方法でリコンフィギャラブル モジュールとコンフィギュレーションを管理します。抽象化シェルに特定の機能は、[Configuration Runs] ページから開始します。ウィザードを初めて使用する場合、またはすべてのコンフィギュレーション run を削除した場合、オートメーションに対して 2 つの選択肢があります。
[Standard DFX] リンクをクリックすると、各コンフィギュレーション run に対してフル スタティック デザイン イメージを使用するベースの DFX プロジェクト フローが使用されます。config_1 は親 run で、残りのコンフィギュレーションはすべて、その親 run に依存する子 run です。次の図では、config_2 および config_3 は、新しいリコンフィギャラブル モジュールをインプリメントするための開始点として、config_1 からのフル ロックされたスタティック デザイン チェックポイントを使用します。
[Abstract Shell] リンクをクリックすると、同じような結果になり、親コンフィギュレーションは同じですが、各子 run は、特定のターゲット リコンフィギャラブル パーティションに対して抽象化シェルを使用します。
画像からわかるように、これらの方法間の相違は [DFX Mode] で確認できます。ここでの選択肢により、親コンフィギュレーション run の最後に記述されるデザイン チェックポイントが決定されます。親 run は常に、デザインのスタティックおよびダイナミック部分 (RP ごとに 1 つの RM) を含むフル デザイン イメージを作成します。違いは、子 run に対して作成されるロックされたスタティック シェルです。
- [DFX Mode] に [STANDARD] を設定した場合
- スタティック デザイン全体、各リコンフィギャラブル パーティションに対して 1 つのブラック ボックス、およびロックされたすべての配置配線を含む 1 つのチェックポイントが作成されます。
- [DFX Mode] に [ABSTRACT SHELL] を設定した場合
- 各リコンフィギャラブル パーティションに対して抽象化シェルをそれぞれ含む 1 つまたは複数のチェックポイントが作成されます。抽象化シェルには、RP に対して 1 つのブラック ボックス、およびスタティック デザインのロックされた配置配線も含まれますが、新しい RM のインプリメンテーションのコンテキストを提供するために、スタティック情報の量は必要最小限にされます。
[RM Instance] では、抽象化シェル フローでのみ使用されるほかのオプションを確認できます。これにより、特定の子 run をターゲットとするリコンフィギャラブル パーティションと、その RP にインプリメントされるリコンフィギャラブル モジュールが宣言されます。
コンフィギュレーション run の自動生成に対して [Abstract Shell] リンクをクリックしなかった場合は、新しいセットのコンフィギュレーション run に対してこれを直接設定できます。
まず [+] アイコンをクリックし、合成済みデザインを使用して開始する新しい親コンフィギュレーション run を作成します。開いたダイアログ ボックスで、[DFX Mode] から [ABSTRACT SHELL] を選択します。
このような子 run を手動で作成するために [Auto Create Child Runs] チェック ボックスをオフにした場合は、もう一度 [+] をクリックして別の run を作成します。作成された run に対して親を設定します。[Parent] に抽象化シェル親インプリメンテーションを設定すると、[DFX Mode] および [Configuration] は淡色表示になります。その理由は、子 run は、それが関連している親の構造に従う必要があるからです。この抽象化シェル内にインプリメントする新しい RM インスタンスを [RM Instance] から選択します。
[Configuration Runs] ページに戻ると、run にインプリメントされている RM インスタンスを確認して変更したり、使用される制約またはストラテジを設定したりできます。
デザインをインプリメントすると、親 run がまずコンパイルされ、その後すべての子 run を並列で開始できます。ほとんどすべての場合、抽象化シェル run は同等のフル コンフィギュレーション子 run よりも高速になります。複数のリコンフィギャラブル パーティションを含むデザインでは、各リコンフィギャラブル モジュールを並列でコンパイルすると、全体的なコンパイル時間がさらに削減されます。