Zynq可扩展处理平台是赛灵思新一代 FPGA的可编程技术的产品系列。与采用嵌入式处理器的FPGA不同,Zynq产品系列的处理系统不仅能在开机时启动,而且还可根据需要配置可编程逻辑。采用这种方法,软件编程模式与全功能的标准ARM处理SoC毫无二致。

与之相关和不同的是,PYNQ = Python + ZYNQ,即将ZYNQ部分功能的Python化,直接调用Python库和FPGA硬件库进行功能的开发。

1. 实例图片
下面是ZYNQ系列与PYNQ系列中两款具有代表性的开发板:

ZYNQ系列——ZYNQ7000

PYNQ系列——PYNQ_z2

2. ZYNQ优点

1. 一般基于C/C++开发,功能更全面、扩展性更强。

2. ZYNQ相比于PYNQ更成熟,相关的学习教程较多,便于学习与开发过程中问题的解决

3. PYNQ优点
1、Python用于ZYNQ开发,Python库和FPGA硬件库可以直接调用,极大加快开发进程、缩短开发周期、降低开发难度,更方便、快捷;使用 Jupyter 在线编程工具,简单易行。

下面是小编利用python语言编写的简单函数:

下面是jupyter_notebook界面,简单易操作:

2. 用PYNQ开发,当Python有更加有效的可用库时(如图像处理—OpenCV),其性能要比C/C++开发更强。

下面是利用opencv库,所编写的人脸检测代码的一部分:

运行结果:

4. 总结
通过以上介绍,我们可以总结出ZYNQ与PYNQ的区别与联系:PYNQ是ZYNQ与python库的结合,前者学习与开发性较好,而后者的功能多样性与扩展性更好。

因此,在二者使用的选取上,可以分别从以下角度考虑:

1. 要用于个人学习与开发,PYNQ的功能(如嵌入式、AI终端实现等)应该完全足够。(一般用Python应该就够了,需要的话再结合C/C++、设计新的硬件库等);

2. 若要研发类似PYNQ的板子,可以借鉴:在ZYNQ基础上加入Python内核和Python编译环境的网络服务器以及FPGA硬件库等。

PYNQ系列学习(二)——pynq与zynq对比(一)的更多相关文章

  1. EasyUI系列学习(二)-使用EasyUI

    一.引入必要文件 <!--1.0引入jQuery核心库--> <script src="jquery-easyui-1.4.4/jquery.min.js"> ...

  2. Java系列学习(二)-配置开发环境

    1.设置系统环境变量 1.1.设置JDK的Path路径 作用:通过path环境变量,将JDK安装目录下的bin目录配置到path变量下,可使javac指令和java指令在任意目录下运行   方法一:直 ...

  3. 【lucene系列学习二】Lucene实现高亮显示关键词

    首先,导入下图所示库 然后,import org.apache.lucene.search.highlight.*; 下面,我们新建一个实现高亮显示功能的函数 public static String ...

  4. CISCO、H3C、华为三层交换机端口二三层切换命令对比

    很多人都在问H3C是否有像CISCO三层端口切换类似的命令 switchport . 答案是肯定的.有.很多人都不知道. 其实无论是思科还是H3C还是华为他们都有这样的命令.但是在H3C和华为中不经常 ...

  5. SVN系列学习(二)-小乌龟的安装与配置

    1.TortoiseSVN的介绍 TortoiseSVN是Subversion版本控制系统的一个免费开源客户端,可以超越时间的管理文件和目录. 2.TortoiseSVN的安装 下载地址:http:/ ...

  6. NHibernate系列学习(二)-使用sql和hql以及linq

    1.本文主要介绍了NH的三种查询方式 2.界面查看 3.代码架构 4.代码详情 namespace KimismeDemo { public partial class Form2 : Form { ...

  7. MVC系列学习(二)-初步了解ORM框架-EF

    1.新建 一个控制台项目 2.添加一个数据项 a.选择数据库 注:数据库中的表如下: b.选择EF版本 c.选择表 3.初步了解EF框架 看到了多了一个以 edmx后缀的文件 在edmx文件上,右击打 ...

  8. rdb和aof二种持久化方式对比(Redis)

    我们已经知道对于一个企业级的redis架构来说,持久化是不可减少的 企业级redis集群架构:海量数据.高并发.高可用 持久化主要是做灾难恢复,数据恢复,也可以归类到高可用的一个环节里面去 比如你re ...

  9. Maven系列学习(二)Maven使用入门

    Maven使用入门 通过上一节的学习,我们已经了解和配置好了Maven,接下来需要编写代码了 1.POM(Project Object Model,项目对象模型) 和Make的Makefile类似,M ...

随机推荐

  1. centos iptables 数据转发

    iptables -t nat -I PREROUTING -p tcp --dport 3389 -j DNAT --to 38.X25.X.X02 iptables -t nat -I POSTR ...

  2. Shodan全世界在线设备搜索引擎

    reproduction from https://danielmiessler.com/study/shodan/ What is Shodan? Shodan is a search engine ...

  3. Oracle基础知识【1】

    目录: 1.Oracle创建库.表 2.Oracle数据怎删查改操作 3.Oracle数据约束条件 Oracle创建库.表: create user user05 identified by 1234 ...

  4. Go语言使用Godep进行包管理

    一.为什么要包管理 默认Go的第三方包都是放在Gopath的src目录下,而且这些包都没有版本号的概念,这样的可能会出现一些问题. 举个例子:当A同事将开发完程序之后,此时可能引用了一个第三方的包,过 ...

  5. java基础(1)----简介

    基础语法. 面向对象. 字符串和集合. IO流. 接口. lambda. 方法引用. Stream. 模块化. 一.java的前世今生: J2SE:标准体验版.J2EE:企业版.J2ME:小型版(移动 ...

  6. 华为OJ:字符串处理

    #include <iostream> #include <stdlib.h> #include <string> #include <sstream> ...

  7. Electron Apps Are Bad, So Now You Can Create Desktop Apps With HTML5 + Golang

    原文:https://www.phoronix.com/scan.php?page=news_item&px=HTML5-Golang-Desktop-Apps --------------- ...

  8. WA又出现了

    为甚么本蒟蒻写的代码永远有BUG? 为甚么本蒟蒻永远检查不出错误? 通过良久的分析,我得出一个结论:写代码也要有信仰. 人是要有信仰的,OI选手也不例外. 原因就是写之前没有膜拜上帝.真主.释迦摩尼. ...

  9. 2019-2020-1 20199301《Linux内核原理与分析》第一周作业

    学习内容 搜查文件 刚添加的文件有时候会找不到 解决方案:新添加的文件要手动执行一次updatedb更新,就可以搜查到文件 查找某目录下的所有文件添加 * 号前面的反斜杠不能忘记打上,否则会无法找到 ...

  10. SVN工作区同步

    单击“团队同步”菜单项或“团队同步”视角的“团队”工具栏上的“同步”按钮后,“同步视图”中将显示SVN工作区同步.它提供了从远程检查本地副本的更改类型的概率. 这是“同步视图”中的 “SVN工作空间同 ...