overlay由两个主要部分组成; PL设计(比特流)和项目框图Tcl文件(the PL design (bitstream) and the project block diagram Tcl file.)。 overlay设计是硬件工程师的专业任务。 本节假定读者具有数字设计,构建Zynq系统和Vivado设计工具的一些经验。
PL Design
Xilinx®Vivado软件用于创建Zynq设计。 将生成可用于对Zynq PL进行编程的比特流或二进制文件(.bit文件)。
Vivado的免费WebPack版本可用于构建overlay。
https://www.xilinx.com/products/design-tools/vivado/vivado-webpack.html
IP in an overlay that can be controlled by PYNQ will be memory mapped, connected to GPIO. IP may also have a master connection to the PL.
鼓励硬件设计人员利用PYNQ overlay来编程IP。 创建IP后,PL设计的执行方式与任何其他Zynq设计相同。overlay中的 IP可以由PYNQ控制,将被存储器映射,连接到GPIO。 IP也可以与PL建立主连接。 PYNQ提供Python库以及与PL设计接口,并可用于创建自己的驱动程序。 overlay的Python API将在下一节中介绍。
Overlay Tcl file
PYNQ使用Vivado IP Integrator模块设计的Tcl来自动识别Zynq系统配置,IP包括版本,中断,复位和其他控制信号。根据这些信息,可以从PYNQ自动修改系统配置的某些部分,可以自动分配驱动程序