当今世界已经到处都是功能繁多和性能卓越的,以往只出现在科幻小说里的高科技产物。当我们使用联网设备并使用可以媲美过去的“超级计算机”的手机拍摄高清照片时,很少有人会考虑其中的底层技术。而更加鲜为人知的是,产品规格与市场需求的相互作用所形成的矛盾愈趋强烈与复杂,使得产品迭代的设计生产与相关投入产出的合理性,也变得愈发棘手。
对具有更低功耗和更多功能的小型设备的不懈追求,推动了对更高集成度的需求。因此,这需要更小的硅片尺寸,要求设计人员采用 28nm、16nm、12nm、7nm、5nm 及更精微的工艺。而每一次硅工艺的更新,对设计和制造成本都会带来非线性增长。基于精微工艺的设计需要越来越稀缺的专业知识、更长的设计时间、更昂贵的设计工具,并带来更高的程序风险。
这些呈指数增长的设计成本必须由项目生命周期内出货的产品分摊。不幸的是,随着全球竞争的加剧、应用功能多样性在增加、而产品的生命周期却在缩短。因此,符合经济效益的定制型芯片项目越来越少,同时能汇聚这些愈发稀缺的人才的公司也越来越少。
至少从理论上讲,诸如 FPGA 之类的可重新编程技术可以缓解其中的许多问题,但传统的 FPGA 体积大、效率低且价格昂贵,通常只用来做原型验证和调试。易灵思 通过生产低功耗、高效、密度足以运行计算密集型任务、且为大批量采用定价的FPGA,直接满足了这些相互制掣的动态市场需求。本文讨论了 AI 硬件设计和部署背后的经济学,将其优势和考虑与 易灵思 的 FPGA 技术联系起来,阐明了当有更好的硬件平台可选时,芯片设计和制造的巨额成本与负担如何变得越来越不合理。
从头开始设计芯片,从成本、专业知识和时间角度来看,需要几乎无法估量的投资;最终,IC/芯片设计只能交由在此领域具有持续积累的公司。有时,一群怀才不遇的工程师会从一家大公司出来,创建一家初创公司并制造 IP。然而,进入的门槛通常如此之高,以至于新想法甫一出世,就立马夭折了。这种硬件“障碍”从本质上扼杀了创新,尤其是在新兴的计算密集型 AI 领域;在该领域,特别是每个垂直行业的关键和非关键任务的应用层出不穷。这种软件所需的处理能力具有复杂、计算密集、高耗电、且总在更新等特征。通常情况下,用定制芯片来支持这些不断变化的需求,其成本是不合理的(图 1)。
设计开发成本
首先,需要电子设计自动化 (EDA)软件来执行基本的 IC 和布局设计、模拟和验证。 EDA 软件生态系统为设计流程的各个方面提供了丰富的工具,可以在预期框架内优化设计。EDA软件的价格高昂,单个授权每年的费用从数万美元到数十万美元。考虑到要用在数十到数百台机器上,相应成倍增加的费用、会轻易突破百万美元大关。这只是涉足芯片制造成本的一方面。为了生成最终产品,公司可能会购买 模拟或数字的软硬核IP,以将特殊的 I/O 功能集成到他们的设计中。IP核开发行业本身就是个价值数十亿美元的产业;正因如此,购买IP的成本也将轻易突破百万美元量级。如果一家公司资金充裕,那么购买来自专业无晶圆厂半导体公司的硅片级 IP, 比花费时间和工程开工费(NRE),在企业内部自己做IP要简单和快捷得多。
制造成本
完成芯片设计是一项艰巨工作,其中流片过程需要工程师团队在广泛的全局模拟、分析、关键设计审查、电路迭代/布局改进和掩模数据准备后才签发,以确保设计的可制造性并生成光掩模的最终 GDSII 文件。随着晶体管尺寸的缩小,光掩模的质量对于精确制造最初设计的芯片至关重要。整个过程很容易出错,因为它是从软件设计到芯片生成的转变。公司在这种耗资数百万美元的制造过程中投入巨资,通常会依靠多项目晶圆 (MPW,又称为silicon“shuttle”)来降低风险。它们允许设计公司通过购买部分 MPW 并与多方分摊总掩模成本,在流片之前生产该芯片的样片。这些选择允许 IC 公司在完全流片投资之前,拿到并验证几千个样片。
测试和封装成本
为了最大限度地提高新型堆叠芯片级封装 (SCSP)和系统级封装 (SiP)设计的良率,供应商要求芯片制造商提供已知良好的裸片(KGD)。虽然这会增加裸片的成本,但最终会降低封装缺陷器件的成本。裸片测试是个棘手过程,涉及定制的测试卡,其中数以千计的探针压在微凸块上,通过电压、电流和温度应力测试来测试缺陷。有缺陷的裸片被封存,而 KGD 被运到封装厂进行组装。所有这些额外的步骤都伴随着额外的成本考虑。封装裸片本身是门科学,既有寄生电感和电容、也有严格的热管理考虑。电-热协同仿真对于检测和优化热问题是必要的,这又为最终设计增加了另一层次的复杂性和专业知识。热分析后,封装厂交付测试好的器件准备组装。但是,经常会出现硬件/软件升级的情况,这时,整个过程将从头再来。这令整个流程的成本飞涨,致使较小玩家无法进入 ASIC 或 IP 设计领域。
图 1:围绕定制芯片的设计和开发过程及其相关成本
摩尔定律的崩溃:更小的器件几何尺度背后的挑战
摩尔定律的明显放缓进一步加剧了出品定制芯片的不可行性,从而使晶体管尺寸和功率密度呈指数级改良的黄金时代已止步不前。遵循此逻辑,为满足芯片越来越高的性能要求,制造商不得不转向制造大芯片。然而,随着芯片尺寸的增加,缺陷和错误制造的风险会增加,良率就会下降。这促使半导体制造商和设计公司寻求其它可行的解决方案,包括将单片 IC 的功能分解为互连的较小芯片,以执行计算密集型处理。
小芯片
小型器件的封装在 1980 年代,已从多芯片模组(MCM)发展到系统级封装设计,再到现在的小芯片。在小芯片设计中,原本的“大芯片”被划分为定制设计的、硬化的 IP 模块(或较小的裸芯),它们可被更经济地制造。这些小芯片与其它模块共同优化,并通过标准化接口连接,犹如SoC 的功能,但以更低成本和更短时间构建。裸芯可以由不同的工艺建构,其中一些采用更经济的 28nm工艺,或者最新最尖端的 7nm(或更精微)光刻工艺。而封装的拓扑结构则可以是基于 TSV 的硅中介层(2.5D)、堆叠芯片(3D)、嵌入式多芯片互连桥 (2.5D)或扇出 MCM 等。
与制造大型 SoC 并试图通过加进更多功能和性能来更新技术相比,基于小芯片的 ASIC 更具成本效益。理论上,每个模块都有可能被重用或扩展用于未来的硬件设计迭代;其中芯片到芯片的标准化接口可实现模块之间的互操作性,从而缩短上市时间。从设计角度看,这种易于升级的能力不容忽视——库中易于取用的已成熟的芯片设计可与其它小芯片混合和匹配,以形成一个新系统。在实践中,定义良好的标准接口只占少数。仍然有许多未标准化的接口对采用来自第三方的小芯片库造成障碍,因为这些第三方根本不知道要使用什么标准进行设计且只能承受选择其中的一个。通常,这些接口的速度非常快,因此往往会推动封装设计朝着更昂贵的方向发展。
小芯片设计是一项相对新的技术,其中大部分知识由大型芯片开发商和制造商掌握。对于芯片设计人员来说,在未来的 ASIC 项目中使用小芯片具有很大潜力。这种新的设计方法在一定程度上规避了越来越棘手的成本和开发时间瓶颈。然而,对于那些没有实力投资于生成和优化小芯片所需资源的公司来说,这条路并不行得通。
嵌入式处理器
通常,最能让设计人员随意使用的工具是标准嵌入式处理器并尽可能多地用软件进行设计,仅在必要时才诉诸硬件。这样,已定义好的标准和功能使标准硬件器件可跨多个市场使用,以积累所需的数量。设计人员只能在软件中尽可能多地实现功能,并在必要时连接少量胶合逻辑和外围器件。在某些情况下,模型分区是跨多个内核完成的,以加快并行处理时间。 GPU 是当前深度神经网络(DNN)训练的宠儿。这也带来了若干挑战。首先,需要一个复杂的控制单元,而且经常有冗余内存访问,导致系统功耗上升。其次,由于这些处理器的通用性本质,基于特定DNN 算法的硬件优化难以见到。第三,对 ML 算法的升级和更改就变得难以实施,从而吁求更多的处理能力。综上,充其量,这是种不得已的折中;理想情况下,处理器和加速器应位于同一硅片。这样,可以快速优化系统性能。
使用 FPGA 进行硬件加速的成本和计算优势
将 ML 算法映射到硬件是个复杂过程,牵涉到数据准确性、吞吐量、延迟、功耗、硬件成本、灵活性和可扩展性之间的权衡和取舍。通过投入更多处理内核的方式解决问题,很快就会变得不切实际,特别是如果问题涉及成本和功耗。在 FPGA 上实现硬件加速比使用嵌入式处理器要简单得多,这是由于硬件架构的根本差异。 CPU和GPU只能实现数据并行,而FPGA(和ASIC)提供数据和流水线并行。在 CPU 或 GPU 中,每个处理器根据单指令、多数据运行模型执行相同的任务,对不同的分布式数据执行相同任务,或者处理单元(PE)在每个时钟周期执行相同操作,同时对数据进行分区并并行分发给各PE。在 FPGA(和 ASIC)中,指令集中的不同任务可以在每个时钟周期并发执行,从而流水线中的每个 PE 可以并行获取具有不同时间戳的数据。这为具有数据并发性和依赖性的 DNN 提供了快速的硬件加速。
为了更好地形象化表述这点,可以实际的托盘压印工厂作为示例。工厂通过切割、压印和贴标签来处理托盘。 CPU 或 GPU 可能处理一大排托盘。然而,每一行在进行压印之前都会经历相同的切割操作。压印一行后,下一个时钟周期将专用于对其标记。另一方面,FPGA 将能够同时处理多排托盘——当一排托盘被切割时、另一排被压印、另一排被标记,所有这些都在同一个时钟周期内实现。通过这种方式,可以充分利用 FPGA 流水线,使其本质上更高效。DNN 计算和数据移动的优化技术可以在 FPGA 硬件上更好地实现。FPGA 允许设计人员处理适合特定应用的数据包大小,且可为应用精准匹适和调整通信协议和拓扑。
与 ASIC 相比,FPGA 还为 AI 提供了重要优势。无论制造商是否使用了更具成本效益的小芯片封装技术,一旦 ASIC 被制造出来,设计人员或多或少会被计算的数据类型以及由器件到其外围设备的数据流的性质所困扰。 FPGA 提供了一个更通用的平台,它提供了 ASIC 的流水线并行能力,且没有基于特定应用的倾向性、电路固化和高成本等缺憾。 FPGA 还受益于使用尖端电路设计、制造、晶圆加工和封装技术的最先进工艺带来的好处。越来越多的 FPGA 使用 FinFET 技术构建在 16nm或更精微的工艺节点1。但是,最终用户可以或多或少地从这种先进工艺的成本负担中得到纾解。因为与模拟/混合信号 IC、布局、信号完整性、电源完整性和半导体封装工程师团队相比,获得 掌握VHDL技术的人才 不仅便宜得多,也要容易得多。软 IP 核本身只是硬 IP 核成本的一小部分,比硬件过时相关的成本风险要小得多,因只要应用需求发生变化,I/O 接口也会随之变化。
FPGA 生态系统概览
到 2026 年,全球 FPGA 市场预计将超过 90 亿美元,其中大部分增长归功于数据中心和高性能计算应用。现代 FPGA 市场主要由计算频谱的两个极端来驱动:一端是高端、高耗电的 FPGA;另一端是低端、胶合逻辑 FPGA(图 2)。
在 1980 年代,FPGA 在具有晶体管-晶体管逻辑 (TTL) 的胶合逻辑中找到了自己的利基市场——用于快速设计和系统原型设计,将 IP 与通用 I/O 协议和通信接口“胶合”在一起。近十年后,FPGA 变得越来越复杂,引入了大型 SRAM 模块、嵌入式数字信号处理 (DSP)模块中的乘法器-累加器、嵌入式处理器软核、I/O 和 SerDes 接口。这为之前由 CPU、GPU 和 SoC 主导的市场带来了一定程度的设计灵活性,它能够通过可重新配置的平台生成软 IP。数据中心开始利用功能强大的高端 FPGA 来提升大规模数据系统的性能,用于加密、压缩、过滤和虚拟交换,作为从多核处理的一种转变。这形成了性能和计算效率之间的平衡以及可重构性的额外巨大优势。深度学习网络正处于由新的层类型和不断变化的数据集驱动的不断升级的过程中。基于该原因,FPGA 被寄予厚望、用于推理的可编程加速器。FGPA 已被证明是通过优化数据移动、修剪网络、降低算术精度和稀疏化(sparsification)来有效实现 DL 算法的强大工具。
在这个不断增长的AI应用生态系统中——更新的模型、优化技术和支持硬件加速——低端和高端 FPGA 之间的差距越来越明显。自动航空机载和地面车辆、医疗保健、视觉识别、欺诈检测以及更多应用的机会将不可避免地需要完全相同的可重新配置平台,但要求采用更具成本效益、耗电更少的封装。
图 2:FPGA 及其潜在应用
使用可定制、经济高效的 FPGA 打破定制芯片的束缚
本文主旨是揭示研制定制芯片的成本和专业知识方面的困难。可以在市场上竞争并最终推动适合 AI 小芯片的价格点和硬件能力的芯片制造商,几乎组成了一个排他俱乐部。大行其道的通用 CPU 和 GPU 解决方案非常适合某些 AI 应用,但在其它应用中存在固有限制,这进一步限制了开发人员可用的解决方案。而易灵思的 FPGA 就非常适合需要低功耗、低延迟、低成本、小尺寸和易于开发的 AI 应用。
使用易灵思量子计算结构的 FPGA 体积小、功耗低且高效。它们是按批量级别来定价,其中最低端型号起价不超过 10 美元,开发套件起价为 48 美元(图 3)。这些是预定义的标准产品,并且通过易灵思平台进行了硬件加速、需要零 NRE,从而将上市时间缩短数年并可节省数百万美元的开发成本。这些新的经济方面的好处,重启了曾因芯片开发成本而被窒息的可能性。它们的可重新编程特性确保了快速调试、降低了程序风险,且使最终的设计在现场部署之前(及之后)保有灵活性。设计人员可“免费”创新,可在每个产品的基础上实现自定义功能,在标准芯片平台中通过创新功能、区分产品 SKU。这之所以成为可能,是因为易灵思量子结构的突破性效率将高性能注入了主流市场。
图 3:[一种比较其它流行 FPGA方案、关键 FPGA 参数(例如,LE 数量、大小、成本、外设数量等)的可能对比]
钛金系列的规格概览(图 4)呈现了高密度计算架构与 DSP 模块、高速 I/O 和收发器接口的集成,以满足从低功耗小尺寸的边缘应用到高性能工业自动化和嵌入式视觉应用的广泛需求。这种 LE的密度与尺寸比形成了 FPGA 应用的新视野。易灵思的设计足够小、功能足够强大,既可以替代传统的低端 FPGA(这些 FPGA 太小而无法容纳完整的设计、因此用作桥接器件);又可以取代将小型 FPGA胶合在一起的完全定制芯片。
图 4:钛金FPGA规范
易灵思 量子结构中的动态硬件和软件分区
易灵思 FPGA 设计流程还采用了现在熟悉的开发方法,即在系统设计时最大程度地使用软件,仅在需要提高性能的地方诉诸硬件。开源和软件定义的 RISC-V 处理器可以在 FPGA 内免费实例化。它仿佛为设计人员提供了加速器的“插座”,把部分 C/C++ 代码通过插入些小块的硬件来加速执行。并且可以在同一个可配置结构中实现动态硬件和软件分区,以实现最佳性能和效率、加快上市时间并降低开发成本。
RISC-V 指令集架构从它在加州大学伯克利分校低调的滥觞至今,已经有了巨大发展。作为 RISC-V 计划的直接结果,现在已有一组丰富的开源软核。因此,它已成为全域 AI 供应商(从商业科技巨头到美国军方)越来越受欢迎的芯片架构,与流行的 Arm 和 x86 架构竞争2。与许多开源软件/硬件平台一样,该新兴的 RISC-V 生态系统通过更高效、更安全的设计促进了更多协作。此举降低了设计人员进入市场的障碍,能够实例化最接近特定应用需求的 RISC-V 实现并相应地对其进行配置。设计人员可以在处理器上开发 C 代码,当运行不可避免地变得太慢时,可以轻松地逐步将任何瓶颈迁移到 FPGA 中实现,直到满足所需的系统性能。如果没有 FPGA 平台,这种直接的硬件加速很难实现——即使在现场部署设备后,用户仍然可以使用该功能。
在更精微的芯片工艺的实现成本变得非线性飙升的情况下,持续的芯片工艺迭代变得越来越难以证明其合理性。然而,加大的集成度增加了封装的复杂性和成本。这种复杂性的增加会导致设计时间延长、费用增加。由于这些因素,从 IC 的批量生产中获得利润的营利在下降。首先,竞争的加剧为消费者提供了更多选择,从而减少了每款产品的出货量。竞争的加剧还缩短了产品的使用寿命和供货周期。新的计算密集型节点和技术必须越来越敏捷,不仅要支持不断变化的市场需求,还要跟上深度学习模型的升级。对于很多复杂度适中的人工智能应用,由于缺乏合适的 FPGA,导致设计人员只能依赖定制小芯片或嵌入式处理器进行硬件加速。 易灵思 肇始的新 FPGA 经济视野,使设计人员能够在一个将为社会带来革命性利益的领域中更灵活地进行创新。这可以说是千载难逢的量子剧变,为产品设计的可能性提供了这样一个拐点——远离定制芯片的死胡同,进入任运挥洒的定制FPGA 的新篇章。
参考
1https://www.marketsandmarkets.com/Market-Reports/fpga-market-194123367.html
2https://spectrum.ieee.org/riscv-rises-among-chip-developers-worldwide#toggle-gdpr
(本文由易灵思供稿,电子工程专辑对文中陈述、观点保持中立)
责编:Luffy Liu