序言
由于 PYNQ 官方和一些开发者只提供了部分开发板的 PYNQ 镜像,但是许多第三方生产的开发板并没有提供对应的 PYNQ 镜像,或者所提供的镜像版本过于古老,所以本文章出于次目的介绍了如何为第三方 ZYNQ 开发板编译对应的 PYNQ 镜像。
PYNQ 官网提供的一些开发板的镜像文件:
Board | SD card image | Previous versions | Documentation | Board webpage |
---|---|---|---|---|
PYNQ-Z2 | v3.0.1 | v2.7 v2.6 | PYNQ setup guide | TUL Pynq-Z2 |
PYNQ-Z1 | v3.0.1 | v2.7 v2.6 | PYNQ setup guide | Digilent Pynq-Z1 |
PYNQ-ZU | v3.0.1 | v2.7 v2.6 | GitHub project page | TUL PYNQ-ZU |
Kria KV260* | Ubuntu 22.04 | Kria PYNQ setup | Xilinx Kria KV260 | |
Kria KR260* | Ubuntu 22.04 | Kria PYNQ setup | Xilinx Kria KR260 | |
ZCU104 | v3.0.1 | v2.7 v2.6 | PYNQ setup guide | Xilinx ZCU104 |
RFSoC 2x2 | v3.0.1 | v2.7 v2.6 | RFSoC-PYNQ | XUP RFSoC 2x2 |
RFSoC 4x2 | v3.0.1 | v2.7 | RFSoC-PYNQ | XUP RFSoC 4x2 |
ZCU111 | v3.0.1 | v2.7 v2.6 | RFSoC-PYNQ | Xilinx ZCU111 |
ZCU208 | v3.0.1 | RFSoC-PYNQ | Xilinx ZCU208 | |
Ultra96V2 | v3.0.1 | v2.7 v2.6 | Avnet PYNQ webpage | Avnet Ultra96V2 |
Ultra96 (legacy) | v3.0.1 | v2.7 v2.6 | See Ultra96V2 | See Ultra96V2 |
ZUBoard 1CG | v3.0.1 | GitHub project page | Avnet ZUBoard 1CG | |
TySOM-3-ZU7EV | v3.0.1 | v2.7 | GitHub project page | Aldec TySOM-3-ZU7EV |
TySOM-3A-ZU19EG | v3.0.1 | v2.7 | GitHub project page | Aldec TySOM-3A-ZU19EG |
准备工作:软件安装及环境配置
PYNQ 镜像的编译工作需要在 Ubuntu 系统中完成,软件安装及环境编译过程中会遇到许多问题,为了避免出现重大问题导致系统损坏,所以本文建议在虚拟机中安装 Ubuntu 系统来搭建编译 PYNQ 镜像所需的环境,需要准备的软件有VMware Workstation Pro:虚拟机 VMware Workstation Pro、Ubuntu系统镜像、VMware Workstation Pro VMware Workstation Pro、Vitis (包含 Vivado)、Petalinux 以及 PYNQ 官方仓库。
Xilinx 官方手册中描述了安装 Vitis 软件的系统要求,并且 PYNQ 官方文档中的“PYNQ SD Card image”也明确描述了 PYNQ 版本对应 Ubuntu 系统版本和所需的 Vitis 和 Petalinux 的版本要求,所以本文采用的 Ubuntu 20.04 系统和 PYNQ v3.0.1(PYNQ 官方文档更新不及时,所以最新版本还停留在 v3.0,但是 PYNQ 官网上发布的最新镜像版本都是v3.0.1,所以本文也采用该版本)