嵌入式FPGA的案例得到加强和扩大

嵌入式FPGA是集成在ASIC或SoC中的IP核,正在赢得转换。系统架构师开始意识到eFPGA的优势,它提供了可编程逻辑的灵活性,而无需FPGA的成本。
可编程逻辑对于加速需要频繁更新的机器学习应用程序尤其具有吸引力。eFPGA可以为一些架构师提供他们需要的封面,以便他们知道需要经常更新的产品。
传统上,现场可编程门阵列(FPGA)对于大多数应用而言被认为过于昂贵,并且经常被降级为原型或为新兴标准提供上市时间优势。但经济学正在发生变化。将可重新编程的织物集成到SoC中越来越被视为可行且有价值的选择。
“使用eFPGA,您可以定义查找表(LUT),寄存器,嵌入式存储器和DSP模块的数量。您还可以控制宽高比,I / O端口数量,在功耗和性能之间进行权衡,“ Achronix的系统架构师Kent Orthner说。“与此同时,该行业正在接受异质性。你需要不同的块来满足不同的需求。所以你可能有一个安全的区块,这是一个eFPGAs发挥良好的地方。它们可以是专业的,但你不必保持这种方式。“

图1:具有可编程加速度的SoC。资料来源:Achronix
这改变了FPGA技术的经济性。“多年来[可编程逻辑]非常昂贵,” Synopsys基于FPGA的综合软件工具高级产品营销经理Joe Mallett说  。“每个LUT的成本很高,并且在硅片上获得可用数量的组合逻辑太昂贵了。拐点大约在40nm左右,然后每个LUT的成本变得足够低,你可以在SoC或ASIC上放置足够的逻辑,这是有道理的。“
自40nm首次推出以来已有十多年了。Flex Logix首席执行官Geoff Tate说:“建筑师有一个新的工具可以考虑并设法绕过它,需要时间。” “五年前,嵌入式FPGA成为可用的。[建筑师]在此之前从未有机会考虑过它。随着时间的推移,通过教育和理解,并证明该技术是可行的并且可以用于生产,我们看到建筑师正在研究如何充分利用嵌入式FPGA。“
现在有几个特征和趋势使eFPGA具有吸引力:
  1. 产品灵活性被视为主要应用程序,现在对迁移到新节点的速度越来越快。
  2. 映射到FPGA架构的算法可以胜过许多其他处理选项,同时保持可升级。
  3. 集成减少了部件数量,从而降低了成
  4. 集成提供额外的安全性,并增加了处理未来威胁的灵活性。
  5. eFPGA可以通过在现场升级产品来延长产品寿命或增强业务模式。
  6. 包含FPGA架构的新型微控制器可能是未来的选择。
产品灵活性
很少有人声称传统的摩尔定律仍然适用于大多数产品开发。“对于大量的设计,你不需要7nm的所有进步,” Cadence产品管理和营销高级组主管Frank Schirrmeister说。“对于他们来说,较小的节点可能就足够了,因此嵌入SoC的FPGA的灵活性很好。”
eFPGA的可编程性使芯片开发完成后可以即时更改IC功能。“这使得单个IC能够解决各种用例并适应不断变化的需求,而不是强制开发另一个ASIC,” 西门子事业部门Mentor的验证技术专家Brian Mathewson补充道。“与传统门中实现的相同逻辑相比,结合可编程逻辑结构可能在功率,性能和设计成本方面受到损害。这推动了目标应用的成本和灵活性之间的权衡。“
但有时传统的大门毫无意义。“如果我们考虑串行I / O,有许多相关标准,人们希望能够灵活地实现所有这些标准,”Flex Logix的Tate说。“但你不必让整个串行I / O进入eFPGA。对于所有标准,它的大部分都保持不变。“

