eFPGA与FPGA SoC,谁将引领下一代可编程硬件之潮流?|半导体行业观察
eFPGA:冉冉升起的新星
eFPGA即嵌入式FPGA(embedded FPGA),是近期兴起的新型电路IP。
随着摩尔定律越来越接近瓶颈,制造ASIC芯片的成本越来越高。因此,设计者会希望ASIC能实现一定的可配置性,同时又不影响性能。在希望能做成可配置的模块中,负责与其他芯片或者总线通信的接口单元又首当其冲。在芯片中,模块间的通信往往使用简单的并行接口或者配合简单的时序逻辑,但是在芯片间通信时为了保证可靠性,必须通过一系列握手(handshake)协议来完成通信接口。设计者往往希望自己的SoC能够与市面上尽可能多的其他芯片通信,然而市场上的芯片通信接口并没有一个统一标准,同时一些通信协议也在随着时间不断更新换代,因此芯片间通信往往需要一些中介(bridge)芯片。事实上,使用FPGA芯片作为芯片间通信的中介已经是很常见的做法,因为FPGA具有可配置性,因此可以作为通用通信中介。例如,Apple在iPhone7中集成了一小块Lattice的FPGA芯片,据推测就是为了实现芯片间的通信中介和可配置互联。然而,在硬件系统中使用额外的通信中介芯片成本较高,而且也不利于维护,那么,有没有集成度更高的方案呢?这时候,eFPGA就应运而生,通过把一小块FPGA电路IP集成到SoC中充当接口握手协议处理单元,可以大大提高SoC接口的灵活性,因此能与不同的其他芯片进行通信。
除此之外,随着目前异构计算架构的兴起,eFPGA又看到了一种新的可能,即在SoC上实现高集成度的异构计算,让eFPGA随着系统的需求在处理不同的应用时配置成不同的模块。这与Intel收购Altera FPGA的终极目标相同,只是Intel收购Altera之后,Altera的FPGA IP只会集成在Intel的芯片上,而eFPGA厂商则可以把IP提供给任何花钱购买的客户。
eASIC概念第一次进入大众视野可以说是2014年,由UCLA的Cheng C. Wang,Fang-Li Yuan和Dejan Markovic等人在ISSCC发表的文章,“A Multi-Granularity FPGA With Hierarchical Interconnects for Efficient and Flexible Mobile Computing”。在这篇文章中,作者们通过创造性地设计互联单元,一举解决了FPGA的功耗、性能和成本受到布线资源限制的问题,从而使得eASIC集成到SoC中真正变为可能,而该论文也因其突出贡献获得了ISSCC Lewis Award。之后,Cheng C. Wang,Fang-Li Yuan和Dejan Markovic就利用该论文中的成果成立了FlexLogix,推广eFPGA的概念,并使其真正能够商用化。
到了今年,eFPGA的概念已经获得了业界的广泛认可,而该领域的公司也在慢慢变多。在前几天举行的ARM TechCon中,我们看到了四家公司,分别是FlexLogix,Achronix,QuickLogic以及Menta。
FlexLogix作为eFPGA的先驱,在本届ARM TechCon上推出的新亮点是用于2.5D封装的小型FPGA芯片。该芯片主要解决的问题是,如果ASIC使用成熟工艺(如65nm)实现,但是eFPGA在65nm上跑不到预期的性能怎么办?使用FlexLogix的小型FPGA芯片,就可以把16nm的eFPGA和65nm的ASIC使用硅载片(silicon interposer)之类的2.5D封装技术集成到一起,从而实现客户所需要系统性能。
Achronix的亮点则是高速eFPGA IP。其最新一代的Speedcore IP将会在TSMC 7nm工艺上实现,从而实现最强的性能。另外,Achronix的Speedster FPGA芯片也在出货中。作为首家eFPGA进入量产芯片的公司,Achronix2016-2017年收入猛增,值得关注。
QuickLogic是老牌FPGA厂商,现在也加入了eFPGA的战场,为我们带来了ArcticPro系列IP。其主要市场是超低功耗SoC市场,例如蓝牙、物联网等等,它的eFPGA将给这些超低功耗SoC带来可配置性,从而实现更好的功耗与成本。另外,QuickLogic的eFPGA支持以性价比高著称的SMIC,也是其一大亮点。
Menta与之前三家相比,其最大的亮点是可移植性最好,因为之前三家公司提供的eFPGA都是GDS硬IP,而Menta能够提供RTL软IP,因此可以轻松移植到不同的工艺上。
FPGA SoC:老树发新枝
如果说eFPGA是往SoC里面加入FPGA的话,那么FPGA SoC的概念就是在FPGA里面加上了处理器。FPGA经过这么多年的发展,已经不只是验证设计的平台,而变成了一种独立的设计实现方式。FPGA可快速重配置的特点使它在许多对灵活性有要求的平台如鱼得水。
为了能从外部方便地控制FPGA,往往需要在FPGA里面实现一个微处理器以运行操作系统以及相关程序,然后把程序中可加速的部分使用FPGA里面的可配置逻辑高效执行。虽然程序中的大部分运算都可以由FPGA加速,但是操作系统部分却可能成为整体实现的瓶颈:在传统FPGA中,微处理器往往会用软核(如MicroBlaze)在FPGA上实现,因此比起用来加速的逻辑部分,微处理器的运行速度会比较慢(时钟频率<100 MHz),从而拖慢了整体系统的效率。有鉴于此,Altera和Xilinx都推出了自己的方案,即在FPGA芯片内集成一个微处理器硬核(如ARM系列处理器)。该硬核不使用FPGA而是由定制逻辑实现,因此可以跑在很高的时钟频率(~1GHz甚至更高)。因此,在FPGA SoC中,处理器性能不再成为瓶颈,从而使整体系统实现更高性能。
目前Xilinx和Altera都已经推出了FPGA SoC相关产品,并且获得了用户的一致认可。然而,FPGA SoC的前景远远不止FPGA+高速处理器硬核。大家知道,FPGA开发生态发展较慢,一个重要原因就是硬件逻辑代码编写的学习曲线非常陡峭,导致开发者敬而远之。为了减少开发者的学习成本并加快开发速度,FPGA厂商纷纷推出高级综合工具(high-level synthesis),可以直接把C语言之类的高级语言翻译成RTL,从而大大简化FPGA硬件开发。而FPGA SoC配合高级综合工具双剑合璧能让整个开发流程更简单:首先开发者用C写传统ARM上能跑的程序代码,之后高级综合工具把代码中能够用FPGA加速的部分转化成RTL并用FPGA硬件实现,而代码的其他部分则跑在FPGA SoC中的ARM硬核上面。这样就让高性能FPGA开发变得非常容易,可望在未来让更多开发者能加入FPGA生态。
eFPGA与FPGA SoC,谁将引领下一代可编程硬件之潮流?
那么,eFPGA IP和FPGA SoC,谁将在未来更受欢迎呢?笔者认为,这两种生态都表明了SoC在摩尔定律遇到瓶颈的今天走向可配置的潮流,只是eFPGA从SoC的角度出发,而FPGA SoC则是从传统FPGA的角度出发。这有点类似之前的微处理器,以Intel代表的传统处理器芯片提供商的技术发展路径是以处理器为本,并在处理器芯片中集成更多多媒体处理单元,例如集成显卡,使得处理器更接近SoC;而以ARM为代表的IP提供商则是提供处理器IP,为ASIC中集成合适的处理器IP成为实用的SoC变得更方便。这两种生态将会同时存在,然后随着市场的发展或许会在某个中间点融合在一起。让我们拭目以待!
eFPGA与FPGA SoC,谁将引领下一代可编程硬件之潮流?|半导体行业观察的更多相关文章
- Altera FPGA SoC搭建步骤
Altera SoC 官方搭建指南: https://rocketboards.org/foswiki/Documentation/EmbeddedLinuxBeginnerSGuide 官方文档中除 ...
- 阿里巴巴IPv6应用平台引领下一代互联网
摘要: 据预测,到2020年底我国IPv6终端设备将达到5亿,正在快速取代IPv4.阿里巴巴网络架构师张先国先生在2018 年GNTC 大会IPv6 专场上分享IPv6应用集团业务(支付宝.淘宝.天猫 ...
- 我的 FPGA 学习历程(04)—— 练习 verilog 硬件描述语言
这篇讲的是使用 verilog 硬件描述语言编写一个 3 - 8 译码器. 3 - 8 译码器是一个简单的组合逻辑,用于实现并转串,其输入输出关系如下: | 输入 | 输出 | -------- ...
- FPGA的新变化
FPGA SoC通过融合FPGA和ASIC两者的元件,跨越了灵活性和性能之间的界限.但随着它们进入高安全性.任务关键型市场,它们也面临着与标准SoC相同的问题,包括在日益复杂的器件中快速传输越来越多的 ...
- FPGA最全科普总结
FPGA最全科普总结 FPGA 是可以先购买再设计的"万能"芯片.FPGA (Field Programmable Gate Array)现场可编程门阵列,是在硅片上预先设计实 ...
- [转帖]从光刻机的发展,看懂ASML为何是不可取替
从光刻机的发展,看懂ASML为何是不可取替 http://mini.eastday.com/mobile/171230223351249.html# 2017-12-30 22:33 来源:半导 ...
- More Moore and More than Moore
More Moore and More than Moore ——基于硅光电子学探讨摩尔定律的延续和发展 1965年4月,<电子学>杂志第114页上刊载了Intel创始人之一戈登·摩尔(G ...
- Intel收购半导体设计公司eASIC
来源:本文由公众号 半导体行业观察(ID:icbank)翻译自「anandtech」,谢谢. 北京时间今天凌晨,Intel宣布收购了半导体设计公司eASIC. eASIC的商业模式介于传统Fables ...
- [转帖]DRAM芯片战争,跨越40年的生死搏杀
DRAM芯片战争,跨越40年的生死搏杀 超级工程一览 ·2017-08-20 12:50·半导体行业观察 阅读:1.4万 来源:内容来自超级工程一览 , 谢谢. DRAM是动态随机存储器的意思,也就是 ...
随机推荐
- ThinkPHP微信扫码支付接口
最近折腾微信扫码支付,看了微信官方文档,找了很多网页,发现和文档/demo不匹配,现在自己算是弄出来了(文件名称有所更改),贴出来分享一下 一.将有用的官方lib文件和使用的相关文件放置到vendor ...
- 洛谷P4602 [CTSC2018]混合果汁(主席树)
题目描述 小 R 热衷于做黑暗料理,尤其是混合果汁. 商店里有 nn 种果汁,编号为 0,1,\cdots,n-10,1,⋯,n−1 . ii 号果汁的美味度是 d_idi ,每升价格为 p_ipi ...
- 12JavaScript字符串
JavaScript 字符串用于存储和处理文本. 1.JavaScript 字符串 字符串可以存储一系列字符,如 "John Doe". 字符串可以是插入到引号中的任何字符.你可以 ...
- 执行mongod其他实例出现的问题
windows环境下,配置其他mongo实例,会出现一些问题 1.配置路径不对,执行bat文件时出现闪屏 根据提示创建C:\data\db\ 目录(因为mongodb默认在/data/db下创建数据库 ...
- Linux CentOS Python开发环境搭建教程
CentOS安装Python 1.CentOS已经自带安装了2.x版本,先尝试python命令检查已安装的版本.如果你使用rpm.yum或deb命令安装过,请使用相对命令查询. 2.复制安装文件链 ...
- PTA(BasicLevel)-1007素数对猜想
一 问题描述-素数对 让我们定义素数差dn为:dn=pn+1−pn,其中pi是第i个素数.显然有d1=1,且对于n>1有dn是偶数.“素数对猜想”认为“ ...
- 数构与算法 | 什么是大 O 表示算法时间复杂度
正文: 开篇我们先思考这么一个问题:一台老式的 CPU 的计算机运行 O(n) 的程序,和一台速度提高的新式 CPU 的计算机运 O(n2) 的程序.谁的程运行效率高呢? 答案是前者优于后者.为什么呢 ...
- leetcode记录-组合两个表
表1: Person +-------------+---------+ | 列名 | 类型 | +-------------+---------+ | PersonId | int | | Firs ...
- 20155206 2016-2017-2 《Java程序设计》第4周学习总结
20155206 2006-2007-2 <Java程序设计>第4周学习总结 教材学习内容总结 继承: 避免多个类间重复定义共同行为,在编写程序的过程中可能会出现部分代码重复的现象,把重复 ...
- 20155334 2016-2017-2 《Java程序设计》第十周学习总结
20155334 2016-2017-2 <Java程序设计>第十周学习总结 教材学习内容总结 1.计算机网络概述 (1)路由器和交换机组成了核心的计算机网络,计算机只是这个网络上的节点以 ...