加入星计划,您可以享受以下权益:

  • 创作内容快速变现
  • 行业影响力扩散
  • 作品版权保护
  • 300W+ 专业用户
  • 1.5W+ 优质创作者
  • 5000+ 长期合作伙伴
立即加入
  • 正文
  • 相关推荐
  • 电子产业图谱
申请入驻 产业图谱

芯片世界观︱想靠嵌入式FPGA摆脱“备胎”局面,FPGA厂商还要克服这些技术挑战

2017/03/01
10
阅读需 30 分钟
加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论

 


随着芯片和系统设计变得越来越异构,FPGA 在一些关键的功能中变得越来越受欢迎。

随着 FPGA 越来越被视为异构设计中的关键组件,它的特性日益丰富,人们对它的关注度也日益提升。

在过去,只要产品的出货量达到一定程度,FPGA 就会被降级为测试用芯片,最终被功耗更低和性能更高的 ASIC 取代。在过去的二十年中,FPGA 在整个供应链中的地位逐渐上升,从最初的逻辑器件到如今的协处理器,它正逐渐被应用在从数据中心超级计算机的各种高性能关键任务中。

现在,作为降低主处理器集群工作负荷的一种方式,它们被嵌入到采用 CPU 集群的大型设备中,和 CPU 分享相同的总线进行预处理或后处理。嵌入式 FPGA 还被用于网络加速,执行报文处理,在报文交换前或者必须由 CPU 决定如何处理这些信息之前,对报文进行深度检测、加密 / 压缩或其他类型的报文处理任务。在无线应用中,嵌入式 FPGA 被用作数字前端,在功率放大器和无线卡之间,或者在通信链路中执行线性化、预失真和其他任务。

因为 FPGA 是可编程的,所以在系统运行期间,可以使用它们对系统进行优化。多年来,移动基站一直依赖 FPGA,主要原因是移动基站的总体部署数量不大、功耗不是主要考虑因素、定价不像消费类设备或者移动设备那样要求严苛。OneSpin 解决方案营销副总裁 Dave Kelf 说:“移动基站供应商真正需要的是在系统运行期间对 FPGA 进行重新配置。”

一段时间以来,移动基站提供商对嵌入式 FPGA 表现出了足够的兴趣。一方面,协议处理这种大活仍需要处理器来处理,另一方面,其它的一些任务中会使用许多固定功能执行调制和误差校正。“这是一些固定功能,必须非常高效和快速地工作,这是 ASIC 的强项所在,”Kelf 说。“但是有的时候可能会使用不同的调制方案,能够在需要时切换调制方案是很有竞争力的。

在一些芯片中嵌入其它类型的芯片并不是什么新鲜事儿。早在 1990 年代,赛灵思就在他们的 FPGA 里面嵌入了 PowerPC 架构的处理器,Altera 和 Xilinx 也都在他们的 FPGA 里嵌入了 ARM 架构的 CPU。真正的改变在于 FPGA 实现了专用的 SoC 功能,即多个处理器、缓存加上一些硬线接口完成的功能,FPGA 不再仅仅具备嵌入式处理能力,它还具备了一些 SoC 功能。Synopsys 高级产品营销经理 Joe Mallett 说。

“当您将 SoC 功能嵌入到 FPGA 里面时,可以简化电路板的设计,”Mallett 说。“你可以从 BOM(物料清单)中剔除掉不少器件,而且不再需要有一颗微处理器启动 FPGA 并管理系统的运行。”

嵌入式 FPGA 还可以带来功耗和和成本上的优势,Achronix 市场副总裁 Steve Mensor 说。 “这种方法确实会增加 ASIC 的尺寸,但是同时你能省掉了一个非常昂贵的器件 - 处理器。你可以减少电路板面积,节省很多外围组件,这些都对应着大量的成本,而且,功耗还可以降低一半。”

是否嵌入 FPGA,最终取决于它能在多大程度上增强系统表现。

“当涉及到芯片之间的通信时,无论是 FPGA 到 ASIC,还是其它任何芯片类型,特别是在高带宽应用中,信号肯定需要通过某种类型的高速管道,”Mensor 说。“通信管道的延迟不会降低系统的最大运行速度,但是由于芯片之间需要来回交互,就在总体上降低了整个系统的性能。因此,如果可以消除这种延迟,系统性能肯定会大幅提高。因此,使用了嵌入式 FPGA,就相当于将之前 ASCI 之间的通信带宽提高到了无限大。因为这里的 FPGA 功能都是线对线连接,最大延迟为单个时钟周期,而且如果要使用外设寄存器,那就相当于直接进入逻辑部分,这个延迟基本上为零个时钟周期。”

