中文 英语

FPGA变得更加SOC

将线模糊作为处理器添加到传统的FPGA中,并将可编程性添加到ASIC中。

受欢迎程度

与他们以前的自我相比,FPGA是Blinged-Out Rockstars。不再只是一系列查找表(LUT)和寄存器,FPGA已经播放到现在是系统探索和车辆的架构,用于证明未来的ASIC的设计架构。

这款设备现在现在包括从基本可编程逻辑的所有方式到达复杂的SOC设备。在各种应用领域 - 包括AI用于汽车和其他应用,企业网络,航空航天,防御和工业自动化 -FPGA.使芯片制造商能够以一种必要时可以更新的方式实现系统。在协议、标准和最佳实践仍在发展的新市场中,这种灵活性是至关重要的,在这些市场中,eco需要保持竞争力。

这是基本的Bethind Xilinx决定添加一个手臂该公司营销总监Louie de Luna表示,Zynq FPGA的核心是创造FPGA SoCaldec。“最重要的是,供应商改善了刀具流程。这为Zynq创造了很多兴趣。他们的SDSOC开发环境看起来像C,这对开发人员有好处,因为应用程序通常用C.所以它们放入软件功能并允许用户将这些功能分配给硬件。“


Xilinx的Zynq-7000 SoC。来源:Xilinx.

其中一些FPGA不仅仅是SOC。他们是他们自己的socs。

“它们可能包含多个嵌入式处理器,专门的计算发动机,复杂的接口,大存储器等,”扫描汗扫描验证产品专家Muhammad Khan说OneSpin解决方案。“系统架构师规划并使用FPGA的可用资源,就像他们对ASIC所做的那样。设计团队使用综合工具将他们的SystemVerilog、VHDL或SystemC RTL代码映射到基本逻辑元素中。在大部分设计过程中,有效定位FPGA和定位ASIC或全定制芯片之间的差异正在缩小。”

Ty Garibay,CTOArterisIP很好地熟悉这种演变。“从历史上看,Xilinx开始于2010年开始成为Zynq路径的东西,他们定义了一个产品,该产品将基本上将Arm SoC的硬宏纳入现有FPGA的一角,”他说。“Altera然后聘请我基本上同样的事情。价值主张是,SOC子系统是许多客户想要的东西,而是因为SOCS和尤其是处理器的性质,它们不适合综合对FPGA。将该功能级别嵌入到实际的可编程逻辑中是禁止的,因为它几乎使用了该函数的整个FPGA。但是它可以作为一个硬功能作为整体FPGA芯片的小型或平凡部分。您放弃了为该SoC拥有真正可重构逻辑的能力,但它是可编程作为软件的,因此它以这种方式更改功能。“

这意味着可以拥有软件可编程功能,硬宏,然后在织物中具有硬件可编程功能,并且他们可以一起工作。“有一些非常好的市场,特别是在低成本的汽车控制场上,传统上有一个传统上的中型微控制器型装置,无论如何。客户只会说,'我只是将整个功能滚入FPGA模具上的硬宏,以减少板空间,减少BOM,降低功率。'

这符合fpga在过去30年的发展,原来的fpga只是一堆I/ o的可编程结构。随着时间的推移,内存控制器以及SerDes、RAM、dsp和HBM控制器被加强。

“FPGA供应商一直在继续发展芯片,但也在继续添加越来越多的硬逻辑,被认为是普遍可用的很大比例的客户基础,”Garibay说。“今天发生的事情是它在软件可编程方面的延伸。在Arm SoC之前添加的大多数东西都是不同形式的硬件,主要与I/O有关,但也包括dsp,通过强化它们来节省可编程逻辑门是有意义的,因为有足够的计划实用程序。”

一个透视问题
这基本上已经将FPGA转化为瑞士军刀的设计可能性。

“如果你把时间倒流,它只是一堆lut和注册表,而不是门,”Anush Mohandass说,他是营销和业务发展副总裁NetSpeed系统。“他们遇到了一个经典问题。如果将通用计算与特定于应用程序的版本进行比较,那么通用计算将提供更多的灵活性,而特定于应用程序的计算将提供一些性能或效率方面的好处。Xilinx和Altera越来越多地尝试将其结合起来,他们注意到实际上每个FPGA客户都有一个DSP和某种形式的计算。所以他们加入了Arm内核,DSP内核,他们加入了所有不同的PHYs和常用的东西。他们硬化了它,这使它更有效,性能轮廓变得更好。”

这些新的能力为FPGA开辟了门,在各种新的和现有市场中发挥着重要作用。

