ZYNQ

ZYNQ系列是赛灵思公司(Xilinx)推出的行业第一个可扩展处理平台,旨在为视频监视、汽车驾驶员辅助以及工厂自动化等高端嵌入式应用提供所需的处理与计算性能水平。该系列四款新型器件得到了工具和IP 提供商生态系统的支持,将完整的 ARM® Cortex™-A9 MPCore 处理器片上系统 (SoC) 与 28nm 低功耗可编程逻辑紧密集成在一起,可以帮助系统架构师和嵌入式软件开发人员扩展、定制、优化系统,并实现系统级的差异化。

在真实情况的测试下,新的方案捕获和色调映射高对比度场景达120 dB或20 EV,全是全高清1080 p 30 fps实时输出

高动态范围(HDR)图像信号处理器(ISP)和HDR视频方案开发商Pinnacle Imaging Systems和领先的HDR图像传感器供应商安森美半导体,联合推出新的更低成本的HDR视频监控方案,能捕获高对比度场景(120 dB),具备1080p的分辨率和每秒30帧的输出。这新的HDR视频平台, 在Xilinx Zynq 7030系统单芯片(SoC)上运行,满足捕获高对比度场景的高光和阴暗处细节的要求,为监控和机器视觉应用提供市场上最宽的动态范围。新监控方案将在VISION展会期间(2018年11月6日至9日)展出。有兴趣观看现场产品演示的摄像机、人工智能(AI)开发人员和媒体请莅临Avnet Silica/Avnet EMG GmbH展台(1号馆1C82号展位),与Pinnacle Imaging的代表交流。

Zynq-7000 人体肤色识别

作者:OpenSLee,来源:FPGA开源工作室

1 背景知识

在肤色识别算法中,常用的颜色空间为Ycbcr,Y代表亮度,cb代表蓝色分量,cr代表红色分量。

由于肤色在YCbCr 空间受亮度信息的影响较小,本算法直接考虑 YCbCr 空间的 CbCr分量,映射为两维独立分布的 CbCr空间。在 CbCr空间下,肤色类聚性好,利用人工阈值法将肤色与非肤色区域分开,形成二值图像。

RGB 转 YCbCr 的公式为:

Y = 0.257*R+0.564*G+0.098*B+16

Cb= -0.148*R-0.291*G+0.439*B+128

Cr = 0.439*R-0.368*G-0.071*B+128

对肤色进行判定的条件常使用如下判定条件:

Cb > 77 && Cb < 127

Cr > 133 && Cr < 173

2 zynq-7000的肤色识别实现

PYNQ 和 ZYNQ 对比

PYNQ = Python + ZYNQ —— ZYNQ部分功能的Python化

PYNQ

优点:

1、 Python用于ZYNQ开发,Python库和FPGA硬件库可以直接调用,极大加快开发进程、缩短开发周期、降低开发难度,更方便、快捷;

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

缺点:

目前,PYNQ还不支持任何高级的综合,也无法将Python应用直接移植到FPGA中,仅能调用已有库。

ZYNQ

优点:

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

缺点:

没有PYNQ方便快捷、易上手,缺少Python那些强大功能库的支持。

注:

1、 PYNQ目前库有:Python库+FPGA硬件库(目前仅有2个:PYNQ-API接口+overlay);

Avnet 展示了一款突出的集成型工业物联网系统,该系统在 Xilinx Zynq-7000 SoC 上集成机器视觉、马达控制和近场通信 (NFC),不仅可识别和挑选特定物品,随后还可根据用户选择将其放入正确的分配容器中。

Zynq 的64位全局定时器

作者:leon_zeng0

Zynq 有一个64位全局定时器,我觉得有点实用价值,比如精确的实时计算,代码运行时间计算。

怎么用呢?我就google 了一下,有篇文章推荐查看2个文件。这2个文件名分别是 sleep.c, xtime_l.c。

