侵权投诉
订阅
纠错
加入自媒体

当FPGA越来越像SoC,FPGA跟ASIC还有啥区别

2018-06-08 12:04
来源: 与非网

市场可能性

这种方式基本上已经把FPGA变成了具有多种可能性的瑞士军刀。

“如果你往回看,FPGA只是一堆LUT和寄存器,而不是门,”NetSpeedSystems市场和业务开发副总裁AnushMohandass说。“这里有一个典型问题。如果您将任何通用器件和专用器件进行比较就会发现,通用计算可以提供更大的灵活性,而专用计算可以提供性能或效率优势。赛灵思和Altera一直试图越来越多地融合通用计算和专用计算,他们注意到,几乎每个FPGA客户都拥有DSP和某种形式的计算。所以他们在FPGA里面加入了ARM内核、DSP内核,还加入了所有不同的PHY和常用模块,他们把这些东西硬化了,使得效率更高,并且性能曲线变得更好。”

这些新功能为FPGA在各种新兴市场和现有市场中发挥重要作用打开了大门。

“从市场角度来看,您可以看到FPGA肯定会进入SoC市场,”Synopsys的高级营销总监PiyushSancheti表示。“是做一个FPGA还是做一款成熟的ASIC牵扯到经济问题。它们的界限开始变得模糊不清,我们看到越来越多的公司-特别是在某些市场上-正在在量产阶段使用成本更低的FPGA。”

从历史上看,FPGA主要用于原型阶段,在生产用途而言,它仅限于航空航天、国防和通信基础设施等市场,Sancheti说。“现在市场正在扩展到汽车、工业自动化和医疗设备。”

AI:一个蓬勃发展的FPGA市场

一些系统供应商/OEM采用FPGA,希望优化其IP或AI/ML算法性能。

NetSpeed的Mohandass表示:”他们想要打造自己的芯片,对其中很多人来说,做ASIC可能有点吓人。他们也可能不想花费3000万美元的晶圆成本来获得芯片。对他们来说,FPGA是一个有效的切入点,他们拥有独特的算法、自己的神经网络,他们想要工程化,看看它是否能够提供他们所期望的性能。”

西门子子公司Mentor的CatapultHLS综合与验证高级产品营销经理StuartClubb表示,目前AI应用面临的挑战是量化。“需要什么样的网络?我如何建立这个网络?什么样的内存架构?即便你只有几层神经网络,当你获得很多采用若干系数的数据之后,很快就会转化成为数百万个系数,存储带宽也会变得非常恐怖。没有人真正知道正确的架构是什么。如果你不知道答案,你肯定不会直接上来就设计一个ASIC。”

在企业网络领域,最常见的问题是密码标准似乎一直在变化。Mohandass表示:“与其尝试构建一颗ASIC,不如将密码引擎放在FPGA中设计。“或者,如果您在全球网络中进行任何类型的数据包处理,FPGA仍然能够为您提供更多的灵活性和更多的可编程性。这就是灵活性的用武之地,他们也已经利用了这种灵活性。你可以称之为异构计算,它看起来仍然像一个SoC。”

新规则

随着新一代FPGASoC的投入使用,旧规则不再适用了。“具体来说,如果你还在电路板上进行调试,那就太落伍了,”Clubb指出。“虽然在开发板上进行调试被认为是一种成本较低的解决方案,但这是在早期阶段使用的手段:‘它是可编程的,您可以在它上面放置一个示波器,观察一下现象,看看发生了什么。如果发现了一个错误,我可以修复它,在一天内修改代码,然后将它重新烧录到电路板上,然后再定位下一个bug,'这太疯狂了。在员工的时间不被视为成本的很多公司,管理层不会购买模拟器或系统级工具或调试器,因为'我付了钱让这个人完成工作,我会一直训他,直到他努力工作。'”

这种行为仍然很常见,Clubb说,因为有很多公司实行10%的末位淘汰,以鞭策每个员工好好干活。

但是,FPGASoC是真正的SoC,需要严格的设计和验证方法。“器件可编程不会真正影响设计和验证,”Clubb说。“如果你要设计一颗SoC,你可以按照我听很多客户说起过的‘乐高’工程,采用框图式的方法。我需要一颗处理器、一块内存、一颗GPU、一些其他零件、一个DMA内存控制器、WiFi、USB和PCI,这些都是您组装用的'乐高'积木。麻烦之处在于必须验证它们能够工作,并且能够一起工作。”