“从市场的角度来看,您可以看到FPGA绝对是SOC市场,”营销高级总监Piyush Sancheti说synopsys.。“不管你是做FPGA还是全面的ASIC,这都是经济问题。这些界限开始模糊,我们肯定看到越来越多的公司,特别是在某些市场,正朝着做FPGA更有利于生产的经济方向发展。”

历史上看,FPGA已被用于原型设计,但对于生产使用,Sancheti表示,它仅限于市场,国防和通信基础设施等市场。“现在市场正在扩展到汽车,工业自动化和医疗设备。”

艾,FPGA的蓬勃发展的市场
拥有FPGA的一些公司是系统供应商/ OEM,期望优化自己的IP或AI / ML算法的性能。

“他们想建造自己的筹码,对于其中的许多人来说,开始和做一个ASIC可以有点恐吓,”Netspeed的Mohandass说。“他们也可能不想花3000万美元的晶圆成本来获得筹码。对于他们来说,FPGA是一个有效的入口点,它们具有独特的算法,他们自己想要投射的神经网络,并看看它是否给他们他们正在寻找的性能。“

目前人工智能应用的挑战是量化,Catapult HLS合成和验证高级产品营销经理Stuart Clubb说门托,西门子的一家企业。“需要什么样的网络?如何构建该网络?什么是内存架构?You start off with the networks such that even if you just have a few layers and you’ve got a lot of data going in a few coefficients, it very quickly spins around to millions of coefficients, and the memory bandwidth there is becoming quite frightening. Nobody really knows what the right architecture is. And if the answer isn’t known, you’re not going to jump in and build an ASIC.”

在企业网络空间中,最常见的问题是加密标准似乎一直在变化。Mohandass说:“与其尝试构建一个ASIC,不如把它放在FPGA中,让加密引擎更好。”或者,如果你在网络方面做任何类型的数据包处理,fpga仍然给你更多的灵活性和更多的可编程性。这就是灵活性发挥作用的地方,他们已经利用了这一点。你仍然可以称之为异构计算,它看起来仍然像SoC。”

新规则
随着新型FPGA soc的出现,旧规则不再适用。Clubb指出:“特别是如果你在董事会上调试,你就做错了。”“虽然在电路板上调试被视为一种低成本的解决方案,但这可以追溯到能够说,‘它是可编程的,你可以在它上面设置一个范围,你可以去看看发生了什么。但现在说,‘如果我发现了一个漏洞,我可以去修复它,在一天内编写一个新的比特流,把它重新放到板上,然后找到下一个漏洞,’这简直是疯了。这是一种你经常看到的心态,员工的时间不被视为成本。管理层不会购买模拟器、系统级工具或调试器,因为‘我只是付钱让人把工作做完,我会对他大喊大叫,直到他更努力地工作。’”

他说,这种行为仍然很普遍,因为有足够多的公司愿意每年削减最低的10%,让所有人都保持警觉。

然而,FPGA soc是真正的soc,需要同样严格的设计和验证方法。“事实上,织物是可编程的,并不会真正影响设计和验证,”Clubb说。“如果你做一个SoC,是的,你可以做我的一些客户所说的‘乐高’工程。这是方框图方法。我需要一个处理器,一个内存,一个GPU,一些其他的部件,一个DMA内存控制器,WiFi, USB和PCI。这些都是你组装的“乐高”积木。问题是,你必须验证它们是否有效,它们是否协同工作。”

尽管如此,FPGA SoC系统开发商正在快速赶上他们的SoC弟兄,其中核查方法。

“They’re not as advanced as the traditional silicon SoC developers that deal with the mindset of, ‘This is going to cost me $2 million, so I’d better get it right,’ because the cost of failure [with FPGAs] is lower,” said Clubb. “But if you spend $2 million developing the FPGA and you’ve got it wrong, and now you’re going to spend three months fixing the bugs, there are still issues to contend with. How big is the team? How much is it going to cost? What’s the penalty at time to market? These are all very much harder costs to clearly quantify. If you’re in a consumer space, it’s almost somewhat unlikely with an FPGA that you’re really concerned about making it in time for Christmas, so there’s a bit of a different priority. The total cost and risk of doing an SoC in custom silicon and pulling the trigger and saying, ‘This is my system, I’m done,’ you’re not seeing so much of that. As we all know, the industry is consolidating and there are fewer big players doing big chips. Everybody else has to figure out a way to do it, and these FPGAs are delivering that.”

一个新的权衡选择
桑切蒂说,工程团队在设计时有意为目标设备留有选择余地,这种情况并不少见。“我们看到很多公司创建了RTL并验证它,几乎不知道他们是要使用FPGA还是ASIC,因为很多时候这个决定可能会改变。你可以从FPGA开始,如果你达到一定的音量,经济上可能更有利于调试ASIC。”

