HDL Coder IP コア用のカスタム Linux イメージのビルド
この例では、MathWorks® ビルド システムを使用して Digilent™ Zybo™ Z7-10 Zynq ボード用のカスタム Zynq® Linux® イメージをビルドする方法を示します。この例は、ビルド環境を設定して Linux イメージをビルドするための Digilent Zybo Z7-10 Zynq ボード向けの方法を示しています。同じプロセスを使用して、Digilent Zybo Z7-20 Zynq ボードや他の Zynq プラットフォーム用の Linux イメージも作成できます。この Linux イメージを SD カードに読み込み、SD カードからハードウェア ボードを起動できます。
MathWorks ビルド システムは、クロスコンパイルを介してカスタム Linux イメージを生成するツールです。MathWorks ビルド システムは前処理および後処理スクリプトに buildroot をラップし、さまざまなプラットフォームのシステム イメージの生成を自動化します。ビルド システムは、ターゲット ボード、プラットフォーム、またはイメージの記述ファイルを入力として取り、ブートローダー、カーネル、ユーザー スペースを含む完全なシステム イメージを出力するスクリプトを使用します。
要件
Debian®-9 Linux オペレーティング システム。
Xilinx® Vivado® Design Suite。HDL の言語サポートおよびサポートされるサードパーティ製ツールとハードウェアにリストされているバージョンを使用してください。
MathWorks ビルド システム。
Digilent Zybo Z7-10 Zynq 開発ボードとアクセサリ キット。
Debian-9 Linux オペレーティング システムのインストール
この例を実行するには、Debian-9 Linux オペレーティング システムが必要です。Debian-9 Linux OS が既にインストールされている場合、この手順はスキップしてください。
Debian-9 OS をインストールするには以下を行います。
Debian-9 CD イメージ ISO ファイルをダウンロードします。Debian の Web サイトからの CD イメージのダウンロードについては、Debian の Web サイトで Debian-9 のダウンロードに関する説明を参照してください。
debian-9.13.0-amd64-netinst.isoファイルをダウンロードします。ISO ファイルを使用して Debian-9 をインストールします。インストール時、[Configure the package manager] のステップで [Debian archive mirror country] オプションを
[enter information manually]に設定してアーカイブ ミラーを手動で入力します。[Continue] をクリックします。次に、[Debian archive mirror hostname] オプションを
archive.debian.org、[Debian archive mirror directory] オプションを/debian/に設定します。[Continue] をクリックしてインストール プロセスを完了します。Debian-9 のインストールを完了します。"security.debian.org could not be accessed as there are no security updates for debian Lenny" というエラー メッセージは無視してください。

Xilinx Vivado を使用したハンドオフ ファイルの生成
ビルド プロセスを開始する前に、Xilinx Vivado と AMD Vitis® のツールを使用してハンドオフ ファイルを生成する必要があります。
ハンドオフ ファイルを生成するには、Xilinx Vivado プロジェクトを使用してリファレンス設計を作成します。リファレンス設計の作成については、AMD ワークフロー用のカスタムのボードとリファレンス設計の定義の "Xilinx Vivado を使用したカスタム リファレンス設計の作成とエクスポート" セクションの手順に従ってください。リファレンス設計の作成時、メモリやペリフェラルのアドレス マッピングなど、Zynq 処理システム IP の設定は Xilinx Vivado プロジェクトからエクスポートされます。
リファレンス設計を作成したら、Vivado ブロック設計からハードウェア プラットフォームをエクスポートし、Xilinx Source Archive (XSA) ファイルからヘッダー ファイルを抽出します。
Vivado ツールで、Vivado のブロック設計を開きます。[File] タブで、[Export]、[Export Hardware] を選択します。[Export Hardware Platform] ウィンドウが開きます。
[Export Hardware Platform] ウィンドウで、XSA ファイルの名前とエクスポート パスを入力します。[Next] をクリックします。
Xilinx Vivado ツールにより、エクスポート パスに <XSA ファイル名>
.xsaが取り込まれます。XSA ファイルからプロセッサの構成済みヘッダー ファイルを抽出します。ヘッダー ファイルを抽出するには、MATLAB® でエクスポートされた XSA ファイルのパスに移動し、
unzipコマンドを入力して XSA ファイルの名前を指定します。以下に例を示します。
unzip design_led_wrapper.xsa