Mensor 还指出,嵌入式 FPGA 还可以在其他方面提升系统带宽。“如果你特别分析一下 FPGA 就会发现,FPGA 芯片的总吞吐量越多,芯片就越昂贵。这是一个简单的堆砌问题,如果你必须放更多的引脚,芯片面积和封装也就会越大。”

Mallett 也同意这种观点。“嵌入式 FPGA 第一大好处就是它简化了 BOM,并降低了成本。此外,嵌入式 FPGA 页可以在 28nm 或者更加先进的工艺制程上制造,这样便可以得到先进节点的高性能和低功耗优势。有很多通用功能,人们传统上会把它放到 FPGA 中,将它变成 SoC 的一部分并以硬化子系统的方式发挥作用,FPGA 架构和其它部件进行耦合,然后你才可能在系统中使用这些功能。”

嵌入式 FPGA 的另一个独特特性是它们与处理器紧密耦合。“他们没有通过高速接口进行耦合,因此您可以把软件硬件结合起来完成一件事情,这样的性能肯定更好。此外,FPGA 的的可扩展性意味着它可以进行适配调整,使之适应于特定的应用。“Mallett 说。

 


互连是关键
所有这一切听起来都很简单,但是人们使用 FPGA 的心态已经发生了很大的变化。

“曾经,FPGA 只能算是二等公民,系统中最酷最主要的事情 - 主要是与性能密切相关的处理任务 - 是由 CPU 或主 ASIC 或 SoC 完成的,FPGA 只被分派完成一些最微不足道的任务,”,NetSpeed Systems 的营销和业务开发副总裁 Anush Mohandass 说。“CCIX 联盟所做的工作能使得 FPGA 成为一等公民。它现在可以访问与 CPU 相同的内存,可以访问与主处理器相同的信息。微软这样的公司已经意识到 FPGA 可以加速工作运行,并改变任务的运行方式。”(微软实验室在 Hotchips 2014 上发表了一篇论文,详细介绍了如果通过将任务卸载到 FPGA 来降低近 20%的功耗并改进性能。)

这些进展催生了一些新的想法,即可以在 FPGA 中执行任务,并通过芯片到芯片的互联接口与主处理器连接,他说。

Mohandass 说:“嵌入式 FPGA 将工作思路提高了一个层次,而这也正是 Facebook、阿里巴巴和亚马逊等许多数据中心提供商正在实现的。“他们的软件运行得非常快。新的算法不断出现,他们想加快搜索速度,加快人们访问购物清单的速度,这些算法会以一个月到三个月的节奏发生变化。如果你想做一个硬件芯片实现它,将需要三年时间,当做出来时算法早就过时了。嵌入式 FPGA 使得人们可以将一块 FPGA 放在 SoC 中,他们需要改变的完成可以通过这个 FPGA 实现。这就是软件可编程硬件,您可以获得 ASIC 或 SoC 的优势,同时又能得到可编程性。”


验证挑战
嵌入式 FPGA 的验证有几个重要的挑战。Cadence 的系统和验证部门产品管理高级组长 Frank Schirrmeister 指出。“第一个挑战是您怎么在构建一颗芯片时验证它,这是一个非常奇怪的问题。此外,那些使用嵌入了 FPGA 的芯片的人也同样面临验证上的挑战。如果这里有一颗嵌入了 Xilinx Zynq FPGA 的芯片,它们需要具有相当全面的验证流程,比如对其中的处理器子系统的表示,以及用于软件开发的软件视图。验证的挑战主要来自于你向现有系统中添加哪些东西。”

而且,具体到实际的系统,为了得到最佳的存储空间和性能,还需要科学地判断是把一部分功能做到软件中,还是添加一个专用的加速器来实现它。“有趣的一点是,当你的系统里有嵌入式 FPGA 时,你可以做实验确定分工。在 ASIC 世界里,当你开始流片时,所有的事情都确定下来了。”他说。“但是在嵌入式 FPGA 世界中,你确实需要理解把一些功能移到硬件中会怎样帮助提升性能等等。有些事情可以试来试去,而且有一些虚拟平台帮助确定在哪里添加 TLM 模型。FPGA 供应商会提供一些高级综合工具,允许工程师访问具体的 block。 另一个有趣的概念是使用 OpenCL 编程。”

更多有关嵌入式 FPGA 的资讯,欢迎访问 与非网嵌入式 FPGA 专区

与非网编译内容,未经许可,不得转载!

相关推荐

电子产业图谱