最近需要学习PYNQ方面的知识,由于手头只有ZCU102开发板(HW-Z1-ZCU102 REVISION 1.1),需要自己制作镜像,所以记录一下制作过程。
参考:
PYNQ SD Card image — Python productivity for Zynq (Pynq)
编译PYNQ 在ZCU102上的镜像 - Tagore's Studio
Xilinx ZCU102向けPYNQビルドと確認(v2.6対応) - Qiita
1.准备工作
根据PYNQ的网站上下载对应工具及系统版本。
Petalinux2020.2支持的系统:
这里要用的是PYNQ2.7版本,对应Xilinx工具版本2020.2,及ubuntu18.04.4。
下载focal.aarch64.2.7.0_2021_11_17.tar.gz (PYNQ - Python productivity for Zynq - Board)
下载xilinx-zcu102-v2020.2-final.bsp (Downloads)
2.制作启动镜像
# 所有操作需要全程链接外网!!! # 下载pynq源代码 $ git clone --recursive https://github.com/Xilinx/PYNQ.git $ cd PYNQ $ git checkout image_v2.7 # 检查依赖环境,qemu,crosstool-ng $ cd ./sdbuild/ $ ./scripts/setup_host.sh # 将ZCU104的文件复制为ZCU102的 $ cd .. $ cp -rf ./boards/ZCU104 ./boards/ZCU102 $ rm -rf ./boards/ZCU102/petalinux_bsp/ $ mv ./boards/ZCU102/ZCU104.spec ./boards/ZCU102/ZCU102.spec # 修改ZCU102.spec的内容 $ sed -i -e "s/104/102/g" ./boards/ZCU102/ZCU102.spec $ vim ./boards/ZCU102/ZCU102.spec > BSP_ZCU102 := xilinx-zcu102-v2020.2-final.bsp > STAGE4_PACKAGES_ZCU102 := ethernet # 拷贝bsp和文件系统镜像 $ cp ~/xilinx-zcu102-v2020.2-final.bsp ./boards/ZCU102/ $ mkdir ./sdbuild/prebuilt $ cp ~/focal.aarch64.2.7.0_2021_11_17.tar.gz ./sdbuild/prebuilt # 根据自己安装路径配置 PATH $ PATH=/opt/qemu/bin:/opt/crosstool-ng/bin:$PATH $ source /tools/Xilinx/Vitis/2020.2/settings64.sh $ source /tools/Xilinx/Vivado/2020.2/settings64.sh $ source /tools/Xilinx/petalinux/2020.2/settings.sh # 编译 $ cd ./sdbuild/ $ make boot_files BOARDS=ZCU102 $ make images BOARDS=ZCU102 PREBUILT=./prebuilt/focal.aarch64.2.7.0_2021_11_17.tar.gz # 生成的镜像文件在sdbuild/output/里 $ ls ./output/
至此PYNQ的启动镜像就制作好啦,之后写入sd卡,将ZCU102设置为从SD卡启动即可使用。
3.完整镜像
以下是我根据上面的步骤制作出来的镜像。如果不想自己制作,可以直接下载我制作好的镜像哦。
ZCU102PYNQv2.7镜像-Linux文档类资源-CSDN下载
硬件版本:HW-Z1-ZCU102 REVISION 1.1
PYNQ版本:v2.7
操作系统版本:Ubuntu 18.04.4
Xilinx工具版本:2020.2
板级支持包版本:xilinx-zcu102-v2020.2-final.bsp
rootfs版本:focal.aarch64.2.7.0_2021_11_17.tar.gz