这对于今天的AI应用空间尤其如此。

“营销副总裁Mike Gianfagna Mike Gianfagna说:”正在聘用技术的进展“eSilicon。“显然,AI算法已经存在了很长时间,但现在我们突然间,我们如何在如何使用它们方面变得更加复杂,并且在近实时速度运行它们的能力就是这里的魔力。它始于CPU,然后它移动到GPU。但即使是GPU也是一个可编程的设备,因此一定尺寸的一般性拟合所有的设备。虽然架构擅长并行处理,因为这就是图形加速的全部,这方便,因为这就是AI的全部。在很大程度上它很好,但它仍然是一种通用方法。因此,您可以获得一定程度的性能和功率占用。有些人接下来正在搬到FPGA,因为你可以比你的GPU更好地瞄准电路,并获得性能和功率效率的加紧。ASIC是电力和性能的最终,因为您有一个完全自定义的架构,完全确实需要您需要的,不再少。这显然是最好的。“

AI算法棘手地绘制到硅中,因为它们处于几乎不断变化的状态。所以在这一点上做一个完整的自定义ASIC不是一个选项,因为它是硅子来的时候了。“FPGA真的很好,因为你可以重新编程它们,所以这场真正昂贵的芯片的投资不会丢失,”Gianfagna说。

在这里,有一些特定的自定义内存配置,以及某些子系统功能,如卷积和转置内存,会被反复使用,所以虽然算法可能会改变,但有一些特定的块不会改变和/或被反复使用,他补充道。考虑到这一点,eSilicon正在开发一个带有一些软件分析的底盘来研究人工智能算法。其目标是能够更快地为特定应用程序选择最佳架构。

“FGPAS为您提供更改机器或发动机的灵活性,因为您可能会遇到新的网络,并且在您可能没有对其的情况下冒险的感觉中冒险冒险,因此您可以拥有这种灵活性,“Esilicon的知识产权工程副总裁Deepak Sabharwal说,”“但是,FPGA总是会受到容量和性能的限制,因此您将无法使用FPGA获得生产级规格。你可以玩它和分组的东西,但最终你必须要去一个ASIC。“

嵌入式LUTS.
在过去的几年中获得了另一个选择的选项是嵌入式FPGA,它将可编程性建立在ASIC中,而是将ASIC的性能和功率益处添加到FPGA中。

“FPGA SOCS仍然主要是FPGA,用于加工的芯片面积相对较少,”杰夫特特(CEO)的Geoff Tate表示Flex Logix.。“在框图中,刻度看起来不同,但在实际的模具中,它主要是FPGA。但是,有一类应用和客户在FPGA逻辑与SOC的其余部分之间的正确比率是具有较小的FPGA,使其在更具成本效益的芯片尺寸中的RTL可编程性。“

这种方法正在寻找牵引航空航天,无线基础,电信,网络,汽车和视觉处理等领域的牵引力,特别是AI。“算法改变如此之快,筹码几乎已经过时了,随着他们回来的时间,”泰特说。“与一些嵌入式FPGA有了一些嵌入式FPGA,它可以让他们更快地迭代算法。”

这在从被驱动到越来越自主的汽车的汽车过渡中尤其明显。虽然失败和老龄化的问题受到了很多关注,但挑战是维持“优雅退化”,据系统工程副总裁Raymond Nijssen介绍ACHRONIX.。“表现和质量随着时间的推移而变化,标准也是如此。汽车需要识别儿童过度街道的要求相对较近。没有人知道法规如何改变,或者你如何测试该规定。你如何测试尚未知道的标准。“

Nijssen说,在这种情况下,可编程性成为避免重新制作整个芯片或模块的必要条件。

调试设计
不过,这只是问题的一部分。与所有soc一样,理解如何调试这些系统,并构建测试工具,可以帮助在问题变成主要问题之前识别问题。

“随着系统fpga变得越来越像SoC,它们需要SoC中所期望的开发和调试方法,”该公司首席执行官Rupert Baines说UltraSoC。有一个(也许天真)的信念,因为你可以在FPGA中看到任何东西,它很容易调试。这是位级别的真实,具有波形查看器,但在获得系统级别时它不会保持真实。最新的FPGA显然是系统级。此时,从位探测型排列中获得的波形级视图并不可观。您需要一个逻辑分析仪,协议分析器,以及处理器核心本身的良好调试和跟踪功能。“

FPGA的规模和复杂性要求验证过程类似于asic。复杂的UVM基于试验台支持模拟,通常通过仿真而备份。正式工具在此处发挥关键作用,通过自动设计检查通过基于断言的验证以及一系列强大的求解器来验证。虽然FPGA可以比ASIC更快速且更廉价地更换,但是在大型SOC中检测和诊断错误的难度意味着必须在进入带上的实验室之前进行全面验证,但敏捷的Khan表示。