MathWorks ビルド システムを使用した Zynq Linux イメージのビルド
GitHub® の MathWorks Buildroot リポジトリは、MathWorks ツール向けの Xilinx Zynq プラットフォームと Altera® SoC の SD カード イメージを作成する buildroot フレームワークをホストします。ビルド プロセスでは、必要なツールを設定し、ハンドオフ ファイルを buildroot ディレクトリに読み込み、スクリプトを使用してイメージをビルドし、SD カードにイメージを読み込みます。
MathWorks ビルド システムを使用して Zynq Linux イメージをビルドするには以下を行います。
クロス コンパイラを設定する
クロス コンパイラを設定するには、Linux マシンに Linaro ARM ツールチェーンをインストールします。Linaro リポジトリから Linaro ツールチェーンの tarball ファイルをダウンロードするには、Linaro のバイナリを参照して gcc-linaro-6.3.1-2017.02-x86_64_arm-linux-gnueabihf.tar.xz ファイルをダウンロードしてください。tarball ファイルを解凍し、Linux マシン上の /opt/linaro/aarch32-6.3.1-2017.02 フォルダーに内容をコピーします。
GitHub から MathWorks Buildroot をクローンする
MathWorks Buildroot から buildroot GitHub リポジトリをクローンします。
>> git clone https://github.com/MathWorks/buildroot.git
git ブランチをチェックアウトします。
>> git checkout xilinx-next
生成されたハンドオフ ファイルを buildroot ディレクトリに転送する
生成された ps7_init_gpl.c, ps7_init_gpl.h ファイルを Debian-9 Linux マシン上の zyboz710 buildroot ディレクトリにある buildroot/board/MathWorks/boards/zynq/zyboz710/handoff フォルダーにコピーします。
ビルド スクリプトを実行する
次の Python® ビルド スクリプト コマンドを使用して、特定のボードに対する Linux SD カード イメージをビルドします。
>> ./build.py -c board/MathWorks/zynq/boards/zyboz710/catalog.xml
gcc、make、g++ などの追加パッケージが必要な場合は、sudo コマンドを使用して必ずインストールしてください。
ツールチェーンの別のパスを指定するには、次のビルド コマンドを使用します。
>> ./build.py -p zynq -b zyboz710 --brconfig BR2_TOOLCHAIN_EXTERNAL_PATH='/opt/linaro/aarch32-6.3.1-2017.02'
Linux イメージがビルドされると、生成されたイメージが <board_name>_sdcard_hdlcoder_<build_date>.zip という名前の ZIP ファイルとして /buildroot/output/<board_name>_linux_linaro/images フォルダーに格納されます。イメージ ファイルの内容を表示するには、<board_name>_sdcard_hdlcoder_<build_date>.zip ファイルを解凍します。
Linux イメージを SD カードに読み込む
ZIP フォルダーの内容を SD カードにコピーし、SD カードを Zybo Z7-10 ボードに挿入します。ボードは、JP5 ジャンパー スイッチを使用して必ず SD ブート モードにしてください。ボードの接続の詳細については、AMD ワークフロー用のカスタムのボードとリファレンス設計の定義を参照してください。
ボードをオンにすると、正常に起動してログインしたことが PuTTY™ ソフトウェアの外部コンソールに表示されます。これにより、ハードウェア ボードに Linux イメージが読み込まれたことを確認できます。

参考
HDL の言語サポートおよびサポートされるサードパーティ製ツールとハードウェア