图2:Flex Logix的推理芯片架构,具有可重新配置的数据路径。
OneSpin Solutions的工程经理Tobias Welp 对此表示赞同。“可编程I / O是一种流行的应用程序。除了产品变化之外,它还促进了新接口标准的使用,这些标准可能仍有待解决的问题以及为未来修订计划的其他功能。“
增加市场规模是有道理的。“由于单个SoC可以通过定制eFPGA上的逻辑来定位多个用例,因此市场分散,因此具有适度的单位体积,非常适合eFPGA部署,”Quicklogic可编程IP工程高级主管Himanshu Sanghavi说道。 。“一个这样的市场是物联网。虽然整个市场的销量非常高,但许多子细分市场都属于物联网领域,从家庭自动化到可穿戴设备,再到各种智能传感器。这些细分中的每一个都有特定要求,与其他细分市场中的用例不同。“
性能
机器学习正在为产品添加一些新要求。“可以在SoC中添加FPGA架构,以便通过特定领域的指令集实现引擎和处理器的变化,”OneSpin的Welp指出。“在某些情况下,有可能将机器学习和其他关键应用程序的算法映射到硬件中,然后随着结果的改进而改进设计。”
SoC设计人员不断评估其应用竞争解决方案之间的性能和灵活性权衡。“在频谱的一端,通用可编程处理器通过软件提供最大的灵活性,而在另一端,RTL设计的定制固定功能块提供最佳的功率/性能特性,”Quicklogic的说法桑海维。“FPGA介于两者之间,提供比通用CPU更好的功率/性能,比固定功能RTL更灵活。因此,嵌入式FPGA最适合SoC设计任务,其中一些后硅可编程性是必须的,但纯软件解决方案不能满足应用的性能或功耗目标。
降低集成成本
主流FPGA供应商长期以来一直在将越来越多的功能集成到他们的设备中,使其成为具有大量可重编程结构的SoC。“FPGA供应商现在提供完全符合SoC标准的高端设备,包括CPU,专业引擎和大型存储器,”Welp说。“相反,SoC开发人员现在能够将FPGA架构嵌入到他们的设计中,以提供高度的灵活性。任何类型的芯片都可以称为异构计算平台,具有固定处理器,可编程引擎,可编程逻辑和存储器的丰富组合。“
但是有一个重要的区别。“传统FPGA有一些高级固定模块,他们希望客户能够使用其中的一些,”嵌入式可编程逻辑公司Menta的业务开发总经理兼副总裁Yoan Dupret说。“FPGA与将FPGA架构嵌入SoC之间的主要区别在于,您不认为它是一张白纸,您可以使用eFPGA做任何您想做的事情。改善功耗/性能/面积(PPA)权衡的一种方法是限制您将使用的架构,这并不难,因为您的ASIC或SoC已经限制了它们将拥有的应用程序的数量。
安全性
安全性正日益成为互联产品的关注点。“eFPGA允许开发人员灵活地做一些事情,例如改变安全协议并使他们的芯片适应不断变化的市场和客户需求,”Tate说。“考虑到设计芯片的成本有多高,你可以做的任何事情都可以延长芯片的使用寿命,应用范围也会提高你的投资回报率。”
这在芯片预计可持续十年或更长时间的应用中尤为重要,例如汽车或工业市场。今天实施的安全措施可能在十年内不被认为是安全的。
延长使用寿命,改变经济性
产品寿命也可以扩展到已部署的产品。“eFPGA的灵活性有助于延长SoC的上市时间,因为在SoC投入生产后熟知的新用例可以通过使用eFPGA来解决,”Sanghavi说。“嵌入式FPGA提供了超过双芯片解决方案的面积,功耗和成本优势。”
这可以使得能够开发新的商业模型,使得可以向部署的产品添加附加功能,从而将商业模型从纯销售模型改变为服务模型。
此外,eFPGA可以对整个设计过程产生根本性影响。而不是开发具有新IP的另一芯片,相同的芯片可以更新或甚至应用于新市场。
“随着开发芯片的成本上升,衍生产品的成本变得越来越重要,”Achronix的Orthner说。“你希望得到更多的回报。这使您可以在众多不同的功能和市场中为ASIC分发NRE。你可以开发一种芯片并将其作为十几种不同的部件出售。“
这种方法可以涵盖从SoC到微控制器的所有方面,这些方法长期以来一直用于需要软件灵活性的产品。
“今天,几乎所有客户都自己编程FPGA,”Tate说。“如果您要构建并销售客户将对其进行编程的芯片,那么就会产生一系列支持和业务问题。公司希望在他们进行编程时构建一个芯片,以确保他们完全理解硬件和软件中的所有问题以及他们可以在哪里首先控制所有问题。然后他们可以看下一步,让客户对其进行编程。“
结构考虑因素
可以通过多种方式集成eFPGA结构,但必须仔细考虑预期的应用。“有两种主要的集成类型,”Synopsys的Mallett说。“一个被用作加速器,可以在处理中做一些繁重的工作,另一个是更多潜在的错误修复或硅配置或秘密酱,不会公开可见。这些是eFPGA的不同用例。对于重型加速,它将用于加速功能,它更接近带嵌入式处理器的独立芯片的想法,但面料数量更少。“
如果没有适当的考虑,整合可能会导致令人失望的结果。“建筑师需要了解权衡,以及如何以最少的惩罚从eFPGA中获得最大优势,”泰特说。“人们开始考虑拥有灵活性是多么伟大,但随后他们试图占用芯片的巨大块并将其放入eFPGA中。他们最终发现它太大而且昂贵。建筑师必须弄清楚如何使用它。他们必须检查RTL并找出哪些部分需要灵活,哪些部分可以保留在硬连线逻辑中。他们必须对架构进行划分,这需要一些工作和思考。他们应尽可能少地将其架构放入灵活的eFPGA中,以最大限度地降低面积成本,但仍能获得所需的灵活性。“
织物的尺寸是至关重要的。“有几种不同的方法可以解决这个问题,”Sanghavi说。“如果SoC设计人员对他们计划映射到嵌入式FPGA的硬件有一个很好的了解,他们可以使用供应商提供的工具来决定结构的大小。或者,在许多情况下,SoC设计人员正在使用嵌入式FPGA,因为他们不确定在IC的整个生命周期中需要使用哪些硬件,并且需要在多个系统设计中分摊高SoC设计成本。在这种情况下,最好使用仍能满足SoC芯片尺寸预算的最大eFPGA。面料越大,它提供的硅后灵活性就越大。“
这可能是一个很好的路线。“eFPGAs的大小可以根据他们所服务的功能而变化,”Mentor的Mathewson补充道。“今天的SoC内置的额外灵活性总是很有用,但是要在这方面建立这种灵活性会产生影响。预先限制潜在的设计空间至关重要。”
这取决于最终市场。“如果你看一下拥有固定组件的FPGA的人,你就会有特定的产品类别,例如带有大量FPGA的大型设备,因为你有视频和处理部分要映射到它,而其他人可能有较小的FPGA部分,“Cadence的Schirrmeister说。“你需要为FPGA提供提供I / O带宽所需的数据访问量,你需要确定处理需求,并确定速度和大小。你用一些示例应用程序来做到这一点。“
问题类似于为软件调整内存大小。“你永远不会拥有足够的软件内存,但这并不意味着你能负担得起你想要的东西,”泰特说。“我们提供的工具可以确定,对于各种RTL,阵列需要多大以及运行速度有多快。然后他们必须作出判断,因为你永远不知道将来会发生什么,以及我的RTL会变得多大。“
人们今天使用什么判断?“一旦客户找到了他们对少数代表性应用所需的东西,就可以调整他们所需的资源,”Menta的Dupret说。“他们可能会将这些资源增加一定数额。有些可能会达到10%,而其他可能达到50%。今天真是个猜。“
电源管理
功耗降低很重要,但在考虑eFPGA等灵活资源时,它变得更加困难。“所有晶体管都会泄漏,除非你进行电源门控,这也需要成本,”泰特说。“对于某些应用,通常为40nm及以上,功率非常关键,他们希望包括功率门控功能。一般来说,在28nm和16nm,人们更注重速度,而功率门控会降低性能。“
功率门控也会导致合成并发症。“当你看到SoC时,你可以根据使用需求打开和关闭块,”Mallett说。“还有更多的独立电源控制。当您将FPGA组合到SoC中时,可能会打开和关闭,编程和重新编程,因此您必须了解这些可能性。您必须了解您如何编程块以及它与系统的关系。对于综合,我可能在FPGA中有多个电源域,我需要注意并知道这意味着什么。这可能会改变我进行设计的方式,因为如果您跨越电源域,则必须确保正确的部件已通电。“
重要的权衡是指定功能所消耗的能量。“当您处理对功耗非常敏感的应用程序时,例如IoT应用程序,eFPGA的大小通常要小得多,而且它的应用程序数量会更加有限,”Dupret说。“他们不需要拥有那么多的扩展空间。但另一方面,建筑师必须摆脱eFPGA总是会占用大量空间和力量的心态,因为可能会有很多情况并非如此。它甚至可能比其他解决方案更具区域效率或功效。“
这增加了产品开发的复杂程度。“随着集成度的不断提高,编程模型变得更加复杂,”Silexica首席执行官Max Odendahl 表示。“工程师现在需要考虑应用程序如何在处理元件和FPGA架构中分布,并知道如何编程每个元素。在设计过程中还必须考虑系统级内存依赖性和高速缓存一致性。EDA工具供应商需要跟上步伐并提供有助于简化编程模型的实用程序。