事实上,在一个领域,FPGA SoC的验证需求可以说比RTL输入和合成后网表之间的asic等效检查更大。FPGA的细化、合成和优化阶段通常比传统的ASIC逻辑合成流程对设计进行更多的修改。这些改变包括在循环边界上移动逻辑,以及在内存结构中实现寄存器。彻底的顺序等价检查是必要的,以确保最终的FPGA设计仍然符合RTL中的原始设计者的意图,Khan补充说。

在工具方面,还有空间优化性能。“通过嵌入式视觉应用程序,其中很多是为Zynq编写的,您可以每秒获得5帧。但是,如果您加速了硬件,则每秒可能获得25到30帧。这为新型设备铺平了道路。问题是这些设备的仿真和验证并不简单。您需要软件和硬件之间的集成,这很难。如果你在SoC中运行一切,那就太慢了。每种模拟可能需要五到七个小时。如果您共同模拟,您可以保存那个时间,“aldec的de luna说。

简而言之,现在在复杂的FPGA中使用复杂ASIC中使用的相同类型的方法。这正变得越来越重要,因为这些设备用于功能安全类型的应用程序。

“这就需要进行正式分析,以确保存在错误传播路径,然后验证这些路径,”该公司营销部门的集团总监亚当•谢勒(Adam Sherer)表示韵律。“这些东西非常适合形式分析。传统的FPGA验证方法使得这些类型的验证任务几乎不可能完成。在FPGA设计中仍然很普遍的假设是,它非常快速和容易地进行硬件测试,以系统速度运行,并做一个非常简单的模拟级别,只是为了进行完整性检查。然后你给设备编程,进入实验室,开始运行。这是一个相对快速的路径,除了在实验室的可观测性和可控性是极其有限的。这是因为只有将数据从FPGA深处拉到引脚上才能进行探测,这样你才能在测试器上看到它们。”

Dave Kelf,首席营销官BREKER验证系统对此表示赞同。“这在这些设备的验证方式上创造了一个有趣的转变。在过去,通过将设计加载到FPGA本身并在测试卡上实时运行,尽可能地对较小的设备进行验证。随着soc和软件驱动设计的出现,这种“自我原型”式的验证可能与软件驱动技术配合得很好,并且在过程的某些阶段确实如此。然而,在原型设计过程中识别问题并调试它们是非常复杂的。这个早期验证阶段需要仿真,因此soc风格的fpga看起来越来越像ASIC。对于这个两阶段的过程,它们之间的共性使得过程更加有效,并且包括通用的调试和测试工作台。便携式刺激等新技术将提供这种通用性,事实上,使SoC fpga更易于管理。”

结论
Sherer说,展望未来,用户正在考虑将现在ASIC世界中使用的更严格的流程应用到FPGA流程中。

他说:“有大量的培训和分析,他们希望fpga中有更多的技术用于调试,以获得那种级别的支持。”“FPGA社区往往落后于这种艺术状态,往往使用非常传统的方法,所以他们需要在空间、规划和管理、需求可追溯性方面进行培训和意识。这些来自SoC流的元素在FPGA中是绝对必要的,并不是FPGA本身驱动它,而是最终应用程序中的那些工业标准驱动它。对于一直在FPGA环境中工作的工程师来说,这是一种改造和再教育。”

asic和fpga之间的界限正在模糊,这是由要求灵活性的应用程序、日益将可编程性与硬连线逻辑相结合的系统架构以及现在正应用于两者的工具所驱动的。而且这种趋势不太可能很快改变,因为许多需要这种组合的新应用领域仍处于起步阶段。

有关的故事
嵌入式FPGA来自年龄
由于芯片和系统设计变得更加异质,因此这些设备正在受欢迎。
技术谈判:EFPGA验证
嵌入式fpga与离散fpga和asic的比较。
技术讲座:EFPGA时机
关于嵌入式FPGA的时间是唯一的独特性的。
技术谈判:EFPGA编程
如何与嵌入式FPGA一起与Asics不同。
技术谈判:FPGA RTL检查
如何确保FPGA中的RTL与您开发的匹配。
技术谈判:EFPGA密度
如何提高可编程逻辑中的密度。



1评论

凯文卡梅伦 说:

经过几十年的研究,FPGA的人都没能做出快速的代码到FPGA方法论,现在他们要做人工智能了?-我想没有。他们甚至不知道如何使用自己的硬件来做FPGA验证或加速自己的工具(据我所知)。

留下一个回复


(注意:此名称将被公开显示)