看了PYNQ的相关资料,对PYNQ板卡有了一些自己的看法和观点,
1、先说核心芯片。
PYNQ开发板的核心芯片是赛灵思公司的ZYNQ7020,该芯片由2个部分构成——PS和PL,
上图为ZYNQ的系统结构图,通俗的理解是PS是嵌入式开发,PL是FPGA逻辑开发,两者可以独立操作,好处嘛,那就是在单芯片的基础上,集成了ARM和FPGA的优点,而且,由于单芯片的使用,对PCB布线非常的有帮助,减少了PCB的面积。因为ARM和FPGA采用内部的AXI总线互联,而不是传统的ARM芯片+FPGA芯片的板级互联,抗干扰更强,速度可以更高,所以,ZYNQ芯片的性能从理论上看,在一定程度上强于FPGA芯片+ARM芯片这个方案。PS部分的代码可以用C/C++等(对嵌入式开发理解不深,如果有错误,麻烦留言更正),而PL部分的代码则可以采用Verilog或者VHDL(还有一些非主流的语言),不管是PS还是PL部分,都是属于在芯片的底层开发。
2、接着说板上资源。
第一点,核心芯片的资源,ZYNQ7020芯片有多少资源,大家可以到赛灵思官网去下载官方手册观看。第二点,板上其他芯片资源,有DDR3、支持SD卡卡槽、以太网、HDMI高清输入与输出接口、Pmod接口等(上图进行了简易罗列)。这些介绍,官方指导书会给出更详细说明,只不过大家需要耐着性子看英文手册。整体上看这些板上资源,还是很丰满的,囊括了ZYNQ的常用领域所需的芯片,很多的ZYNQ开发板都是这类的配置,很通用,同时,也说明了,该板卡也支持底层开发,可以作为一款通用的ZYNQ学习开发板,有预算的同学可以关注一下。
3、炫酷的外观。
当了多年的FPGA工程师,大红色开发板见过不少,还是很少看到粉红色的开发板的(我应该没有色盲吧,应该算是粉红色的),感觉很卡哇伊,非常的时尚!拿出来,有一种很酷炫的感觉,可能不知不觉中还会让人有更多的学习动力。
4、Python语言的支持。
由于工作所限,还没接触过Python语言,稍微百度了下,Python语言应该是比较上层的语言,该特点很有新意。与大多数ZYNQ开发板(都是开发PS和PL)不一样,该开发板的主旨在于开发上层应用,因为底层的PS和PL都已经开发完成,并已经预留了相应的接口给上层的工具进行调用,Python等语言可以通过该接口进行上层的开发,而不需要过多关注底层的东西,可以说是非常使用的开发板。
总结:
该板卡的核心芯片为赛灵思的ZYNQ7020芯片,该芯片由FPGA和ARM硬核组成,不仅性能优良,而且极大的减少了芯片的布线难度,这样,就能做出一个小巧的高性能核心板,该开发板外形新颖时尚,可以用Python语言进行项目开发,而不需要花费大量时间在底层的开发上,可以加快项目的开发进度,使产品快速上市。
分享一些PYNQ板卡学习资料:
http://pynq.readthedocs.io/en/latest/
http://www.pynq.io/examples.html
http://www.pynq.io/source-code.html
PYNQ-Z1 Reference Manual [Reference.rar (12.02 MB, 下载次数: 32)
注:该文章为本人在openhw社区首发,如需转载,麻烦声明网站地址和作者,否则,本人有保留追究其法律责任的权利。
参考:看了PYNQ的相关资料,对PYNQ板卡有了一些自己的看法和观点,
1、先说核心芯片。
PYNQ开发板的核心芯片是赛灵思公司的ZYNQ7020,该芯片由2个部分构成——PS和PL,
上图为ZYNQ的系统结构图,通俗的理解是PS是嵌入式开发,PL是FPGA逻辑开发,两者可以独立操作,好处嘛,那就是在单芯片的基础上,集成了ARM和FPGA的优点,而且,由于单芯片的使用,对PCB布线非常的有帮助,减少了PCB的面积。因为ARM和FPGA采用内部的AXI总线互联,而不是传统的ARM芯片+FPGA芯片的板级互联,抗干扰更强,速度可以更高,所以,ZYNQ芯片的性能从理论上看,在一定程度上强于FPGA芯片+ARM芯片这个方案。PS部分的代码可以用C/C++等(对嵌入式开发理解不深,如果有错误,麻烦留言更正),而PL部分的代码则可以采用Verilog或者VHDL(还有一些非主流的语言),不管是PS还是PL部分,都是属于在芯片的底层开发。
2、接着说板上资源。
第一点,核心芯片的资源,ZYNQ7020芯片有多少资源,大家可以到赛灵思官网去下载官方手册观看。第二点,板上其他芯片资源,有DDR3、支持SD卡卡槽、以太网、HDMI高清输入与输出接口、Pmod接口等(上图进行了简易罗列)。这些介绍,官方指导书会给出更详细说明,只不过大家需要耐着性子看英文手册。整体上看这些板上资源,还是很丰满的,囊括了ZYNQ的常用领域所需的芯片,很多的ZYNQ开发板都是这类的配置,很通用,同时,也说明了,该板卡也支持底层开发,可以作为一款通用的ZYNQ学习开发板,有预算的同学可以关注一下。
3、炫酷的外观。
当了多年的FPGA工程师,大红色开发板见过不少,还是很少看到粉红色的开发板的(我应该没有色盲吧,应该算是粉红色的),感觉很卡哇伊,非常的时尚!拿出来,有一种很酷炫的感觉,可能不知不觉中还会让人有更多的学习动力。
4、Python语言的支持。
由于工作所限,还没接触过Python语言,稍微百度了下,Python语言应该是比较上层的语言,该特点很有新意。与大多数ZYNQ开发板(都是开发PS和PL)不一样,该开发板的主旨在于开发上层应用,因为底层的PS和PL都已经开发完成,并已经预留了相应的接口给上层的工具进行调用,Python等语言可以通过该接口进行上层的开发,而不需要过多关注底层的东西,可以说是非常使用的开发板。
总结:
该板卡的核心芯片为赛灵思的ZYNQ7020芯片,该芯片由FPGA和ARM硬核组成,不仅性能优良,而且极大的减少了芯片的布线难度,这样,就能做出一个小巧的高性能核心板,该开发板外形新颖时尚,可以用Python语言进行项目开发,而不需要花费大量时间在底层的开发上,可以加快项目的开发进度,使产品快速上市。
分享一些PYNQ板卡学习资料:
http://pynq.readthedocs.io/en/latest/
http://www.pynq.io/examples.html
http://www.pynq.io/source-code.html
PYNQ-Z1 Reference Manual [Reference.rar (12.02 MB, 下载次数: 32)
注:该文章为本人在openhw社区首发,如需转载,麻烦声明网站地址和作者,否则,本人有保留追究其法律责任的权利。
PYNQ的概念
PYNQ是Xilinx的一个的开源项目。它旨在使基于Xilinx ZYNQ的嵌入式系统设计更加容易。
通过使用Python语言及其库文件,设计者能够充分发挥ZYNQ PL部分和PS部分的各自优势去设计更加强大的、有意义的嵌入式系统。
PYNQ使得用户能够实现多种高性能的嵌入式应用,包括:
l 并行硬件执行
l 高帧率视频处理
l 硬件加速算法
l 实时信号处理
l 高带宽IO
l 低延时控制
PYNQ的用户
PYNQ指向大面积的设计者和开发者,包括:
l 软件设计者 — 想利用ZYNQ及其硬件可编程性的优势,从而避免使用ASIC模式设计工具去设计硬件。
l 系统架构师 — 想使用更加简单方便的ZYNQ软件接口和框架。
l 硬件工程师 — 想让硬件项目推广给更多的人使用
关键的技术
Jupyter Notebook是一种基于浏览器的交互式计算环境。Jupyter Notebook能够创建多种文件(动态代码、交互式控件、图表、解释性文本、方程式、图像、视觉等)。
在Jupyter Notebook环境下使用python可以简便地为PYNQ-Z1编程。
通过python,开发者能调用可编程逻辑部分的硬件库。硬件库可以加速PYNQ-Z1上运行的软件代码,还可以自定义硬件平台和接口。
PYNQ镜像是一个可以引导的Linux镜像,其中包含pynq python包、其他开源包。
使用PYNQ需要什么软件?
Jupyter Notebook 是基于浏览器的接口,所以需要一个兼容的网页浏览器,从而使用python去编程。
为了更高的性能,用户也可以使用C/C++去编程。此时,需要支持PYNQ-Z1的、免费的Xilinx SDK软件。用户也可以使用其他第三方的软件开发工具。
为了增加新的硬件库,所以需要Xilinx或第三方的硬件设计工具。Xilinx Vivado 免费版完全支持PYNQ-Z1。
PYNQ-Z1板卡资源
处理器:双核ARM Cortex-A9
FPGA:1.3M 可重构逻辑
内存:512MB DDR3/FLASH
存储:Micro SD卡插槽
视频:HDMI输入/输出
音频:Mic输入,Line输出
网络:10/100/1000以太网
扩展口:连接到ARM PS端的USB Host
IO接口:1×Arduino 口,2×Pmod (49GPIO)
GPIO: 16GPIO
Other I/O:6个用户LEDs,4个按键开关,2个拨码开关
尺寸:87mm × 122mm
PYNQ资源下载
从PYNQ GitHub上可以下载所有PYNQ项目的源代码。如果用户想加入或联系PYNQ项目团队,可以在PYNQ support forum上发布信息。
PYNQ资料百度网盘下载地址:http://pan.baidu.com/s/1dF60nPv 密码: 32vb
PYNQ示例
OpenCV人脸识别 ADC波形采集 PWM发生器
具体的参考示例请访问http://www.pynq.io/examples.html
PYNQ官方网站
http://www.pynq.io/home.html
参考:http://www.openhw.org/module/forum/thread-656233-1-1.htmlPYNQ板卡见解——yiqizhenshanhe
http://www.openhw.org/topic-1172