扫描二维码,关注微信公众号“电子森林”,可以在手机上查看本网站的所有文章

PYNQ是什么?

PYNQ是Xilinx公司的开源项目® ,可以很容易地设计与赛灵思ZYNQ嵌入式系统® 系统上级芯片(SoC)。使用Python语言和库,设计人员可以利用Zynq中可编程逻辑和微处理器的优势来构建更强大,更令人兴奋的嵌入式系统。 PYNQ用户现在可以创建高性能的嵌入式应用程序

  • 并行硬件执行
  • 高帧率视频处理
  • 硬件加速算法
  • 实时信号处理
  • 高带宽IO
  • 低延迟控制

谁会用PYNQ?

PYNQ旨在供各种设计人员和开发人员使用,包括:

  • 希望利用Zynq和可编程硬件功能而无需使用ASIC式设计工具来设计硬件的软件开发人员。
  • 系统架构师需要一个简单的软件界面和框架来快速进行原型设计和Zynq设计的开发。
  • 希望他们的设计被最广泛的受众使用的硬件设计师。

关键技术

Jupyter Notebook是一个基于浏览器的交互式计算环境。可以创建Jupyter笔记本文档,包括实时代码,交互式小部件,绘图,说明文本,方程式,图像和视频。可以使用Python在Jupyter Notebook中轻松编程支持PYNQ的Zynq板。使用Python,开发人员可以 在可编程逻辑上使用硬件库和覆盖。 硬件库或覆盖可以加速Zynq板上运行的软件,并 自定义硬件平台和接口。PYNQ映像是可引导的Linux映像,包括 pynq Python包和其他开源包。

需要的软件

Jupyter笔记本界面基于浏览器,只需一个兼容的Web浏览器,即可开始使用Python编程PYNQ。为了获得更高的性能,您还可以将C/C++与PYNQ结合使用。在赛灵思SDK软件开发环境是免费提供的。您还可以使用第三方软件开发工具。可以使用标准Xilinx和第三方硬件设计工具创建新的硬件库和叠加层。Xilinx Vivado免费WebPACK版本完全支持许多Zynq主板。 l

入门PYNQ

阅读指南

视频教程

开发平台

核心板卡

PYNQ图像

社区板卡

其他板卡

板卡比较

社区与交流

利用FINN在Xilinx FPGA上进行机器学习

PYNQ已被广泛用于机器学习研究和原型设计。FINN,来自Xilinx研究实验室的实验框架,用于探索FPGA上的深度神经网络推理。它专门针对量化神经网络,重点是为每个网络生成定制的数据流式架构。FINN广泛使用PYNQ作为原型平台。有关更多信息,请参阅pynq.io/ml

PYNQ社区项目

案例笔记

参与其中

PYNQ项目的完整源代码可从PYNQ GitHub获得。如果您想参与或联系PYNQ团队,您可以在PYNQ支持论坛上发布消息。