0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

为什么以及如何使用 Efinix FPGA 进行 AI/ML 成像 — 第 1 部分:入门

eeDesign 来源:物联网评论 作者:物联网评论 2023-04-24 14:49 次阅读

编者按:FPGA 架构的新方法带来了更细粒度的控制和更大的灵活性,以满足机器学习 (ML) 和人工智能AI) 的需求。这个由两部分组成的系列的第 1 部分介绍了 Efinix 的一个这样的架构,以及如何使用开发板开始使用它。第2部分讨论开发板与外部设备和外设(如相机)的接口

FPGA 在许多应用中发挥着关键作用,从工业控制和安全到机器人、航空航天和汽车。由于可编程逻辑内核的灵活性和广泛的接口能力,FPGA 的一个不断增长的用例是在部署 ML 推理时的图像处理。FPGA 非常适合实现具有多个高速摄像头接口的解决方案。此外,FPGA 还支持在逻辑中实现专用处理流水线,从而消除与基于 CPUGPU 的解决方案相关的瓶颈。

然而,对于许多开发人员来说,他们的应用需要更多的 ML/AI 功能以及更细粒度的控制或路由和逻辑,超出了具有组合逻辑块 (CLB) 的经典 FPGA 架构所能提供的。FPGA架构的新方法解决了这些问题。例如,Efinix的Quantum架构使用可互换逻辑和路由(XLR)模块。

本文讨论了Efinix FPGA架构的主要特性和属性,重点介绍了其AI/ML功能并介绍了实际实现。然后,本文讨论了开发人员可用于快速开始下一个 AI/ML 成像设计的开发板和相关工具。

Efinix FPGA 器件

Efinix目前提供两个设备系列。它最初推出了Trion系列,该系列提供从4000(4K)到120K逻辑元件(LE)的逻辑密度,并使用中芯国际40LL工艺制造。最新的器件系列钛系列提供从35K到1万(1M)逻辑元件的逻辑密度,并在非常流行的台积电16纳米(nm)节点上制造。

这两种产品都基于昆腾架构,这在FPGA世界中是独一无二的。标准FPGA架构基于CLB,在最简单的层面上,CLB包含一个查找表(LUT)和触发器。CLB 实现逻辑方程,然后通过路由互连。Efinix的量子架构通过XLR块摆脱了不同的逻辑和路由块。

XLR 模块的独特之处在于,它可以配置为具有 LUT、寄存器和加法器或路由矩阵的逻辑单元。此方法提供了一个更细粒度的体系结构,可提供路由灵活性,使逻辑繁重或路由繁重的实现能够实现所需的性能。

wKgZomRGKfSAcZ8rAAFafPJEiQg293.png

作为最新的产品系列,钛金属器件为开发人员提供了最先进的功能(图 2)。与 XLR 内核一起,它们提供多千兆位串行链路,其运行速度为 16 Gbps 或 25.8 Gbps,具体取决于所选设备。这些千兆位链路对于实现片上和片外的高速数据传输至关重要。

wKgZomRGKf2AehUQAAJdSvG8bvA271.png

钛器件还提供广泛的输入/输出 (I/O) 接口功能,可分为通用 I/O (GPIO),并且可以支持单端 I/O 标准,例如 3.3 伏、2.5 伏和 1.8 伏的低压 CMOS (LVCMOS)。

对于高速和差分接口,钛金器件提供高速I/O (HSIO),支持单端I/O标准,如1.2伏、1.5伏的LVCMOS,以及SSTL和HSTL。HSIO 支持的差分 I/O 标准包括低压差分信号 (LVDS)、差分 SSTL 和 HSTL。

现代FPGA还需要紧密耦合的高带宽存储器,用于存储图像处理应用的图像帧,信号处理的样本数据,当然还有运行FPGA中实现的处理器操作系统和软件。钛合金系列器件能够与动态数据速率四(DDR4)和低功耗DDR4(x)(LPDDR4(x))接口。根据所选的确切钛金设备,总线宽度支持为 x32 (J) 或 x16 (M),而某些设备不支持 LPDDR4 (L)。