用户喜欢...

将eFPGA添加到SoC中比仅添加加速器更复杂

选择将可编程逻辑添加到带有 eFPGA 的SoC中只是一个开始。其他选择包括涉及多少查找表(LUT),多少路由和什么拓扑,数据如何传入和传出结构,数据是否需要与系统存储器一致,如何编程和...


科学家发现了FPGA中的漏洞,影响了云服务和物联网

可现场可编程门阵列(FPGA)就是计算机制造商的乐高积木:可以比其他计算机芯片更灵活的方式使用的电子元件。即使是专门用于云服务的大型数据中心,例如一些大型技术公司提供的数据中...


Arduino 环境中的 FPGA:使用 Alorium 的 Snō 模块支持预配置和定制 IP

当固件在微控制器或微处理器上的运行速度过慢时,现场可编程门阵列 (FPGA) 可解决实时嵌入式设计的硬件问题。同时,FPGA 还具有外设灵活性。然而,要使用 FPGA,设计工程师就需要学习全新的...


ADXL345 Pmod Xilinx FPGA参考设计

该ADXL345是一个小的,薄的,超低功耗,3轴加速度计具有高分辨率(13位)测量高达±16 克。数字输出数据格式为16位二进制补码,可通过SPI(3线或4线)或I2C数字接口访问。ADXL345非常适合移动设...


