ハードウェア コンポーネントの作成 - 2019.2 Japanese

Vitis 統合ソフトウェア プラットフォームの資料: アプリケーション アクセラレーション開発 (UG1393)

Document ID
UG1393
Release Date
2020-02-28
Version
2019.2 Japanese

まず、ターミナル ウィンドウで実行されるターゲット プラットフォームのタイプ (bash、csh) に合わせて Vitis 設定スクリプト (*.sh*.csh) を読み込んで、Vitis 統合設計環境 (IDE) を設定するところから開始します。Vivado Design SuiteVitis IDE をインストールすると含まれます。Vivado だけをインストールした場合は、次に示すように Vitis を使用してハードウェア コンポーネントを作成することはできますが、Vitis ターゲット プラットフォームを作成するには Vitis IDE が必要です。

source <Vitis_Install_Directory>/settings64.sh or
       <Vivado_Install_Directory>/settings64.sh

Vitis GUI には、ハードウェア開発プロジェクトを作成するためのさまざまなダイアログ ボックスが含まれます。プロジェクトを作成する Vitis ダイアログ ボックスに従って指定していき、Vitis IP インテグレーター デザインを Vitis ターゲット プラットフォームのベース ハードウェアとして作成します。アクセラレーション カーネルをサポートするデザインのハードウェア要件については、ハードウェア コンポーネント要件 を参照してください。

  1. <platform_name>_pkg のような命名規則に従って名前を指定して作業ディレクトリを作成し、Vivado サブディレクトリを生成して、Vivado Design Suite を起動します。
    1. mkdir zcu102_min_pkg
    2. cd zcu102_min_pkg
    3. mkdir vivado
    4. cd vivado
    5. vivado
  2. Vivado メニューを使用するか、ウェルカム ページでクイック スタート リンクをクリックして新規プロジェクトを作成します。
    1. File > Project > New をクリックします。
    2. Next をクリックします。
  3. [Project Name] ページで次を設定します。
    1. [Project Name] を指定します。この例の場合、デフォルトの project_1 という名前に設定されています。
    2. デフォルトのプロジェクト ディレクトリを維持します。必要であれば、省略記号ボタンをクリックして別のディレクトリを指定します。
    3. [Create project sub-directory] をデフォルトのオンのままにします。
    4. Next をクリックします。
  4. [Project Type] ページで次を設定します。
    1. RTL Project はデフォルトのままオンにします。
    2. Do not specify sources at this time をオンにします。
    3. Next をクリックします。
  5. [Default Part] ページで ZCU102 ボードを選択します。
    1. [Parts | Boards] で Boards をクリックします。
    2. [Filter Search] テキスト ボックスに zcu102 と入力します。
    3. ボード リストに表示される ZCU102 ボードを選択します。
    4. Next をクリックします。
  6. [New Project Summary] ページで次を実行します。
    1. 設定を確認し、必要であれば Back をクリックして設定し直します。
    2. Finish をクリックし、Vivado プロジェクトを作成します。

IP インテグレーターを使用してブロック デザインを作成し、ザイリンクス シェル アーカイブ (XSA) を生成します。XSA には、Vitis ターゲット プラットフォームを構築するのに必要なハードウェア仕様とメタデータが含まれます。IP インテグレーターを使用してブロック デザインを作成するところから開始します。

  1. Vivado の Flow Navigator でIP Integrator > Create Block Design をクリックします。
  2. [Create Block Design] ダイアログ ボックスでは、次を設定します。
    1. [Design name] はデフォルトの design_1 のままにします。
    2. [Directory of] はデフォルトの <Local to Project> のままにします。
    3. [Specify source set] を [Design Sources] のままにします。
    4. OK をクリックします。
  3. ブロック図で次を実行します。
    1. + ボタンをクリックして新しい IP のインスタンスを追加します。必要な IP ブロックを見つけるには、検索ダイアログ ボックスを使用できます。
    2. zynq を検索します。
    3. IP の検索結果から Zynq UltraScale+ MPSoC をダブルクリックします。

Zynq UltraScale+ MPSoC ブロックが IP インテグレーターに追加され、カスタマイズできるようになります。選択されているデフォルトは ZCU102 ボードなので、この IP ブロックをカスタマイズするためのボード プリセットが既にあります。

  1. Run Block Automation リンクをクリックしてボード プリセットを適用します。
  2. [Run Block Automation] ダイアログ ボックスで次がオンになっていることを確認します。
    • [All Automation]
    • [zynq_ultra_ps_e_0]
    • [Apply Board Presets]
  3. OK をクリックします。

次は、ベースのハードウェア デザインを 2019.2 より前の SDK ソフトウェア フローと同様に使用するかどうかを決めて、ハードウェア アクセラレータ (カーネル) を接続してデザインの機能を拡張します。SDK ツールの HDF のように使用される XSA を生成する方法については、エンベデッド ソフトウェア開発用の XSA を参照してください。アクセラレーション カーネルの追加をサポートする XSA を作成する方法は、アプリケーション アクセラレーション開発フローの XSA を参照してください。