钛FPGA基于SRAM,需要配置存储器,器件配置由主/从串行外设互连(SPI)或JTAG执行。为了确保这种配置方法的安全,钛FPGA使用比特流的AES GCM加密,以及AES GCM和RSA-4096来提供比特流身份验证。由于 FPGA 部署在恶意行为者可以访问和操纵其行为的边缘,因此需要这样的强大安全性。

开发板介绍

开发板是FPGA评估过程的关键要素,因为它们可用于探索器件和原型应用的功能,从而有助于降低整体风险。第一个可用于评估钛 FPGA 并开始原型设计应用的开发板是 Ti180 M484(图 3)。该板具有一个FPGA夹层卡(FMC)连接器和四个Samtec QSE连接器。

wKgaomRGKguAWAIdAAQoMl1wZxE404.png

该开发板安装的 Ti180 FPGA 提供 172K XLR 单元、32 个全局时钟、640 个数字信号处理 (DSP) 元件和 13 兆位 (Mbit) 嵌入式 RAM。DSP 元件能够实现定点 18 x 19 乘法和 48 位乘法。此 DSP 还可以针对在双通道或四通道配置中运行的单指令多数据 (SIMD) 操作进行优化。DSP 元素也可以配置为执行浮点运算。

与大多数开发板一样,Ti180 开发板提供简单的 LED 和按钮。然而,它的真正力量在于它的接口能力。Ti180 开发板提供低引脚数 FMC 连接器,可连接各种外设。由于FMC卡是一种广泛使用的标准,因此有许多FMC卡可以连接高速模数转换器ADC)、数模转换器DAC)、网络和存储器/ 存储解决方案。

除了FMC连接外,该板还提供四个Samtec QSE连接器,使开发人员能够添加扩展卡。这些 QSE 连接器用于提供 MIPI 输入和输出,每个 QSE 连接器提供 MIPI 输入或输出。

wKgaomRGKhSAZf0GAARMz54g0rM394.png

Ti180 板还提供 256 Mbits 的 LPDDR4,以支持图像或信号处理应用所需的高性能存储器。此外,该开发板还提供一系列 25、33.33、50 和 74.25 MHz 时钟选项,可与器件锁相环 (PLL) 配合使用,以产生不同的内部频率。

在开发过程中,在电路板上实时重新编程和调试的能力至关重要,需要JTAG连接,JTAG通过USB-C接口在板上提供。还提供两个 256 Mbit NOR 闪存器件形式的非易失性存储器,可用于演示配置解决方案。

该板由包装盒随附的 12 伏通用电源适配器供电。还包括FMC到QSE的分线,以及用于HDMI以太网,MIPI和LVDS的基于QSE的扩展卡。为了演示 Ti180 图像处理能力,还提供了一张双 RPI 子卡和两张 IMX477 相机卡。

软件环境

针对 Ti180 开发板实现设计使用 Efinix 软件 Efinity。该软件能够通过合成、放置和路由生成比特流。它还为开发人员提供知识产权 (IP) 模块、时序分析和片上调试。

请注意,需要开发板才能访问Efinity软件。但是,与其他供应商不同,该工具没有需要额外许可的不同版本。

在Efinity中,将针对所选设备创建新项目。然后可以将 RTL 文件添加到项目中,并为时序和 I/O 设计创建约束。在Efinity中,开发人员还可以利用HSIO,GPIO和专用I / O实现I / O设计。

wKgZomRGKh2ACqPuAAI5xA6zuOg041.png

FPGA 设计的一个关键要素是利用 IP,尤其是对于复杂的 IP,如 AXI 互连、内存控制器和软核处理器。Efinity为开发人员提供了一系列可用于加速设计过程的IP模块。

wKgaomRGKiaAP_25AACdT33LMzc766.png

虽然 FPGA 在实现并行处理结构方面非常出色,但许多 FPGA 设计都包含软核处理器。这些提供了实现顺序处理(如网络通信)的能力。为了在Efinix设备中部署软核处理器,Efinity提供了Sapphire片上系统(SoC)配置工具。Sapphire 允许开发人员定义一个多处理器系统,该系统具有跨多个处理器的缓存和缓存一致性,以及运行嵌入式 Linux 操作系统的能力。在 Sapphire 中,开发人员可以在一到四个软核处理器之间进行选择。

