PYNQ-Z1: Python Productivity for Zynq-7000 ARM/FPGA SoC

PYNQ-Z1: Python Productivity for Zynq-7000 ARM/FPGA SoC

2179
Views
0 Comments

Python Productivity for Zynq – A Special Project from Xilinx University Program

The PYNQ-Z1 board is designed to be used with PYNQ, a new open-source framework that enables embedded programmers to exploit the capabilities of Xilinx Zynq All Programmable SoCs (APSoCs) without having to design programmable logic circuits. Instead the APSoC is programmed using Python, with the code developed and tested directly on the PYNQ-Z1. The programmable logic circuits are imported as hardware libraries and programmed through their APIs in essentially the same way that the software libraries are imported and programmed.

The PYNQ-Z1 board is the hardware platform for the PYNQ open-source framework. The software running on the ARM A9 CPUs includes:

  • A web server hosting the Jupyter Notebook design environment
  • The IPython kernel and packages
  • Linux
  • Base hardware library and API for the FPGA

For designers who want to extend the base system by contributing new hardware libraries, Xilinx Vivado WebPACK tools are available free of cost.

Features

  • ZYNQ XC7Z020-1CLG400C:
    • 650MHz dual-core Cortex-A9 processor
    • DDR3 memory controller with 8 DMA channels and 4 high performance AXI3 slave ports
    • High-bandwidth peripheral controllers: 1G Ethernet, USB 2.0, SDIO
    • Low-bandwidth peripheral controller: SPI, UART, CAN, I2C
    • Programmable from JTAG, Quad-SPI flash, and microSD card
    • Artix-7 family programmable logic
      • 13,300 logic slices, each with four 6-input LUTs and 8 flip-flops
      • 630 KB of fast block RAM
      • 4 clock management tiles, each with a phase-locked loop (PLL) and mixed-mode clock manager (MMCM)
      • 220 DSP slices
      • On-chip analog-to-digital converter (XADC)
  • Memory:
    • 512MB DDR3 with 16-bit bus @ 1050Mbps
    • 16MB Quad-SPI Flash with factory programmed globally unique identifier (48-bit EUI-48/64™ compatible).
    • MicroSD slot
  • Power:
    • Powered from USB or any 7V-15V source (see recommended products)
  • USB and Ethernet:
    • USB-JTAG Programming circuitry
    • USB-UART bridge
    • USB OTG PHY (supports host only)
    • Gigabit Ethernet PHY
  • Audio and Video:
    • Electret microphone with pulse density modulated (PDM) output
    • 3.5mm mono audio output jack, pulse-width modulated (PWM) format
    • HDMI sink port (input)
    • HDMI source port (output)
  • Switches, push-buttons, and LEDs:
    • 4 push-buttons
    • 2 slide switches
    • 4 LEDs
    • 2 RGB LEDs
  • Expansion Connectors:
    • Two standard Pmod ports
      • 16 Total FPGA I/O
    • Arduino/chipKIT Shield connector
      • 49 Total FPGA I/O
      • 6 Single-ended 0-3.3V Analog inputs to XADC
      • 4 Differential 0-1.0V Analog inputs to XADC

To find out more about PYNQ, please see the project webpage at www.pynq.io. Here you will find materials to help you get started and a forum for contacting the supporting community.

Mike is the founder and editor of Electronics-Lab.com, an electronics engineering community/news and project sharing platform. He studied Electronics and Physics and enjoys everything that has moving electrons and fun. His interests lying on solar cells, microcontrollers and switchmode power supplies. Feel free to reach him for feedback, random tips or just to say hello :-)

view all posts by admin

Leave a Reply

Archives