这2个文件是Vivado 安装的时候就安装好了的样例程序,我的是在这个目录下:
C:\Xilinx\SDK\2015.4\data\embeddedsw\lib\bsp\standalone_v5_3\src\cortexa9

查看这2个文件,就可以清楚其用法了。

实验:
在我的helloworld 工程里添加
#include "sleep.h"
#include "xtime_l.h"

然后在main 函数里添加:

main()

{

u64 tbegin,tend;
long int tdiff;

print("Begin dealay 5s\n");

XTime_GetTime(&tbegin);

sleep(5);

XTime_GetTime(&tend);

tdiff=tend-tbegin;

print("End of dealay 5s");

【视频】以太网演示 | Xilinx 和 Soc-e

Soc-e 的 Armando Astarloa 使用 HSR / PRP IP 核和 Zynq 演示了以太网冗余演示。

作者:Steve Leibson

人们经常需要开发定制的仪器用于实验或生产测试。早期的方法是通过 GPIB/IEEE-488 接口来连接仪器,并通过台式电脑或工作站进行控制。如今流行的则是 PXI 和 PXI Express 机架系统等更加模块化的方法。然而,此类安装可能很昂贵,尤其对于一次性测试或一次性堆叠更是如此。

为加快开发速度并降低定制仪器的成本,设计人员应考虑具有充足板载模数转换器 (ADC) 或数模转换器 (DAC) 资源的单板仪器平台,所有资源均由嵌入式处理器和配套的 FPGA 进行控制。

本文将展示如何使用基于处理器/FPGA 的系统级模块 (SoM) 以及附带的开发工具来开发定制仪器。依托一个由社区支持的仪器设计开放市场,这种仪器开发方式可以避免开发硬件的需要,并可以开发出紧凑的低成本工具,用于开发多种类型的仪器。

仪器系统历史简述

深入了解 Zynq SoC 在基于“OPC UA over TSN”的智能工厂自动化中的作用。

Zynq-7000 rgb2ycbcr IP的创建与使用

作者:OpenSLee

1 背景知识

IP(Intellectual Property)在嵌入式FPGA设计中,指的是某些设计好的模块,分为软件模块和硬件模块。这些模块,一般都是已经测试好,所有功能完善的,由一些用户自己设计的。有些模块是免费的,也有收费的模块。所有用户都可以将这些IP核(IP Core)导入到自己的工程中,同样,所有用户也都可以定制自己的IP核。

将一些在数字电路中常用但比较复杂的功能块,如FIR滤波器,SDRAM控制器,PCI接口等等设计成可修改参数的模块,让其他用户可以直接调用这些模块,这样就大大减轻了工程师的负担,避免重复劳动。随着CPLD/FPGA的规模越来越大,设计越来越复杂,使用IP核是一个发展趋势。理想地,一个知识产权核应该是完全易操作的--也就是说,易于插入任何一个卖主的技术或者设计方法。通用异步接发报机(UARTs)、中央处理器(CPUs)、以太网控制器和PCI接口(周边元件扩展接口)等都是知识产权核的具体例子。

Zynq mio总结

Zynq的IO包括对外连接的GPIO和内部PS与PL通信的AXIO。其中对外的GPIO又分为两种:MIO和EMIO。MIO直连到PS;EMIO则是PS扩展到PL,从PL接出的IO。所以MIO不需要管脚约束,而EMIO需要管脚约束。

1.MIO寄存器

上图为MIO内部构造,对MIO操作即是对以下寄存器进行配置:

DATA_RO: 此寄存器使软件能观察 PIN 脚情况,当 GPIO 被配置成输出的时候,这个寄存器的值会反应输出的 PIN 脚情况。

DATA:此寄存器控制输出到GPIO 的值,读这个寄存器的值可以读到最后一次写入该寄

存器的值。

MASK_DATA_LSW:位操作寄存器,写入 GPIO 低 16bit 其他没有改变的位置保存原先的状态

同步内容