PYNQ-Z2 is a FPGA development board, intensively designed to support PYNQ, an open-source framework that enables embedded programmers to explore the possibilities of Xilinx ZYNQ SoCs without having to design programming logic circuits. Benefiting from programmable logic and advanced ARM processor in ZYNQ, designers can build up more powerful embedded systems with it.


Join us for a hands-on workshop with    and    who will share their journey using the PYNQ-Z2 board.  Over the course of three sessions, you'll learn everything you need to know to get started and build a simple project.  No experience required.




Python is one of the most popular languages in the world, being used for embedded, host and cloud application development thanks to its ease of use. Programmable Logic provides the ability to implement very high performance algorithms, traditionally at the cost of complexity of design.


PYNQ fuses the productivity and ease of use of Python with the acceleration provided by Programmable Logic, without the need to be an digital design engineer. This series of three workshops is going to provide attendees with a comprehensive training on PYNQ -- beginning with an introduction to key concepts, techniques before advancing to creating custom applications.


What You'll Need to Participate:


This webinar is free for all to attend.  However, to follow along and participate you will need the following Hardware:



Buy KitBuy Kit


For the Scroll Wheel Project:



Buy KitBuy Kit


You'll need the following software:



Optional examples that can be installed on the PYNQ board:

Not needed, but excellent



Schema for the rotary encoder, can be made on the breadboard:



Session 2:


During this session we'll give a short presentation on the most common words and acronyms frequently found in the FPGA related literature.  Just to make things more clear.  We'll discuss FPGA frameworks and the different kinds of approaches available for FPGA design and programming.  Attention will be focused on the graphical design of the circuit logic, the synthesis process and how the “compiler” creates the final binary we can upload to the FPGA IC. After the introduction, examples and illustrations are centered on the Xilinx board.  We'll go over preparing and Installing the Tools: Vivado 2020.1 in a how-to for setting the computer and connecting the Xilinx board ready for programming/ FPGA design: graphical representation Using some easy examples, we see how to design a circuit whose logic should be then converted to IP. You'll get a brief introduction to the VHDL language. Using the same examples, we complete the cycle converting to the VHDL language and how to synthesize for FPGA.  This will be a clarification note on what we can expect from FPGA development and programming and what we can’t. Focusing the attention on the programmed logic and gates arrays.


What you'll learn by attending:


  • A Glossary Explained: FPGA Essentials
  • FPGA Development Frameworks
  • Preparing and Installing the Tools: Vivado 2020.1
  • VHDL language
  • Do and Don’t With FPGA




Dates and Register for Free:


Workshop: Dates and Missions:

Session 1 – From Board Architecture to Python and Jupyter Notebook


What You'll Learn:

  • Introduction to FPGA and Xilinx Pynq-Z2 Architecture
  • Xilinx Pynq-Z2 Board Components
  • A Linux Machine to Control the FPGA Logic
  • Bash shell and Python On-board

Tuesday, 28th of September 2021


Session 2 – FPGA Design and Programming


What You'll Learn:


  • A Glossary Explained: FPGA Essentials
  • FPGA Development Frameworks
  • Preparing and Installing the Tools: Vivado 2020.1
  • VHDL language
  • Do and Don’t With FPGA

Wednesday, 13th of October 2021


  • Register Above for Free!

Session 3 - FPGA Design Examples in Practice


What You'll Learn:


  • TBD

Thursday 28th of October 2021





Previous PYNQ Workshops / Webinars:



PYNQ Projects:



This workshop is based on the following PYNQ-Z2 Experiments:



Pynq - Zync - Vivado series
Add Pynq-Z2 board to Vivado
Learning Xilinx Zynq: port a Spartan 6 PWM example to Pynq
Learning Xilinx Zynq: use AXI with a VHDL example in Pynq
VHDL PWM generator with dead time: the design
Learning Xilinx Zynq: use AXI and MMIO with a VHDL example in Pynq
Learning Xilinx Zynq: port Rotary Decoder from Spartan 6 to Vivado and PYNQ
Learning Xilinx Zynq: FPGA based PWM generator with scroll wheel control
Learning Xilinx Zynq: use RAM design for Altera Cyclone on Vivado and PYNQ
Learning Xilinx Zynq: a Quadrature Oscillator - 2 implementations
Learning Xilinx Zynq: a Quadrature Oscillator - variable frequency
Learning Xilinx Zynq: Hardware Accelerated Software
Automate Repeatable Steps in Vivado
Learning Xilinx Zynq: Try to make my own Accelerated OpenCV Function - 1: Vitis HLS
Learning Xilinx Zynq: Try to make my own Accelerated OpenCV Function - 2: Vivado Block Design
Learning Xilinx Zynq: Logic Gates in Vivado
Learning Xilinx Zynq: Interrupt ARM from FPGA fabric
Learning Xilinx Zynq: reuse and combine components to build a multiplexer



The Presenter:

image image
  , element14 Community Member   , element14 Community Member

Born in Turin, Italy. I have always had a special interest in electronics and communication. I had the chance to start working in the era of the first Personal Computers, just few years before their massive introduction, and very soon I started acquiring knowledge about hardware and software. I developed researches, patented hardware and software-integrated technologies, wrote technical articles on several technical papers in Italy and more. During the last decade I developed software and firmware for embedded devices, new products for Android, Mac and Linux. Before the Android massive diffusion, I had been developing software as Nokia developer focusing my experience on the Qt development platforms on desktops and Symbian devices. My approach to Electronics and circuit projects involving hardware and circuit creation is strongly oriented to microcontrollers, from small devices to the computer-like micro as the well-known ARM processors family. I definitely avoid two things: redundance (i.e. making projects more complex than can be done) and excess of complexity (i.e. a great solution should be simple and cheap, otherwise it is not a great solution). For this reasons I frequently rethink projects or create new ones in order to make products and prototypes market-affordable and as cheap as possible without compromising quality. Five years ago I moved to Ibiza (Balearic Islands, Spain) where I currently live and work.

Jan's professional skill set focuses on process integration, development methodologies, and application life cycle, He has 20+ years of experience with ERP, CRM and E-Commerce systems, as delivery manager, technology lead, integration architect, project lead, analyst and developer.


Jan has been active in the Chemicals, Public Transport, and Government sector, in Belgium, the United Kingdom, Germany, France, South-Africa, Greece, Poland, Spain and Russia. Jan is Development & Integration manager for PepsiCo. Jan is moderator at


Industrial and automotive electronics, microcontroller designs for functional safety, and maintainable software management.


30 years active in chemicals, pharmacy, rail, automotive and Food& Beverages