FPGA Series

FPGA Series: Complete Zynq Embedded System Design Practice

From architecture deep-dive to three capstone projects, covering the complete Zynq-7000 HW/SW co-design workflow. 29 hands-on articles in five progressive layers, with an open-source FPGA toolchain extension series.

Zynq FPGA 开发板与软硬件协同设计示意

One goal: build a real Zynq system on Pynq-Z2 (XC7Z020) from scratch — one that runs Linux, uses PL for hardware acceleration, and connects to networks and devices. Every step explains the "why" and documents the pitfalls. Five progressive layers: hardware foundations, Linux system, driver development, advanced features, and engineering practice. Toolchain fixed at Vivado / Vitis / PetaLinux 2023.2.

29 Zynq Articles
10 Open-Source Articles
5 Progressive Layers
3 Capstone Projects

Knowledge Map & Reading Order

PS → PL → Linux → Project
FPGA Zynq 嵌入式系统专题知识地图

Start with the Zynq path to build a complete PS/PL, AXI, Linux, driver, and project workflow. The open-source FPGA toolchain track is an independent extension you can enter afterward.

Track B · Linux System Layer

PetaLinux build pitfalls, FSBL-to-U-Boot boot chain, character device driver skeleton, and three paths (UIO / /dev/mem / kernel driver) to access PL from Linux. Four articles to get Linux running and controlling PL.

Track C · Driver Development

AXI DMA engine driver (measured 803 MB/s), VDMA + HDMI 1080p video pipeline, AXI-Stream high-speed ADC. Three articles to make data flow fast.

Recommended Reading Order

If this is your first time through the series, follow Track A → B → C → D → E in order — each layer builds on the previous one. If you are already familiar with Linux drivers, jump directly to Track C or D for topics of interest. Track F is a standalone open-source toolchain extension that does not require a Zynq board and can be started at any time.