正在实现的软核处理器是VexRiscV软CPU,它基于RISC-V指令集架构。VexRiscV 处理器是一种 32 位实现,具有流水线扩展并提供可配置的功能集,使其成为在 Efinix 设备中实现的理想选择。可选配置包括乘法器、原子指令、浮点扩展和压缩指令。根据 SoC 系统的配置,性能范围在 0.86 到 1.05 DMIPS/MHz 之间。

一旦在Efinix设备中设计和实现了硬件环境,就可以使用Ashling RiscFree IDE开发应用软件。Ashling RiscFree是一个基于Eclipse的IDE,它支持创建和编译应用程序软件,以及在部署之前对目标进行调试以微调应用程序。

wKgZomRGKi2AXbI9AAExlSsDfnA691.png

如果正在开发嵌入式Linux解决方案,则提供所有必要的引导工件,包括第一阶段引导加载程序,OpenSBI,U-Boot和使用Buildroot的Linux。或者,如果需要实时解决方案,开发人员可以使用 FreeRTOS

人工智能实施

基于RISC-V软核操作的是Efinix的AI实现。这利用了RISC-V处理器的自定义指令功能来实现TensorFlow Lite解决方案的加速。RISC-V处理器的使用还使用户能够创建自定义指令,这些指令可用作AI推理之后的预处理或后处理的一部分,从而创建响应速度更快、确定性更强的解决方案。

要开始实施 AI,第一步是探索 Efinix 模型动物园,这是一个针对其终端技术优化的 AI/ML 模型库。对于使用Efinix设备的开发人员,可以访问模型动物园,并使用Jupyter Notebooks或Google Colab训练网络。一旦网络经过训练,就可以使用TensorFlow Lite转换器将其从浮点模型转换为量化模型。

一旦采用TensorFlow Lite格式,Efinix的tinyML加速器可用于在RISC-V解决方案上创建可部署的解决方案。tinyML 生成器使开发人员能够自定义加速器实现并生成项目文件。以这种方式部署时,加速范围可能在 4 倍到 200 倍之间,具体取决于所选的架构和自定义。

结论

Efinix 器件凭借其独特的 XLR 架构为开发人员提供了灵活性。该工具链不仅能够实现 RTL 设计,还可以实现部署软核 RISC-V 处理器的复杂 SoC 解决方案。在软核 SoC 之上构建的是一种 AI/ML 解决方案,支持部署 ML 推理。

审核编辑黄宇

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • FPGA
    +关注

    关注

    1603

    文章

    21326

    浏览量

    593234
  • AI
    AI
    +关注

    关注

    87

    文章

    26459

    浏览量

    264079
  • 开发板
    +关注

    关注

    25

    文章

    4434

    浏览量

    94022
  • ML
    ML
    +关注

    关注

    0

    文章

    139

    浏览量

    34294
