和MCU等控制芯片相比,FPGA有哪些独特优势?
我认为FPGA的主要优势有很多,但我认为排名前三的优势分别是:灵活的输入/输出,确定性,低时延。
比如说对于机器人技术,现在有很多工厂完全由机器人来操作,而且一个机器人必须与另一个机器人一起工作。当多个机器人在流水线上相互协作时,低时延和确定性就非常重要,从而确保整个工作流程稳定高效的向前推进。如果每个机器人的工作方式不固定、响应时间很随机,那整个产线就要出大问题。
MCU也经常用于电机控制和驱动系统,而且我认为对于单轴或双轴电机控制驱动系统来说,它们工作得非常好。但是现在的情况是,越来越多的MCU需要控制四轴、六轴、八轴。随着控制轴数的增加,性能、时延和确定性都会被稀释。随着你添加更多的控制回路,你就会削弱该处理器的性能。
所以如果将其与基于FPGA的方法进行对比,FPGA的每个控制回路都是独立的,而且可以并行完成。所以一个控制回路的影响不会对其他控制回路产生影响,你可以完全独立地操作,这种并行性会极大提升整个系统的性能。
什么是Kria,它和传统FPGA有什么区别?
AMD刚刚推出了Kria KD240驱动器入门套件和Kria K24 SOM。K24 SOM 大约只有信用卡的一半大小,但性能非常强大。它的核心其实就是一个FPGA SoC,配备了四核心ARM处理器,此外还有必要的外设,内存包括DRAM和闪存,也集成了很多安全功能 —— 全部装在这样一个非常小的板卡中。
除了尺寸小之外,它的功耗也相对较低,只需要2.5瓦到5瓦。因此,它非常适合许多不同的工业应用。同样重要的是,它不是我们产品组合中唯一的SOM。我们还有一个叫做K26的大哥级别的产品,它的尺寸和一个完整的信用卡差不多,性能也会更高。K24更适用于像电机控制、DSP密集型应用之类的场景,而K26更强大一些,可以进行人工智能等其他方面的应用。
系统模块SOM的好处有哪些?
我们有三个SOM(系统模块)的入门套件,分别是电机控制驱动器入门套件( KD240 )、机器人入门套件( KR260 )和视觉AI入门套件( KV260 )。这些入门套件的核心板卡大致和我的手掌大小相当。
这些入门套件主要的定位是原型设计平台,开发者可以先在这些套件上进行开发,然后无缝移植到实际的工业场景中。当他们进行自己的量产部署时,他们会创建自己的定制载卡。然后把Kria主板插入他们自己的定制载卡中,这样就可以直接构建、部署和投入量产了。
我们之所以使用SOM的方式,是因为很难预测所有不同客户的各种需求。有人可能需要以太网,有人需要USB,有人需要相机接口,等等。所以他们可以开发一个非常简单的载卡,然后使用我们的可编程的 I/O 进行连接。
系统模块这个概念的最大优点在于你可以随意更换载卡,也就是说,这基本上将FPGA和实际应用解耦了。它真正为生产和部署而设计,你不需要经历复杂繁琐的板卡移植阶段,因为你的应用在评估板上已经完美运行了,这是一种更无缝的过渡。
回到KD240驱动器入门套件,它主要用于电机控制驱动应用。当前,电机无处不在,从电动车到地铁、电梯或扶梯,包括火车本身,都有电机。在建筑的供暖和空调中也有电机。
既然电机有这么多应用,我们想做的是提供一个专注于该应用的入门开发套件,有你需要的所有连接,可以直接插入一些无刷直流电机,从而让人们能够非常容易地原型化他们的电机控制算法。
Kria如何帮助软件工程师开发FPGA?
就FPGA的整个生态系统而言,人们经常抱怨的主要痛点是编程非常困难。许多开发者们觉得FPGA的确提供了很多价值,但他们不知道如何获取和设计它,因为他们可能没有在这个领域接受过正式培训。所以对于Kria,我们试图从整体上考虑如何尽可能地让非传统用户使用起来更容易。所以我们支持许多不同的设计流程,从Python到MATLAB再到ROS 2等等。
我们还有一个应用商店,人们可以下载应用并运行,然后他们可以拿这个设计并对其进行修改以适应他们的需求。商店里的应用既有软件、也有硬件,还有一些应用可能是两者的混合体,但所有的应用都是容器化的,它们支持并在Ubuntu Linux上运行,你可以去应用商店直接从目标硬件上下载,所以你甚至不需要一台笔记本电脑或个人电脑——只需要连接你的评估板或入门套件到互联网上,它会自动下载剩下的部分。
此外,商店里也有硬件加速IP,比如图像信号处理链、深度学习处理单元等都是通过硬件实现的,然后你也可以为应用编写软件。
我们也支持非常传统的FPGA开发流程,所以如果你愿意,你可以控制每一个查找表、每一个寄存器、每一个 I/O 。SOM对于我们来说是一个长期的项目,所以我们会努力维护好,尽可能帮助开发者更加高效的开发。
FPGA在传统应用领域还有哪些优势?
总的来说,FPGA在许多不同的应用中都有使用,比如在工业通信中。我举一个例子,工业网络中有很多不同的标准,或许你或你的读者听说过EtherCAT或PROFINET等工业通信标准——目前世界大约有40到50种不同标准。对于一个固定功能的芯片来说,要支持所有这40到50种标准是非常困难的。这几乎成为了供应链的噩梦,因为他们必须保留所有这些不同版本的库存。
但是,对于像FPGA这样的可编程设备,或者我们的自适应SoC,就可以根据客户的要求对设备进行编程,以支持任何网络标准。因此,它不仅解决了技术上的挑战,还解决了业务上的挑战,不需要保留所有这些不同版本的库存,特别是在像工业市场这样的碎片化市场中。
除了灵活性,基于 FPGA 的解决方案通常性能也更好。你可以将一些处理器的工作转移到硬件中,从而获得并行处理的优势。此外,功耗通常也会更好,因为系统可以以更低的频率运行。
其实一个大的选择原则是,如果市场上有符合您需求的固定功能芯片,那可能这种专用芯片会更适合,因为它专为该功能而设计。但在很多情况下,某种应用要么因为没有适合它的好芯片,要么就像我们刚刚讨论的工业网络一样,需要灵活性。而这才能发挥出FPGA真正的价值。
AI如何改变FPGA?
目前AMD所有最新的7纳米器件都可以支持AI引擎。作为AMD的一部分,我们已经宣布将在一些x86处理器(如Ryzen)中加入人工智能引擎。所以,人工智能引擎不再仅仅是FPGA独享的技术,而会变成一种通用IP,既可以提供一个不会变化的硬件块,又可以在其周围增加一点可编程性,以适应不断变化的需求。
收购赛灵思之后,AMD 已经成为一家拥有广泛的 CPU、GPU、FPGA和自适应SoC产品组合的公司。我们提供了这些不同的技术供大家选择。对我们来说,重点是为开发人员提供多种异构方案,以便他们可以选择适合其任务的合适的引擎。因此,未来我们将深入挖掘我们的技术库,并利用所有这些技术的优点,提供定制化的解决方案。
审核编辑:刘清
全部0条评论
快来发表一下你的评论吧 !