モデルのインプリメンテーションを制御します。
説明
Vitis Model Composer Hub ブロックは、Vitis Model Composer の動作を制御します。
生成された出力のターゲット デザイン フロー、出力のディレクトリ パス、および必要なデバイスとデザイン クロック周波数は、次のページで指定できます。
- Target ページ: デバイスまたはボードを選択します。
- AI Engine ページ: AI エンジン コード生成フローを制御するオプションを指定します。
- HDL ページ: HDL コード生成フローを制御するオプションを指定します。これらのオプションは、レガシ System Generator トークと同じです。
- HLS ページ: HLS コード生成フローを制御するオプションを指定します。
- Hardware Flow ページ: ハードウェアでデザインを検証するのに必要なオプションを指定します。
- Generate ページ: [Subsystem] を選択して [Code Drectory] を指定することにより、出力フローを選択します。
ライブラリ
AI エンジン/Tools、HLS/Tools、Utilities/Code Generation
データ型サポート
Vitis Model Composer Hub ブロックには、データ型は関係しません。
パラメーター
図 1.
Vitis Model Composer Hub ブロックのパラメーター
Vitis Model Composer Hub ブロックの各ページで設定可能なオプションは、次のとおりです。
- [Target]
-
Select Hardware
- 参照ボタン (…) をクリックして Device Chooser ダイアログ ボックスを開き、デザインでターゲットとするパーツ、ボード、またはプラットフォーム選択します。Vitis Model Composer は、Vivado のデータベースからボードおよびデバイス データを取得します。
- [AI Engine]
-
Target Subsystem
- AI エンジン コード生成のターゲットとするサブシステムの名前をドロップダウン リストから選択します。
- [AI Engine] → [Settings]
-
Compiler options
- コンパイラ デバッグ オプション、実行ターゲット オプションなどを制御します。
- [HDL]
-
Target Subsystem
- HDL コード生成のターゲットとするサブシステムの名前をドロップダウン リストから選択します。
- [HDL] → [Settings]
-
Compilation Type
- コード生成を実行したときに生成するコンパイル結果のタイプを指定します。デフォルト コンパイル タイプは [IP Catalog]
です。次のコンパイル タイプを選択すると、[Settings] ボタンが有効になります。
- IP Catalog compilation: [Settings] ボタンをクリックすると、ダイアログ ボックスが開き、IP カタログに配置される IP の説明を追加できます。
- Hardware Co-Simulation (JTAG) compilation: [Settings] ボタンをクリックすると、ダイアログ ボックスが開き、JTAG ハードウェア協調シミュレーションを高速化するためにバースト データ転送を使用できます。
- コード生成を実行したときに生成するコンパイル結果のタイプを指定します。デフォルト コンパイル タイプは [IP Catalog]
です。
- [HDL Clocking]
-
FPGA clock period (ns)
- システム クロックの周期を ns で指定します。値は整数である必要はありません。ここで指定した周期は、制約ファイルでグローバル PERIOD 制約として設定され、ザイリンクス インプリメンテーション ツールに渡されます。マルチサイクル パスは、この値の整数倍に制約されます。
- [HDL] → [Analysis]
-
Block icon display
- コンパイルが完了した後でモデルの各ブロック
アイコンに表示されるようにする情報のタイプを指定します。次に、さまざまな表示オプションについて説明します。
-
Default
- モデルの各ブロックにデフォルト ブロック アイコン情報が表示されます。ブロックのデフォルト
アイコンは、
xbsIndex
ライブラリからのものです。
図 2. デフォルト ブロック アイコン - モデルの各ブロックにデフォルト ブロック アイコン情報が表示されます。ブロックのデフォルト
アイコンは、
-
Normalized Sample
Periods
- 各ブロックにすべての入力および出力ポートに対する正規化サンプル周期が表示されます。たとえば、Simulink システム周期が 4 に設定されており、ブロック ポートに伝搬されるサンプル周期が 4 の場合、このブロック ポートに表示される正規化周期は 1 になります。また、ブロック ポートに伝搬されるサンプル周期が 8 の場合、表示される正規化周期は 2 になります。このように、値が大きいほどレートが低速になります。
図 3. 正規化サンプル周期アイコン
-
Sample frequencies
(MHz)
- 各ブロックのサンプリング周波数を表示します。
-
Pipeline stages
- 各ブロックの入力ポートからのレイテンシ情報を表示します。特定の上位ブロック (FFT、RS エンコーダー/デコーダー、Viterbi デコーダーなど) では、表示されるパイプライン段が正しくないことがあります。このような場合は、表示されるパイプライン情報を使用して、ブロックに入力から出力への組み合わせパスがあるかどうかを判断できます。たとえば、下の図の Up Sample ブロックには、入力から出力ポートへの組み合わせパスがあります。
図 4. 周波数の例
-
HDL port names
- モデルの各ブロックに各ポートの HDL ポート名が表示されます。
-
Input data types
- モデルの各ブロックに各入力ポートのデータ型が表示されます。
-
Output data types
- モデルの各ブロックに各出力ポートのデータ型が表示されます。
-
Default
- コンパイルが完了した後でモデルの各ブロック
アイコンに表示されるようにする情報のタイプを指定します。次に、さまざまな表示オプションについて説明します。
- [HLS]
-
Target Subsystem
- HLS コード生成のターゲットとするサブシステムの名前をドロップダウン リストから選択します。
- [HLS] → [Settings]
-
Target
[Target] の設定は、次のとおりです。
表 1. HLS のターゲット設定 設定 説明 [IP Catalog] IP Catalog を選択すると、デザインを Vivado IP カタログにエクスポートできます。C/C++ コードの生成後、Vitis 高位合成 (HLS) が起動して C コードが合成され、IP として Vivado IP カタログにエクスポート可能なプロジェクトが作成されます。 [System Generator] System Generator を選択すると、デザインを HDL ブロックセットにエクスポートできます。C/C++ コードの生成後、Vitis HLS (高位合成) が起動して C コードが合成され、HDL モデルで Vitis HLS ブロックとして使用可能な RTL ソリューションが作成されます。 [HLS C++ Code] HLS C++ code を選択すると、デザイン モデルが C++ コードにコンパイルされます。 - [Hardware Flow]
- ハードウェア イメージを生成するには、Target でプラットフォームを指定し、AI
Engine/Settings で Create Testbench をオンにします。
- HW System Type: 検証フロー (Baremetal または Linux hardware) を選択します。
- Target: ハードウェア検証フローのターゲットを指定します。
- [Generate]
- AI エンジン、HDL、または HLS ブロックセットからのブロックを含む Subsystem を選択し、対応する Code Directory を指定します。Code Directory は、完全なディレクトリ パスを入力するか、Browse ボタンをクリックしてパスを指定します。