收藏 人收藏

    评论

    相关推荐

    为什么以及如何将 Efinix FPGA 用于 AI/ML 成像 — 第 1 部分入门指南

    Efinix 的一款此类架构,以及如何借助开发板快速入门。第 2 部分讨论了开发板与外部器件和外设(如摄像头)的连接。 从工业控制和安全到机器人、航空航天和汽车,
    的头像 发表于 10-03 14:45 361次阅读
    为什么<b class='flag-5'>以及</b>如何将 <b class='flag-5'>Efinix</b> <b class='flag-5'>FPGA</b> 用于 <b class='flag-5'>AI</b>/<b class='flag-5'>ML</b> <b class='flag-5'>成像</b> — 第 1 <b class='flag-5'>部分</b>:<b class='flag-5'>入门</b>指南

    为什么以及如何将 Efinix FPGA 用于 AI/ML 成像第 2 部分:图像采集和处理

    作者:Adam Taylor 编者按:全新的 FPGA 架构方法带来了更精细的控制和更大的灵活性,以满足机器学习 (ML) 和人工智能 (AI) 的需求。本系列文章包括两部分,第 1
    的头像 发表于 10-03 14:45 475次阅读
    为什么<b class='flag-5'>以及</b>如何将 <b class='flag-5'>Efinix</b> <b class='flag-5'>FPGA</b> 用于 <b class='flag-5'>AI</b>/<b class='flag-5'>ML</b> <b class='flag-5'>成像</b>第 2 <b class='flag-5'>部分</b>:图像采集和处理

    FPGA学习教程】1课.FPGA/PLD新手入门

    FPGA学习教程】1课.FPGA/PLD新手入门1. 可编程逻辑器件的发展历程当今社会是数字
    发表于 02-27 11:52

    FPGA入门公益讲座1讲课件

    FPGA入门公益讲座1讲课件
    发表于 04-13 18:43

    FPGA入门公益学习班2讲精彩回播

    FPGA入门公益学习班2讲回播:(全程回放)http://webinar.elecfans.com/video_51.htmlFPGA入门
    发表于 04-23 11:12

    阿毛FPGA入门公益学习班3讲回播

    阿毛FPGA入门公益学习班3讲回播:阿毛FPGA公益学习班3讲课前视频--课前必看(全集) https://bbs.elecfans.c
    发表于 05-13 11:43

    新冒出来的Efinix会革掉FPGA的命么?

    ,并且经过switch box。这样的限制大大降低了FPGA中设计的最高工作频率。可以说,布线资源是目前FPGA性能的最大瓶颈。在这种情况下,业界又在寻找新的解决办法。  Efinix横空出世,革
    发表于 11-01 20:08

    【技术杂谈】动画演示各大算法,助力 AI 小白顺利入门

    被识别成1,识别成4也是很出乎我的意料了,大家可以发挥自己的想象力来调戏这个AI2章 无处不在的人工智能人工智能(AI)在我们的生活中正扮演着愈发重要的角色。在这一章里你将了解到人
    发表于 07-25 16:07

    FPGA入门到精通(1) - 前序

    偏向于从硬件设计的角度向读者加以讲解FPGA,这样才会在FPGA这条道路上越走越远,越吃越精。本门课程主要分为三部分1.从FPGA的器件内
    发表于 06-23 23:52

    X-CUBE-AI和NanoEdge AI Studio在MLAI开发环境中的区别是什么?

    我想知道 X-CUBE-AI 和 NanoEdge AI Studio 在 MLAI 开发环境中的区别。我可以在任何一个开发环境中做同样的事情吗?使用的设备有什么限制吗?
    发表于 12-05 06:03

    Efinix® 推出Trion™ T20 FPGA样品 支持主要客户和市场的需求

    香港– 2018年12月13日 – 可编程产品平台和技术创新企业Efinix®今天宣布提供Trion™ T20 FPGA样品,并以T200 FPGA将产品供应扩展到二十万逻辑单元(200K LE
    发表于 12-13 15:50 1438次阅读

    Efinix推出Trion T20 FPGA样品,同时将产品扩展到二十万逻辑单元的T200 FPGA

    关键词:Trion , FPGA Efinix将在下个月在拉斯维加斯的CES 2019上展示多款采用Trion FPGA客户产品 可编程产品平台和技术创新企业Efinix今天宣布提供T
    发表于 12-15 07:37 452次阅读

    Efinix将与三星合作开发Quantum eFPGA

    Efinix是一家专注于可编程产品平台和技术的公司,据外媒报道,三星电子宣布将与Efinix公司合作开发三星10nm硅工艺的Quantum eFPGA
    发表于 08-13 17:46 973次阅读

    【原创】深度揭秘FPGA新玩家EFINIX

    在去年电子创新网举办的2019FPGA应用创新论坛上,一家低调的FPGA新玩家引发了大家极大的兴趣,它就是EFINIX公司,为何全球FPGA领头羊赛灵思会投资这家公司?它的创始人团队有
    发表于 02-09 11:29 1次下载
    【原创】深度揭秘<b class='flag-5'>FPGA</b>新玩家<b class='flag-5'>EFINIX</b>

    FPGA 上实施 AI/ML 的选项

    FPGA 上实施 AI/ML 的选项
    的头像 发表于 12-28 09:51 548次阅读