不过,FPGASoC系统开发人员正在迅速掌握SoC从业者们关注的验证方法。

“因为[使用FPGA]的成本更低,所以FPGASoC系统开发人员的思考方式和传统的芯片SoC开发人员不同,传统SoC开发人员的处理思路是'这将花

费我200万美元,所以我最好做好万全的准备',“Clubb说。“但是如果你花费200万美元开发FPGA,没搞对,现在你将需要花费三个月的时间修复这些bug,这也是需要考虑的成本。开发团队有多大?要花多少钱?没有及时上市的惩罚是什么?这些都是非常难以清晰量化的成本。如果您处于消费领域,需要在圣诞节期间及时上市的产品上几乎不可能使用FPGA,所以这有一个不同的优先级。在定制芯片中做一款SoC需要面临巨大的整体成本和风险,因此越来越少见了。众所周知,这个行业正在整合,大玩家越来越少。每个选手都必须找出一种方式实现自己的设计,这些FPGASoC可以帮助实现这一目标。”

新的折衷选择

Sancheti说,很多工程团队不介意更换目标器件。“我们看到许多公司创建RTL并对其进行验证,但几乎不知道他们最终会选择FPGA还是ASIC,因为这个决定可能会变很多次。你可以从FPGA开始,当达到一定数量后,如果ASIC成本更低,就转到ASIC上。”

这种局面对于今天的AI应用领域尤其普遍。

eSilicon营销副总裁MikeGianfagna表示:“加速AI算法速度的技术还在发展中。人工智能算法其实已经存在了很长一段时间,但是现在,我们在使用AI方面突然间变得更加复杂,并且可以非常神奇地以接近实时的速度运行它们。最初的AI算法运行在CPU上,然后转移到了GPU上。GPU也可以认为是一种可编程器件,尽管它具有一定的通用性。GPU架构擅长并行处理,因为图形加速运算就是并行计算,所以在GPU上跑AI算法很方便,因为AI基本上就是并行处理。在很大程度上来说,GPU确实很好,但是它仍然是一种通用的方法,你可以在一定的功耗下获得一定程度的性能。现在,有些人接下来要转向FPGA运行AI算法,因为FPGA可以提供比GPU更好的专用电路,而且性能和功效上都能得到提升。ASIC在功耗和性能方面最为出色,因为您拥有可以完全满足您的需求的自定义架构,不多不少,显然最好。”

人工智能算法很难映射到芯片上,因为它们几乎总是在变化。就这一点可以看出,做一款全定制的ASIC完全不合时宜,因为芯片出厂时老的算法就已经过时了。“FPGA显然可以很好地应对这种情况,因为你可以对它们进行重新编程,这样对芯片的昂贵投资就不会打水漂了。”Gianfagna说。

这里有一些自定义的内存配置,以及某些像卷积和转置存储等可以再次使用的子系统功能,因此,虽然算法可能会更改,但某些块不会更改,可以一次又一次地使用。考虑到这一点,eSilicon正在开发一款具有软件分析功能、可以查验AI算法的机箱,目标是能够更快速地为特定应用选择最佳架构。

“使用FPGA,可以灵活地更换机器或者引擎,因为您可能会遇到一种新的神经网络,选择ASIC则要承担风险,因为你可能无法获得灵活性,”eSilicon知识产权工程副总裁DeepakSabharwal说。“然而,FPGA在容量和性能方面总是受到限制,所以用FPGA无法真正达到产品级规格。你可以用它做实验,对事物分组,但最终你将不得不选用一颗ASIC。”

<上一页  1  2  3  下一页>  
声明: 本文系OFweek根据授权转载自其它媒体或授权刊载,目的在于信息传递,并不代表本站赞同其观点和对其真实性负责,如有新闻稿件和图片作品的内容、版权以及其它问题的,请联系我们。

发表评论

0条评论,0人参与

请输入评论内容...

请输入评论/评论长度6~500个字

您提交的评论过于频繁,请输入验证码继续

暂无评论

暂无评论

    电子工程 猎头职位 更多
    扫码关注公众号
    OFweek电子工程网
    获取更多精彩内容
    文章纠错
    x
    *文字标题:
    *纠错内容:
    联系邮箱:
    *验 证 码:

    粤公网安备 44030502002758号