本文转载自: XILINX开发者社区微信公众号
本文来自 XILINX 产品应用工程师 Yang Chen
在开发一个加速程序的之前,有一个很重要的步骤:正确设计程序架构。开发人员需要明确软件应用程序中哪一部分是需要硬件加速的,并且它多少的并行量,以保证硬件加速器件(FPGA)能完美发挥其作用。
本文将分为5个步骤来介绍:
1. 基准和建立目标
2. 确定加速部分...
技术
概览
调频连续波(FMCW)光雷达的原型验证和测试面临着许多挑战。接下来让我们一起探讨,对这些挑战进行分解,使其变得可管理且可付诸行动,并学习有关如何逐步克服组件级到系统级测试挑战的实用指南。
引言
说到自动驾驶,问题并不是能否实现,而是在于何时以何种方式...
作者:付汉杰,hankf@xilinx.com,文章转载自:博客园
Linux是现在最流行的操作系统,含有大量的源代码。Xilinx 2020.1使用的Linux 5.4,含有大约67430个文件。大部分文件没有被使用到。分析Linux源代码的代码实现时,经常查找函数或者数据结构定义。如果分析所有文件,既消耗软件查找时间;也会找到多个定义,增加理解代码的难度。如果能够删除没有被用到的代码,...
本文转载自:ZYNQ分享客微信公众号
这一次,熊猫君分享一个内窥镜的技术实现方案。内窥镜的方案很多:主处理器有用专用ASIC的,比如日、台、韩的相机ASIC;有用专用CPU的,比如海思、瑞星微和君正等。熊猫君的这个是基于Xilinx ZYNQ的低成本方案。
纵观中低端的内窥镜用图像传感器,主要是以OV的为主,熊猫君接触和实现过的主要有OV6946+OV426、OV6948+OV426...
描述
每个 RPU 处理器都有 1 个 DBGDSAR 寄存器,其中包含其 CoreSight ROM 表的偏移地址。
但是,读取 RPU 的 DBGDSAR 寄存器会返回以下不正确的偏移值:
处理器
DBGDSAR 期望值
DBGDSAR 实际值
RPU_0...
作者:付汉杰,hankf@xilinx.com,文章转载自: 赛灵思中文社区论坛
介绍
Vivado可以导出脚本,保存创建工程的相关命令和配置,并可以在需要的时候使用脚本重建Vivado工程。脚本通常只有KB级别大小,远远小于工程打包文件的大小,因此便于备份和版本管理。
脚本里指定了Vivado的版本、器件的型号,IP的版本。如果导出脚本时的相关版本,...
描述
在任何一致的 ACE 系统中,启用 WriteUnique/WriteLineUnique (WU/WLU) 传输事务后,如果在有一项或多项高速缓存逐出事务处于暂挂状态时尝试执行存储,那么写回无分配 (WBNA) 存储可能发生停滞。
ACE 要求 WU/WLU 传输事务不得绕过任何未完成的逐出类型传输事务 (WriteBack/WriteEvict/WriteClean)。...
本文转载自: XILINX开发者社区微信公众号
在Vitis 统一软件平台中使用Alveo系列开发板设计加速Kernel时,系统会自动为Kernel的时钟设置默认频率.
以 xilinx_u200_qdma_201910_1 平台为例,在Vitis中选择平台时可以看到默认的时钟频率是300Mhz和500Mhz.
在Vitis Application Acceleration...
描述
当在硬件配置中包含“大型发送卸载 (Large Send Offload)”并在缓冲区描述符中启用 LSO 功能时,GEM IP 可能通过中断状态寄存器的位 6(同样反映在发射状态寄存器的位 4 中)错误触发“amba error”中断事件。
除了误报此错误外,并未观测到任何功能性问题,且仍可继续使用 LSO 卸载功能。
这被分类为次要硬件问题,因为可轻松屏蔽并忽略误报事件...
作者:付汉杰,hankf@xilinx.com,文章转载自: 博客园
在Xilinx的ZCU102和ZCU106单板设计中,使用了管脚PS_MODE1作为外部USB Phy的复位信号。在MPSoC的文档ug1085和ug1087中,关于PS_MODE1的信息比较少。下面是更详细的描述。
1. UG1085文档
按UG1085,PS_MODE1本来作为MPSoC的启动模式管脚...
描述
Arm Cortex-R5F 处理器包含 1 个 4 输入存储缓冲器,用于对数据先进行缓冲、合并和转发,然后再使用 AXI 主接口将数据写入高速缓存或 L2 存储器系统。
由于此错误,存储缓冲器可能进入所有现有写入都无法继续执行的状态。此状态可能会导致下列问题:
流水线执行备份,并阻止执行任何指令。
如果按特定顺序执行访问,则将恢复指令执行,但写入数据将会丢失...
本文转载自:XILINX开发者社区微信公众号
本文来自 XILINX 产品应用工程师Stephen MacMahon
在本篇博文中,我们将探讨如何在 Vitis 中调试 Zynq UltraScale 器件启动镜像。这些启动镜像包括 ARM 可信固件 (ATF) 和 U-boot。
本篇博文乃是系列博文中的一篇,此系列博文旨在探讨如何在 Petalinux 镜像中调试各种组件...
本文转载自:网络交换FPGA微信公众号
今天给大家推荐今年FCCM2021上的一篇文章,介绍了一种可以在线Xilinx FPGA内部RAM内容的工作,重点是论文相关的工作还是开源的。开源链接:https://github.com/icgrp/bert/ 。
摘要:XBERT是一个API和设计工具集,用于使用设备的配置路径零成本访问Xilinx体系结构上的片上SRAM块。XBERT...
作者:朱含,本文转载自: Ingdan FPGA微信公众号
1. 为什么使用PCIe传输
在FPGA需要和处理器打交道时,无论是X86,还是PowerPC,以及一些嵌入式的ARM等,对外的接口常见如下表。
其中,USB需要外部的PHY对接FPGA,而且需要firmware;以太网走到TCP才会保证不丢数据;PCI逐渐淘汰了,占用引脚多,而且带宽有限;...
描述
本答复记录旨在描述在 Versal ACAP 器件上使用物理不可克隆功能 (Physically Unclonable Function,PUF) 时,与 VCC_PMC 电源轨相关的要求。
如需了解有关如何订阅新“设计咨询”通知的更多信息,请参阅(赛灵思答复记录 18683)。
解决方案
如需在 Versal ACAP 器件上使用物理不可克隆功能...
作者:付汉杰,hankf@xilinx.com,文章转载自: 赛灵思中文社区论坛
1. 介绍
Xilinx提供超低延时编解码方案,并提供了全套软件。MPSoC Video Codec Unit提供了详细说明。其中的底层应用软件是VCU Control-Software(Ctrl-SW)。
本文主要说明为Ctrl-SW增加功能,支持不同Stride/Pitch(步长)...
描述
在某些条件下,新负载如果复用旧器件负载的分组标识 (GID),则可能报告同步外部异常中止,原因是错误关联旧器件存储器访问所检测到的外部错误。
器件负载快速解析完成,并允许后续指令执行时复用 GID。
条件
1. 旧器件负载执行后收到来自互连的外部错误响应,但尚未全部执行完成,这将导致异步外部异常中止。
2. 再执行不少于 80 条指令使 GID 回绕,...
作者:安平博,Xilinx高级工程师;本文转载自: AI加速微信公众号
Lower操作完成从高级算子(relay)到低级算子(TOPI)的转化。Lower开始于以下代码(src/relay/backend/graph_runtime_codegen.cc):
LoweredOutput Codegen(relay::Function func) {
auto pf =...
作者:付汉杰,hankf@xilinx.com,文章转载自: 赛灵思中文社区论坛
1. 介绍
Xilinx提供超低延时编解码方案,并提供了全套软件。MPSoC Video Codec Unit提供了详细说明。其中的底层应用软件是VCU Control-Software(Ctrl-SW)。
本文主要说明为Ctrl-SW增加输出NV12视频的功能。
1.1....
本文转载自:XILINX开发者社区微信公众号
本文来自 XILINX 产品应用工程师 Davis Zhang
OpenAMP framework支持standalone和linux环境下加载RPU的程序,但是没有u-boot下面的支持。U-boot下可以把rpu app binary加载到memory,然后用“cpu”命令启动rpu app。这个流程不是官方支持的方法,...
本文转载自: XILINX开发者社区微信公众号
本文来自 XILINX 产品应用工程师 John Bieker
本文旨在提供一种方法,以帮助设计师判断给定模块是否能够在空裸片上达成时序收敛。 如果目标模块无法在空裸片上达成非关联 (OOC) 时序收敛,则恐难以与设计其余部分达成关联性时序收敛。设计师可从完整设计中提取目标模块、对其进行布局规划、约束,然后通过实现工具来运行这些模块,...
作者:杨智勇,本文转载自: Ingdan FPGA微信公众号
在Serdes流行之前,芯片之间的数据传输主要靠低俗串行接口和并行接口(包含源同步接口和异步接口),存在诸如传输速率低、占用IO数量多、硬件连接复杂化等弊端。Serdes的出现简化了数据传输接口的硬件设计,大大提升了数据传输的速率和带宽效率。
Xilinx FPGA自Virtex-2...
本视频说明了如何使用 Xilinx 功耗估算器工具预测 Zynq®UltraScale +™RFSoC 的 RF 数据转换器 IP 的功耗。
作者:Nick Ni,赛灵思软件及AI市场发展总监( Nick Ni 拥有多伦多大学计算机工程硕士学位,拥有 10 多项专利和出版物)
人工智能发展迅速,创新步伐不断加快。然而,虽然软件行业已经成功在生产中部署了 AI,但包括汽车、工业和智能零售等在内的硬件行业,在 AI 产品化方面仍处于初级阶段。阻碍 AI 算法概念验证 (PoC) 成为真正硬件部署的主要差距仍然存在。...
作者:Brendan Farley ,赛灵思有线与无线事业部工程副总裁及欧洲、中东和非洲区域总经理
5G 产业潜力巨大,但行业如何才能克服成本、功耗与性能等相关挑战,确保 5G 在第二次浪潮中大获成功?
无线行业的未来取决于是否能够综合运用先进技术最大化系统性能,同时最优化成本与功耗以提供极具竞争力的产品。赛灵思无线工程副总裁及欧洲、中东和非洲区域总经理 Brendan...
本文转载自: XILINX开发者社区微信公众号
本文来自 XILINX 产品应用工程师 Davis Zhang
I2C 总线的两根信号线 SCL 和 SDA 需要上拉才能正常工作,当板卡上没有合适的硬件设置或者没有合适的 I2Cslave 设备,我们就无法进行 I2C 软件测试。那么是否可以将两个 PSI2C 控制器通过 EMIO 接口互连起来呢?
因为在 PL...
描述
Arm 发行的白皮书 "Cache Speculation Side-channels" (https://developer.arm.com/support/arm-security-updates/speculative-processor-vulnerability/download-the-whitepaper) 用于发现 "Spectre" 辅助通道。 白皮书指出,DSB...
作者:付汉杰,hankf@xilinx.com,文章转载自:博客园
MPSoC的DDR控制器的数据通道上集成了 AXI performance monitors (APM)。具体情况,可以参考Xilinx UG1085 (v2.2)中Chapter 15的“Figure 15‐1: PS Interconnect”或者Figure 17-1。
1. APM驱动程序
对于AXI...
本文转载自:XILINX开发者社区微信公众号
本文来自 XILINX 产品应用工程师 Davis Zhang
有时我们需要为官方 IP 或者自己创建的 IP 生成 kernel module,然后在 linux kernel space 里使用 kernel module 来控制这个 IP。如果要使用 IP 中断,我们需要在 kernel module...
描述
每个 RPU 处理器都有 1 个 DBGDRAR 寄存器,其中包含 CoreSight 根 ROM 表的地址。
但读取此寄存器时会返回错误的地址 0xfe800003。正确的返回地址应为 0xf0800003。
尝试访问包含错误地址的 CoreSight 根 ROM 表将导致 RPU 处理器发生软件异常。
受此影响的软件为在 RPU 处理器上运行并且依赖此寄存器来访问...
作者:Matthew Russell , DornerWorks 市场营销专员
不久以前,从算法到现场机器学习( ML )模型仍然需要经历漫长而复杂的道路。对于一些企业而言,如果能够接触到具有神经网络部署经验的 ML 专家,则可能会有一些选择,但其开发工作却非常耗时。赛灵思依托 Vitis 统一软件平台以及近期推出的 KRIA SOM (System-on-Module),缩短了这一过程...
作者:付汉杰,hankf@xilinx.com,文章转载自:博客园
MPSoC的MAC支持1588。在Linux Kernel的配置项中使能CONFIG_MACB_USE_HWSTAMP,并在Linux rootfs添加Linux ptp/ethtool,就可以运行1588的软件命令ptp4l。
PetaLinux下,配置Linux rootfs命令是petalinux-config...
描述
数据输入多路复用器 (IMUX) 寄存器不受支持,必须绕行。
注:数据 IMUX 寄存器不同于控制 IMUX 寄存器。如需了解有关控制 IMUX 寄存器问题的描述,请参阅(赛灵思答复记录 76205)。
解决方案
影响:
如果用户设计在可编程逻辑中明确强制使用数据 IMUX 寄存器,那么逻辑函数可能不正确。
IMUX 寄存器旨在用于进行 Vivado...
作者:付汉杰,hankf@xilinx.com,文章转载自:博客园
在测试MPSoC VCU的编解码时,经常需要使用NV12 YUV文件。YUV文件很大,所以经常依靠解压MP4等文件来产生NV12 YUV文件。 FFMpeg是一个强大的工具,可以用来从MP4文件生成NV12 YUV文件。
但是在使用FFMpeg时,发现使用选项“-pixel_format nv12”时,...
本文转载自: XILINX开发者社区微信公众号
本文来自 XILINX BY BenM. Fell
在 FPGA 设计进程中,时序收敛无疑是一项艰巨的任务。低估这项任务的复杂性常常导致工作规划面临无休止的压力。赛灵思提供了诸多工具,用于帮助缩短时序收敛所需时间,从而加速产品上市。本篇博文描述了一种方法,能够有效减少时序路径问题分析所需工作量。...
作者:程浩武、陈煜全,本文转载自: Ingdan FPGA微信公众号
赛灵思推出首款真正的AllProgrammable(全可编程)异构多处理SoC—— ZynqUltraScale+MPSoC。采用台积公司(TSMC)新一代16nmFinFET工艺节点的ZynqUltraScale+MPSoC包含一个可扩展的32位或 64位多处理器CPU、用于实时处理图形和视频的专用硬化引擎、...
作者:付汉杰,hankf@xilinx.com,文章转载自:博客园
MPSoC含有PS、PL;在PS和PL之间有大量接口和信号线,比如AXI、时钟、GPIO等。缺省情况下,PS和PL之间有接口和信号线被关闭。加载bit后,软件才会打开PS和PL之间的接口和信号线。比如在文件xfsbl_partition_load.c中,FSBL加载FPGA的bit后会执行下列操作,...
描述
处理器可使用等待事件 (wait for event, WFE) 或等待中断 (wait for interrupt, WFI) 机制来进入低功耗状态。仅当嵌入式跟踪宏单元 (Embedded Trace Macrocell, ETM) 耗尽 AMBA ATB 接口上的所有跟踪字节后,处理器才能进入低功耗状态。
在某些情况下,AMBA ATB 停滞可能导致处理器挂起,直至 AMBA...
作者:付汉杰,hankf@xilinx.com,文章转载自:赛灵思中文社区论坛
目录
1. MPSoC的中断处理介绍
2. 扩展PL中断
3. 扩展AXI Intc中断
3.1. AXI Intc PL连接
3.2. AXI Intc Device Tree
3.3. AXI Intc外设的Device Tree
4. 扩展MIO中断
4.1. GPIO中断控制器
4.2...
描述
JEDEC LPDDR4 规范 JESD209-4B 的最新发布版本引入了在每次写操作突发前后都将 DQS_c 驱动至高位并保持一段时间的要求(4.13 写操作和屏蔽写操作 DQS 控制信号(WDQS 控制信号)):
“部分旧产品可能未提供下述 WDQS 控制信号”。但是,为了防止出现写操作前同步信号相关故障,强烈建议为对应LPDDR4-SDRAM 的两项 WDQS...
作者:付汉杰,hankf@xilinx.com,文章转载自:赛灵思中文社区论坛
Xilinx提供超低延时编解码方案,在ZCU106单板上可以验证。文档MPSoC VCU TRD 2020.2 Low Latency XV20 提供了详细命令。
缺省情况下,编码使用的是PS DDR。如果PS DDR已经被其它应用占用,也可以让编码使用的PL DDR。在VCU TRD 2020....
作者:付汉杰,hankf@xilinx.com,文章转载自:赛灵思中文社区论坛
Xilinx提供超低延时编解码方案,在ZCU106单板上可以验证。文档MPSoC VCU TRD 2020.2 Low Latency NV16 提供了详细命令。
下面的命令,能表现得更加稳定。
注意,其中每行最后的,表示本行没有结束,下一行也是本行内容。一定要保证最后的\后面,没有任何字符,...
本文转载自: PYNQ开源社区微信公众号
感兴趣者可与 pynq_china@xilinx.com 联系,共同合作拓展项目。
背景介绍
在工业现场的设备运维管理,从第一代人工观测,到第二代的定期仪器检测,再到第三代的实时状态检测,直至现在过度到了利用云计算,大数据,人工智能技术主动的预测设备运营状态,根据各传感器信息和设备运行数据提前预测设备的更新和维护。...
作者:XILINX 高级产品应用工程师 Aoife Marsh,本文转载自: XILINX开发者社区微信公众号
在 AXI 基础第 6 讲 - Vitis HLS 中的 AXI4-Lite 简介中,使用 C 语言在 HLS 中创建包含 AXI4-Lite 接口的 IP。
在本篇博文中,我们将学习如何导出 IP 以供在 Vivado Design Suite 中使用、...
本文转载自:瓜大三哥微信公众号
ECO 指的是 Engineering Change Order ,即工程变更指令。目的是为了在设计的后期,快速灵活地做小范围修改,从而尽可能的保持已经验证的功能和时序。ECO 是从 IC 设计领域继承而来,Vivado上 的 ECO 便相当于 ISE 上的 FPGA Editor。
1.ECO的用途
修改 ILA 或者 VIO 的调试探针...
作者:杨智勇,本文转载自:Ingdan FPGA微信公众号
ZU+MPSOC器件在汽车电子、工业控制、机器视觉、智能安防、智慧城市等行业中已经有着广泛的应用,三年前在做一个ZCU106开发板的TRD(Target Reference Design)向用户自研板卡移植HDMI设计时,遇到了一些问题,我翻出之前的笔记整理成文,与大家分享。
当时使用的Vivado版本为2018.3,...
作者: XILINX 产品应用工程师 张超,本文转载自:XILINX开发者社区微信公众号
概述
本示例工程中我们会在 TensorFlow2 下使用 Keras API 创建一个自定义 CNN 网络,在 Vitis-AI 1.3 环境下编译成 Xilinx DPU 上运行的模型文件,并在 Xilinx zynqMP 上部署运行。
该示例工程应在 Vitis-AI1.3...
作者:XILINX 高级产品应用工程师 Vivian Yin,本文转载自:XILINX开发者社区微信公众号
时序约束中的 set_input_delay/set_output_delay 约束一直是一个难点,无论是概念、约束值的计算,还是最终的路径分析,每一次都要费一番脑子。Vivado为方便用户创建输入输出接口的约束,整理出了一套非常实用的InputDelay/Output Delay...
本文转载自:米尔MYiR微信公众号
百度大脑EdgeBoard AI计算盒/计算卡系百度与米尔联合推出的一款高性能,高可靠性的AI计算盒/计算卡。该产品基于Xilinx Zynq UltraScale+ MPSoC 系列 FPGA可伸缩计算架构,可支持二次开发,支持高精度模型/多模型部署,同时搭载百度大脑PaddlePaddle(飞浆)框架,能无缝衔接百度大脑AI开放能力与工具平台,...
作者:熊猫君Hello Panda,本文转载自:ZYNQ分享客微信公众号
Xilinx推出低功耗-小容量-小封装ZYNQUltrascale+ MPSoC,特别适合用于ZYNQ-7000升级换代。
前段时间看到Xilinx发布了新的差异化ZYNQ Ultrascale+ MPSoC ZU1和Artix Ultrascale+FPGA,熊猫君趁着国家假日有点时间,随便瞎聊一下。...