把波动分解成三角函数是一种将任意周期性函数分解成一系列三角函数的方法。这种方法在信号处理、音频处理、图像处理等领域中得到了广泛的应用。
在波动分解成三角函数的方法中,我们首先需要了解傅里叶级数的概念。傅里叶级数是一种将周期函数分解成一系列正弦和余弦函数的方法。具体来说,对于一个周期为T的函数f(x),它的傅里叶级数可以表示为:
f(x) = a0 + Σ(an*cos(nωx) +...
技术
作者:Florentw,来源:AMD Xilinx开发者社区
简介
在前文中,我们首先认识了 Vitis™ 2022.1 统一软件平台内适用于 Versal™ 的 AI 引擎 (AIE) 应用。
我们认识了 Vitis IDE 2022.1 中 AIE 应用工程的结构,还了解了用于 graph 初始化、运行和终止的一些 API。在本文中,我们将进一步深入讲解工程内的 AIE...
作者:Alan Zhang,来源:FPGA FAE技术分享选集微信公众号
一、前言
在基于FPGA和 SoC器件的产品设计过程中,从器件选择到系统级电源设计、散热设计,电源功率估算对于设计方案确定至关重要;早期进行极端情况下的功耗分析,可以帮助用户产品避免进入系统电源、散热设计过度或设计不足的陷阱。从Xilinx Power Estimator (XPE)工具问世以来,...
作者:姬晓婷,来源:中国电子报
关于FPGA是否会被替代的讨论时常会出现,近期甚至有FPGA企业在推出新产品时会特别强调“无需FPGA知识背景即可上手”,令人怀疑FPGA的未来市场前景。然而,这类诞生于上世纪80年代、在半导体极度追求高算力的背景下存在感稍弱的品类,正在汽车向智能化、定制化、新能源化转型的路上崭露头角,呈现出不可替代的作用。
智能座舱定制化需要更高灵活度
“...
作者:Florentw,来源:AMD Xilinx开发者社区
AI 引擎系列简介
在这篇题为 Versal 自适应 SoC AI 引擎入门的文章中,我介绍了一些 Versal™ 自适应 SoC 器件中存在的 AI 引擎 (AIE) 阵列。本系列是全新的 AI 引擎系列博文,我们将在其中提供一些示例用来说明如何使用集成到 Vitis™ 统一软件平台中的 AI 引擎工具。
要求...
此文提供了一个表格,其中总结了 Vivado 2023.1 中针对不同 Versal PCIe IP 的 10 位标签请求器功能的支持信息。
如需了解有关 PCIe 调试的更多信息,请访问
https://xilinx.github.io/pcie-debug-kmap/pciedebug/build/html/index.html
PL...
软件版本:vitis2021.1(vivado2021.1)
操作系统:WIN10 64bit
硬件平台:适用AMD-XILINX A7/K7/Z7/ZU/KU系列FPGA
1 概述
在开发工程中,我们需要对一些信号进行debug调试,如果对于CPU的软件开发一般可以设置断点,但是对于FPGA来说,FPGA是无法设置断电的,但是FPGA可以通过内嵌的逻辑分析仪(ILA)...
作者:米联客(milianke)
软件版本:vitis2021.1(vivado2021.1)
操作系统:WIN10 64bit
硬件平台:适用AMD-XILINX A7/K7/Z7/ZU/KU系列FPGA
1 概述
仿真是每个初学者必须学会的一项技能,因为FPGA程序编译时间往往很长,所以对程序进行仿真就成为了校验程序正确性的最快捷的方式。
本节课,...
作者:Gary Pan,来源:AMD Xilinx开发者社区
CPRI是无线通信里的一个标准协议,连接REC和RE的通信。
Xilinx有提供CPRI IP核。
区别于其它通信协议,如以太网等,CPRI是一个同步系统。
这就意味着两端的Master和Slave应当是同源时钟的,两边不存在频差,并且内部延时也都是固定的,每次运行可以通过计算获得,供上层应用使用。因此,...
作者:米联客(milianke)
软件版本:vitis2021.1(vivado2021.1)
操作系统:WIN10 64bit
硬件平台:适用AMD-XILINX A7/K7/Z7/ZU/KU系列FPGA
1 概述
本实验通过一个基本的FPGA工程创建,编译,下载测试,演示如何快速上手AMD-FPGA开发工具软件vitis-vivado。...
作者:Txu,来源:AMD Xilinx开发者社区
在设计周期中,您可保留多个版本的工程,这些工程使用相同的 IP 和相同的配置。重新运行整个工程会导致每次都要重新生成 IP,很费时间。
在 Vivado 工程设置中,您的 IP 存储库允许您将自己的 IP 添加到 Vivado IP 目录中,搭配远程 IP 高速缓存一起使用时,即可显著缩短编译时间。这篇博文解释了具体设置方法...
作者:Gary Pan,来源:AMD Xilinx开发者社区
目前Xilinx的以太网IP核,如软核10G/25G,40G/50G或者硬核CMAC,MRMAC,DCMAC等等,都采用的是同一种Pause帧处理方式。
这篇blog主要介绍了,用户应当如何设置以太网IP的相关参数,使其能够有效处理以太网的Pause帧。
按照IEEE802.3协议,一个Pause帧是一个最小长度,...
作者:Rob Green,AMD 专业音视频、广播与消费业务高级经理
在《任意网络上的任意媒体》系列的首篇中,我们重点介绍了传统音视频连接标准和以太网 IP 网络之间的桥接支持,这是许多多媒体系统所需的一项关键功能。接下来,我们将深入研究设计人员使用 AMD 自适应 SoC 通过以太网进行音视频传输时所拥有的选择。
Zynq™ 7000 SoC
对于空间受限、...
作者:Rob Green,AMD 专业音视频、广播与消费业务高级经理
任意网络上的任意媒体
在不断变化的专业多媒体世界中,向以太网和 IP 网络的转变是从根本上改变行业的最重要趋势之一。音频和视频( A/V )不再受限于点对点连接。设备正从大型机架单元资本支出转向更灵活的、基于运营支出的网络可寻址平台的使用,这些平台存储在本地或云端,并且仅在需要时进行配置。
对各种设备(...
作者: Brian Liu,来源:FPGA FAE技术分享选集微信公众号
一. 2D 去噪介绍
ISP中通常包括对图像的去噪,英文名称为Image Denoising。是指的对数字图像中的噪声进行消除或减少的过程。2D去噪指的是对单帧图像进行帧内降噪处理,而3D去噪则需要关联前后帧。本文仅介绍几种常见的基于滤波器的方法的2D去噪:均值滤波、高斯滤波、中值滤波。
二. 均值滤波...
作者:付汉杰 hankf@amd.com
介绍
AMD MPSoC Linux一般使用PetaLinux编译Linux系统,包括Linux内核、DTS、文件系统。
PetaLinux内部集成Yocto,自动下载、配置、编译各种软件包。 它简化了编译流程,也导致有些工程师找不到软件包的源代码,不知道如何调试软件。
在PetaLinux工程的目录下,根据下列步骤,...
嵌入式系统的开发和调试是一项复杂的任务,需要强大的工具和接口来确保硬件和软件的正确性。在这个领域,JTAG(Joint Test Action Group)和SWD(Serial Wire Debug)是两个常用的调试接口标准,它们在嵌入式系统开发中起到关键作用。本文将深入研究JTAG和SWD,比较它们的特点、优劣势以及适用场景。
JTAG:传统的调试接口
1、JTAG简介...
GTP/GTX 中的 LOS 状态机行为与各种以太网协议的规范不同。本文介绍了 LOS 状态机行为,并提供了解决问题的方法。该方法可能不适用于所有设计、特别是需要 Channel Bonding 的设计。
解决方法:
不使用 Channel Bonding 时 不使用 Channel Bonding 时,GTP/GTX 中的 Loss of Sync 状态机会无限停滞在 RESYNC...
作者:Ivy Guo,AMD工程师,来源:AMD Xilinx开发者社区
UltraScale / UlraScale+系列的SEM IP一共有6种工作模式,分别是:
• Mitigation and Testing
• Mitigation only
• Detect and Testing
• Detect only
• Emulation
• Monitoring...
采集时间
采集时间是从释放保持状态(由采样-保持输入电路执行)到采样电容电压稳定至新输入值的1 LSB范围之内所需要的时间。采集时间(Tacq)的公式如下:
混叠
根据采样定理,超过奈奎斯特频率的输入信号频率为“混叠”频率。也就是说,这些频率被“折叠”或复制到奈奎斯特频率附近的其它频谱位置。为防止混叠,必须对所有有害信号进行足够的衰减,使得ADC不对其进行数字化。欠采样时,...
作者:Rob Green,专业音视频、广播与消费业务高级经理
Versal™ 自适应 SoC 为 8K 处理做好准备
图1:Versal 器件图
为了获取和传输 8K 视频,接口必须提供 4 倍于其 4K 前代产品的带宽,从而使接口具备更多数据通道、更高速率,或二者兼备。AMD Versal™ 自适应 SoC(片上系统)非常适合此类接口(线速为 20 Gbps...
作者:Txu,来源:AMD Xilinx开发者社区
增量综合流程:
增量综合的工作方式与增量实现流程相似,但仅适用于综合阶段,并且不会对紧随其后的实现阶段给予引导。
此流程需独立的综合参考文件(综合后 DCP),因此您需完成初始综合运行以获取首个综合后 DCP 文件。增量运行会复用设计中未更改的部分,并且仅对已更改的部分进行重新综合。复用的各部分会在分区级别予以保留。...
作者:Amanda Emerson,专业音视频、广播与消费业务技术营销专员
8K带宽瓶颈
音频/视频(A/V)接口是任何显示系统不可或缺的一部分,因为它们负责传输流媒体内容、玩游戏和显示高质量图像所需的数据。对于最终客户来说,它们似乎没有改变,但这些接口其实是在持续演进的,以跟上最新的显示标准。现在,系统正在从 4K 转向 8K(甚至更高),它们处理的数据比以往任何时候都多,...
Vitis™ HLS 2023.1 支持新的 L1 库向导,本文将讲解如何下载 L1 库、查看所有可用功能以及如何在 Vitis HLS GUI 中使用库函数。
Vitis 软件包含一套丰富的开源优化库,只需对现有应用进行最低限度的代码修改,便可提供开箱即用的加速功能。
L1 库包括用于 C、C++ 实现方案的低级原语和基本算法函数。
其中的多个库共支持 600...
(原载于《微波杂志》23年7/8月号)
物联网(IoT)在过去几年中呈指数级发展,这得益于LEO卫星星座的建立。MBI研发的LEOnida方案基于返回链路(RL)和一种改进的增强扩频Aloha(E-SSA)空中接口[1]。E-SSA是一种随机访问(RA)技术,由之前的Aloha协议进化而来,允许在信噪比(C/N)远低于0dB的情况下对接收到的异步突变信号进行解调。它结合了直接序列扩频(SS...
正如许多行业内读者可能已听说的,Digilent目前已发布Analog Discovery 3 产品。而我们作为负责在 Analog Discovery 3 资源中心制作说明文档的团队成员之一,往往遇到的最大问题之一便是“Analog Discovery 3 与 Analog Discovery 2 产品两相对照下有着那些差异?”
有鉴于此,在这篇文章中,...
作者:Txu,来源:AMD Xilinx开发者社区
这篇博文介绍了多种自动生成报告的有效途径,以便您在尝试对设计中特定阶段所耗用的编译时间进行调试时使用,例如,自动报告加载设计约束的时间、每条命令的持续时间,甚至是跨多个设计的运行时间差异。
此外还提供了关于如何解读这些结果的建议。
其中涵盖了 3 个强大的脚本,用于应对这些用例。
report_constraints...
作者:付汉杰 hankf@amd.com
由于客户需要,需要在Linux里启动服务,使一个脚本在后台一直运行。
于是创建一个systemd服务,使其运行顶层脚本,再在其中以后台运行方式启动另外一个长期运行脚本。
结果发现,后台运行的长期运行脚本,过一段时间也退出了。
经过调试和分析,发现systemd创建的后台进程,以“Type=forking”方式运行,就不会退出...
作者:Cheng Zhang,AMD工程师;文章来源:AMD Xilinx开发者社区
1. 关于PRBS13、QPRBS13、PRBS13Q和QPRBS13-CEI的定义
1)PRBS13的表达式为 x13 + x12 + x2 + x + 1
2)在AR72117中对QPRBS13、PRBS13Q和QPRBS13-CEI有以下定义:
PRBS13Q按照IEEE 802....
作者:付汉杰 hankf@amd.com
命令pstree将相关进程以树状图显示,方便查看进程间的关系。由于调试需要,需要在Linux里使用命令pstree。但是PetaLinux产生的Linux映像,默认不带命令pstree。
在rootfs里查找pstree
首先使用命令“petalinux-config -c rootfs ”尝试在rootfs里查找pstree。...
本文将指导您完成提交 Alveo 卡的 RMA 所需的步骤。
注:退货授权 (RMA) 流程用于处理与不合符 Xilinx 规定相关的硬件故障。
RMA 只适用于根据 Xilinx 标准条款和条件担保的 Alveo 产品。
本文记录涵盖以下内容:
故障排除、已知问题和技术支持
提交 RMA 所需的信息
如何提交 RMA 请求
故障排除、已知问题和技术支持...
作者:Albert Wei,文章来源: FPGA FAE技术分享选集微信公众号
QT是一个跨平台的C++图形用户界面应用程序开发框架。它既可以开发GUI图形用户界面程序,也可用于开发非GUI程序,比如控制台工具和服务器。由于QT良好的跨平台特性,基本上不做修改就可以在Windows或Linux或嵌入式设备上实现同样的界面。Linux操作系统是嵌入式的主力军,广泛应用于消费类电子、工业控制、...
什么是神经网络?
神经网络是一个具有相连节点层的计算模型,其分层结构与大脑中的神经元网络结构相似。神经网络可通过数据进行学习,因此,可训练其识别模式、对数据分类和预测未来事件。
神经网络将您的输入细分为多个抽象层。比如,可通过大量示例训练其识别模式为语音还是图像,就像人类大脑的行为一样。神经网络的行为由其各个元素的连接方式以及这些连接的强度或权重确定。在训练期间,...
作者:Txu,AMD工程师;文章来源:AMD Xilinx开发者社区
增量实现自从首次获得支持以来,不断升级演变,在此过程中已添加了多项针对性能和编译时间的增强功能。
它解决了实现阶段针对快速迭代的需求,显著节省了编译时间,还能确保所得结果和性能的可预测性。
以下图表显示了在一整套困难的设计上采用增量实现流程后,所节省的编译时间的变化趋势:
图 1:2019.1...
使用 7 系列器件中的不同时钟缓冲器,您可以通过启用或选择设置时钟区域或控制时钟使用情况。本文介绍了面向7 系列器件系列中不同时钟缓冲器的相关文档所处的位置。
以下缓冲器可用于 7 系列 FPGA 设计中的时钟:
BUFIO
BUFR
BUFMR
BUFG/BUFGCTRL/BUFGMUX
BUFH
BUFIO 和 BUFR
BUFIO 和 BUFR...
作者:Kevin Morris,来源:AMD Xilinx开发者社区
本篇博文旨在演示如何在 Zynq 设计中使用 Vitis 视觉库函数 (remap) 作为 HLS IP,然后在 Vitis 中使用该函数作为平台来运行嵌入式应用。
remap 函数会从图像中某一处提取像素,并将其重新放置到另一张图像中的某一处位置。在此示例中,本设计将使用一张 128x128 像素的灰阶输入图像,...
作者:Garce Sun,AMD Xilinx开发工程师,来源:AMD Xilinx开发者社区
在Vitis流程中,编译的目标分为软件仿真(software emultion),硬件仿真(hardware emulation)以及硬件(hardware)。
软件仿真是通过用户创建的自定义主机代码测试系统的第一步,主要目标是确保主机程序和内核的功能正确性。其中,...
作者:Chen Yang,AMD开发工程师,来源:AMD Xilinx开发者社区
承接上一篇blog介绍xbmgmt,这次来介绍xbutil的使用方法。在使用之前,请先安装好XRT,然后source /opt/xilinx/xrt/setup.sh(bash shell)或者source /opt/xilinx/xrt/setup.csh(csh shell)。...
来源:2022 IEEE Asian Solid-State Circuits Conference (A-SSCC)
作者:Heming Sun1,2,3, Qingyang Yi4, Fangzheng Lin1, Lu Yu2, Jiro Katto1, and Masahiro Fujita4
原文链接:https://ieeexplore.ieee.org/stamp/...
本设计咨询答复记录着重讲解某些包中的 112G 长距 (LR) GTM 操作的通道选择要求。请使用本答复记录来识别您的 112G LR 设计中使用的通道。本信息将整合到这两类包的文件中以及后续版本的 Vivado 中。
注释:
这些限制仅适用于 112G LR 应用。
对于非 LR 通道,如果其球间损耗预算不超过 20 dB,则其通道选择不存在此限制。
运行速率高达 58G 的...
作者:潘金龙,李德建,王于波,冯曦,董长征,冯文楠,来源:计算机技术与应用
高速差分PCI-Express 总线的应用场景越来越广阔,为了提高总线上数据传输的效率,从 PCI-Express 的总线结构、带宽开销点、系统参数配置进行说明,并通过对不同长度的报文在读、写传输的背景下进行理论分析与计算,得到了提升总线传输效率的合理配置,实现了 PCI-Express 总线传输效率的显著提升...
什么是 ASIC 设计
ASIC 设计是开发复杂电子系统的过程。该系统可制造成特殊用途的半导体设备,通常用于大批量应用或具有严格的功耗、性能和尺寸限制的应用。ASIC 系统设计人员使用高级语言并通过仿真和可视化来开发和评估算法。
许多系统设计人员使用 MATLAB® 和 Simulink® 作为高级环境来指定 ASIC 设计的算法。通过将这些产品与第三方 EDA 工具结合使用,...
机器视觉在自动化领域的发展趋势愈加火热且令人兴奋。随着技术的不断进步和应用范围的扩大,机器视觉正在成为自动化解决方案的重要组成部分。
以下是机器视觉在自动化领域的一些发展趋势:
深度学习与神经网络:深度学习和神经网络在机器视觉中的应用日益广泛。通过使用大规模数据集进行训练,深度学习模型可以实现高度准确的图像分类、目标检测和分割等任务。...
1、关于傅里叶变换变换?
答:fourier变换是将连续的时间域信号转变到频率域;它可以说是laplace变换的特例,laplace变换是fourier变换的推广,存在条件比fourier变换要宽,是将连续的时间域信号变换到复频率域(整个复平面,而fourier变换此时可看成仅在jΩ轴);z变换则是连续信号经过理想采样之后的离散信号的laplace变换,再令z=e^sT时的变换结果(...
傅里叶级数在数论、组合数学、信号处理、概率论、统计学、密码学、声学、光学等领域都有着广泛的应用,这不由得让人肃然起敬。一打开《信号与系统》、《锁相环原理》等书籍,动不动就跳出一个“傅里叶级数”或“傅里叶变换”,弄一长串公式,让人云山雾罩。
如下就是傅里叶级数的公式:
不客气地说,这个公式可以说是像“臭婆娘的裹脚布——又臭又长”,而且来历相当蹊跷,不知那个傅里叶什么时候灵光乍现...
作者: Aaron Zhang,来源: FPGA FAE技术分享选集微信公众号
一、NoC前世今生
NoC是相对于SoC的新一代片上互连技术,从计算机发展的历史可以看到NoC 必将是SoC 之后的下一代主流技术,SoC 通常指在单一芯片上实现的数字计算机系统,总线结构是该系统的主要特征,由于其可以提供高性能的互连而被广泛运用。然而随着半导体工艺技术的持续发展,出现了一些与总线相关的问题:...
例子来源
10G AXI Ethernet Checksum Offload Example Design
错误信息
简化后的错误信息如下:
hankf@XSZGS4:zcu102_10g_ethernet_CSO$ petalinux-build
.........
ERROR: opkg-utils-0.4.5-r0 do_compile: oe_runmake...
作者:付汉杰 hankf@amd.com
AMD ZCU106 U-Boot 2023.1 Open Source Flow 编译的缺少“gnutls/gnutls.h”错误
获取代码
以下列命令获取U-Boot代码
petalinux-devtool modify u-boot-xlnx
在目录components/yocto/workspace/sources...
本文转载自:XILINX开发者社区微信公众号
本文作者:AMD 高级产品应用工程师 Kevin Morris
这篇博客展示了在 AMD Zynq 设计中,如何用 Vitis Vision Library 中的函数(remap)导出一个 IP,并基于此 IP 构建一个的硬件平台(XSA),进而基于此平台来运行嵌入式应用。
remap 函数是指从图像的某个位置获取像素信息,...
问:PLC 常用的通信协议
存在很多不同的通信协议,这里只列出我们PLC中较常用的协议。下表显示了这些协议之间的一些关键差异,之后对每种协议进行简要说明。
CompoBus
此协议有高速和远程两种模式。在高速通信模式下,数据速率可达750 kbps,但最大电缆长度为100 m。而在远程通信模式下,最大电缆长度可达500 m,但数据速率仅为93.75 kbps。欧姆龙(Omron...