MYD-C7Z020 开发板的构建基于 MYC-C7Z020 CPU 模块,该模块是一款基于 ZYNQ 的、Linux 就绪型的小巧 SOM,全面结合 Xilinx XC7Z020-1CLG400C SoC 器件、1GB DDR3 SDRAM、4GB eMMC、32MB 四路 SPI 闪存、千兆位以太网 PHY、USB PHY 和外部看门器。它可通过两个 0.8 毫米间距、140...
技术
作者:Volker Goller,ADI系统应用工程师
工业以太网—实时以太网—在过去几年中经历了巨大的增长。虽然经典的现场总线仍大量存在,但它们已经过了巅峰期。流行的实时以太网协议扩展了以太网标准,可以满足实时功能的要求。现在,TSN为实时以太网提供了一条新的途径。
实时与通信
在工厂自动化和驱动技术的背景下,实时意味着周期时间要安全、可靠地达到10毫秒以下,最低至微秒。...
作者:Keith Lumsden,赛灵思应用工程师
嗨,我叫 Keith Lumsden,是赛灵思的一名应用工程师。
很高兴受邀为赛灵思社区的全新设计和调试技术博客撰稿。
我的主要任务是为使用集成到 Zynq®UltraScale™RFSoC 产品中的 RF 数据转换器的客户提供支持。
在我的职业生涯中,我一直从事模拟和混合信号系统、FPGA 架构、I/O...
作者:Steve Leibson
Arduino 和 Raspberry Pi 开发板是颠覆嵌入式系统开发方式的登峰造极之作。从前,嵌入式系统的开发从硬件开始。项目步骤一般如下:
1. 规范系统要求,包括粗略估计处理速度和 I/O 要求。
2. 选择符合功率、性能和价格要求的适当微控制器或微处理器。
3. 连接硬件原型。
4. 调试硬件原型。如有必要,...
作者: OpenSLee,来源:FPGA开源工作室
xilinx verilog语法技巧 一
硬件描述语言(HDL)编码技术让您:
•描述数字逻辑电路中最常见的功能。
•充分利用Xilinx®器件的架构特性。
1 Flip-Flops and Registers :
Vivado综合根据HDL代码的编写方式推断出四种类型的寄存器原语:
•FDCE:...
作者:Stephen Evanczuk,Digi-Key 北美编辑
过去,设计人员倾向于使用现场可编程门阵列 (FPGA) 在硬件设计中提升计算密集型应用的性能,例如计算机视觉、通信、工业嵌入式系统,以及越来越多的物联网 (IoT)。然而,传统 FPGA 编程中涉及的繁琐步骤一直让人望而却步,促使设计人员到目前都还在寻求替代处理解决方案。
基于 Jupyter 笔记本的 Python...
作者:默宸,来源:FPGA技术联盟
早期运用的arm芯片规模较小,在芯片上直接有uart的中断服务函数地址寄存器,直接将中断服务函数的地址写入寄存器就搞定了。然后zynq似乎比较复杂,中断也比较复杂。在zynq中有个Scu(snoop control unit窥探控制单元,也是arm所有的)专门控制中断处理。Vivado SDK中提供了scugic驱动来处理相关的操作。下面具体说一下,...
测试工具版本:PetaLinux 2018.2
测试单板: ZCU106
UBIFS是更强壮的FLash文件系统。很多嵌入式系统都使用了UBIFS。
Xilinx PetaLinux 2018.2也支持UBIFS。只需要在Linux/U-Boot里添加相关配置选项,就能为QSPI Flash创建UBIFS。
第1步,为Linux Kernel添加UBIFS配置选项。...
GPIO的结构体系
zynq的GPIO,分为两种,MIO(multiuse I/O)和EMIO(extendable multiuse I/O)。
ZYNQ的GPIO由4个BANK组成,其体系结构如图1所示。其中Bank0有32个GPIO引脚,Bank1有22个引脚,共54个GPIO引脚直接通过MIO连接到PS上,每个引脚可以通过寄存器的设置来确定该引脚为输入、...
作者:默宸,来源:FPGA技术联盟
新建工程
1. 打开vivado2017.4,在出现的对话框中选择创建一个工程,如图所示。这一步是为了创建一个ZYNQ的工程。
2. 点击创建工程后,出现对话框如图所示,然后点击对话框中的下一步。这一步表示这是一个创建工程的向导,通过该向导去新建一个工程。
3,此时会出现一个对话框如图所示,这一步给工程命名,...
综合属性
在Vivado Design Suite中,Vivado综合能够合成多种类型的属性。在大多数情况下,这些属性具有相同的语法和相同的行为。
•如果Vivado综合支持该属性,它将使用该属性,并创建反映已使用属性的逻辑。
•如果工具无法识别指定的属性,则Vivado综合会将属性及其值传递给生成的网表。
1.ASYNC_REG...
本文由机器之心编译
本文主要讲解 Python 的 5 种高级特征,以及它们的用法。
1. Lambda 函数
Lambda 函数是一种比较小的匿名函数——匿名是指它实际上没有函数名。
Python 函数通常使用 def a_function_name() 样式来定义,但对于 lambda 函数,我们根本没为它命名。这是因为 lambda...
作者:小卓,来源:FPGA技术联盟
关于复位
数字电路中,电路通过复位来启动,复位犹如数字电路的“起搏器”,主要有下面三种方式:
1. 无复位:天生就强壮着,上电就启动;
2. 异步复位:好心人路过,随便踢了一脚,起搏了,这完全没有心理准备,随时都有可能复活啊;
3. 同步复位:专业救援队,手按住胸口,不起博按住不放啊。直到听到“砰砰”声才离开,非常关键,...
作者:默宸 FPGA技术联盟
Modelsim代码覆盖率功能Code coverage,能报告出statement(语句)、branch(分支)、condition(条件)、expression(表达)、toggle(信号翻转)、fsm(有限状态机)等多种覆盖率情况。
1、编译选项(compile option):...
作者:Sugandha Lahoti,翻译:李洁,转自:数据派(ID:datapi)
注:本文节选自Ankit Dixit所著的《集成机器学习》(Ensemble Machine Learning)一书。这本书组合强大的机器学习算法来建立优化模型,可以作为初学者的指南。
在本文中,我们将研究从数据集中选择特征的不同方法;同时通过使用Python中Scikit-learn (...
作者:安平博,Xilinx高级工程师;来源:AI加速微信公众号
引言
直方图统计在图像增强和目标检测领域有重要应用,比如直方图均衡,梯度直方图。直方图的不同种类和统计方法请见之前的文章。本章就是用FPGA来进行直方图的计算,并且利用FPGA的特性对计算过程进行加速。安排如下:
首先基于直方图算法进行FPGA架构设计,这里主要考虑了如何加速以及FPGA资源的利用两个因素;...
作者:默宸,来源:FPGA技术联盟
xilinx7系列FPGA主要包括:Spartan®-7、Artix®-7、Kintex®-7、Virtex®-7。其性能/密度/价格也随着系列的不同而提升。
Spartan7系列是7系列中的屌丝青年,拥有最低的价格、最低的功耗、最小的尺寸以及最低的设计难度,一些低端应用中极为合适。
Artix7系列是7系列中的普通青年,...
作者:Faizan Shaikh,翻译:李文婧,转自:数据派(ID:datapi)
引言
人类不会每听到一个句子就对语言进行重新理解。看到一篇文章时,我们会根据之前对这些词的理解来了解背景。我们将其定义为记忆力。
算法可以复制这种模式吗?神经网络(NN)是最先被想到的技术。但令人遗憾的是传统的神经网络还无法做到这一点。 举个例子,...
观看本视频,了解赛灵思 Model Composer 2018.3 版本中的重要更新。Model Composer 是一个利用 Vivado 高层次综合技术的 MathWorks Simulink 附加工具。视频将介绍包括控制设计吞吐量、在仿真过程中调试导入的 C/C++ 函数、以及如何使用自带的入门示例等内容。
Xilinx Zynq SoC提供了一个新的系统设计能力。本课程给经验丰富的系统架构师提供了如何在一颗芯片中架构一个Zynq SoC系统。主要介绍ARM® Cortex™-A9 processor-based处理系统和集成的可编程逻辑资源,可供系统设计师成功而有效的利用。本课程也详细介绍单独的模块,包括PS、I/O外设、定时器和缓存,如DMA、中断和存储器控制器。...
作者:默宸 FPGA技术联盟
Vivado® Design Suite 提供两种方法可加速产品上市进程,提高工作效率。可构建 Vivado 布局布线。在任何设计阶段处理任何类型的 ECO 问题,并可加快运行时间,确保时序收敛进程。
增量编译:使用增量编译满足最后时刻 HDL 变动需求,仅针对已变动逻辑进行布局布线,从而可节省时间。
P...
作者:张浩 ,来源:FPGA技术联盟
10. case,casez,casex语句
Verilog定义了case,casez和casex语句,用于做多种情况下的选择语句。
reg [1:0] sel;
reg [2:0] result;
always @(*)
case(sel...
作者:周末,MathWorks 中国行业市场部经理
什么是 trajectory(路径)规划
中文路径在英语中可能有两种翻译:
1. path
2. trajectory
首先告诉大家,我们所说的“路径”的是后者——trajectory。我们看一下这两种“路径”在机械臂的世界里有什么区别。
设想机械臂的 end-effector 要从 A 点运动到 B 点...
作者:张浩 ,来源:FPGA技术联盟
编写可综合的FPGA代码
在接触Verilog 语法参考手册的时候,我们发现其提供了一组非常丰富的功能来描述硬件。所以大家往往会疑惑那些Verilog语句是可综合的,那些是只能用于写Testbench的,其实,参考手册中只有一小部分语句是可综合的,但是这一小部分可综合的语法确是我们应用最为频繁的,可综合的意思就是可以通过物理工具进行编译、综合、...
Python简单易学,但又博大精深。许多人号称精通Python,却不会写Pythonic的代码,对很多常用包的使用也并不熟悉。学海无涯,我们先来了解一些Python中最基本的内容。
Python的特点
解释型语言,无需编译即可运行
提供了交互式命令行
基于对象的编程思想
跨平台和良好的兼容性,在Windows、Mac、Linux上都可运行
简单好用而且功能强大...
作者:小卓,来源:FPGA技术联盟
时钟篇
选用全局时钟缓冲区(BUFG)作为时钟输入信号,BUFG是最稳定的时钟输入源,可以避免误差。
只用一个时钟沿来寄存数据,使用时钟的两个沿是不可靠的,如果时钟沿“漂移”,就会导致时序错误。
不要随意将内部信号作为时钟,如门控时钟和分频时钟,而要使用CLKDLL或者DCM产生的时钟,...
作者:小卓,来源:FPGA技术联盟
JESD204B是什么?
JESD204B是一种新型的基于高速SERDES的ADC/DAC数据传输接口。随着ADC/DAC采样速率的不断提高,数据的吞吐量也越来越大,对于500MSPS以上的ADC/DAC,动辄就是几十个G的数据吞吐率,而采用传统的CMOS和LVDS已经很难满足设计要求,这个时候,JESD204B应运而生。现在各大厂商的高速ADC...
今天发布一个Vivado 下固化 FLASH的压缩和提高加载速度的技巧和方法。这个方法对于需要快速加载程序的场合特别有用比如PCIE 需要满足200MS的加载时间才能实现上电后系统能够识别到开发板。
对于XILINX FPGA 如何缩小 bit文件或者MCS或者bin文件大大小,以及如何配置QSPI FLASH的加载速度,对于很多初学者来说还不知道,有必要推广下。
1、纯FPGA...
作者: 做但不能忘思考,来源:FPGA2嵌入式
7 Series FPGAs MultiBoot功能指让FPGA从2个或者多个BIT文件中加载一个BIT文件运行程序,所以它的2个主要应用如下:
1. 更新新的BIT时,当更新失败或BIT出错会返回使用之前好的BIT运行程序;
2. 在多个已知好的BIT之间,通过外部触发来切换加载的BIT实现不同功能...
作者:宋哲,曹旸等,来源:射频百花潭
摘要: 针对当前无人机数据链日趋小型化,采用射频收发一体化设计,基于FPGA 对零中频射频收发器AD9361 进行配置,实现机载视频和遥控遥测的无线传输。测试结果表明,该设计可以实现无人机与地面站之间数据的可靠传输,同时满足小型无人机对数据链体积、重量、功耗和低成本的要求。
无人机数据链是实现无人机与地面站之间双向传输信息的无线通信系统,...
作者:Ricky Su,Xilinx Employee
在电影里,黑客远程控制一个城市中所有的汽车,让它们追逐指定的目标,这样的场景让人感觉不寒而栗。在现实中,某个大网站的用书数据泄露的新闻也已经屡见不鲜。保护系统安全,之前是网络安全工程师的职责,似乎大多数工程师不太关心这个领域。但其实在产品越来越网络化、智能化的现在,安全的意义已经越来越重要,...
作者:OpenSLee,来源:FPGA开源工作室
名称
开发者
版本号
日期
PetaLinux安装
LC
V1.0
2019-04-03
所有安装软件均在Ubuntu16....
引言
在本系列视频中,我们将了解如何将三重缓存模式下设置的 AXI VDMA IP 集成到 Vivado 设计的视频流水中。
该设计将针对使用 PS DDR 的 Zynq®-7000 SoC ZC702 评估套件来进行设计。然而,同样的步骤可以应用于其他基于 Zynq 的视频设计,例如 PYNQ™ 电路板上上一个视频系列中的示例。
教程 – 在三重缓存模式下将 VDMA...
引言
在先前的视频系列文章(视频系列 19、视频系列 20 和视频系列 21)中,我们已经了解了如何在 Zynq®-7000 SoC ZC702 评估板的 HDMI 连接器上生成视频输出。ZC702 电路板将 ADV7511 HDMI 发送器用作视频接口,但并非所有解决方案都使用外部器件。
例如,在 PYNQ™-Z2 电路板(连接到 Pynq-z2 产品页面),HDMI 连接器直接连接到...
引言
在上一个视频系列中(编号 21)中,我们创建了一种设计,可将模式(使用的是 LogiCORE™ IP 视频测试模式生成器 (TPG) 的核)发送到 Zynq®-7000 SoC ZC702 评估套件的板载 HDMI 中。
但这个应用硬件设计中的分辨率固定为 800x600p(在应用中无法对其进行更改)。
在本视频系列中,...
您好,欢迎来到硬件仿真博客系列!在本系列中,我们将回顾和探讨影响当今高速印刷电路板 (PCB) 设计的各种信号完整性 (SI) 问题,以及如何通过仿真来避免这些问题。
如果您是贸然进入了高速设计领域的新手工程师之一,并且被“信号完整性仿真”这个术语所震撼,请不要烦恼。 在这次博客之旅中,我们先来回顾一下基础知识,然后再介绍一些更高深的话题。
我们已不再生活在信号“0”和“1”...
作者:小卓,来源:FPGA技术联盟
Vivado中的5种仿真模式
1、run behavioral simulation 行为级仿真,也是通常说的功能仿真
2、post-synthesis function simulation综合后的功能仿真
3、post-synthesis timing simulation综合后带时序信息的仿真,和真实运行的时序就相差不远了...
什么是接口?
SystemVerilog 接口的开发旨在让设计中层级之间的连接变得更加轻松容易。 您可以把这类接口看作是多个模块共有的引脚集合。与必须在每个模块上定义多个引脚不同的是,您只需在接口中对引脚定义一次,之后只需在模块上定义接口即可。 如果稍后接口中涉及的信号被更改,则仅需更改接口即可。
这样就可以将大量信息压缩到较少代码行,但第一次写接口可能会有点困难。...
作者:小卓,来源:FPGA技术联盟
如果符合一些简单的设计原则,采用最新的Xilinx7系列FPGA架构上实现无线通信。Xilinx公司已经创建了典型无线数据路径的设计范例,表明中速级(-2)器件上使用的几乎100%的 slice资源都支持500 MHz以上的时钟频率。如何真正时序高速设计,需要注意一下几点。
一、影响时钟频率的基本规则
DSP48...
【描述】
Alveo 数据中心加速卡在硬件中配置了两个 QSFP 端口。
这些如何用于在 U200/U250 卡上启用以太网子系统 IP?
【解决方案】
QSFP 端口目前可以配置为在 Alveo 数据中心加速器卡中使用 — 通过 Vivado 电路板感知流程自定义流程。
如欲了解有关定制流程的更多详情,请查看 (Xilinx Answer 71754)...
作者:Martin Cassel,Silicon Software
工业应用中FPGA 上的神经元网络(CNN)
深度学习应用凭借其在识别应用中超高的预测准确率,在图像处理领域获得了极大关注,这势必将提升现有图像处理系统的性能并开创新的应用领域。
利用卷积神经网络(Convolutional Neural Network, CNN) 等深层神经网络的解决方案,...
作者:做但不能忘思考,来源:FPGA2嵌入式
1. 迭代闭环思维
还记得小时候我们学习骑自行车的场景吗?一种是:亲自尝试模仿去骑,摔跤后总结下然后再尝试去骑,一遍又一遍的摔跤再尝试,然后越骑越好;另外一种是:在别人的指导下,按照别人的套路去练习,也越骑越好。
虽然这2种方式都学会了骑自行车,但差别还是很大的,前者是自我模仿思考的迭代闭环的学习方法,...
1、什么是同步逻辑和异步逻辑?(汉王)
同步逻辑是时钟之间有固定的因果关系。异步逻辑是各时钟之间没有固定的因果关系。 答案应该与上面问题一致
〔补充〕:同步时序逻辑电路的特点:各触发器的时钟端全部连接在一起,并接在系统时钟端,只有当时钟脉冲到来时,电路的状态才能改变。改变后的状态将一直保持到下一个时钟脉冲的到来,此时无论外部输入 x 有无变化,状态表中的每个状态都是稳定的...
作者:武昊男,储成群,任勇峰,焦新泉;来源:2019年电子技术应用第3期
摘要: 针对CMOS图像传感器采集图像过程中的噪声预处理问题,提出一种在FPGA中实现的可配置的自适应加权均值滤波模块设计方案。该模块通过检测滤波窗口内不同方向的方差来确定纹理方向,从而自动生成相应的加权系数,可以对宽度不超过4 094像素的图像进行流水线式的加权均值滤波处理,达到去噪保边的目的。最后经过实验验证,...
Vivado是Xilinx公司的FPGA开发工具,熟悉Xilinx的工程师应该对ISE比较不陌生,但是随着时代的发展,FPGA芯片进步很快,Xilinx也已经宣布不再对ISE进行更新,这就意味着Vivado将在以后的发展中逐渐取代ISE,所以掌握好Vivavo的使用,是一个FPGA工程师必备的技能。今天的文章主要是讲解怎么调用Modelsim进行仿真。...
MPSoC EV 系列支持H.265编解码。在规格中,1080p编解码都可以达到8路1080p30,总体相当于1080p240。使用2018.3 VCU TRD 实际测试,性能更好。按如下测试,编码每路的帧率达到达到45,总体相当于1080p350;解码总体相当于1080p390。编码时,每路的CPU负载在15%左右。解码时,每路的CPU负载在1%左右。
测试与单板负载、视频流特点相关,...
作者:Jack,来源:知乎
据观察,HLS的发展呈现愈演愈烈的趋势,随着Xilinx Vivado HLS的推出,intel也快马加鞭的推出了其HLS工具。HLS可以在一定程度上降低FPGA的入门门槛(不用编写RTL代码),也可以在某些场合加速设计与验证(例如在FPGA上实现OpenCV函数),但个人还是喜欢直接从RTL入手,这样可以更好的把握硬件结构。...
【问题描述】:
我的 SD 在 SD1 上,没在 SD0 上,所以我不能从这引导。
怎样才能把 FSBL 交给 SD?
【解决方案】:
SD:
1) 在 FSBL main.c 文件中,您可以通过进行以下修改将 BootModeRegister 在第 376 行的值强制设为 SD_MODE:
/*
* Read bootmode register
*/
//...
一、组成
ZYNQ上面移植Linux操作系统包括四个部分,uboot,devicetree,kernel,ramdisk.
其中uboot类似于bios,负责对设备进行简单的初始化,devicetree以树的形式对zynq相连的硬件设备进行描述,kernel是加载的操作系统内核,ramdisk是操作系统启动之后挂载的文件系统。
二、启动过程...
python内置了一些非常巧妙而且强大的内置函数,对初学者来说,一般不怎么用到,我也是用了一段时间python之后才发现,哇还有这么好的函数,这个函数都是经典的而且经过严格测试的,可以一下子省了你原来很多事情,代码不仅简洁易读了很多,而且不用自己去闭门造车.既方便了自己又减少了bug。
1.sorted()
1)对于一个列表排序
sorted([100, 98, 102, 1, 40...