FC2カウンター FPGAの部屋 UltraZed-EG Starter Kit でPetaLinux 2017.3 をブートする
fc2ブログ

FPGAやCPLDの話題やFPGA用のツールの話題などです。 マニアックです。 日記も書きます。

FPGAの部屋

FPGAの部屋の有用と思われるコンテンツのまとめサイトを作りました。Xilinx ISEの初心者の方には、FPGAリテラシーおよびチュートリアルのページをお勧めいたします。

UltraZed-EG Starter Kit でPetaLinux 2017.3 をブートする

PetaLinux 2017.3 をインストールする”の続き。

前回では PetaLinux をインストールできたので、今回はUltraZed-EG Starter Kit 用のPetaLinux をビルドして、UltraZed-EG Starter Kit でPetaLinux 2017.3 をブートしてみようと思う。

PetaLinux ツール資料 リファレンス ガイド UG1144 (v2017.2) 2017 年 6 月 29 日”を参考にして進めることにする。

最初にPetaLinux 作業環境のセットアップを行う。
PetaLinux ディレクトリにいるので、2017.3 ディレクトリに cd する。
cd 2017.3/
source settings.sh

でPetaLinux の作業環境をセットアップする。
echo $PETALINUX
でPETALIUX 環境変数の設定値を確認した。
petalinux_6_171129.png

example1 プロジェクトを生成してみよう。
まずは、PetaLinux のプロジェクトを置いておくディレクトリのpetal_work ディレクトリを生成する。
次に、その下に example1 ディレクトリを生成しよう。
mkdir petal_work
cd petal_work/
petalinux-create --type project --template zynqMP --name example1

petalinux_7_171129.png

次に、ハードウェア記述ファイル(.hdf) を生成するために、”UltraZed-EG Starter Kit のチュートリアル3”で作ったVivado 2017.3 プロジェクトがある。
petalinux_8_171129.png

そのプロジェクトで、ハードウェアをエクスポートした。
petalinux_9_171129.png

そして design_1_wrapper.hdf が生成された。
petalinux_10_171129.png

example1 ディレクトリに design_1_wrapper.hdf をコピー&ペーストした。
petalinux_11_171129.png

petalinux-config --get-hw-description=.
を実行して、ハードウェア・コンフィギュレーションのインポートを行った。
コンフィギュレーション画面が立ち上がった。
petalinux_12_171129.png

Subsystem AUTO Hardware Settings -> Advanced bootable images storage Settings に行った。

boot image settings -> image storage media (primary sd) にセットした。
petalinux_23_171130.png

u-boot env partition settings -> image storage media (primary sd) にセットした。
petalinux_24_171130.png

Kernel image settings -> image storage media (primary sd) にセットした。
petalinux_25_171130.png

jffs2 rootfs image settings -> image storage media (manual) にセットした。
petalinux_26_171130.png

dtb image settings -> image storage media (from boot image) にセットした。
ここを primary sd にセットしたかったが、primary sd にセットして、Micro SD カードに system.dtb を入れておいても、system.dtb が認識できないようで、system.dtb はどこにあるのか?と聞かれてしまう。
petalinux_27_171130.png

設定が終了したので、Exit した。
petalinux_13_171129.png

petalinux_14_171129.png
petalinux_15_171129.png

build と componets ディレクトリが増えた。

petalinux-build
コマンドでシステム・イメージのビルドを行った。
petalinux_16_171129.png

images/linux ディレクトリが生成された。
petalinux_17_171130.png

petalinux-package --image -c kernel --format uImage
uImage を生成した。
petalinux_18_171130.png

uImage が生成できた。
petalinux_19_171130.png

BOOT.BIN を生成する。
cd images/linux/
petalinux-package --boot --fsbl zynqmp_fsbl.elf --fpga design_1_wrapper.bit --pmufw pmufw.elf --u-boot --force

petalinux_20_171130.png

BOOT.BIN が生成された。
petalinux_21_171130.png

example1 ディレクトリに戻って、ビルド済みイメージのパッケージを行う。
cd ../..
petalinux-package --prebuilt --force --fpga images/linux/design_1_wrapper.bit

petalinux_22_171130.png

exampl1 ディレクトリの下に、pre-built ディレクトリが生成された。その下のディレクトリ構造をtree コマンドを使用して表示した。

FAT32 のMicro SD カードに、example1/images/linux ディレクトリのBOOT.BIN と image.ub を書いた。
petalinux_28_171201.png
  1. 2017年11月30日 05:43 |
  2. Linux
  3. | トラックバック:0
  4. | コメント:0

コメント

コメントの投稿


管理者にだけ表示を許可する

トラックバック URL
https://marsee101.blog.fc2.com/tb.php/3989-8a707bd7
この記事にトラックバックする(FC2ブログユーザー)