Xilinx Zynq-7020 based PYNQ-Z1 Arm + FPGA Board is Meant to be Programmed with Python

Xilinx Zynq-7000 series is a family of SoC based on Arm Cortex A9 processor coupled with FPGA fabric, and since the introduction in 2012, we’ve seen may board based on the entry-level Zynq-7010 or Zynq-7020 SoCs.

Digilent PYNQ-Z1 is another Xilinx Zynq board from the company, but it does not differentiate itself by its hardware features, and instead the software part is the most interesting. The board is designed to be used with PYNQ, a new open-source framework that enables embedded programmers to exploit the capabilities of Xilinx Zynq SoCs without having to design programmable logic circuits, relying instead on Python programming.

Click to Enlarge

Digilent PYNQ-Z1 hardware specifications:

  • SoC – Xilinx Zynq-7020 (XC7Z020-1CLG400C) dual core Arm Cortex-A9 processor with FPGA with 1.3 M reconfigurable gates
  • System Memory – 512MB DDR3
  • Storage – Micro SD card slot, 16MB QSPI Flash with factory programmed globally unique identifier (48-bit EUI-48/64 compatible).
  • Video – HDMI In and HDMI Out
  • Audio – Mic in, Line Out
  • Networking – Gigabit Ethernet
  • USB – 1x USB Host connected to Arm processor, 1x micro USB port for programming/power
  • Expansion headers
    • 1x Arduino Header with 49 GPIOs
    • 2x Pmod with 16 GPIOs
  • Misc – 6x user LEDs, 4x push buttons, 2x switches
  • Power Supply – 5V via micro USB port, or 7V to 15V power source
  • Dimensions – 122 x 87mm
FPGA Python Development Board
Click to Enlarge

The board is exclusively designed to work with PYNQ project from Xilinx, and using Python language and libraries, designers can create high performance embedded applications with parallel hardware execution, high frame-rate video processing, hardware accelerated algorithms, real-time signal processing, high bandwidth IO, and low latency control. All resource including a getting started guide, PYNQ-Z1 firmware image, link to source code on Github, and complete reference documentation can be found on pynq.io website.

PYNQ-Z1 FPGA Python board can be purchased on Digilent for $199, but there’s also an academic price as the board is sold for 128.02 Euros on Trenz. If you’re not going to use the PYNQ framework, Digilent recommends Arty Z7-20 board instead.

Share this:

Support CNX Software! Donate via cryptocurrencies or become a Patron on Patreon

ROCK Pi 4C Plus
Notify of
The comment form collects your name, email and content to allow us keep track of the comments placed on the website. Please read and accept our website Terms and Privacy Policy to post a comment.
Frank Septic
Frank Septic
4 years ago

It required considerable digging to discover which major version of Python is used by PYNQ, because there are significant differences between Python 2 (usually Python 2.7) and Python 3 (probably 3.5 being most prominent at the moment, but moving on to 3.6).

The answer is buried in the FAQ on pynq.readthedocs.io


The PYNQ v2.0 release, is based on Python 3.6

No attempts have been made to ensure backward compatibility with Python 2.7.


Therefore users of PNYQ must be prepared to work with Python 3.6, and some may have to overcome their inhibitions about Python 3.

4 years ago

Is there anything unique about the board that makes it python programmable? For example, Bunnie targets an Artix-7 in this post on Vivado vs LiteX (Migen/MiSoC)

Xilinx FPGA Keynote at Linaro Connect Hong Kong 2018

4 years ago

Does anybody really wan’t to program a FPGA with python?

Patrick Poirier
Patrick Poirier
4 years ago

Does a nice coat of pink can cover the gigantic void of non existants IP ?
Looking at the package, its the usual suspects; MicroBlaze and a few pipelines, (yeah you can change HDMI colorspace) , no real practical use, but you can certainly blink a led in pink

Weller PCB manufacturer