通过 Arduino MKR Vidor 4000 快速轻松地应用 FPGA

许多设计人员迟早都会发现,微控制器或微处理器上运行的固件可能会变得太慢。现场可编程门阵列 (FPGA) 为此提供了一种可编程方法,以硬件速度来解决高速、实时、嵌入式设计问题。然而,...


面向机器学习和通信的嵌入式FPGA优化

我回到了Burrous B 5500和IBM 360大型机,所以图表 (图1) 在里面 阿克罗瓦氏 包括vax-11/780的Speedcore第4代演讲吸引了我的眼球。该图突出了90年代业绩的加速增长和世纪之交后的平稳增长。我们现在正...


使用FPGA和最少的模拟电路产生电源

偶尔我们遇到了为一些微型模拟电路供电的需求,现成的电源IC对于这些任务来说太过分了。当您的需求以毫安为单位时,这尤其适用。如果你的板载FPGA还有一些备用引脚和资源,那么不使用...


使用Arduino MKR Vidor 4000快速轻松地应用FPGA

正如许多设计人员迟早会发现的那样,在微控制器或微处理器上运行的固件可能会变得太慢。这就是现场可编程门阵列(FPGA)提供可编程方式,以硬件速度解决高速,实时,嵌入式设计问题。...


使用FPGA通过机器学习构建高性能嵌入式视觉应用

本文将介绍ML处理的要求以及FPGA解决许多性能问题的原因。然后,它将介绍一个合适的基于FPGA的ML平台以及如何使用它。...


FPGA配置采用高速NOR闪存

NOR闪存被广泛部署为FPGA的配置器件。工业,通信和汽车ADAS应用中的FPGA使用取决于NOR Flash的低延迟和高数据吞吐量特性。快速启动时间要求的一个很好的例子是汽车环境中的摄像机系统。点火后...


Xilinx详细介绍类似SoC的FPGA

Xilinx发布了其下一代Everest架构的第一个细节,现在称为Versal。它表明,随着CPU,GPU和FPGA变得越来越相似的SoC类设备,微处理器格局越来越模糊。 Versal缩小了中央FPGA模块的尺寸,为更多ARM,D...


为物联网设计添加高性能语音关键字检测:第 1 部分 - 使用 FPGA

随着Alexa、Hey Siri或Hi Google等多个产品成功响应关键词,关键字检测 (KWS) 已成为越来越多嵌入式应用的一项重要要求。虽然典型的先进 KWS 解决方案依赖于复杂的卷积神经网络 (CNN) 和其他深度神...


使用 FPGA 构建具有机器学习能力的高性能嵌入式视觉应用

随着摄像头和其他设备产生的数据在快速增长,促使人们运用机器学习从汽车、安防和其他应用产生的影像中提取更多有用的信息。专用器件有望在嵌入式视觉应用中实现高性能机器学习 (ML...


基于FPGA的模块化快速原型系统是实现高性能电力电子研发项目的基础

FPGA提供了令人印象深刻的计算能力,这在电力电子系统中的要求越来越高。基于FPGA的模块化快速原型系统是实现高性能电力电子研发项目的基础。 电力电子中算法的必要性 随着当今电力电子...


汽车行业 FPGA桥接解决方案能够解决许多问题

在过去十年里,随着智能手机及其应用生态体系的不断发展,汽车电子领域中移动相关应用的创新技术也深受其影响。汽车制造商已经开始将用于智能手机的相同处理器平台应用到新一代汽车中...


QDR SRAM接口FPGA 详细Verilog代码

QDR SRAM介绍 QDR 具有独立的读、写数据通路,均使用DDR,在每个时钟周期内会传输四个总线宽度的数据 (两个读和两个写),这就是QDR四倍数据速率的由来。 这里用到的是典型2字突发的QDR,...