前言
随着技术的发展,医学影像作为科学技术的主要成就之一,在无创诊断和治疗领域已经有了多种应用。其中一个应用是内窥镜,在20世纪90年代,当利用电荷耦合装置将图像传输到显示器上成为可能时,内窥镜变得更加广泛。为了帮助医生更好地识别和定位病灶,厂商不断提高内窥镜的分辨率,人体医疗内窥镜的分辨率从1080P逐渐发展到如今的4K。除此之外,荧光和3D技术都被创造性地加入,...
技术
作者: Luke Liu,来源: Comtech FPGA微信公众号
Xilinx 自 1984年发明 FPGA以来,其可编程器件一共经历了三种形态:
FPGA最传统的可编程逻辑产品形态 (也就是大家熟悉的Virtex、Kintex、Artix、Spartan等系列产品), 可以通过RTL、C等语言进行设计,基于Vivado/ISE为主要设计工具的产品矩阵;
SoC (...
本文转载自: XILINX开发者社区微信公众号
本文作者:赛灵思工程师 Hank Fu
在Vivado里,可以从Block Design导出TCL脚本,保存工程。之后可以从TCL脚本恢复工程。
导出的TCL脚本中,可能不包含用户IP的路径信息,这样的话,从TCL脚本恢复工程时会报告错误。
错误信息如下:
在TCL文件中添加下列命令,可以添加IP...
作者:Ivy Guo
SEM IP在上板调试过程中有时会出现一些错误, 比如无法执行IP的插错纠错功能; 或者自身的初始化无法完成等等, 需要对SEM IP本身进行调试定位. 我们最推荐客户去查看IP从上电开始打印出来的串口信息. 这里面的log不仅包含了IP从初始化开始经历的一系列状态, 还能清楚地显示出一些事件的时间戳:
但是很多客户反应, 实际调试的硬件板上没有连接串口...
以下是在 Vitis™ 软件平台中创建 Platform Loader and Manager (PLM) elf 文件的步骤。在 Versal™ 器件中,PLM 在 PMC 内执行,并用于引导 APU 和 RPU。选择“文件 (File) → 新建 (New) → 应用工程 (Application Project)”。这样会打开“新建应用工程 (New ApplicationProject...
时间敏感型网络( TSN )是工业自动化领域的一项重大进步,通过标准以太网连接提供确定性的时间敏感型功能。TSN 能够确保大规模工业网络的数据在需要的位置和时间完成传送。
Moxa(摩莎)已构建了一系列 TSN 交换机,助力实现制造网络与工业 4.0 兼容。这些解决方案由 AMD 赛灵思的 Zynq® UltraScale+™ MPSoC 解决方案提供技术支持,后者可提供灵活应变、...
作者:Rehan Tahir,AMD Versal AI Edge ACAP 产品线高级经理
在 AMD,我们对 Versal® ACAP 所搭载的 AI 引擎技术感到兴奋不已,因为在 AMD 和赛灵思服务的众多市场上,其对交付高性能自适应计算起到重要作用。Versal AI Core 与 AI Edge 系列搭载了这种 AI 引擎技术,非常适合对计算加速有着关键需求的用例。
AI...
作者:杨一峰,芯华章科技技术市场经理
文章发布于《中国集成电路》,由国家工业和信息化部主管,中国半导体行业协会主办的官方专业期刊。
在阅读本文之前,读者可以对FPGA芯片的基本含义及原理做基本的了解。FPGA 的全称为Field Programmable Gate Array(现场可编程门阵列),属于专用集成电路中的一种半定制电路,是可编程的逻辑阵列。FPGA...
Ubuntu20.04LTS中使用Vivado 2021.2时,每次重启Vivado,文本编辑界面的字体大小就会变成默认大小。
重新启动均要在Tool settings -> Text Editor -> Fonts and Colors -> Size中修改并Apply。修改完之后,同一Project中的其他文件都得打开,并重复上述步骤并apply,字体大小才能统一。...
本章旨在演示如何基于 Versal™ 来构建同时使用 SmartLynq+ 模块和高速调试端口 (HSDP) 的系统。您还将了解到如何使用 JTAG 或 HSDP 来设置 SmartLynq+ 模块和下载 Linux 镜像。重要:本教程需要使用 SmartLynq+ 模块、VCK190 或 VMK180 评估板以及 Linux 主机。设计示例:启用 HSDP要启用 HSDP,...
本章将逐步指导您使用可用的工具和受支持的软件块来构建基于 Versal™ 器件的系统。本章演示了如何利用 Vivado® 工具并使用 PL AXI GPIO 来创建嵌入式设计。其中还演示了如何在 Versal 器件上为基于 Arm® Cortex™-A72 核的 APU 配置并构建 Linux 操作系统。在本章中还提供了 PetaLinux 工具的使用示例。设计示例:使用 AXI...
在VCS中,一个仿真会话可以保存在一个Tcl文件中,以后可以加载。当我从Vivado调用VCS时,如何加载一个保存的会话?
解决方法
可以在仿真设置 > 仿真后Tcl中指定会话Tcl文件。
在vcs.simulate.tcl.post中输入Tcl文件的名称及其绝对路径,并应用这些设置。
然后当Vivado调用VCS时,将加载保存的会话。
本章用于演示如何为 Versal™ ACAP 集成和加载引导加载程序、裸机应用(针对 APU/RPU)和 Linux 操作系统。本章将讨论下列主题:系统软件:PLM、Arm® 可信固件 (ATF)、U-Boot为独立应用生成启动镜像的步骤。SD 启动的启动顺序以及 QSPI 和 OSPI 启动模式。您可使用赛灵思 Vitis™ 软件平台和 PetaLinux 工具流程来实现这些配置。第 2 章:...
描述
在Ubuntu系统中,当试图在内核代码中设置断点的加速应用程序上运行仿真调试时,工具不会在断点上停止,而只会在主机代码断点上停止。
解决方法
默认情况下,Ubuntu 系统不允许调试器附加到其他进程,除非附加进程是附件的直接附进程。
在Vitis中,内核进程被分离出来进行调试,而在Ubuntu机器上,默认情况下是无法访问的。
作为一个解决方案,...
本文转载自: XILINX开发者社区
本文作者:赛灵思工程师 Longley Zhang
在Zynq MPSoC里,我们有以下文章介绍怎么在MPSoC实现cache一致性的传输:
[1]https://xilinx-wiki.atlassian.net/wiki/spaces/A/pages/18842098/Zynq+UltraScale+MPSoC+Cache+...
问题描述:
我在一个自定义平台上运行我的项目,而我的目标平台的Vivado项目在Vivado合成中使用了以下额外选项。
-verilog_define "DDR_DAC=1" -verilog_define "DDR_ADC=1" -verilog_define "MTS=1"
当我运行Vitis链接器时,我看到以下错误:
ERROR: caught error:...
本章描述了对您所执行的设计流程可能出现的各种问题进行调试的方法。第一个选项是使用赛灵思 Vitis™ 软件平台进行调试。Vitis 软件平台调试器提供了下列调试功能:支持在 Arm® Cortex™-A72、Arm Cortex-R5F 和 MicroBlaze™ 处理器架构(异构多处理器硬件系统调试)上调试程序。支持在硬件开发板上调试程序。支持在远程硬件系统上进行调试。提供功能丰富的 IDE...
Versal ACAP CIPS IP 核允许您配置处理器系统和 PMC 块,包括启动模式、外设、时钟、接口和中断等。本章描述了如何执行以下任务:创建 Vivado® 工程以供 Versal™ ACAP 通过配置 CIPS IP 核来选择相应的启动器件和外设。在 Arm® Cortex™-A72 的片上存储器 (OCM) 上创建并运行 Hello World 软件应用。在 Arm Cortex...
解决方法
当运行一个基于DPU的应用程序时,当平台中的DPU和编译后的XMODEL之间存在架构不匹配时,就会发生指纹错误。
错误信息本身提供了DPU和模型的指纹。
(...)
CHECK fingerprint fail ! model_fingerprint 0x1000020f6014407 dpu_fingerprint 0x1000000f6014407...
作者:付汉杰 hankf@xilinx.com hankf@amd.com,文章来源:博客园
参考文档
视频教程:https://www.xilinx.com/video/hardware/block-design-containers-for-dfx.html
Vivado Design Suite User Guide: Dynamic Function eXchange (...
请确保您已正确安装所需工具,并且您的环境符合要求。
硬件要求
本教程对应目标为 Versal ACAP VCK190 和 VMK 180 评估板。本教程中的示例已使用 VCK190 ES1 评估板经过测试。要使用本教程,您需要具备以下硬件项,这些硬件项均随附于该评估板中:
VCK 190/VMK 180 ES1 评估板
交流电源适配器 (12 VDC)
USB...
Q:我用的硬件板卡是ZCU102,从Vitis AI的AI-Model-Zoo中
(https://github.com/Xilinx/Vitis-AI/tree/master/models/AI-Model-Zoo)
下载了pt_unet_chaos-CT_512_512_23.3G_2.0
模型的ZCU102文件,解压后发现只有编译好的.xmodel文件,...
本文档旨在提供有关将赛灵思 Vivado® Design Suite 流程应用于 Versal™ VMK180/VCK190 评估板的指示信息。所使用的工具为 Vivado Design Suite 和 Vitis™ 统一软件平台 2020.2 版。要安装 Vitis 统一软件平台,请参阅《Vitis 统一软件平台文档:嵌入式软件开发》(UG1400)。
注意:在本教程中,有关在硬件上启动...
本文介绍了在运行Ubuntu的脱机主机上安装Xilinx Runtime(XRT)和Alveo平台软件包所需的必要步骤。
解决方法
要在离线状态下安装Xilinx XRT和平台包,你需要首先在一个在线并能接入互联网的系统上下载Xilinx XRT和平台包。
1. 在线的系统应具有与脱机系统相同的操作系统配置。
2. 本指南为Ubuntu 18.04+提供指导。
3...
作者: 付汉杰 hankf@xilinx.com hankf@amd.com,文章来源:博客园
办公室有VCK190单板,运行在SD启动模式下,能进入Linux。但是现在在家办公,不能更改VCK190单板启动模式。
现在需要运行Standalone程序。于是我希望像MPSoC一样,当Versal的A72停留在U-Boot界面下,Vitis能以Jtag运行Standalone程序。...
本文转载自:XILINX开发者社区
本文作者:赛灵思工程师 Terry
在开发过程中,有时候会根据一些实际情况在U-BOOT阶段完成一些外设的初始化,或者实现一些功能应用。本文给大家介绍一下如何在u-boot中通过增加自定义的command方式来达到这一目的。
在Xilinx petalinux工具开发环境下,如果是2021.1之后的版本,大家可以通过使用如下命令,直接把u-...
作者: Lihong Jian,文章来源:Comtech FPGA
在ZYNQ-7000或MPSOC的调试过程中,当我们打算通过JTAG把PL中的一些运行状态显示出来,通常会在PL中加上Debug ILA的方式来解决。在使用这种方式的情况下我们每次都要去根据触发条件来获得相关数据波形并进行分析,同时抓到信号的多少及深度也会同FPGA芯片中的BRAM资源有关。
在如下这些应用场景中,...
本文转载自: EDA365电子论坛微信公众号
Xilinx(赛灵思)于今年推出了全新的Vitis AI 2.0版本,更新了包括模型、软件工具、深度学习处理单元,以及最新的性能信息。
作为赛灵思 FPGA 和自适应 SoC 上最综合全面的基于软件的 AI 加速解决方案,2.0 版本的 Vitis AI 解决方案更易于开发者使用,给边缘和数据中心带来进一步的性能提升。...
作者:付汉杰 hankf@xilinx.com hankf@amd.com,文章来源:博客园
使用下列脚本,可以通过JTAG实现VCK190的Linux启动。
#
# https://xilinx.github.io/Embedded-Design-Tutorials/docs/2021.2/
# build/html/docs/Introduction/Versal-...
编者注:本文由 AMD 工业业务部市场营销主管 Michael Zapke 撰写
有关安全特性的示例十分广泛,从拒绝错误的用户输入、在特定条件下立即停止输入,到发出的各类警报(包括视觉警报、听觉警报或触觉警报),再到向邻近设备发出指令,不一而足。所有这些功能当然都很有用,但我们希望您从来没有看到过它们发挥作用。不过这也产生了一个问题,当面临危险时,我们怎么才能知道安全特性确实在发挥作用...
本文转载自: XILINX开发者社区
本文作者:赛灵思工程师 Terry
大家在使用petalinux工具实现自己工程的时候难免会需要用到patch。如何在patalinux工具下生成patch和应用patch, 对于刚接触Xilinx petalinux工具的同学来说,可能会比较头疼。下面将对如何生成patch以及在petalinux工具中应用patch做一个整理。
1....
作者:付汉杰 hankf@xilinx.com hankf@amd.com,文章来源:博客园
使用hdmi-rx, vpss, frmbuf_write,设计了video输入的pipeline。使用PetaLinux基于XSA做了linux,编译成功,启动也成功。
但是后来查找视频设备,只有video设备,没有media设备。
root@dapd-0330-tpg-peta...
Q:在Vivado或其他综合工具(如Synplify)上,综合阶段需要添加什么约束呢?
A: Vivado综合默认是timing driven模式,除了IO管脚等物理约束,建议添加必要的时序约束,有利于综合逻辑的优化,同时综合后的design里面可以评估时序。
Q:如果综合只是翻译成网表过程,那么这些约束又有什么用呢?用来优化网表结构吗?
A: 所谓timing...
本文转载自: XILINX开发者社区
本文作者:赛灵思工程师 Deepesh Man Shakya
本篇博文提供了一个示例,用于演示如何使用 Python 脚本调试赛灵思 PCIe 设计。此处提供的技巧可应用于所有设计,而非仅供 PCIe 专用。
如果您当前使用的方法与此处所述方法类似,或者如果您决定使用所提供的脚本、在其基础上进一步强化,并愿意与我们分享您的脚本,...
问:请问下截图所示的是不是指内核所需要使用的硬件资源比例? 遇到下面的报错时,该如何排查和避免问题呢?
ERROR: [VPL UTLZ-1] Resource utilization: RAMB18 and RAMB36/FIFO over-utilized in Pblock pblock_dynamic_region (This design requires more...
作者:Stephen Evanczuk,文章来源:Digi-Key
在越来越多的嵌入式视觉应用中,如机器视觉、安保、零售和机器人,人工智能 (AI) 在基于边缘的智能摄像头上的应用已迅速获得认可。虽然可获得机器学习 (ML) 算法的迅速出现帮助迎来了人们对 AI 的这种兴趣,但开发人员仍难以在满足紧迫的项目时间表的同时,在保持低功耗的情况下为基于边缘的应用提供高性能。
更为复杂的是,...
当试图在Vitis HLS工具中编写高效的C++时,你需要谨慎使用模数运算符。这是因为C = A % B等同于C = A - B * (A / B)。换句话说,模运算符在功能上等同于三种操作。
因此,使用模数运算符的代码会在Vitis HLS中引入一个很长的延迟。
尽管在某些情况下,除了使用模运算符之外没有其他的选择,但在许多情况下,可以对代码进行重组,这样就不需要模运算符了...
作者: Simon Yang,文章来源: Comtech FPGA微信公众号
一.什么是IBERT
Integrated Bit Error RatioTester(IBERT)是Xilinx提供的用于测试transceiver的免费IP。IBERT的example design是一个集transceiver、logic、ILA、VIO、Pattern Generator and...
作者: HankFu,文章来源:博客园
作者: 付汉杰 hankf@xilinx.com hankf@amd.com
测试环境: Vivado/PetaLinux 2021.2, Linux 5.10.0 VCK190
在PetaLinux 2020.1时分享了在PetaLinux里为模块创建补丁。
现在使用PetaLinux 2021.2, 发现类似命令会报告错误。...
我需要将文件安全地发送给 Xilinx 工程师。 如何使用 EZmove 将文件发送给 Xilinx 工程师?
解决方法:
Xilinx EZmove 文件传输服务可为安全处理文件交换的方式实现标准化。
该安全站点允许 Xilinx 员工使用电子邮件接口设置帐户和发送通知,从而与外界客户、供应商和厂商交换文件,反之来,外界客户、供应商和厂商也可通过这种方式与 Xilinx...
本文转载自: XILINX开发者社区
本文作者:赛灵思产品工程师 Nathan Xu
Xilinx HDMI 1.4/2.0 TX的解决方案是由HDMI 1.4/2.0 Transmitter Subsystem IP作为MAC和Video PHY Controller IP作为PHY组成, 在板上, 还有SN65DP159被用作TMDS level shifter。...
作者: 付汉杰 hankf@xilinx.com hankf@amd.com,文章来源:博客园
测试环境
目前在X86机箱里插VCK190测试。X86、PCIe Host、Host都是指X86运行的Linux环境。Versal、Endpoint、A72都是指A72运行的Linux环境。Endpoint有时使用EP来简化。
测试单板: VCK190
测试单板操作系统:...
本文作者:赛灵思产品工程师 Nathan Xu
Xilinx HDMI 1.4/2.0 RX的解决方案是由HDMI 1.4/2.0 Receiver Subsystem IP作为MAC和Video PHY Controller IP作为PHY组成,在板上,由外部电阻来实现TMDS level shifter,还有TMDS181作为retimer。
在PHY层,也就是Video...
描述
如何实现浮点累加的PIPELINE II=1?
我正在使用下面的代码:
#define FT float
FT ybd(FT din[1024]){
FT sum=0;
LOOP:for(int i=0;i
描述
如果我需要修改HLS生成的RTL代码来验证一些问题,我该怎么做?
解决方法
有两个选择,要么通过原理图验证,要么通过仿真验证。
1) 通过原理图:
1. 在HLS中运行C语言合成
2. 导出RTL并同时评估RTL
3. 单独启动Vivado,并在Vivado中打开项目 "SOLUTION_NAME/impl/verilog/project.xpr"。
4....
作者: 付汉杰 hankf@xilinx.com hankf@amd.com文章来源:博客园
测试环境: Vivado/PetaLinux 2021.2, Linux 5.10.0
如何修改u-boot的boot.scr
修改修改components/yocto/layers/meta-xilinx/meta-xilinx-bsp/recipes-bsp/u-boot/u-...
描述
我想在HLS之外通过命令行使用工具生成的文件来重现C/RTL协同仿真的结果。我应该使用什么文件?我怎样才能调用仿真?
解决方法
Vivado HLS会在项目子目录下执行RTL仿真。
/sim/。
其中SOLUTION是解决方案的名称,RTL是为仿真选择的RTL类型。
在协同仿真过程中,任何由C测试台写的文件和任何由仿真器产生的跟踪文件都会写到这个目录中。...
作者:Perry Li,文章来源:Ingdan FPGA
功能模块简介
MPSOC作为ZYNQ 7000的升级版,在接口方面其性能也大大增强;在一些高速数据采集的场合PS-GTR的PCIE Root Complex功能可以方便地外接WiFi模组、NVME等外设,进行数据的传输和保存。例如使用WiFi6和MPSOC EV器件的VCU配合做无线4K编解码应用,...
描述
为什么Vitis HLS中的浮点累加器的精度与IEEE单精度浮点累加器不同?
为什么与C语言模拟的精度不同?
解答
Vitis HLS的浮点累加器与IEEE单精度浮点累加器的精度不一样。
如果与C语言模拟(使用IEEE标准)存在浮点差异,应该通过以下方式禁用浮点累加器的推理。
::common::set_param hls....
本文作者:赛灵思工程师 Gray Pan,文章来源: XILINX开发者社区
Step 1
首先,打开最新版本的Vivado(当前为2021.2):
1.新建一个Vivado工程,将器件直接选定为board – VPK120。
2. 接着新加入一个以太网IP core,选好自己所需要的IP配置,本文以MRMAC IP为例,并在以太网IP的GT配置那页,选择GTM和156....